GCM (Galois/Counter Mode)
GCM es un modo AEAD que combina el cifrado CTR con la autenticación GHASH, proporcionando confidencialidad e integridad a la vez, y es el modo preferido de TLS 1.2/1.3.
Propósito
Proporciona cifrado y autenticación en una sola pasada, evitando la sobrecarga en dos pasos y los escollos de implementación de CBC+HMAC.
Mecanismo
El modo CTR cifra el texto claro. GHASH calcula un MAC polinómico sobre los bloques de texto cifrado y el AAD en GF(2^128) usando la clave H = E_K(0^128), produciendo una etiqueta de autenticación de 128 bits. Si la verificación de la etiqueta falla, el texto cifrado se rechaza.
Casos de uso
- Suites criptográficas AES-GCM de TLS 1.2/1.3
- IPsec ESP
- Red inalámbrica WPA3
- Cifrado de almacenamiento
Ejemplos
- entrada
key + IV + plaintext + AADOutputciphertext + 16-byte tagAEAD
Errores comunes
- IV/nonce reuse breaks both confidentiality and integrity
- Use a counter or random IV and never repeat it
Términos relacionados
CTR (Counter Mode)
El modo CTR convierte un cifrador de bloques en un cifrador de flujo: cifra un contador incremental para generar un flujo de claves que se XOR con el texto plano, soportando paralelismo y acceso aleatorio, pero sin integridad. GLOSARIO
CBC (Cipher Block Chaining)
El modo CBC aplica XOR del bloque de texto cifrado anterior con el texto plano actual antes de cifrar, de modo que bloques idénticos producen cifrados distintos; requiere un IV aleatorio pero no aporta autenticación de integridad. GLOSARIO
Mode of Operation
Un modo de operación es un esquema que permite a un cifrado por bloques procesar datos de longitud arbitraria, definiendo cómo se encadenan los bloques de texto plano durante el cifrado; los comunes incluyen ECB, CBC, CTR y GCM. GLOSARIO
IV (Initialization Vector)
Un vector de inicialización (IV) es una entrada que inyecta aleatoriedad en los modos de cifrado por bloques, de modo que el mismo texto plano produce distintos cifrados en cada cifrado. GLOSARIO
Nonce
Un nonce (number used once) es un valor empleado una sola vez en el cifrado; similar a un IV, pero enfatiza la unicidad sobre la aleatoriedad, común en cifrados de flujo y AEAD. GLOSARIO