Signe

La carte de fonction Signer prend du texte d'entrée et utilise un algorithme de hachage cryptographique et une clé privée pour créer une signature numérique. Vous pouvez envoyer la signature, accompagnée de votre clé publique, afin que les parties externes puissent valider que vous avez envoyé le message original et qu'il n'a pas été modifié.

Le format du hash résultant peut être Base64, hex ou binaire, selon le paramètre de sortie spécifié.

Entrée

Champ Définition Type Obligatoire
algorithme

Sélectionnez l'algorithme de hachage cryptographique à utiliser :

  • md5

  • sha1

  • sha256

  • sha384

  • sha512

Liste déroulante FALSE
données Votre message que vous souhaitez faire signer. Chaîne TRUE
condensé

Sélectionnez le formatage de sortie pour le hachage résultant :

  • base64

  • hex

  • binary

Liste déroulante FALSE
clé privée
Clé Votre clé privée pour la signature. Il doit s'agir d'une clé privée au format PEM.

Vous pouvez générer une clé privée et une clé publique correspondante en utilisant les commandes OpenSSL. Par exemple, pour générer une clé PEM privée de 2048 bits protégée par une phrase d'accès :

openssl genrsa -des3 -out key.pem 2048

Et pour la clé publique correspondante

openssl rsa -in key.pem -pubout -out pubkey.pem

Chaîne TRUE
mot de passe

Si votre clé privée est chiffrée avec un mot de passe, saisissez cette chaîne.

Chaîne FALSE

Sortie

Champ Définition Type
sortie La signature numérique de votre texte d'entrée. Chaîne

Vous pouvez utiliser le résultat du champ sortie partout où du texte peut être envoyé.

Exemple

Pour confirmer qu'un contenu est valide, votre destinataire a besoin de votre signature numérique et de la clé publique générée à partir de votre clé privée. Ils doivent également connaître l'algorithme utilisé pour générer la signature numérique et le formatage du hash de sortie.

Par exemple, Jane a envoyé le message My secret message!dans un fichier texte appelé message.txt à Bob.

Bob souhaite confirmer que c'est bien Jane qui a envoyé le message et qu'il n'a pas été modifié en cours de route.

Jane utilise la fonction Signer pour générer un fichier de signature numérique en utilisant l'algorithme sha256 et une option de digest base64. Elle copie la sortie de la carte de fonction dans un fichier texte appelé signature.base64.

Pour convertir la sortie base64 de la fonction Signer en un fichier de signature au format binaire, Jane exécute ce qui suit sur une ligne de commande :

base64 --decode signature.base64 > signature.bin

Elle envoie ce fichier signature.bin, avec son publicKey.pem à Bob, et constate que sa signature utilise l'algorithme SHA-256 et que le hachage est formaté en base64.

Bob utilise la commande suivante sur son système pour vérifier que la signature correspond à ce qui a été envoyé dans le fichier original :

openssl dgst -sha256 -verify publicKey.pem -signature signature.bin message.txt