Identification des clés et empreintes digitales

Pour une clé V3, l'identifiant clé de 8 octets se compose des 64 bits de poids faible du modulo public de la clé RSA.

L'empreinte digitale d'une clé V3 est créée en hachant le corps (sans le champ longueur de 2 octets) du MPI formant la clé (modulo public n, suivi par l'exposant e)avec MD5.

L'empreinte digitale d'une clé V4, codé sur 160 bits, est le résultat du hachage par la méthode SHA-1 de l'étiquette de 1 octet du paquet, suivi par la taille du paquet codée sur 2 octets et par l'intégralité du paquet de clé publique commençant au champ version. L'identifiant clé correspond au 64 bits de poids faible de l'empreinte digitale. Les champs à renseigner pour la fonction de hachage sont indiqués ci dessous, via l'exemple pour une clé DSA.

    1. 0x99 (1 octet),

    2. 1 octet correspondant aux bits de poids fort de (b)-(f),

    3. 2 octet correspondant aux bits de poids fort de (b)-(f),

  1. Numéro de version = 4 (1 octet),

  2. Champ renseignant l'heure de création de la clé (4 octets),

  3. Algorithme (1 octet): 17 = DSA (exemple),

  4. Champs spécifiques à l'algorithme.

    Champs spécifiques à l'algorithme pour une clé DSA (exemple) :

    1. MPI du principal p DSA,

    2. MPI du groupement DSA d'ordre q (q est le plus grand diviseur de p-1),

    3. MPI du groupement DSA correspondant au générateur g,

    4. MPI de la valeur de la clé publique DSA y ( y = g**x où x est une valeur cachée).

Il est à noter que des conflits d' identifiant clé sont possibles, c'est à dire deux clés différentes avec le même identifiant. Il est à noter qu'il existe une probabilité, certes très faible, mais présente, que deux clés différentes aient la même empreinte digitale.

Il est aussi à noter que si deux clés de format V3 et V4 partagent le même contenu de clé RSA, elles auront des identifiants clés et des empreintes digitales différents.