ハッシュ&MAC関数IP
ハッシュ関数は、メッセージの完全性を検証するために使用される数学関数です。
ハッシュ関数は、長いデータ(メッセージと呼ぶ)を小さなメッセージ(ダイジェストと呼ぶ)に変換することで成り立っています。ハッシュ関数は一方向性関数であり、逆計算はほとんど不可能です。
HMAC(Hash Message Authentication Code)関数は、メッセージの真正性(および完全性)を検証するために使用される暗号関数です。
MAC関数は、ハッシュ関数と暗号秘密鍵を用いて、長いデータ(メッセージと呼ぶ)を小さなメッセージ(MACと呼ぶ)に変換することで構成される。MAC関数は、AESやSM4のようなブロック暗号エンジンをベースにすることもあります。その場合、CMAC(Cipher-based MAC)またはGMAC(Galois MAC)と呼ばれます。
Secure-ICのポートフォリオには、以下のハッシュ&MAC関数が含まれます
- ハッシュ関数
- SHA-1
- SHA-2 (SHA-224, SHA-256, SHA-384, SHA-512, SHA-512/224, SHA-512/256) (FIPS 180-4)
- SHA-3(SHA3-224、SHA3-256、SHA3-384、SHA3-512、SHA3-512/224、SHA3-512/256、SAKE-128、SAKE-256)(FIPS 202)
- Whirlpool (ISO/IOC 10118-3)
- SM3(CCCAO)
- MD5
- MAC関数
- SHA-1、SHA-2、SHA-3、SM3上のHMAC
- CMAC on AES, SM4
- GMAC on AES, SM4
ハッシュとMACの完全性 IPは以下の機能を提供します
- サイドチャネル攻撃への対策(オプション )
- 複数のハッシュ関数を同じHMACオーバーレイで組み合わせることが可能
- スループットと面積のチューニングが可能
- AMBA(APB、AHB、AXI)インタフェース