HMAC.Key プロパティ

定義

HMAC 計算で使用するキーを取得または設定します。

public:
 virtual property cli::array <System::Byte> ^ Key { cli::array <System::Byte> ^ get(); void set(cli::array <System::Byte> ^ value); };
public override byte[] Key { get; set; }
member this.Key : byte[] with get, set
Public Overrides Property Key As Byte()

プロパティ値

Byte[]

HMAC 計算で使用するキー。

例外

ハッシュが開始された後、 Key プロパティを変更しようとしました。

注釈

このプロパティは、キー付きハッシュ アルゴリズムのキーです。

ハッシュ ベースのメッセージ認証コード (HMAC) を使用すると、送信者と受信者が秘密キーを共有している場合に、セキュリティで保護されていないチャネル経由で送信されたメッセージが改ざんされたかどうかを判断できます。 送信者は、元のデータのハッシュ値を計算し、元のデータと HMAC の両方を 1 つのメッセージとして送信します。 受信側は、受信したメッセージのハッシュ値を再計算し、計算されたハッシュ値が送信されたハッシュ値と一致することを確認します。

HMAC は、MD5 や SHA-1 などの任意の反復暗号ハッシュ関数とシークレット共有キーを組み合わせて使用できます。 HMAC の暗号化強度は、基になるハッシュ関数のプロパティによって異なります。

メッセージを変更して正しいハッシュ値を再現するには秘密鍵の知識が必要であるため、データまたはハッシュ値を変更すると不一致が発生します。 したがって、元のハッシュ値と計算されたハッシュ値が一致する場合、メッセージは認証されます。

MD5 と SHA-1 の競合の問題のため、Microsoft では SHA-256 以上に基づくセキュリティ モデルをお勧めします。

適用対象

こちらもご覧ください