Menü
c't Magazin

Microsoft-Chip für Datenkompression und Verschlüsselung

Microsofts Spezialchip "Corsica" komprimiert und verschlüsselt SSD-Daten in der Azure-Cloud.

vorlesen Drucken Kommentare lesen 53 Beiträge

PCIe-Karte mit Microsoft Corsica

(Bild: Microsoft)

Mit dem "Project Zipline" hat Microsoft das für Cloud-Anwendungen optimierte Kompressionsformat XP10 ins Open Compute Project (OCP) eingebracht. Seit zwei Jahren entwickelt Microsoft zusammen mit Broadcom aber auch den Zipline-Spezialprozessor Corsica: Er sitzt auf PCI-Express-Karten und übernimmt die Kompression und Verschlüsselung von Daten in der Azure-Cloud.

Corsica soll einerseits die Prozessoren der Cloud-Server entlasten und senkt laut Microsoft andererseits die Latenz beim Zugriff auf Daten.

Bekanntlich lassen sich verschlüsselte Daten kaum noch komprimieren; die Komprimierung muss deshalb vor der Verschlüsselung erfolgen. Im Unterschied zu selbstverschlüsselnden Speichermedien (Self-encrypting Drives, SED) arbeitet Zipline mit unterschiedlichen Schlüsseln: Die Daten verschiedener Cloud-Nutzer müssen mit jeweils individuellen Schlüsseln geschützt sein.

Amazon nutzt bei EC2-Instanzen auf dem Nitro-System mit NVMe-SSDs (C5d, M5d und Bare Metal) schon länger Spezialprozessoren (ASICs) zur Kompression und Verschlüsselung von Cloud-Daten. Die Chips entwickelt die Amazon-Tochter Annapurna Labs, ebenso wie den hauseigenen ARM-Serverprozessor Graviton. Im Grunde verfolgt Apple beim T2-Controller für proprietäre Flash-Module eine ähnliche Idee.

Im Unterschied zu Amazon Nitro legt Microsofts Azure-Sparte das Zipline-Projekt im Rahmen des OCP offen. Laut FAQ ist das aber noch nicht vollständig der Fall: Derzeit findet man auf GitHub nur den RTL-Code für die XP10-(Huffman)-Komprimierung, der zur Dekomprimierung soll noch folgen.

An Zipline beteilgen sich auch mehrere andere Partner, darunter AMD, Intel, ARM, Marvell und der RISC-V-Entwickler SiFive.

In gewissem Sinne widersprechen Zipline und Nitro dem Konzept des Software-defined Storage: Statt flexibler und im Idealfall quelloffener Algorithmen auf Standardprozessoren kommt hier spezielle Hardware zum Einsatz, teilweise von Firmware gesteuert. Bei Zipline liegt zwar der Algorithmus offen, Bugs in dessen Hardware-Implementierung sind aber nicht auszuschließen. Dieses Problem trifft auch Festplatten und SSDs mit Hardware-Verschlüsselung. (ciw)