AES-128-GCM ENCRYPTION TOOL
Other Crypto Algorithms
AES-128-CBC AES-128-CBC-CTS AES-128-CBC-HMAC-SHA1 AES-128-CBC-HMAC-SHA256 AES-128-CCM AES-128-CFB AES-128-CFB1 AES-128-CFB8 AES-128-CTR AES-128-ECB AES-128-GCM AES-128-GCM-SIV AES-128-OCB AES-128-OFB AES-128-SIV AES-128-WRAP AES-128-WRAP-INV AES-128-WRAP-PAD AES-128-WRAP-PAD-INV AES-128-XTS AES-192-CBC AES-192-CBC-CTS AES-192-CCM AES-192-CFB AES-192-CFB1 AES-192-CFB8 AES-192-CTR AES-192-ECB AES-192-GCM AES-192-GCM-SIV AES-192-OCB AES-192-OFB AES-192-SIV AES-192-WRAP AES-192-WRAP-INV AES-192-WRAP-PAD AES-192-WRAP-PAD-INV AES-256-CBC AES-256-CBC-CTS AES-256-CBC-HMAC-SHA1 AES-256-CBC-HMAC-SHA256 AES-256-CCM AES-256-CFB AES-256-CFB1 AES-256-CFB8 AES-256-CTR AES-256-ECB AES-256-GCM AES-256-GCM-SIV AES-256-OCB AES-256-OFB AES-256-SIV AES-256-WRAP AES-256-WRAP-INV AES-256-WRAP-PAD AES-256-WRAP-PAD-INV AES-256-XTS ARIA-128-CBC ARIA-128-CCM ARIA-128-CFB ARIA-128-CFB1 ARIA-128-CFB8 ARIA-128-CTR ARIA-128-ECB ARIA-128-GCM ARIA-128-OFB ARIA-192-CBC ARIA-192-CCM ARIA-192-CFB ARIA-192-CFB1 ARIA-192-CFB8 ARIA-192-CTR ARIA-192-ECB ARIA-192-GCM ARIA-192-OFB ARIA-256-CBC ARIA-256-CCM ARIA-256-CFB ARIA-256-CFB1 ARIA-256-CFB8 ARIA-256-CTR ARIA-256-ECB ARIA-256-GCM ARIA-256-OFB CAMELLIA-128-CBC CAMELLIA-128-CBC-CTS CAMELLIA-128-CFB CAMELLIA-128-CFB1 CAMELLIA-128-CFB8 CAMELLIA-128-CTR CAMELLIA-128-ECB CAMELLIA-128-OFB CAMELLIA-192-CBC CAMELLIA-192-CBC-CTS CAMELLIA-192-CFB CAMELLIA-192-CFB1 CAMELLIA-192-CFB8 CAMELLIA-192-CTR CAMELLIA-192-ECB CAMELLIA-192-OFB CAMELLIA-256-CBC CAMELLIA-256-CBC-CTS CAMELLIA-256-CFB CAMELLIA-256-CFB1 CAMELLIA-256-CFB8 CAMELLIA-256-CTR CAMELLIA-256-ECB CAMELLIA-256-OFB CHACHA20 CHACHA20-POLY1305 DES-EDE-CBC DES-EDE-CFB DES-EDE-ECB DES-EDE-OFB DES-EDE3-CBC DES-EDE3-CFB DES-EDE3-CFB1 DES-EDE3-CFB8 DES-EDE3-ECB DES-EDE3-OFB DES3-WRAPThe AES-128-GCM algorithm combines the Advanced Encryption Standard with a Galois/Counter Mode of operation to provide both confidentiality and integrity. It uses a symmetric key of 128 bits for encryption and decryption. The algorithm is widely adopted in secure communications, including TLS and IPsec protocols, due to its efficiency and strong cryptographic guarantees.
Key Components
- Key: A 128-bit secret key used for both encryption and decryption.
- Initialization Vector (IV): A unique 96-bit value for each encryption operation, ensuring that identical plaintexts encrypt differently.
- Plaintext: The input data to be encrypted.
- Ciphertext: The encrypted output generated from the plaintext using the key and IV.
- Authentication Tag: A 128-bit tag produced by the Galois field multiplication to verify data integrity and authenticity.
Encryption Process
- The plaintext is divided into blocks of 128 bits.
- The AES block cipher encrypts each block using the 128-bit key.
- The Galois/Counter Mode generates a unique counter for each block and combines it with the AES output using XOR operations.
- Simultaneously, an authentication tag is computed using a Galois field multiplication over the encrypted blocks.
- The final ciphertext is concatenated with the authentication tag to produce the complete encrypted message.
Decryption Process
- The ciphertext and authentication tag are separated.
- The counter values are reconstructed using the same IV used during encryption.
- Each ciphertext block is XORed with the AES-encrypted counter to recover the original plaintext.
- The authentication tag is recomputed and compared with the received tag to ensure integrity and authenticity.
- If the tags match, the plaintext is considered valid; otherwise, the decryption process fails.
Security Features
- Provides confidentiality through AES-128 encryption.
- Provides integrity and authentication using a Galois field-based tag.
- Resistant to common cryptographic attacks, including replay attacks and forgery attempts.
- Efficient in both hardware and software implementations, suitable for high-performance applications.
Usage Considerations
Correct implementation requires a unique IV for every encryption operation to prevent collisions. Key management is critical; the 128-bit key must remain secret. The authentication tag ensures that any modification of the ciphertext is detected before decryption. AES-128-GCM is preferred in environments where both speed and security are required, and it is commonly integrated into network protocols and secure storage systems.