私が構築している API で HMACSHA256 要求署名を実装しようとしています。https://www.rfc-editor.org/rfc/rfc4868から私が理解したことから、秘密鍵はハッシュアルゴリズムと同じビット数であることが最善です (つまり、SHA256 秘密鍵は 256 ビット/32 バイトである必要があります)。 .
C# 用のさまざまな乱数ジェネレーターの 1 つを使用できますか、またはこれらのキーを生成する必要がある特定の方法がありますか。
最後に、Amazon Web Services は HMACSHA256 を使用しますが、(少なくとも私には) 彼らが提供する秘密鍵は 320 ビット/40 バイトです (キーが UTF-8 を使用してバイトに変換される場合、https://github.com/aws/を参照してください)。 aws-sdk-net/blob/master/AWSSDK/Amazon.Runtime/Internal/Auth/AWS4Signer.cs#L205-L232 )。切り捨てられているため、ハッシュアルゴリズムで必要以上に使用する理由はありますか?