0Pricing
Cryptology Academy · Ders

Entropi Tükenmesi ve Zayıf Anahtar Hataları

Debian OpenSSL RNG hatasını ve gerçek dünyadaki diğer rastlantısallık sorunlarını inceleyin.

Entropi Tükenmesi ve Zayıf Anahtar Hataları, CoddyKit'te ücretsiz bir Cryptology Academy dersidir. Bu, 4 dersinin 3. 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.

Entropi Tükenmesi Nedir

Entropi tükenmesi, bir sistemde CSPRNG'sini tohumlamak için yeterli öngörülemez girdi bulunmadığında meydana gelir. Bu durum yeni başlatılmış gömülü cihazlarda, sanallaştırılmış sunucularda veya kullanıcı girdisi bulunmayan sistemlerde görülür. RNG çıktısı öngörülebilir hâle gelir.

Debian OpenSSL Hatası (CVE-2008-0166)

2006'da bir Debian geliştiricisi, Valgrind tarafından işaretlenen şu satırı kaldırdı: MD_Update(&m, buf, j). Bu satır entropi kaynağıydı. Sonuç olarak Debian üzerindeki OpenSSL yalnızca PID ile tohumlandı (en fazla 32.768 değer). 2006-2008 arasında üretilen tüm anahtarlar 32.768 olasılıktan oluşan bir kümededir.

Debian Hatasının Etkisi

2006-2008 arasında Debian/Ubuntu sistemlerinde üretilen RSA, DSA ve ECDSA anahtarları, SSH ana bilgisayar anahtarları, TLS sertifikaları ve SSL VPN anahtarları ele geçirildi. Etkilenen sistemler: Debian Etch, Debian Lenny, Ubuntu 7.04-8.04. Kara listeler yayımlandı; sertifikalar iptal edildi.

Sanal Makinelerde RNG Sorunu

Sanal makineler aynı disk durumuyla kopyalanabilir. Her iki sanal makine de anahtarları aynı CSPRNG durumundan üretirse aynı anahtarları oluşturur. Hiper yöneticiler artık VirtIO RNG veya ACPI tabloları aracılığıyla entropi enjekte ediyor; ancak hatalı yapılandırılmış sanal makineler önyükleme sırasında hâlâ bu riskle karşı karşıyadır.

Gömülü Sistemler ve IoT

IoT cihazları (yönlendiriciler, kameralar), entropi biriktirmeden önce ilk önyüklemede SSH/TLS anahtarları üretir. Araştırmalar, milyonlarca cihazın birkaç bin RSA anahtar çiftini paylaştığını ortaya koydu; çünkü hepsi aynı düşük entropili önyükleme durumundan tohumlanmıştı.

RSA Anahtarlarına GCD Saldırısı

Lenstra ve diğerleri (2012), 11,7 milyon TLS sertifikası topladı ve çiftler hâlinde GCD'ler hesapladı. Bir asal çarpanı paylaşan 12.720 RSA anahtarı bulundu — bu, her iki anahtarın da tamamen çarpanlarına ayrılabileceği anlamına geliyordu. Tüm açık anahtarların %0,2'si kırılmıştı. Neden: yetersiz önyükleme entropisi.

ECDSA'da Tek Kullanımlık Sayının Yeniden Kullanılması

ECDSA, imza başına benzersiz bir rastgele tek kullanımlık sayı k gerektirir. k yeniden kullanılırsa (veya zayıfsa) özel anahtar hemen kurtarılabilir: d = (s1-s2)^{-1} * (z1-z2) * k / (r1-r2) mod n. Sony'nin PS3'ünde k=constant kullanıldı — kurtarılan anahtarla tüm oyunlar imzalanabildi.

Android Bitcoin Cüzdanı Hatası (2013)

Android 4.x'te Java SecureRandom, belirli koşullarda sistem zamanıyla tohumlanıyordu. Birden fazla Bitcoin cüzdanı uygulaması aynı k tek kullanımlık sayısıyla imzalar üreterek özel anahtarları açığa çıkardı. Milyonlarca dolar çalındı. Google, SecureRandom uygulamasına düzeltme yayımladı.

Zayıf Anahtarları Belirleme

Araçlar: ssh-vulnkey (Debian zayıf anahtar kara listesine göre kontrol eder), badkeys (TLS sertifikalarını bilinen zayıf asal sayılara karşı kontrol eder), toplu RSA anahtarı denetimi için GCD-toplu işlem algoritması. Certificate Transparency günlükleri, tüm nüfus ölçeğinde çözümlemeyi mümkün kılar.

Azaltma Yöntemleri

İlk anahtar üretiminde getrandom(GRND_RANDOM) kullanın. İlk tohumlamanın tamamlanmasını bekledikten sonra /dev/urandom'dan okuyun (/proc/sys/kernel/random/entropy_avail > 128 değerini kontrol edin). Tamamlayıcı entropi olarak donanım RNG'si (RDRAND) kullanın. Gecikme olmadan ilk önyüklemede asla anahtar üretmeyin.

Tohum Dosyasının Kalıcılığı

CSPRNG durumunu yeniden başlatmalar arasında koruyun: kapatma sırasında /dev/urandom'dan 32 bayt okuyup bir tohum dosyasına kaydedin; önyükleme sırasında okuyup geri besleyin. Bu, soğuk açılışlar arasında entropi sürekliliği sağlar. Linux bunu otomatik olarak yapar; gömülü sistemler ise çoğu zaman yapmaz.

Hızlı Kontrol

Debian OpenSSL entropi hatasının temel nedeni neydi?

Özet

Entropi tükenmesi, öngörülebilir anahtarlara yol açar. Gerçek dünyadaki kırılmalar: Debian OpenSSL (yalnızca PID ile tohumlama), IoT GCD saldırıları, PS3'te ECDSA tek kullanımlık sayısının yeniden kullanılması ve Android Bitcoin cüzdanı. Her zaman işletim sistemi entropisinden tohumlayın; gömülü anahtar üretimini dikkatle denetleyin. Sıradaki konu: anahtarları, tek kullanımlık sayıları ve IV'leri güvenli biçimde üretmek.

Sıkça Sorulan Sorular

“Entropi Tükenmesi ve Zayıf Anahtar Hataları” dersi ücretsiz mi?

Evet — “Entropi Tükenmesi ve Zayıf Anahtar Hataları” 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.

“Entropi Tükenmesi ve Zayıf Anahtar Hataları” dersinde ne öğreneceğim?

Debian OpenSSL RNG hatasını ve gerçek dünyadaki diğer rastlantısallık sorunlarını inceleyin. 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 3. dersidir.

“Entropi Tükenmesi ve Zayıf Anahtar Hataları” 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. Gerçek Rastlantısallık ve Sözde Rastlantısallık
  2. Kriptografik Olarak Güvenli PRNG'ler
  3. Entropi Tükenmesi ve Zayıf Anahtar Hataları
  4. Anahtarları, Nonce'ları ve IV'leri Güvenle Üretme
← Cryptology Academy Sayfasına Dön