Station de travail cryptographique basée sur des normes de clé publique. Configuration des jetons PKCS # 11

En examinant à nouveau les fonctionnalités de l'utilitaire cryptoarmpkcs , j'ai remarqué que celui-ci, fonctionnant principalement avec les jetons cryptographiques / cartes à puce PKCS # 11, n'a pas de fonctionnalité intégrée pour leur configuration. Nous parlons d' initialiser des jetons , de définir des codes PIN, etc. Et il a été décidé d'ajouter cette fonctionnalité. La première étape a consisté à étendre les fonctionnalités du package TclPKCS11 , dont la bibliothèque est écrite en C.

Nouvelles fonctionnalités TclPKCS11


Trois nouvelles fonctionnalités sont apparues dans le package:

::pki::pkcs11::inittoken <handle> <slotId> <SO-pin> <label for token> 

 ::pki::pkcs11::inituserpin <handle> <slotId> <SO-pin> <USER-pin> 

 ::pki::pkcs11::setpin <handle> <slotId> <so | user> <oldpin> <newpin> 

La première fonction :: pki :: pkcs11 :: inittoken est d'initialiser le jeton. Il faut garder à l'esprit que si cette fonction est appliquée à un jeton de travail, tous les objets qu'il contient seront détruits.

La deuxième fonction :: pki :: pkcs11 :: inituserpin est pour initialiser un PIN utilisateur (PIN UTILISATEUR).

Après l'initialisation initiale du code PIN utilisateur, il doit être immédiatement remplacé par le code PIN, qui sera utilisé à l'avenir, et le stocker, comme le SO-PIN, à l'abri des regards indiscrets. Pour des raisons de sécurité, les jetons, en règle générale, ne vous permettent pas de vous y connecter avec le code PIN initial.

Pour changer les codes PIN, une troisième fonction est utilisée, à savoir :: pki :: pkcs11 :: setpin. Cette fonction vous permet de modifier à la fois un code PIN utilisateur et un code SO-PIN.

Il convient également de garder à l'esprit que les jetons, en règle générale, ne permettent pas de restaurer le SO-PIN d'origine (par défaut). Mais si vous réinitialisez le jeton, vous obtiendrez à nouveau le SO-PIN par défaut. L'implémentation du package TclPKCS11 peut être visualisée sur github .

Maintenant, ayant sous la main, le package TclPKCS11 avec de nouvelles fonctions, il n'était pas difficile d'implémenter une interface graphique pour ces fonctions:



Jetons d'entraînement


Mais avant de les utiliser, faisons attention au fait qu'un autre bouton «Créer des jetons» a été ajouté à la fonctionnalité de l'utilitaire.

Cela est dû au fait que tout le monde n'a pas le jeton matériel PKCS # 11 avec prise en charge de la cryptographie russe, et si c'est le cas, il est effrayant de l'utiliser à des fins éducatives. Et juste pour que l'utilitaire puisse être facilement utilisé à des fins éducatives, tout d'abord, le bouton «Créer des jetons» est apparu. En cliquant sur ce bouton, vous verrez des instructions sur la façon d'obtenir des jetons logiciels ou cloud:



Ces jetons implémentent les dernières recommandations TK-26 pour PKCS # 11 v.2.40.

Nous verrons brièvement comment obtenir un jeton cloud. Téléchargez le package de distribution nécessaire, décompressez-le si nécessaire et exécutez-le. Si nous n'avons pas de jeton cloud, nous recevrons le message suivant:



Comme nous n'avons pas encore de jeton cloud, cliquez sur le bouton "S'inscrire dans le cloud":



Après avoir rempli les champs, cliquez sur le bouton "Terminer":



Puisque nous parlons principalement de formation, nous pouvons enregistrer un mot de passe pour accéder au cloud (mais pas le token) sur le lieu de travail:



Initialisation du jeton


Maintenant que nous sommes enregistrés dans le cloud, nous quittons l'utilitaire guils11cloud_conf et retournons à l'utilitaire cryptoarmpkcs pour configurer le jeton cloud. Il convient de noter ici que la bibliothèque de jetons cloud sera enregistrée dans le dossier ls11cloud créé dans le répertoire personnel de l'utilisateur. C'est cette bibliothèque qui devra être sélectionnée comme bibliothèque PKCS # 11 pour le jeton cloud. Après avoir choisi une bibliothèque, vous pouvez voir les mécanismes cryptographiques pris en charge:



Nous revenons à l'initialisation du token cloud en cliquant sur le bouton "Token Configuration". Nous sélectionnons l'opération «Initialisation du token», remplissons les champs (rappelez-vous que le SO-PIN par défaut est 87654321) et cliquez sur le bouton «Effectuer l'opération»:



Tous les jetons sont prêts à fonctionner. Mais n'oubliez pas de changer le SO-PIN et de changer périodiquement le PIN de l'utilisateur. En utilisant un schéma similaire, vous pouvez créer un jeton logiciel. Les personnes intéressées peuvent essayer:



Maintenant, nous pouvons y stocker nos certificats personnels, signer des documents, faire tout ce qui a été écrit dans cette série d'articles.

Innovations à venir dans PKI / PKI


Le 7 novembre 2019, la Douma a adopté en première lecture des amendements à la loi «Sur les signatures électroniques». Cet amendement s'applique à toutes les organisations et aux entrepreneurs individuels, car les règles de délivrance des signatures électroniques vont changer.

Si j'ai tout compris correctement, les personnes morales et les entrepreneurs individuels ne pourront recevoir de certificats qualifiés qu'au Service fédéral des impôts et aux organisations financières de la Banque centrale de la Fédération de Russie. Et seule l'utilisation de ces certificats peut être définie
Signature électronique qualifiée améliorée (Cades-XLT1).

Les centres de certification (CA) accrédités par le Ministère des télécommunications et des communications de masse ne pourront délivrer de tels certificats qu'à des particuliers.

En outre, les exigences pour les CA changeront considérablement: les fonds propres devraient être augmentés de 7 millions à 500 millions - 1 milliard, le montant de la responsabilité d'assurance passe de 30 millions à 300-500 millions de roubles, la période d'accréditation est réduite de 5 à 3 ans.

Le projet de loi a déjà suscité de vives critiques. Les principales plaintes sont que les changements entraîneront la fermeture de la grande majorité des autorités de certification commerciales, nécessiteront des dépenses budgétaires importantes pour étendre et maintenir les capacités du service fédéral des impôts des autorités compétentes, ainsi que la concentration de tous les types de risques sur une seule infrastructure, qui deviendra une cible pratique pour les cyberattaques.

Il y a un autre amendement - l'obligation de signer les documents de l'entreprise non pas par un mais par deux signatures qualifiées renforcées en même temps. Le chef de l'organisation devra apposer sur le document la signature de la personne morale et une signature numérique personnelle à titre individuel.

Et ici, l'utilitaire cryptoarmpkcs sera très, très utile, car sa fonctionnalité vous permet de mettre plusieurs signatures sous le document, ainsi que de voir qui et quand a signé le document:



PS Pour ceux qui veulent obtenir des utilitaires pour la première fois, cela peut encore être fait ici:
Distributions pour Linux, OS X et Windows

Source: https://habr.com/ru/post/fr476210/


All Articles