Wegman–Carter MAC
メッセージ認証の作り方の一つ。高速なユニバーサルハッシュに、メッセージごとの新しい使い捨てマスクを組み合わせる。
IBMのマーク・ウェグマンとラリー・カーターは1970年代後半にユニバーサルハッシュを導入し、1981年にそれをMACにする方法を示した。メッセージを関数族からランダムに選んだ秘密の関数でハッシュし、ちょうど一度だけ使う値を加える。マスクが真の乱数なら、安全性は情報理論的なものになる。実際には、マスクはノンスにブロック暗号やPRFを適用して作る。
今日の高速な認証の多くはこの形で作られている。AES-GCMのGHASH、ChaCha20-Poly1305のPoly1305、SSHのUMACがそうで、弱点も共通している。ハッシュ鍵は線形で、使い捨てマスクだけが守りなので、ノンスが一回でも再利用されると鍵を解かれ、何でも偽造されかねない。