{{tag>Brouillon}} = Notes carte à puce - smart card Voir : * https://access.redhat.com/documentation/fr-fr/red_hat_enterprise_linux/8/html/managing_systems_using_the_rhel_8_web_console/installing-tools-for-managing-and-using-smart-cards_configuring-smart-card-authentication-with-the-web-console * https://repo.zenk-security.com/Linux%20et%20systemes%20d.exploitations/Installer%20un%20lecteur%20de%20carte%20a%20puce%20USB%20sous%20Linux.pdf * https://github.com/OpenSC/OpenSC/wiki/Quick-Start-with-OpenSC * https://github.com/OpenSC/OpenSC/wiki/SmartCardHSM * https://www.redhat.com/en/blog/smart-card-forwarding-fedora * https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html-single/managing_smart_card_authentication/index * https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/managing_smart_card_authentication/configuring-and-importing-local-certificates-to-a-smart-card_managing-smart-card-authentication x509 * https://github.com/johndoe31415/x509sak * https://docs.aws.amazon.com/fr_fr/elasticbeanstalk/latest/dg/configuring-https-ssl.html * https://linux.goffinet.org/administration/confidentialite/pratique-certificats-tls Coté serveur : * Nginx / PHP : http://sweet.ua.pt/jpbarraca/course/sio-1920/p/guide-SSL-en.pdf Python: * https://python-pkcs11.readthedocs.io/en/latest/index.html sudo aptitude install pcscd libpcsclite1 pcsc-tools sudo aptitude install openct opensc Test your Token opensc-tool -lv openct-tool list pcsc_scan Voir aussi : * https://www.openscdp.org/scsh3/download.html How can I distinguish a Nitrokey HSM 1 from an Nitrokey HSM 2? FIXME Use opensc-tool --list-algorithms == Outils * opensc-tool * pkcs11-tool * pkcs15-tool * pkcs15-init * cardos-tool == Install - Vérif - Drivers pkcs11-tool --module opensc-pkcs11.so -L == OpenSSL List the available slots. pkcs11-tool --list-slots FIXME openssl req -engine pkcs11 -new -key slot_X-id_XXXX -keyform engine -x509 -out cert.pem -text where X is the appropriate slot number and XXXX is the slot ID, e.g. "... -key slot_5-id_c6f280080fb0ed1ebff0480a01d00a98a1b3b89a ..." == GPG Reset to factory defaults: Make sure GnuPG agent is started, if not: eval $(gpg-agent --daemon) Send the reset commands: gpg-connect-agent < file Where “file” contains: hex scd serialno scd apdu 00 20 00 81 08 40 40 40 40 40 40 40 40 scd apdu 00 20 00 81 08 40 40 40 40 40 40 40 40 scd apdu 00 20 00 81 08 40 40 40 40 40 40 40 40 scd apdu 00 20 00 81 08 40 40 40 40 40 40 40 40 scd apdu 00 20 00 83 08 40 40 40 40 40 40 40 40 scd apdu 00 20 00 83 08 40 40 40 40 40 40 40 40 scd apdu 00 20 00 83 08 40 40 40 40 40 40 40 40 scd apdu 00 20 00 83 08 40 40 40 40 40 40 40 40 scd apdu 00 e6 00 00 scd apdu 00 44 00 00 /echo Reset complete Source https://blog.mozilla.org/security/2013/02/13/using-cryptostick-as-an-hsm/ == Autres data objects (DF, EF) === pkcs The three keys in the have these IDs: Singing key: 1, Decryption key: 2, Authentication: 3. Key generation via ''pkcs15-init'' pkcs15-init --delete-objects privkey,pubkey --id 3 --generate-key rsa/2048 --auth-id 3 --verify The keyspec consist of the key type (only RSA is supported) and optinally a slash followed by the keysize in bits (defaults to 1024). E.g to generate a 1024-bit RSA key, use ''pkcs15-init -G rsa/1024 -a 01 -l testkey'' There is limitation: ''pkcs15-init'' requires new key length to be the same as existing key. To generate key with different key length, ''openpgp-tool'' is recommended. ''pkcs15-init'' also requires to explicitly remove existing key/object. That’s why we have ''--delete-objects privkey,pubkey --id 3'' in the command (though it has no effect to CryptoStick, which does not support deleting key, but support overwriting key). Source : https://github.com/OpenSC/OpenSC/wiki/OpenPGP-card Autres pkcs15-tool --dump pkcs15-init --delete-objects privkey,pubkey --id 3 --store-private-key myprivate.p12 --format pkcs12 --auth-id 3 --verify-pin $ pkcs15-init --delete-objects privkey,pubkey --id 2 --store-private-key myprivate.p12 --format pkcs12 --auth-id 3 --verify-pin The two commands copy the key-certificate pair to the slot 2 (needed for decrypting emails) and slot 3 (needed for signing). Autres - Génération paire de clefs pour s/mime #set +o history export HISTCONTROL = ignorespace pkcs11-tool --module opensc-pkcs11.so --login --pin 648219 --keypairgen --key-type rsa:2048 --id 40 --label "antispam@relst.nl"