GCM
Galois/Counter Mode
CTRにGalois Message Authentication Code(GMAC)を組み合わせた128bit用 GCM の IV は nonce + 下位 counte 32bit 00000001 はじまり? 1つめはGHASHに使って2つめから暗号に利用
CTR の IV は nonce + 下位 counter ビット 0000 ではじまるようなので差があるかも。
nonce + counter でブロックサイズ(128bit)、 nonce の桁数は任意? 96bit程度、桁上がりも考慮したほうがよさそう
元のブロック暗号は順方向(暗号化)のみ利用する (AESの復号は最適化できていないと遅かったり)
AESと組み合わせてAES-GCMとして使われることが多い
NIST SP 800-38D
Recommendation for Block Cipher Modes of Operation: Galois/Counter Mode (GCM) and GMAC
ISO/IEC 19772:2009 → ISO/IEC 19772:2020
例
RFC 5116 An Interface and Algorithms for Authenticated Encryption
RFC 5216 The EAP-TLS Authentication Protocol ?
利用
RFC 4106 The Use of Galois/Counter Mode (GCM) in IPsec Encapsulating Security Payload (ESP) テストベクトルあり?
RFC 5288 AES Galois Counter Mode (GCM) ChiperSuites for TLS
RFC 5289 TLS Elliptic Curve Cipher Suites with SHA-256/384 and AES Galois Counter Mode (GCM)
RFC 5647 AES Galois Counter Mode for the Secure Shell Transport Layer Protocol
RFC 7714 AES-GCM Authenticated Encryption in the Secure Real-time Transport Protocol (SRTP)
RFC 8452 AES-GCM-SIV: Nonce Misuse-Resistant Authenticated Encryption