0Pricing
Security+ Academy · Ders

Anahtar Değişimi ve Hibrit Şifreleme

Diffie-Hellman anahtar değişimi ile TLS'nin performans ve güvenliği birlikte sağlamak için simetrik ve asimetrik yöntemleri nasıl birleştirdiğini görün.

Anahtar Değişimi ve Hibrit Şifreleme, CoddyKit'te ücretsiz bir Security+ 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, Security+ Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Security+ Academy kursu toplamda 4 dersten oluşur.

Anahtar Değişimi Sorunu

Simetrik şifreleme, her iki tarafın güvenli iletişim kurmadan önce aynı gizli anahtarı paylaşmasını gerektirir. Ancak önceden güvenli bir kanalınız yoksa bu anahtarı nasıl güvenli biçimde paylaşırsınız? Bu anahtar dağıtımı sorunu, Whitfield Diffie ve Martin Hellman'ın 1976'da devrim niteliğinde bir makale yayımlamasına kadar çözülemez kabul ediliyordu. Çözümleri olan Diffie-Hellman anahtar değişimi, iki tarafın anahtarın kendisini, araya giren herhangi bir dinleyicinin görebileceği şekilde bile iletmeden, güvenli olmayan bir kanal üzerinden ortak bir gizli anahtar oluşturmasına olanak tanır.

Diffie-Hellman Anahtar Değişimi Kavramı

Diffie-Hellman (DH), ayrık logaritma problemine dayanan akıllıca bir matematiksel yöntem kullanır. Both taraf iki ortak değeri (büyük bir asal sayı p ve bir üreteç g) kabul eder. Her taraf rastgele bir özel sayı üretir, bundan bir ortak değer hesaplar ve ortak değerleri değiş tokuş eder. Ardından her taraf kendi özel sayısını ve diğer tarafın ortak değerini kullanarak aynı paylaşılan gizli değeri hesaplayabilir; ancak yalnızca ortak değerleri gören bir dinleyici, büyük sayılar için hesaplama açısından uygulanabilir olmayan ayrık logaritma problemini çözmeden paylaşılan gizli değeri hesaplayamaz.

# Diffie-Hellman conceptual flow:
# 1. Agree on public parameters: prime p=23, generator g=5
# 2. Alice picks private a=6:  computes A = g^a mod p = 5^6 mod 23 = 8
# 3. Bob picks private b=15:   computes B = g^b mod p = 5^15 mod 23 = 19
# 4. Alice sends A=8 to Bob;   Bob sends B=19 to Alice
# 5. Alice: s = B^a mod p = 19^6 mod 23 = 2
# 6. Bob:   s = A^b mod p = 8^15 mod 23 = 2
# Shared secret = 2 (without either party transmitting it!)

ECDH: Eliptik Eğri Diffie-Hellman

Eliptik Eğri Diffie-Hellman (ECDH), Diffie-Hellman anahtar değişiminin modern ve daha verimli biçimidir. Modüler üs alma yerine eliptik eğri matematiğini kullanır ve çok daha küçük parametrelerle aynı güvenlik düzeyine ulaşır. 256 bitlik bir ECDH anahtarı, 3072 bitlik bir DH anahtarına eşdeğer güvenlik sağlar. ECDHE (buradaki 'E' Ephemeral anlamına gelir), her oturum için yeni bir anahtar çifti üreterek perfect forward secrecy sağlar. TLS 1.3, anahtar değişimi için ECDHE'yi zorunlu kılar; bu da onu modern web güvenliğinde baskın anahtar değişimi mekanizması hâline getirir.

Perfect Forward Secrecy (PFS)

Perfect Forward Secrecy (PFS), sunucunun uzun vadeli özel anahtarı daha sonra ele geçirilse bile oturum anahtarlarının tehlikeye atılmamasını sağlar. PFS, her oturumun anahtar değişiminde geçici anahtar çiftleri kullanılarak elde edilir; oturum anahtarı, oturum sona erdikten sonra silinen geçici bir anahtar çiftinden türetilir. PFS olmadan (RSA anahtar değişimi kullanıldığında), bugün şifrelenmiş trafiği kaydeden ve daha sonra özel anahtarı ele geçiren bir saldırgan, geçmişteki tüm trafiğin şifresini geriye dönük olarak çözebilir. PFS ile anahtar ele geçirilse bile geçmiş oturumlar güvende kalır.

# Check if a website uses Perfect Forward Secrecy
openssl s_client -connect google.com:443 2>/dev/null | grep 'Cipher'
# Cipher    : TLS_AES_256_GCM_SHA384 (TLS 1.3 - always has PFS)
# Or look for ECDHE in cipher name:
# Cipher : ECDHE-RSA-AES256-GCM-SHA384 (TLS 1.2 with PFS)
# DHE-RSA-AES256-GCM-SHA384 (DHE = also PFS)
# RSA-AES256-SHA (NO PFS - static RSA key exchange)

Hibrit Şifreleme: Her İki Yöntemin En İyi Yanları

Hibrit şifreleme, asimetrik ve simetrik kriptografiyi bir araya getirerek asimetrik şifrelemenin sunduğu key yönetimi avantajlarını ve simetrik şifrelemenin performansını birlikte sağlar. Süreç şöyledir: (1) rastgele bir simetrik oturum anahtarı oluşturulur, (2) büyük miktardaki veri bu simetrik anahtarla şifrelenir (hızlıdır), (3) simetrik anahtar alıcının açık anahtarıyla şifrelenir (güvenli anahtar iletimi), (4) hem şifrelenmiş veri hem de şifrelenmiş anahtar gönderilir. Alıcı, simetrik anahtarı kendi özel anahtarıyla çözer ve ardından veriyi elde ettiği simetrik anahtarla çözer.

# Hybrid encryption example with OpenSSL
# 1. Generate a random AES-256 session key
openssl rand -out session.key 32

# 2. Encrypt the large file with the symmetric session key
openssl enc -aes-256-cbc -pbkdf2 -in largefile.tar -out largefile.enc -pass file:session.key

# 3. Encrypt the session key with recipient's RSA public key
openssl rsautl -encrypt -inkey recipient_public.pem -pubin -in session.key -out session.key.enc

# Send: largefile.enc + session.key.enc

TLS Handshake: Uygulamada Hibrit Şifreleme

TLS Handshake, hibrit şifrelemenin gerçek dünyadaki en yaygın uygulamasıdır. TLS 1.3 sürecinde: (1) İstemci, desteklediği şifre takımlarını ve anahtar paylaşımını (ECDHE açık değerini) gönderir. (2) Sunucu, kendi anahtar paylaşımını, certificate (açık anahtarını içeren) ve bir imzayı göndererek yanıt verir. (3) Her iki taraf da ECDH aracılığıyla aynı ortak sırrı hesaplar. (4) Bundan sonraki tüm trafik, ortak sırdan türetilen simetrik bir anahtarla (AES-256-GCM) şifrelenir. Tüm süreç, simetrik anahtarı hiçbir zaman doğrudan iletmeden, tek bir gidiş-dönüşte şifrelenmiş bir kanal oluşturur.

# Observe the TLS 1.3 handshake
openssl s_client -connect example.com:443 -tls1_3
# You'll see:
# TLSv1.3, Handshake [length 0002], ServerHello
# Cipher    : TLS_AES_256_GCM_SHA384
# Session-ID: (no session ID in TLS 1.3, uses PSK)
# Verify return code: 0 (ok)

Anahtar Kapsülleme Mekanizmaları (KEM)

Modern kriptografi, bir oturum anahtarının doğrudan asimetrik şifrelemeyle şifrelenmesine kıyasla anahtar değişimi için daha biçimsel ve güvenli bir yaklaşım olarak Key Encapsulation Mechanisms (KEM) kullanır. KEM, taraflardan birinin simetrik bir anahtar oluşturmasına ve bu anahtarı alıcının açık anahtarını kullanarak, yalnızca alıcının kapsülü açıp anahtarı geri elde edebileceği şekilde “kapsüllemesine” olanak tanır. NIST'in kuantum sonrası standardı CRYSTALS-Kyber, tamsayı çarpanlarına ayırma veya eliptik eğriler yerine kafes problemlerine dayanır; bu da onu kuantum bilgisayar saldırılarına karşı dirençli kılar.

RSA Anahtar Değişimi ile ECDHE Karşılaştırması

TLS 1.3'e kadar RSA anahtar değişimi yaygındı: istemci bir ana anahtar öncesi sırrı oluşturur, bunu sunucunun RSA açık anahtarıyla şifreler ve sunucuya gönderirdi. Sorun şudur: bu yöntem ileri gizlilik sağlamaz. Sunucunun özel anahtarı daha sonra ele geçirilirse, bu yöntemle şifrelenmiş geçmişteki tüm oturumların şifresi çözülebilir. TLS 1.3, tüm bağlantılarda ileri gizliliği zorunlu kılmak amacıyla RSA anahtar değişimini tamamen kaldırır ve yalnızca ECDHE'ye izin verir. Bu nedenle, hâlâ statik RSA'ya izin veren TLS 1.0 ve 1.2'yi devre dışı bırakmak ve TLS 1.3'ü zorunlu kılmak güvenliği artırır.

Oturum Anahtarı Türetme

Diffie-Hellman değişimi sonucunda elde edilen ortak sır, doğrudan bir şifreleme anahtarı olarak kullanılmaz. Bunun yerine, gerçek şifreleme anahtarlarını ve başlatma vektörlerini üretmek için bir Key Derivation Function (KDF) girdisi olarak kullanılır. TLS 1.3, her yöndeki şifreleme için ayrı anahtarlar türetmek üzere HKDF (HMAC-based Key Derivation Function) kullanır. KDF'ler hesaplama maliyeti ekler (bu da kaba kuvvet saldırılarını zorlaştırır), kısa sırları gereken sayıda anahtar baytına genişletir ve türetilen anahtarların simetrik anahtar olarak kullanıma uygun iyi istatistiksel özelliklere sahip olmasını sağlar.

PGP E-posta Şifrelemesi: E-postada Hibrit Şifreleme

Pretty Good Privacy (PGP) ve bunun açık kaynaklı eşdeğeri OpenPGP, e-posta için hibrit şifreleme kullanır. Alice, Bob'a şifrelenmiş bir e-posta gönderdiğinde PGP rastgele bir simetrik oturum anahtarı oluşturur, e-posta gövdesini bu anahtarla (AES) şifreler, oturum anahtarını Bob'un RSA veya ECC açık anahtarıyla şifreler ve ikisini birlikte gönderir. İmzalı e-postalarda PGP, iletinin özetini alır ve bu özeti Alice'in özel anahtarıyla imzalar; böylece inkâr edilemezlik sağlanır. PGP'nin güven ağı modeli (kullanıcıların birbirlerinin anahtarlarını imzalaması), sertifika yetkilisine dayalı PKI'ya bir alternatiftir.

# Encrypt and sign an email file with GPG (OpenPGP)
# Encrypt to Bob using his public key, sign with Alice's private key
gpg --encrypt --sign --recipient bob@example.com --armor message.txt

# Decrypt (Bob uses his private key)
gpg --decrypt message.txt.asc

# List available keys
gpg --list-keys
gpg --list-secret-keys

Anahtar Değişiminde Ortadaki Adam Riski

Diffie-Hellman anahtar değişimi pasif dinleyicilere karşı güvenlidir; ancak taraflar birbirlerini doğrulamazsa aktif ortadaki adam (MITM) saldırılarına karşı savunmasızdır. Saldırgan, Alice'in açık değerini ele geçirip kendi değerini koyabilir ve hem Alice hem de Bob ile ayrı DH oturumları oluşturabilir; tarafların her biri diğer tarafla iletişim kurduğunu sanır. TLS'nin DH anahtar değişimini certificate doğrulamasıyla birleştirmesinin nedeni budur: güvenilen bir CA tarafından imzalanmış sunucu certificate'ı sunucunun kimliğini kanıtlar ve Handshake sırasında açık anahtarın MITM tarafından değiştirilmesini önler.

Hızlı Kontrol

Bu dersteki CompTIA Security+ (SY0-701) kavramlarını anlayıp anlamadığınızı test edin.

Ders Özeti

Bu derste şunları öğrendiniz: Diffie-Hellman, tarafların güvenli olmayan bir kanal üzerinden ortak bir sır türetmesini sağlayarak anahtar değişimi sorununu çözer; ECDHE (geçici), Perfect Forward Secrecy sağlar; hibrit şifreleme, verimlilik için asimetrik anahtar değişimini simetrik toplu veri şifrelemeyle birleştirir; TLS 1.3 ise tüm bağlantılar için ECDHE'yi zorunlu kılar. Sırada Certificate Authorities and Trust Chains konusunu inceleyeceğiz.

Sıkça Sorulan Sorular

“Anahtar Değişimi ve Hibrit Şifreleme” dersi ücretsiz mi?

Evet — “Anahtar Değişimi ve Hibrit Ş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 Security+ Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Security+ Academy kursu toplamda 4 dersten oluşur.

“Anahtar Değişimi ve Hibrit Şifreleme” dersinde ne öğreneceğim?

Diffie-Hellman anahtar değişimi ile TLS'nin performans ve güvenliği birlikte sağlamak için simetrik ve asimetrik yöntemleri nasıl birleştirdiğini görün. Security+ 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.

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

Önceden deneyim gerekmez. CoddyKit'te Security+ 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.

“Anahtar Değişimi ve Hibrit Ş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 Security+ Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Security+ 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. Simetrik Şifreleme Algoritmaları
  2. Asimetrik Şifreleme ve Anahtar Çiftleri
  3. Özetleme ve Veri Bütünlüğü
  4. Anahtar Değişimi ve Hibrit Şifreleme
← Security+ Academy Sayfasına Dön