An Assessment Framework for Application-Level Cryptographic Agility
Dieses Paper führt ein komponentenbasiertes Bewertungsframework ein, das die kryptographische Agilität auf Anwendungsebene über sieben orthogonale Dimensionen hinweg charakterisiert und aufzeigt, dass aktuellen gängigen APIs kritische Fähigkeiten für die absichtsbasierte Schlüsselerstellung, die richtlinienbasierte Algorithmenwahl und die erstklassige Algorithmentransformation fehlen, wodurch der Post-Quanten-Übergang behindert wird.
Originalarbeit lizenziert unter CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dies ist eine KI-generierte Erklärung des untenstehenden Papers. Sie wurde nicht von den Autoren verfasst oder gebilligt. Für technische Genauigkeit konsultieren Sie das Originalpaper. Vollständigen Haftungsausschluss lesen
Stellen Sie sich vor, Sie sind der Manager eines riesigen, globalen Versandunternehmens. Seit Jahrzehnten verwenden Sie eine bestimmte Art von Versandcontainer (nennen wir sie „RSA-Boxen“), um Ihre wertvolle Fracht zu bewegen. Ihre LKWs, Lagerhäuser und Lieferfahrer sind alle perfekt auf diese speziellen Boxen ausgelegt.
Nun gibt es eine neue Vorschrift: „Ab nächstem Jahr müssen Sie die Verwendung von RSA-Boxen einstellen. Sie müssen zu einem völlig anderen Containertyp namens ‚Post-Quantum-Boxen‘ wechseln.“
Hier liegt das Problem: Die neuen Boxen sind riesig, haben eine andere Form und erfordern eine andere Art des Verschließens. Schlimmer noch: Ihr aktuelles Softwaresystem sagt nicht einfach nur: „Schick mir eine Box.“ Es sagt: „Schick mir eine RSA-Box mit diesen spezifischen Abmessungen.“
Da Ihr System fest auf die Abfrage von „RSA-Boxen“ programmiert ist, können Sie nicht einfach den Boxentyp austauschen. Sie müssen in jedes einzelne Lagerhaus gehen, die Anweisungen für jeden LKW-Fahrer umschreiben, das Personal nachschulen und die Laderampen umbauen. Dies ist exakt der Albtraum, vor dem die Softwareentwickler der Welt stehen, wenn sie versuchen, auf eine neue, quantensichere Kryptografie umzustellen.
Dieses Paper führt eine neue Methode vor, um zu messen, wie „agil“ (flexibel) ein Softwaresystem beim Austausch dieser kryptografischen „Boxen“ ist.
Das Problem: Die „Hardcoded“-Falle
Die Autoren argumentieren, dass die meisten aktuellen Softwaresysteme wie eine starre Fabrik sind. Sie sind so eng um die Werkzeuge herum gebaut, die sie heute verwenden, dass ein Wechsel dieser Werkzeuge den Umbau der gesamten Fabrik erfordert.
Sie fanden heraus, dass einige Systeme zwar etwas besser darin geworden sind, die Details darüber zu verbergen, wie man ein Werkzeug benutzt (wie etwa einen generischen „Lock“-Button anstelle von „RSA Lock“), aber sie scheitern immer noch am kritischsten Teil: der Entscheidung, welches Werkzeug überhaupt zu verwenden ist.
Der neue Rahmen: Ein 7-Punkte-Zeugnis
Um dies zu beheben, haben die Autoren ein „Zeugnis“ mit sieben verschiedenen Noten erstellt. Anstatt einem System eine einzige Gesamtnote zu geben (wie „85 % agil“), bewerten sie es anhand von sieben unabhängigen Dimensionen. Denken Sie daran, ein Auto nicht nur nach Geschwindigkeit zu bewerten, sondern separat nach Kraftstoffeffizienz, Sicherheit, Komfort und Handhabung. Ein Auto kann bei der Geschwindigkeit großartig sein, aber bei der Sicherheit schlecht abschneiden.
Hier sind die sieben Dimensionen in einfachen Worten:
- Operation Coupling (Das „Wie“ der Werkzeugnutzung): Muss die Software bei jedem Sperren des Algorithmus den spezifischen Namen des Algorithmus kennen (z. B. „RSA“)?
- Schlecht: „Bitte verwende das RSA-2048-Schloss.“
- Gut: „Bitte sperre diese Nachricht.“ (Das System findet heraus, welches Schloss zu verwenden ist).
- Creation Coupling (Das „Wie“ der Werkzeugherstellung): Müssen Sie bei der Erstellung eines neuen Schlüssels den exakten Algorithmus angeben?
- Schlecht: „Erstelle mir einen RSA-Schlüssel.“
- Gut: „Erstelle mir einen Schlüssel, der diesen Benutzer authentifizieren kann.“ (Das System wählt den besten Algorithmus für diese Aufgabe aus).
- Provider Coupling (Das „Wo“ das Werkzeug lebt): Ist die Software an die Hardware oder Software eines bestimmten Unternehmens gebunden?
- Schlecht: „Verwende das IBM-Schloss.“
- Gut: „Verwende ein sicheres Schloss“, und das System kann automatisch zwischen IBM, Google oder einem lokalen Hardware-Chip wechseln.
- Decoupling Mechanism (Das „Kontrollpanel“): Können Sie diese Einstellungen ändern, ohne den Code neu zu schreiben?
- Schlecht: Sie müssen den Quellcode bearbeiten und die Software neu kompilieren.
- Gut: Sie können die Einstellungen in einer Konfigurationsdatei oder einem Policy-Dashboard ändern.
- Governance Authority (Der „Chef“): Wer trifft die Entscheidungen?
- Schlecht: Nur der Programmierer, der den Code geschrieben hat, kann den Algorithmus ändern.
- Gut: Ein Sicherheitsmanager kann sagen: „Alle Produktionssysteme müssen FIPS-geprüfte Algorithmen verwenden“, ohne den Code anzupassen.
- Algorithm Migration (Der „Wechsel“): Können Sie einen alten Schlüssel in einen neuen Typ umwandeln?
- Schlecht: Sie müssen den alten Schlüssel wegwerfen, einen brandneuen erstellen und dann alle Ihre alten Daten neu sperren.
- Gut: Sie können einen alten RSA-Schlüssel magisch in einen neuen Post-Quantum-Schlüssel transformieren und dabei dieselbe ID behalten.
- Provider Migration (Der „Umzug“): Können Sie Ihre Schlüssel problemlos von einem Unternehmen zu einem anderen bewegen?
- Schlecht: Sie müssen den Schlüssel manuell herunterladen, verschieben und wieder hochladen.
- Gut: Das System bewegt den Schlüssel basierend auf Richtlinien automatisch für Sie.
Die große Enthüllung: Die drei Lücken
Die Autoren haben sechs große Systeme (wie OpenSSL, AWS KMS, Google Tink und andere) gegen dieses Zeugnis getestet. Sie fanden drei massive Lücken, die in allen ihnen existieren:
- Keine „Intent-basierte“ Erstellung: Keines der Systeme lässt Sie sagen: „Ich brauche einen Schlüssel zum Signieren von Dokumenten.“ Alle zwingen Sie dazu zu sagen: „Ich brauche einen ECDSA-Schlüssel.“ Sie müssen immer noch den Namen des spezifischen Werkzeugs kennen.
- Keine „Kryptografische Governance“: Während einige Systeme die Kontrolle darüber erlauben, wer auf einen Schlüssel zugreifen darf (wie ein Sicherheitswächter), erlaubt keines der Systeme einem Manager, zu kontrollieren, welcher Algorithmus verwendet wird. Sie können nicht über Ihre Policy-Engine sagen: „Niemand darf den alten SHA-1-Algorithmus verwenden.“
- Keine „Transformations“-Magie: Keines der Systeme besitzt einen Button mit der Aufschrift „Transformiere diesen RSA-Schlüssel in einen Post-Quantum-Schlüssel“. Wenn Sie wechseln wollen, müssen Sie den alten Schlüssel wegwerfen und von vorne anfangen, was ein Albtraum ist.
Das Fazit
Das Paper kommt zu dem Schluss, dass der Übergang zur Post-Quantum-Kryptografie nicht nur ein mathematisches Problem ist, sondern ein Software-Engineering-Problem.
Da aktuelle Systeme mit diesen drei Lücken gebaut sind, wird der Wechsel zu neuen Algorithmen massive, teure und riskante Software-Updates für fast jedes Unternehmen weltweit erfordern. Die Autoren argumentieren, dass wir, um dies zu beheben, unsere Software-APIs wirklich „agil“ gestalten müssen – sodass wir sagen können, was wir tun wollen (die Absicht/das Intent), und das System entscheiden lässt, wie es dies tut, damit wir die zugrunde liegende Technologie austauschen können, ohne die Welt zu beschädigen.
Ertrinken Sie in Arbeiten in Ihrem Fachgebiet?
Erhalten Sie tägliche Digests der neuesten Arbeiten passend zu Ihren Forschungsbegriffen — mit technischen Zusammenfassungen, in Ihrer Sprache.