Les clés Tink se composent à la fois du matériel de clé et des métadonnées. La section sur l'ajout de tags aux textes chiffrés explique comment Tink permet également de préfixer les textes chiffrés avec une chaîne de cinq octets dérivée de l'ID, ce qui signifie que la clé dépend également de l'ID dont elle dispose dans la collection de clés.
Par conséquent, pour créer une clé, Tink utilise généralement les ingrédients suivants:
- Objet décrivant tous les paramètres
- ID de la nouvelle clé
- Aléatoire uniforme et sécurisé de manière cryptographique
Exemple
Prenons l'exemple du protocole HMAC (RFC 2014). Pour spécifier un calcul HMAC dans Tink, vous devez fournir les informations suivantes, qui forment la clé:
- Matériel de clé de HMAC.
- Fonction de hachage à utiliser.
- Longueur du fichier HMAC (voir RFC 2014, section 5), si elle est tronquée.
- Le préfixe spécifique de Tink par lequel commence chaque balise (le cas échéant).
Les paramètres correspondants sont constitués de toutes ces informations, à l'exception du matériel de clé réel. Plus précisément :
- Longueur du matériel de clé.
- Fonction de hachage utilisée
- Longueur de sortie du HMAC, si tronquée.
- Spécification de la méthode de recherche du préfixe à partir de l'ID.
Avec le matériel de clé et l'ID, il s'agit de la clé complète. Pour en savoir plus sur la mise en œuvre de ces objets, consultez cette page.