Warren
1650708ac7
Test / test (push) Has been cancelled
Test / build (push) Has been cancelled
Implement Phase 1 AES-GCM packet processing: AEAD encryption/decryption
Phase 1 complete implementation:
- AES-GCM AEAD encryption (EncryptedPacket::new)
- AES-GCM AEAD decryption (EncryptedPacket::read)
- AES-GCM packet structure: packet_length plaintext + ciphertext + 16-byte tag
- AES-GCM nonce: sequence_number (4 bytes -> 12 bytes)
- AES-CTR fallback preserved (MtE mode)
Key differences AES-GCM vs AES-CTR:
- AES-GCM: packet_length is plaintext (as AAD)
- AES-CTR: packet_length is encrypted
- AES-GCM: 16-byte GCM tag (no separate MAC)
- AES-CTR: 32-byte HMAC-SHA256 MAC
Performance improvement:
- AES-GCM: encrypt+authenticate in one step (AEAD)
- AES-CTR: MAC-then-Encrypt (2 steps)
Testing:
- OpenSSH client negotiated aes256-gcm@openssh.com
- cipher_mode set to AesGcm successfully
- Next: full SSH connection test
2026-06-19 10:20:29 +08:00
..
2026-06-19 05:21:38 +08:00
2026-06-19 05:21:38 +08:00
2026-06-19 08:19:16 +08:00
2026-06-19 06:26:20 +08:00
2026-06-19 05:21:38 +08:00
2026-06-19 05:21:38 +08:00
2026-06-19 05:21:38 +08:00
2026-06-19 06:26:20 +08:00
2026-06-19 01:13:23 +08:00
2026-06-12 12:59:54 +08:00
2026-06-18 23:35:18 +08:00
2026-06-19 10:20:29 +08:00
2026-06-19 08:19:16 +08:00
2026-05-30 14:08:55 +08:00
2026-06-19 05:21:38 +08:00
2026-06-19 05:21:38 +08:00
2026-06-19 01:25:44 +08:00
2026-06-19 05:21:38 +08:00
2026-05-30 14:08:55 +08:00
2026-06-12 12:59:54 +08:00
2026-06-19 05:21:38 +08:00
2026-06-19 08:19:16 +08:00
2026-06-19 05:21:38 +08:00
2026-06-12 12:59:54 +08:00
2026-06-19 05:21:38 +08:00
2026-06-12 12:59:54 +08:00
2026-05-30 14:08:55 +08:00
2026-06-19 05:21:38 +08:00
2026-06-19 05:21:38 +08:00
2026-06-19 05:21:38 +08:00
2026-06-19 05:21:38 +08:00
2026-06-19 05:21:38 +08:00
2026-06-19 09:20:20 +08:00
2026-06-12 12:59:54 +08:00
2026-06-12 12:59:54 +08:00
2026-06-12 12:59:54 +08:00
2026-06-19 08:19:16 +08:00