J'utilise HMACSHA512 pour hacher des données à l'aide d'une clé partagée. Puisque la clé est partagée, j'aimerais que ce soit tous les caractères imprimables pour faciliter le transport. Je me demande quelle est la meilleure approche pour générer ces clés.Génération d'une clé partagée HMAC imprimable dans .Net
J'utilise actuellement la méthode GetBytes() de RNGCryptoServiceProvider pour générer une clé, mais le tableau d'octets qu'elle renvoie contient des caractères non imprimables. Donc, je me demande si c'est sûr pour encoder en base64 le résultat ou est-ce que cela réduit trop le caractère aléatoire et rend les choses beaucoup moins sécurisées? Si ce n'est pas une bonne approche, pouvez-vous en suggérer une? Je comprends qu'en limitant les touches aux caractères imprimables, je limite la largeur globale de l'espace clé (c'est-à-dire: en supprimant 1 des 8 bits), mais je suis d'accord avec cela.
Cette première phrase est un jeu de réflexion. –
Merci pour la confirmation Andrew. Je vais prendre la dernière approche de la génération d'un tableau 24 bits et base64 l'encoder en 32 octets. – BrettRobi