Si certains des mécanismes cryptographiques provenant d'un fournisseur de bibliothèques ne doivent pas être utilisés, vous pouvez supprimer les mécanismes sélectionnés. Vous pouvez envisager d'empêcher l'utilisation de mécanismes si, par exemple, le même mécanisme dans une autre bibliothèque fonctionne mieux, ou si une vulnérabilité de sécurité est en cours d'étude.
Si la structure cryptographique fournit plusieurs modes d'un fournisseur tel qu'AES, vous pouvez supprimer un mécanisme lent ou endommagé. Vous pouvez également avoir recours à cette procédure pour supprimer un algorithme avec des failles de sécurité avérées.
Vous pouvez désactiver de façon sélective des mécanismes et la fonction de nombres aléatoires à partir d'un fournisseur de matériel. Pour les réactiver, reportez-vous à l'Example 3–22. Le matériel de cet exemple, la carte Sun Crypto Accelerator 1000, fournit un générateur de nombres aléatoires.
Avant de commencer
Vous devez vous connecter en tant qu'administrateur disposant du profil de droits Crypto Management (gestion de la cryptographie). Pour plus d'informations, reportez-vous à la section A l’aide de vos droits administratifs attribués du manuel Sécurisation des utilisateurs et des processus dans Oracle Solaris 11.2 .
% cryptoadm list -m provider=/usr/lib/security/\$ISA/pkcs11_softtoken.so /usr/lib/security/$ISA/pkcs11_softtoken.so: CKM_DES_CBC,CKM_DES_CBC_PAD,CKM_DES_ECB,CKM_DES_KEY_GEN, CKM_DES3_CBC,CKM_DES3_CBC_PAD,CKM_DES3_ECB,CKM_DES3_KEY_GEN, CKM_AES_CBC,CKM_AES_CBC_PAD,CKM_AES_ECB,CKM_AES_KEY_GEN, …
$ cryptoadm list -p user-level providers: ===================== … /usr/lib/security/$ISA/pkcs11_softtoken.so: all mechanisms are enabled. random is enabled. …
$ cryptoadm disable provider=/usr/lib/security/\$ISA/pkcs11_softtoken.so \ > mechanism=CKM_DES_CBC,CKM_DES_CBC_PAD,CKM_DES_ECB
$ cryptoadm list -p provider=/usr/lib/security/\$ISA/pkcs11_softtoken.so /usr/lib/security/$ISA/pkcs11_softtoken.so: all mechanisms are enabled, except CKM_DES_ECB,CKM_DES_CBC_PAD,CKM_DES_CBC. random is enabled.
Dans l'exemple suivant, un mécanisme DES désactivé est de nouveau rendu disponible pour l'utilisation.
$ cryptoadm list -m provider=/usr/lib/security/\$ISA/pkcs11_softtoken.so /usr/lib/security/$ISA/pkcs11_softtoken.so: CKM_DES_CBC,CKM_DES_CBC_PAD,CKM_DES_ECB,CKM_DES_KEY_GEN, CKM_DES3_CBC,CKM_DES3_CBC_PAD,CKM_DES3_ECB,CKM_DES3_KEY_GEN, … $ cryptoadm list -p provider=/usr/lib/security/\$ISA/pkcs11_softtoken.so /usr/lib/security/$ISA/pkcs11_softtoken.so: all mechanisms are enabled, except CKM_DES_ECB,CKM_DES_CBC_PAD,CKM_DES_CBC. random is enabled. $ cryptoadm enable provider=/usr/lib/security/\$ISA/pkcs11_softtoken.so \ > mechanism=CKM_DES_ECB $ cryptoadm list -p provider=/usr/lib/security/\$ISA/pkcs11_softtoken.so /usr/lib/security/$ISA/pkcs11_softtoken.so: all mechanisms are enabled, except CKM_DES_CBC_PAD,CKM_DES_CBC. random is enabled.Exemple 3-16 Activation de tous les mécanismes d'un fournisseur de logiciels au niveau de l'utilisateur
Dans l'exemple suivant, tous les mécanismes de la bibliothèque au niveau de l'utilisateur sont activés.
$ cryptoadm enable provider=/usr/lib/security/\$ISA/pkcs11_softtoken.so all $ cryptoadm list -p provider=/usr/lib/security/\$ISA/pkcs11_softtoken.so /usr/lib/security/$ISA/pkcs11_softtoken.so: all mechanisms are enabled. random is enabled.Exemple 3-17 Suppression définitive d'une bibliothèque au niveau de l'utilisateur
Dans l'exemple suivant, une bibliothèque libpkcs11.so.1 est supprimée du répertoire /opt
$ cryptoadm uninstall provider=/opt/lib/\$ISA/libpkcs11.so.1 $ cryptoadm list user-level providers: /usr/lib/security/$ISA/pkcs11_kernel.so /usr/lib/security/$ISA/pkcs11_softtoken.so /usr/lib/security/$ISA/pkcs11_tpm.so kernel providers: …
Avant de commencer
Vous devez vous connecter en tant qu'administrateur disposant du profil de droits Crypto Management (gestion de la cryptographie). Pour plus d'informations, reportez-vous à la section A l’aide de vos droits administratifs attribués du manuel Sécurisation des utilisateurs et des processus dans Oracle Solaris 11.2 .
$ cryptoadm list -m provider=aes aes: CKM_AES_ECB,CKM_AES_CBC,CKM_AES_CTR,CKM_AES_CCM,CKM_AES_GCM, CKM_AES_GMAC,CKM_AES_CFB128,CKM_AES_XTS,CKM_AES_XCBC_MAC
$ cryptoadm list -p provider=aes aes: all mechanisms are enabled.
$ cryptoadm disable provider=aes mechanism=CKM_AES_ECB
$ cryptoadm list -p provider=aes aes: all mechanisms are enabled, except CKM_AES_ECB.
Dans l'exemple suivant, un mécanisme AES désactivé est de nouveau rendu disponible pour l'utilisation.
cryptoadm list -m provider=aes aes: CKM_AES_ECB,CKM_AES_CBC,CKM_AES_CTR,CKM_AES_CCM, CKM_AES_GCM,CKM_AES_GMAC,CKM_AES_CFB128,CKM_AES_XTS,CKM_AES_XCBC_MAC $ cryptoadm list -p provider=aes aes: all mechanisms are enabled, except CKM_AES_ECB. $ cryptoadm enable provider=aes mechanism=CKM_AES_ECB $ cryptoadm list -p provider=aes aes: all mechanisms are enabled.Exemple 3-19 Suppression temporaire de la disponibilité d'un fournisseur de logiciels noyau
Dans l'exemple suivant, l'utilisation du fournisseur AES est temporairement rendue impossible. La sous-commande unload est utile pour empêcher le chargement automatique d'un fournisseur pendant que le fournisseur est en cours de désinstallation. Par exemple, la sous-commande unload peut être utilisée pour modifier un mécanisme de ce fournisseur.
$ cryptoadm unload provider=aes
$ cryptoadm list … Kernel software providers: des aes (inactive) arcfour blowfish ecc sha1 sha2 md4 md5 rsa swrand n2rng/0 ncp/0 n2cp/0
Le fournisseur AES reste indisponible jusqu'à l'actualisation de la structure cryptographique.
$ svcadm refresh system/cryptosvc
$ cryptoadm list … Kernel software providers: des aes arcfour blowfish camellia ecc sha1 sha2 md4 md5 rsa swrand n2rng/0 ncp/0 n2cp/0
Si un consommateur de noyau utilise le fournisseur de logiciels noyau, le logiciel n'est pas déchargé. Un message d'erreur s'affiche et le fournisseur continue d'être disponible pour l'utilisation.
Exemple 3-20 Suppression définitive de la disponibilité du fournisseur de logicielsDans l'exemple suivant, l'utilisation du fournisseur AES est définitivement rendue impossible. Une fois supprimé, le fournisseur AES n'apparaît plus dans la liste des stratégies des fournisseurs de logiciels noyau.
$ cryptoadm uninstall provider=aes
$ cryptoadm list … Kernel software providers: des arcfour blowfish camellia ecc sha1 sha2 md4 md5 rsa swrand n2rng/0 ncp/0 n2cp/0
Si un consommateur de noyau utilise ce fournisseur de logiciels noyau, un message d'erreur s'affiche et le fournisseur continue d'être disponible pour l'utilisation.
Exemple 3-21 Réinstallation d'un fournisseur de logiciels noyau suppriméDans l'exemple suivant, le fournisseur de logiciels noyau AES est réinstallé. Pour réinstaller un fournisseur de noyau supprimé, vous devez énumérer les mécanismes à installer.
$ cryptoadm install provider=aes \ mechanism=CKM_AES_ECB,CKM_AES_CBC,CKM_AES_CTR,CKM_AES_CCM, CKM_AES_GCM,CKM_AES_GMAC,CKM_AES_CFB128,CKM_AES_XTS,CKM_AES_XCBC_MAC
$ cryptoadm list … Kernel software providers: des aes arcfour blowfish camellia ecc sha1 sha2 md4 md5 rsa swrand n2rng/0 ncp/0 n2cp/0
Avant de commencer
Vous devez vous connecter en tant qu'administrateur disposant du profil de droits Crypto Management (gestion de la cryptographie). Pour plus d'informations, reportez-vous à la section A l’aide de vos droits administratifs attribués du manuel Sécurisation des utilisateurs et des processus dans Oracle Solaris 11.2 .
Répertoriez le fournisseur de matériel.
# cryptoadm list ... Kernel hardware providers: dca/0
# cryptoadm list -m provider=dca/0 dca/0: CKM_RSA_PKCS, CKM_RSA_X_509, CKM_DSA, CKM_DES_CBC, CKM_DES3_CBC random is enabled. # cryptoadm disable provider=dca/0 mechanism=CKM_DES_CBC,CKM_DES3_CBC # cryptoadm list -p provider=dca/0 dca/0: all mechanisms are enabled except CKM_DES_CBC,CKM_DES3_CBC. random is enabled.
# cryptoadm list -p provider=dca/0 dca/0: all mechanisms are enabled. random is enabled. # cryptoadm disable provider=dca/0 random # cryptoadm list -p provider=dca/0 dca/0: all mechanisms are enabled. random is disabled.
# cryptoadm list -p provider=dca/0 dca/0: all mechanisms are enabled. random is enabled. # cryptoadm disable provider=dca/0 mechanism=all # cryptoadm list -p provider=dca/0 dca/0: all mechanisms are disabled. random is enabled.
# cryptoadm list -p provider=dca/0 dca/0: all mechanisms are enabled. random is enabled. # cryptoadm disable provider=dca/0 all # cryptoadm list -p provider=dca/0 dca/0: all mechanisms are disabled. random is disabled.
Dans les exemples suivants, les mécanismes désactivés sur un élément matériel sont activés individuellement.
# cryptoadm list -p provider=dca/0 dca/0: all mechanisms are enabled except CKM_DES_ECB,CKM_DES3_ECB
. random is enabled. # cryptoadm enable provider=dca/0 mechanism=CKM_DES3_ECB # cryptoadm list -p provider=dca/0 dca/0: all mechanisms are enabled except CKM_DES_ECB. random is enabled.
Dans l'exemple ci-dessous, seul le générateur aléatoire est activé.
# cryptoadm list -p provider=dca/0 dca/0: all mechanisms are enabled, except CKM_MD5,CKM_MD5_HMAC,…. random is disabled. # cryptoadm enable provider=dca/0 random # cryptoadm list -p provider=dca/0 dca/0: all mechanisms are enabled, except CKM_MD5,CKM_MD5_HMAC,…. random is enabled.
Dans l'exemple ci-dessous, seuls les mécanismes sont activés. Le générateur aléatoire reste désactivé.
# cryptoadm list -p provider=dca/0 dca/0: all mechanisms are enabled, except CKM_MD5,CKM_MD5_HMAC,…. random is disabled. # cryptoadm enable provider=dca/0 mechanism=all # cryptoadm list -p provider=dca/0 dca/0: all mechanisms are enabled. random is disabled.
Dans l'exemple suivant, toutes les fonctions et tous les mécanismes de la carte sont activés.
# cryptoadm list -p provider=dca/0 dca/0: all mechanisms are enabled, except CKM_DES_ECB,CKM_DES3_ECB. random is disabled. # cryptoadm enable provider=dca/0 all # cryptoadm list -p provider=dca/0 dca/0: all mechanisms are enabled. random is enabled.