Question

Je me demande si je peux utiliser une clé secrète partagée établie entre deux clients trop la clé HMAC.

J'ai vu qu'il ya un problème quand il est utilisé comme CBC-MAC, mais je n'ai trouvé aucune preuve qu'il est une mauvaise pratique pour HMAC.

Merci, Vladimir

Était-ce utile?

La solution

Je crois qu'il est actuellement dans la catégorie des « semble probablement OK, mais pourquoi prendre le risque? ».

Les meilleures pratiques est d'avoir chaque côté générer deux nouvelles clés de la clé secrète partagée:

encryption-key := HMAC(shared-key, "Encryption Nonce")
hmac-key := HMAC(shared-key, "Authenticity Nonce")

Autres conseils

éludé à café. L'une des bonnes façons de le faire est de hachage la clé secrète partagée avec des données supplémentaires.

Par exemple:

enc-key = HASH(shared-key || 1)
hmac-key = HASH(share-key || 2)

Ceci a l'avantage de ne pas avoir besoin de transférer 2 nonces supplémentaires ainsi que d'être facile à mettre en œuvre.

Je ne voudrais pas utiliser la même clé dans différentes fonctions (+ enc HMAC). Cela est d'avoir des ennuis et une mauvaise idée.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top