次の方法で共有


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 以上に基づくセキュリティ モデルをお勧めします。

適用対象

こちらもご覧ください