AES-GCM (Galois/Counter Mode)
Gelir İdaresi Başkanlığı teknik kılavuzları, Vergi Usul Kanunu ve UBL-TR standartları referans alınarak doğrulanmıştır.
Tanımı ve Kriptografik Mimarisi (NIST SP 800-38D)
AES-GCM (Advanced Encryption Standard in Galois/Counter Mode), simetrik blok şifrelemede hem gizlilik (confidentiality) hem de veri bütünlüğü ile orijinallik doğrulaması (authenticity) sağlayan bir Kimlik Doğrulamalı Şifreleme (AEAD - Authenticated Encryption with Associated Data) modudur. NIST tarafından SP 800-38D standardı olarak onaylanan AES-GCM, modern internet protokollerinin (TLS 1.3, IPsec, SSHv2, QUIC/HTTP3) ve kurumsal e-dönüşüm veri transfer ağlarının fiili güvenlik standardıdır.
Çalışma Prensibi: CTR Modu ve GHASH Galois Polinom Çarpımı
AES-GCM temel olarak iki kriptografik fonksiyonun entegrasyonuyla çalışır:
- Sayaç Modu (Counter Mode - CTR) Şifreleme: Düz metin (plaintext) blokları doğrudan blok şifreleme algoritmasına sokulmaz. Bunun yerine her blok için artan bir sayaç (counter) ve Başlatma Vektörü (IV / Nonce) birleşimi AES ile şifrelenerek bir anahtar akışı (keystream) üretilir ve düz metin ile XOR'lanır. Bu sayede blokların paralel olarak (eşzamanlı donanım kanallarında) şifrelenmesi ve deşifre edilmesi mümkün olur.
- GHASH Doğrulama Fonksiyonu: Üretilen şifreli metin (ciphertext) ve şifrelenmeden doğrulanması istenen ek veriler (AAD - Additional Authenticated Data; örn. paket başlıkları, IP adresleri), $GF(2^{128})$ sonlu Galois alanı üzerinde tanımlanan özel indirgenemez polinom ($f(x) = x^{128} + x^7 + x^2 + x + 1$) kullanılarak GHASH algoritmasından geçirilir. Sonuçta 128 bitlik kriptografik bir kimlik doğrulama etiketi (Authentication Tag) elde edilir.
Nonce Tekilliği ve Kriptografik Felaket Riski (Joux's Forbidden Attack)
AES-GCM modunda Nonce (Number Used Once - Başlatma Vektörü) tekilliği mutlaktır. Önerilen standart Nonce uzunluğu 96 bittir (12 byte). Eğer aynı simetrik anahtar altında aynı Nonce değeri iki farklı mesaj için kullanılırsa:
- Saldırgan her iki şifreli metni XOR'layarak düz metinlerin XOR farkını ($P_1 \oplus P_2$) doğrudan elde eder.
- Daha da kritiği, Antoine Joux tarafından kanıtlanan 'Forbidden Attack' matematiksel yöntemiyle, GHASH doğrulama anahtarı ($H = E_K(0^{128})$) Galois alanı üzerinde polinom kökleri çözülerek saniyeler içinde hesaplanabilir. Doğrulama anahtarı ele geçirildiğinde saldırgan geçerli etiketler üreterek sahte mesajlar enjekte edebilir ve sistemin kimlik doğrulama güvenliği tamamen çöker.
Donanım Hızlandırması ve Yüksek Performans Avantajı
Modern işlemcilerde bulunan Intel/AMD AES-NI ve ARMv8-A Cryptography Extensions komut setleri, AES turlarını ve GHASH polinom çarpımlarını (PCLMULQDQ - Carry-Less Multiplication) doğrudan donanım seviyesinde tek çevrimde yürütür. Bu sayede AES-GCM, yazılımsal CBC+HMAC yaklaşımlarına kıyasla 5 ila 10 kat daha düşük CPU yüküyle saniyede onlarca gigabit hızında hat hızı (line-rate) şifreleme performansı sunar.
e-Dönüşüm, TLS 1.3 ve Bulut Entegrasyonundaki Yeri
Gelir İdaresi Başkanlığı (GİB) ve lisanslı özel entegratörlerin REST/SOAP API uç noktalarında, Webhook geri bildirimlerinde ve HSM bulut anahtar saklama altyapılarında TLS 1.3 zorunluluğu bulunmaktadır. TLS 1.3 protokolünde CBC modundaki güvenlik açıkları nedeniyle CBC tamamen kaldırılmış; yerine TLS_AES_128_GCM_SHA256 ve TLS_AES_256_GCM_SHA384 birincil zorunlu şifreleme takımları olarak kabul edilmiştir.