1. ホーム
  2. hash

ハッシュとMAC(Message Authentication code)の違いは何ですか?

2023-10-28 22:17:52

質問

ハッシュとMAC(Message Authentication code)の違いは何ですか?

定義からすると同じ機能のように見えますが、実際はどうなのでしょうか?

何が違うのか、誰か説明してください。

どのように解決するのですか?

主な違いは概念的なものです。 はハッシュ はデータの完全性を保証するために使われるのに対して MAC はデータの完全性と認証を保証します。

これは、外部からの入力なしに、メッセージからハッシュコードがブラインドで生成されることを意味します。

MACは代わりに、コードを生成するときに使用するハッシュ関数の種として秘密鍵を使用します。これは、メッセージが変更されていないだけでなく、それを送った人が私たちが期待していた人であることを受信者に保証するはずです:さもなければ、攻撃者はコードを生成するために使用した秘密鍵を知ることができません。

wikipedia によると、あなたはそれを持っています。

MAC関数は暗号ハッシュ関数と似ていますが、異なるセキュリティ要件を持っています。安全であると見なされるには、MAC 関数は選択平文攻撃による実存的偽造に耐える必要があります。これは、攻撃者が秘密鍵を所有し、攻撃者が選択したメッセージの MAC を生成するオラクルにアクセスできたとしても、攻撃者は実行不可能な量の計算を実行せずに他のメッセージの MAC を推測することができないことを意味します。

もちろん、それらの類似性にもかかわらず、それらは異なる方法で実装されています。通常、MAC生成アルゴリズムはハッシュコード生成アルゴリズムに基づき、秘密鍵の使用を気にする拡張が施されています。