Générer une forte HMACSHA256 clé en C#

Je suis à la recherche pour mettre en œuvre HMACSHA256 demande de signature dans une API, je suis en train de construire. De ce que j'ai compris de https://tools.ietf.org/html/rfc4868, il est préférable que la clé secrète être le même nombre de bits que l'algorithme de hachage (c'est à dire SHA256 secret des clés de 256 bits/32 octets).

Puis-je utiliser l'un des nombreux différents générateurs de nombres aléatoires pour C# ou est-il une manière spécifique que ces touches doivent être générés.

Enfin, Amazon Web Services utilise HMACSHA256, mais ils ont les clés secrètes qu'ils fournissent (au moins pour moi) est de 320 bits/40 octets (lorsque la clé est converti octets en UTF-8, voir https://github.com/aws/aws-sdk-net/blob/master/AWSSDK/Amazon.Runtime/Internal/Auth/AWS4Signer.cs#L205-L232). Est-il une raison pour utiliser plus que nécessaire par l'algorithme de hachage puisque c'est tronquée?

InformationsquelleAutor Omar | 2013-07-10