Kötü Entropi Kriptoda Hâlâ Milyonları Nasıl Kaybettiriyor?

Zorunlu entropi standartları olmadan, bir sonraki milyar dolarlık kayıp çoktan başlamış olabilir.

Bu makale aşağıdaki dillerde mevcuttur:

Author logo
Patrick Dike-Ndulue
Güncellendi
Post image

31 Temmuz 2026’da bir saldırgan, yaklaşık 25 dakikada 500 civarında Bitcoin cüzdanını boşalttı. Yaklaşık 594 BTC, yani yaklaşık 38 milyon dolar değerindeki varlıklar taşındı ve etkilenen tüm cüzdan sahipleri, tam da bu tür kayıpları önlemek için donanım cüzdanı almıştı.
 

Coinkite disclosed that COLDCARD firmware had been generating keys using a software pseudorandom number generator rather than the hardware generator built into the device. Two functions in the codebase shared the same name and signature, so the linker selected the wrong one, and the build produced no warning.
 

Bu, uzun bir listenin en yeni örneği. Son on yılda en büyük kripto para kayıpları, egzotik saldırılardan ziyade çok daha temel bir nedenden kaynaklandı: yeterince rastgele olmayan rastgelelik.

Özel anahtarın arkasında ne var?

İster bir uygulamada, ister tarayıcı eklentisinde, ister donanım cihazında olsun, kripto para cüzdanları tek bir şeye dayanır: başkasının tahmin edemeyeceği veya yeniden oluşturamayacağı sayılar üretmek. Entropi, bu bağlamda, üretilen bir sayının ne kadar öngörülemez olduğunu ifade eder.


Entropi, bir cüzdanın özel anahtar oluşturmak için kullandığı ham rastgeleliktir ve bit cinsinden ölçülür. Daha fazla bit, saldırganın araması gereken anahtar alanının büyüklüğünü artırır. Entropi, cüzdan kurulumunda sisteme girer. Sonrasında oluşturulan her anahtar, adres ve imza sabit matematiksel kurallara bağlıdır; yani yeni bir rastgelelik daha eklenmez.

Entropi kaynağı

Teorik olarak bir cüzdan, rastgeleliği bir pseudorandom number generator (PRNG) algoritmasından alabilir: “gerçek” entropinin küçük bir miktarını alabildiği kadarına genişleten bir algoritma, ancak başlangıçtaki tohum yeterince öngörülemezse işe yarar. 

Bir tarayıcı sekmesinde ya da yeni açılmış bir telefonda çalışan yazılım, adeta duyusal bir yoksunluk odasında başlar. Gerçekten rastgele bir sayı üretmek için bir programın “gürültüye” ihtiyacı vardır; yani dış dünyadan gelen, öngörülemez girdilere. Bu, işlemci zamanlamasındaki dalgalanmalardan, fare hareketlerinden veya özel donanım bileşenlerinden gelebilir.

Bir cihaz ilk açıldığında, bu gürültü havuzları boş veya henüz tam olarak başlatılmamış olabilir. Kriptografik bir kütüphane rastgele sayı üretecini çok erken çağırırsa, teknik olarak rastgele ama saldırganların kolayca tarayabileceği kadar dar bir aralıktan sayı çekebilir.


Tarayıcılar da kendi kısıtlamalarını getirir. JavaScript’in Math.random() fonksiyonu güvenlik için tasarlanmamıştır ve daha güvenli olan crypto.getRandomValues() bile işletim sisteminin entropi havuzuna bağlıdır. Bu havuz zayıfsa — mobil sandbox’larda, sanal makinelerde veya sadeleştirilmiş IoT cihazlarında olduğu gibi — rastgelelik, özel anahtarınızı üreten koda ulaşmadan önce zedelenmiş olur.


İşlem imzalamada rastgelelik

Bir Bitcoin veya Ethereum işlemini imzalarken, özel anahtarınızı doğrudan kullanmazsınız. Bunun yerine, bir nonce (tek seferlik rastgele sayı) üretir ve bunu özel anahtarınızla birlikte Eliptik Eğri Dijital İmza Algoritması (ECDSA) içinde kullanarak bir imza oluşturursunuz.

Ancak burada kritik bir nokta var: Aynı nonce, aynı özel anahtarla iki kez kullanılırsa, matematiksel olarak saldırganın özel anahtarı çözmesi mümkün olur.
ECDSA imzaları, belirli bir denklemi sağlayan iki sayıdan (r, s) oluşur:

  • özel anahtar (d),
  • nonce (k),
  • ve hash’lenmiş işlem mesajı (z).

Eğer k, iki farklı mesaj için aynıysa, denklemler üst üste gelir ve her iki imzayı gören biri k’yı hesaplayabilir. K bilindikten sonra ise, d — yani özel anahtar — birkaç çarpma ve modüler ters alma işlemiyle ortaya çıkar.


2013’te bir Android SecureRandom fonksiyonundaki hata, platformdaki erken Bitcoin cüzdanlarının öngörülebilir nonce’lar üretmesine neden oldu. Kullanıcılar, cüzdanlarındaki fonlar kaybolana kadar sorunun farkında bile değildi.


Tipik bir yazılım hatasının aksine, düşük kaliteli rastgeleliği sadece kaynak kodunu okuyarak tespit edemezsiniz. Fonksiyon çağrıları doğru görünebilir; ancak üretilen bitleri ölçüp istatistiksel testler yapmadıkça, ölümcül bir zafiyet aylarca ya da yıllarca gizli kalabilir ve sabırlı bir saldırgan tarafından istismar edilebilir.

 

Entropinin neden hâlâ kalıcı bir zafiyet olduğunu özetleyebiliriz:

  • Başlangıç entropi kıtlığı: Yeni açılan cihazlar, PRNG’leri besleyecek kadar çevresel gürültü toplamamış olabilir.

  • Tarayıcı kısıtlamaları: JavaScript’in Math.random() fonksiyonu güvenli değildir; crypto.getRandomValues() bile ana ortamın entropi havuzuna bağlıdır.

  • Güvensiz araçlar: Vanity adres üreticileri, çevrimdışı script’ler veya bakımsız kütüphaneler hız veya tekrarlanabilirlik için rastgelelikten ödün verebilir.

  • İnsan girdisi: “Beyin cüzdanları” ve kullanıcı tarafından seçilen ifadeler, sözlükten tahmin edilerek kırılmıştır.

Kriptograf uzmanları uzun süredir donanım rastgele sayı üreteçlerini (HRNG) tercih ediyor. Bunlar, elektronik dalgalanma, termal gürültü ve radyoaktif bozunum gibi fiziksel olayları rastgele bitlere çevirir ve kendilerini sürekli olarak hata veya yanlılık açısından test edebilirler.

Donanım bunu nasıl çözer?

Yüksek güvenlikli sistemlerde çözüm nettir: Anahtarlar, sertifikalı bir HRNG içeren bir çipin içinde oluşturulur ve bu anahtarlar asla çoğaltılmaz.

A secure element is a purpose-built, tamper-resistant microcontroller. It is a fortified chip designed to store secrets and perform cryptographic operations without revealing the underlying keys. They are the same class of component used in passports to prevent cloning, SIM cards to authenticate devices to mobile networks, and contactless payment cards to authorize transactions.


Bir secure element, öngörülemezliğini yalnızca matematiksel algoritmalardan değil, termal dalgalanma veya osilatör jitter gibi fiziksel gürültüden alan bir donanım rastgele sayı üreteci barındırabilir. 


Bu HRNG’ler yalnızca “bir defalık” cihazlar değildir. NIST SP 800-90B gibi standartlara göre, sürekli sağlık testleri yapmalı, her çıktı akışını istatistiksel yanlılık, takılı bitler veya zamanla rastgeleliği bozabilecek diğer arızalar açısından kontrol etmelidir. Şüpheli bir durum tespit edilirse, çip anahtar üretimini anında durdurabilir. İyi bir donanım cüzdanda, secure element’in HRNG’si rastgeleliği doğrudan anahtar üretim sürecine besler. 


Tüm “donanım” eşit değildir

Donanım cüzdanı terimi çok çeşitli tasarımları kapsar ve hepsi rastgelelik ve anahtar izolasyonu için aynı korumayı sağlamaz.


Alt segmentteki cihazlar, fiziksel veya yan kanal saldırılarına karşı dayanıklı olmaktan çok esneklik için tasarlanmış genel amaçlı mikrodenetleyiciler üzerine kuruludur. Birçoğunda temel bir rastgele sayı üreteci bulunur. 


Yine de, bu rastgelelik cihazın iç durumundan beslenen bir pseudorandom generator olabilir; tam uyumlu ve standartlara göre test edilmiş bir HRNG olmayabilir. Bu tür tasarımlarda anahtar üretimi firmware’de gerçekleşebilir ve oluşan özel anahtar RAM veya flash bellekte geçici olarak saklanabilir. Bu da firmware’deki bir hata, başarılı bir yan kanal saldırısı veya fiziksel müdahale ile anahtarın açığa çıkabileceği anlamına gelir.
 

Buna karşılık, secure element tabanlı cüzdanlar hem entropi kaynağını hem de anahtar üretim mantığını darbelere dayanıklı bir ortamda tutar. Bu model ayrıca sıkı erişim kontrolü uygular: Kriptografik işlemler (imzalama, türetme) çipin içinde gerçekleştirilir; dışarıya sadece nihai imza veya genel anahtar çıkar, gizli anahtar asla çıkmaz.

Standartlar zaten var

Rastgelelik sorunu çözülememiş bir bilim meselesi değil. Kriptograf uzmanları, iyi entropinin nasıl olması gerektiğini zaten tanımladı. ABD Ulusal Standartlar ve Teknoloji Enstitüsü (NIST), konuyu net şekilde parçalara ayıran SP 800-90 standart serisini yayımladı.


SP 800-90B, bir entropi kaynağının nasıl değerlendirileceğini tanımlar; öngörülemeyen bitler üreten fiziksel veya yazılımsal süreç. Her bit akışının gerçek entropisini tahmin etmek için sıkı istatistiksel analiz ve kaynağı sürekli izleyen yerleşik sağlık testleri gerektirir.


SP 800-90C, bu entropinin deterministik rastgele bit üreteçleri (DRBG) ile nasıl birleştirileceğini açıklar; böylece bir kaynak bozulsa bile çıktı güçlü kalır.


Uyumlu bir cihaz, rastgele sayıları bir kez üretip en iyisini ummaz. Sürekli olarak kendi “nabzını” kontrol eder: HRNG’nin gürültü deseninde değişiklik olursa, bir bit “takılırsa” veya çıktı istatistiksel eşikleri geçemezse, sistem zayıf anahtar üretimini durdurur.

Risk altında olup olmadığınızı nasıl anlarsınız?

Çoğu kullanıcı entropiyi doğrudan ölçemez; ancak anahtarlarınızın nerede ve nasıl üretildiğini sorgulayabilirsiniz. Eğer anahtarlarınız “bir web sayfasında” veya “eski bir Android uygulamasında” — özellikle 2010’ların ortasından önce — oluşturulduysa, bu anahtarlar zayıf olmalı. En güvenli yol, sertifikalı ve belgelenmiş rastgelelik kullanan bir donanım cihazında yeni bir cüzdan oluşturup varlıklarınızı oraya taşımaktır.

Entropi saldırıları zaman çizelgesi 

Zayıf entropi, saldırganın geriye dönük çalışmasına gerek bırakmaz. Saldırgan, bozuk üretecin oluşturabileceği az sayıdaki anahtarı sıralar, her aday için adresleri türetir ve bu adresleri blok zincirinde bakiyeye karşı kontrol eder. İşte bazı örnekler:

  • 2018—IOTA seed generator dolandırıcılığı: Kullanıcılardan cüzdan seed’lerini bir web sitesi üzerinden oluşturmaları istendi. Site operatörü bu seed’lerin bir kopyasını sakladı ve daha sonra fonları boşalttı; yaklaşık 4 milyon dolar çalındı. Buradaki rastgelelik sıfırdı: Saldırgan sayıları zaten biliyordu.
     

  • 2019—Blockchain Bandit: Güvenlik araştırmacıları internette 732 zayıf Ethereum özel anahtarı tespit etti. Kimliği belirsiz bir saldırgan, yıllarca bu adresleri izleyerek fonlar geldiği anda yaklaşık 45.000 ETH çekti.
     

  • 2022—Profanity vanity adres felaketi: Açık kaynaklı Profanity aracı, yalnızca 32 bit entropiyle özel Ethereum adresleri üretti; yaklaşık 4 milyar olasılık. Modern bir GPU bu alanı saatler içinde tarayabilir. Londra merkezli piyasa yapıcı Wintermute, bu şekilde yaklaşık 160 milyon dolar kaybetti.
     

  • 2023—Trust Wallet tarayıcı eklentisi açığı: Ledger’ın güvenlik ekibinin açıklamasına göre, tarayıcı eklentisi yaklaşık 32 bit entropiyle cüzdan seed’leri üretiyordu. Hata hızlıca düzeltildi ve Trust Wallet bazı kullanıcıları tazmin etti; ancak aylar boyunca orada cüzdan oluşturan herkes risk altındaydı.
     

  • 2025—LuBian iddiası: Arkham’ın iddiası henüz doğrulanmadı; ancak 127.426 BTC’lik kayıp gerçekten öngörülebilir anahtar üretimine dayanıyorsa, bu durum tek bir kurulum hatasının milyarlarca dolarlık varlığı nasıl riske atabileceğinin en çarpıcı örneği olurdu. 
     

  • 2026: COLDCARD: Coinkite disclosed that a software pseudorandom generator had replaced the intended hardware generator in shipped firmware. The fallback entered the upstream dependency in May 2018 and reached key generation in March 2021.

    Coinkite, Mk3 donanımında yaklaşık 40 bit, secure element verisiyle karıştırılan daha yeni modellerde ise yaklaşık 72 bit etkin arama alanı olduğunu tahmin ediyor. Her iki değer de 128 bitlik hedefin altında kalıyor.

    Bunu önlemek için bir koruma vardı. Kontrol, bir yapılandırma makrosunun tanımlı olup olmadığını test ediyordu; değeri sıfır olsa bile makro tanımlıydı, bu nedenle kontrol geçti ve hata asla tetiklenmedi.

COLDCARD’dan geçişi mi düşünüyorsunuz?

Tangem, anahtarınızı sertifikalı bir secure element çipinin içinde, donanım rastgele sayı üreteciyle oluşturur. 

Eğer seed phrase endişesiyle uğraşmaktan yorulduysanız, seed’siz kurulumumuz sayesinde yazmanız, fotoğrafını çekmeniz veya kaybetmeniz gereken 12 ya da 24 kelimelik bir ifade yok; geçmişteki cüzdan saldırılarının çoğu tam da bu noktadan dönüyordu.

Cure53, Kudelski ve Riscure tarafından bağımsız olarak denetlendi. Tam da bu an için üretildi.

Coin’lerinizi gerçekten rastgeleliğin olduğu yere taşıyın. Tangem Wallet’a geçin.

Author logo
Yazar Patrick Dike-Ndulue

Senior editor covering crypto, onchain equities, and technology.

Author logo
İnceleyen: Patrick Dike-Ndulue

Senior editor covering crypto, onchain equities, and technology.