PKCS # 11 Cloud Token - Mythos oder Realität?
PKCS # 11 (Cryptoki) ist ein von RSA Laboratories entwickelter Standard für die Interaktion von Programmen mit kryptografischen Token, Smartcards und anderen ähnlichen Geräten unter Verwendung einer einheitlichen Softwareschnittstelle, die über Bibliotheken implementiert wird.Der PKCS # 11-Standard für die russische Kryptographie wird vom Technischen Komitee für Standardisierung „Cryptographic Information Protection“ ( TC 26 ) unterstützt.Wenn wir mit Unterstützung der russischen Kryptographie über Token sprechen, können wir über Software-Token, Software- und Hardware-Token und Hardware-Token sprechen.Kryptografische Token ermöglichen die Speicherung von Zertifikaten und Schlüsselpaaren (öffentliche und private Schlüssel) sowie kryptografische Vorgänge gemäß dem PKCS # 11-Standard. Das schwache Glied hier ist die Speicherung des privaten Schlüssels. Wenn der öffentliche Schlüssel verloren geht, kann er jederzeit mit dem privaten Schlüssel wiederhergestellt oder einem Zertifikat entnommen werden. Der Verlust / die Zerstörung des privaten Schlüssels hat traurige Folgen. Sie können beispielsweise die auf Ihrem öffentlichen Schlüssel verschlüsselten Dateien nicht entschlüsseln und keine elektronische Signatur (ES) erstellen. Um eine elektronische Signatur zu erstellen, müssen Sie ein neues Schlüsselpaar generieren und ein neues Zertifikat für ein Geld in einem der Zertifizierungszentren erhalten.Oben haben wir Software-, Hardware-Software- und Hardware-Token erwähnt. Wir können aber auch eine andere Art von kryptografischem Token in Betracht ziehen - die Cloud.Heute werden Sie niemanden mit einem Cloud-Flash-Laufwerk überraschen . Alle Vor- und Nachteile eines Cloud-Flash-Laufwerks sind fast in einem Cloud-Cloud-Token enthalten.Die Hauptsache hierbei ist die Sicherheit von Daten, die in einem Cloud-Token gespeichert sind, hauptsächlich private Schlüssel. Kann dieses Cloud-Token bereitstellen? Wir sagen - JA!Und wie funktioniert ein Cloud-Token? Der erste Schritt besteht darin, den Client in der Token Cloud zu registrieren. Zu diesem Zweck sollte ein Dienstprogramm bereitgestellt werden, mit dem Sie auf die Cloud zugreifen und Ihren Benutzernamen / Spitznamen darin registrieren können:
Nach der Registrierung in der Cloud muss der Benutzer sein Token initialisieren, nämlich das Token-Label und vor allem die SO-PIN und die Benutzer-PIN-Codes festlegen. Diese Vorgänge sollten nur auf einem sicheren / verschlüsselten Kanal ausgeführt werden. Das Dienstprogramm pk11conf wird zum Initialisieren des Tokens verwendet. Für die Kanalverschlüsselung wird vorgeschlagen, den Magma-CTR- Verschlüsselungsalgorithmus (GOST R 34.13-2015) zu verwenden.Um einen konsistenten Schlüssel zu generieren, auf dessen Grundlage der Datenverkehr zwischen Client und Server geschützt / verschlüsselt wird, wird vorgeschlagen, das von TC 26 empfohlene SESPAKE- Protokoll zu verwenden - ein Protokoll zum Generieren eines gemeinsam genutzten Schlüssels mit kennwortbasierter Authentifizierung .Es wird vorgeschlagen, den Einmalkennwortmechanismus als Kennwort zu verwenden, auf dessen Grundlage ein gemeinsamer Schlüssel generiert wird . Da es sich um russische Kryptographie handelt, ist es selbstverständlich, Einmalkennwörter mit den Mechanismen CKM_GOSTR3411_12_256_HMAC, CKM_GOSTR3411_12_512_HMAC oder CKM_GOSTR3411_HMAC zu generieren .Durch die Verwendung dieses Mechanismus wird sichergestellt, dass der Zugriff auf persönliche Token-Objekte in der Cloud über SO- und USER-PIN-Codes nur dem Benutzer zur Verfügung steht, der sie mit dem Dienstprogramm pk11conf installiert hat .Alles, nachdem Sie diese Schritte ausgeführt haben, ist das Cloud-Token einsatzbereit. Um auf das Cloud-Token zuzugreifen, installieren Sie einfach die LS11CLOUD-Bibliothek auf dem PC. Bei Verwendung eines Cloud-Tokens in Anwendungen auf Android- und iOS-Plattformen wird ein entsprechendes SDK bereitgestellt. Diese Bibliothek wird angezeigt, wenn ein Cloud-Token im Redfox-Browser verbunden oder in der Datei pkcs11.txt für registriert wird. Die LS11CLOUD-Bibliothek interagiert mit dem Token in der Cloud auch über einen sicheren Kanal, der auf SESPAKE basiert und bei der PKCS # 11-Funktion C_Initialize!
Das ist alles, jetzt können Sie ein Zertifikat bestellen, es in Ihrem Cloud-Token installieren und auf die Website> public services gehen. Source: https://habr.com/ru/post/de398677/
All Articles