Cloudtoken PKCS#11 – mythe of realiteit?

PKCS#11 (Cryptoki) is een standaard ontwikkeld door RSA Laboratories voor het samenwerken van programma's met cryptografische tokens, smartcards en andere soortgelijke apparaten met behulp van een uniforme programmeerinterface die via bibliotheken wordt geïmplementeerd.

De PKCS#11-standaard voor Russische cryptografie wordt ondersteund door de technische standaardisatiecommissie “Cryptographic Information Protection” (TK 26).

Als we het hebben over tokens met ondersteuning voor Russische cryptografie, dan kunnen we praten over softwaretokens, software- en hardwaretokens en hardwaretokens.

Cryptografische tokens zorgen zowel voor de opslag van certificaten en sleutelparen (publieke en private sleutels) als voor het uitvoeren van cryptografische bewerkingen in overeenstemming met de PKCS#11-standaard. De zwakke schakel hier is de opslag van de privésleutel. Als de publieke sleutel verloren gaat, kunt u deze altijd herstellen met behulp van de private sleutel of deze uit het certificaat halen. Het verlies/vernietiging van een privésleutel heeft ernstige gevolgen. U kunt bijvoorbeeld geen bestanden decoderen die met uw openbare sleutel zijn gecodeerd, en u kunt geen elektronische handtekening (ES) plaatsen. Om een ​​elektronische handtekening te genereren, moet u een nieuw sleutelpaar genereren en, voor wat geld, een nieuw certificaat aanvragen bij een van de certificeringsinstanties.

Hierboven noemden we software-, firmware- en hardwaretokens. Maar we kunnen een ander type cryptografisch token overwegen: de cloud.

Vandaag zul je niemand verrassen cloud-flashdrive... Alle voor- en nadelen cloud-flashdrives zijn vrijwel identiek aan die van een cloud-token.

Het belangrijkste hier is de beveiliging van de gegevens die zijn opgeslagen in het cloudtoken, voornamelijk de privésleutels. Kan een cloudtoken hierin voorzien? Wij zeggen - JA!

Hoe werkt een cloudtoken? De eerste stap is het registreren van de client in de tokencloud. Om dit te doen, moet er een hulpprogramma beschikbaar zijn waarmee u toegang krijgt tot de cloud en uw login/bijnaam daarin kunt registreren:
Cloudtoken PKCS#11 – mythe of realiteit?

Na registratie in de cloud moet de gebruiker zijn token initialiseren, namelijk het tokenlabel instellen en, belangrijker nog, de SO-PIN en gebruikerspincodes instellen. Deze transacties mogen uitsluitend via een beveiligd/gecodeerd kanaal worden uitgevoerd. Het hulpprogramma pk11conf wordt gebruikt om het token te initialiseren. Om het kanaal te versleutelen, wordt voorgesteld een versleutelingsalgoritme te gebruiken Magma-CTR (GOST R 34.13-2015).

Om een ​​overeengekomen sleutel te ontwikkelen op basis waarvan het verkeer tussen client en server wordt beveiligd/versleuteld, wordt voorgesteld om het aanbevolen TK 26-protocol te gebruiken. SESPAKE - gedeeld sleutelgeneratieprotocol met wachtwoordauthenticatie.

Er wordt voorgesteld om dit wachtwoord te gebruiken op basis waarvan de gedeelde sleutel wordt gegenereerd mechanisme voor eenmalig wachtwoord. Omdat we het over Russische cryptografie hebben, is het normaal om met behulp van mechanismen eenmalige wachtwoorden te genereren CKM_GOSTR3411_12_256_HMAC, CKM_GOSTR3411_12_512_HMAC of CKM_GOSTR3411_HMAC.

Het gebruik van dit mechanisme zorgt ervoor dat toegang tot persoonlijke tokenobjecten in de cloud via SO- en USER-PIN-codes alleen beschikbaar is voor de gebruiker die deze met het hulpprogramma heeft geïnstalleerd pk11conf.

Dat is alles. Na het voltooien van deze stappen is het cloudtoken klaar voor gebruik. Om toegang te krijgen tot het cloudtoken hoeft u alleen maar de LS11CLOUD-bibliotheek op uw pc te installeren. Bij gebruik van een cloudtoken in applicaties op Android- en iOS-platforms wordt een bijbehorende SDK meegeleverd. Het is deze bibliotheek die wordt gespecificeerd bij het verbinden van een cloudtoken in de Redfox-browser of wordt geschreven in het bestand pkcs11.txt. De LS11CLOUD-bibliotheek communiceert ook met het token in de cloud via een beveiligd kanaal gebaseerd op SESPAKE, gecreëerd bij het aanroepen van de PKCS#11 C_Initialize-functie!

Cloudtoken PKCS#11 – mythe of realiteit?

Dat is alles, nu kunt u een certificaat bestellen, in uw cloudtoken installeren en naar de website van de overheidsdiensten gaan.

Bron: www.habr.com

Voeg een reactie