0Pricing
Cryptology Academy · Ders

GCM ve Kimlik Doğrulamalı Şifreleme

Kurcalamayı önlemek için şifrelemeye kimlik doğrulama etiketleri ekleyin.

GCM ve Kimlik Doğrulamalı Şifreleme, CoddyKit'te ücretsiz bir Cryptology Academy dersidir. Bu, 4 dersinin 4. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Cryptology Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Cryptology Academy kursu toplamda 4 dersten oluşur.

Hoş Geldiniz

AES-GCM, doğrulamalı şifreleme için altın standarttır. Tek işlemde gizlilik AND bütünlük sağlar ve ayrı bir HMAC adımına gerek kalmadan kurcalamayı önler.

Yalnızca Şifrelemenin Sorunu

Şifreleme gizlilik sağlar; bütünlük ise NOT kapsamındadır. AES-CBC şifreli metnini ele geçiren bir saldırgan, anahtarı bilmeden bitleri değiştirerek şifresi çözülen açık metni değiştirebilir.

AEAD: İlişkilendirilmiş Verilerle Doğrulamalı Şifreleme

AEAD şemaları şunları üretir: şifreli metin + doğrulama etiketi. Etiket, hem şifreli metni AND isteğe bağlı şifrelenmemiş ilişkilendirilmiş verileri (AAD) doğrular. Herhangi bir değişiklik etiketi geçersiz kılar.

GCM Mimarisi

AES-GCM şunları kullanır: 1. Şifreleme için AES-CTR 2. Doğrulama için GHASH GHASH, şifreli metin + AAD üzerinde GF(2^128) içinde çarpma kullanarak polinomsal bir MAC hesaplar.

GHASH Genel Bakış

GHASH(H, A, C) = AAD + ciphertext değerlerinin, H = AES(K, 0^128) alt anahtarı kullanılarak hesaplanan özeti. Polinom, GF(2^128) üzerinde H noktasında değerlendirilir. Sonuç, etiketi oluşturmak için şifrelenmiş sayaçla XOR işlemine tabi tutulur.

AES-GCM Girdileri ve Çıktıları

Girdiler: 128/192/256 bitlik anahtar, 96 bitlik tek kullanımlık değer, açık metin, isteğe bağlı AAD Çıktılar: şifreli metin (açık metinle aynı uzunlukta), 128 bitlik doğrulama etiketi Etiket genellikle 16 bayttır. 12 baytın altına kısaltılması önerilmez.

GCM'de Tek Kullanımlık Değer Gereksinimleri

GCM, aynı anahtarla yapılan her şifreleme için benzersiz bir tek kullanımlık değer gerektirir. 96 bitlik rastgele tek kullanımlık değer standarttır. 2^32 iletiden sonra çakışma olasılığı %1'i aşar. Bu noktada anahtarı yenileyin.

GCM'de Tek Kullanımlık Değerin Yeniden Kullanılmasının Felaket Sonuçları

GCM'de (anahtar, tek kullanımlık değer) çiftinin yeniden kullanılması, saldırganın GHASH alt anahtarı H'yi kurtarmasına ve geçerli etikete sahip herhangi bir şifreli metin oluşturmasına olanak tanır. Bu, hem gizliliği hem bütünlüğü tamamen bozar.

İlişkilendirilmiş Veri (AAD) Kullanım Alanları

AAD, doğrulamak ancak şifrelememek istediğiniz üst verilerdir: - HTTP üst bilgisi: yanıt yönlendirme saldırılarını önlemek için doğrulanır - Veritabanı kayıt kimliği: şifreli metnin doğru satırda şifresinin çözülmesini sağlar - Protokol sürümü: sürüm düşürme saldırılarını önler

AES-GCM için Eksiksiz Python Örneği

from cryptography.hazmat.primitives.ciphers.aead import AESGCM import os key = AESGCM.generate_key(256) nonce = os.urandom(12) aad = b'user_id=12345' aesgcm = AESGCM(key) ct = aesgcm.encrypt(nonce, b'secret', aad) pt = aesgcm.decrypt(nonce, ct, aad) # raises if tampered

Alternatif: ChaCha20-Poly1305

ChaCha20-Poly1305, diğer önemli AEAD şemasıdır. AES-NI bulunmayan aygıtlar (ARM/mobil) için TLS 1.3'te kullanılır. AES-GCM'ye benzer güvenlik sağlar, ancak donanım hızlandırması olmayan yazılımlarda daha hızlıdır.

Hızlı Kontrol

AES-GCM'deki doğrulama etiketi neye karşı koruma sağlar?

Özet

AES-GCM, doğrulamalı şifreleme için en uygun varsayılan seçenektir. Sırada akış şifrelerini, bozuk RC4'ten modern ChaCha20'ye uzanan çizgide inceleyeceğiz.

Sıkça Sorulan Sorular

“GCM ve Kimlik Doğrulamalı Şifreleme” dersi ücretsiz mi?

Evet — “GCM ve Kimlik Doğrulamalı Şifreleme” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Cryptology Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Cryptology Academy kursu toplamda 4 dersten oluşur.

“GCM ve Kimlik Doğrulamalı Şifreleme” dersinde ne öğreneceğim?

Kurcalamayı önlemek için şifrelemeye kimlik doğrulama etiketleri ekleyin. Cryptology Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Cryptology Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Cryptology Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 4. dersidir.

“GCM ve Kimlik Doğrulamalı Şifreleme” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Cryptology Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Cryptology Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Blok Şifreleme Temelleri ve Dolgulama
  2. ECB ve CBC: Örüntüler ve IV'ler
  3. CTR Kipi ve Akış Şifresi Davranışı
  4. GCM ve Kimlik Doğrulamalı Şifreleme
← Cryptology Academy Sayfasına Dön