Randstorm / BitcoinJS

Randstorm: eski Bitcoin cüzdanlarının arkasındaki tarayıcı hatası

Hangi yazılım belgelenmiş, hangi sürümler önemli ve eski bir cüzdanı savunmasız anahtarlarını taşımadan nasıl bırakabilirsiniz.

Son Güncelleme 18.09.2026

Gerçekte ne yanlış gitti

Randstorm, eski tarayıcı yazılımlarındaki anahtar oluşturmayı ilgilendirir. JSBN’nin SecureRandom() fonksiyonu yetersiz bir entropi kaynağını öngörülebilir bir tarayıcı Math.random() ile birleştirebilirdi. Unciphered bu sorunu 14 Kasım 2023’te açıkladı ve 2011–2015 arasında oluşturulan savunmasız cüzdanları bildirdi. Bu gözlemlenen bir dönemdir, o yıllardaki her cüzdan için kesin bir hüküm değildir.

Math.random()Tarayıcıya bağlı başlangıç değerleri
SecureRandom()Bir entropi havuzu PRNG’ye beslenir
Özel anahtarGeçerli format, potansiyel olarak öngörülebilir köken

SecureRandom ismi bir güvenlik garantisi değildir. Coinpunk’ın incelenen kaynağında, yedek yol Math.random() kullanarak 256 baytlık bir havuzu doldurur, saate karıştırır ve bir Arcfour üreticisine besler. Büyük bir havuz, girdilerinde olmayan öngörülemezliği sağlayamaz. Aynı kaynakta daha güçlü Web Crypto ve Node.js yolları da vardır: yedeğe ulaşmak önemli ayrımdır.

Bu, özel anahtarın seçilme biçimindeki bir kusurdur. Bitcoin’in imza doğrulamasının kırılması değildir. Eski bir yedeği yeni bir uygulamada açmak bu anahtarları korur; fonları bağımsız oluşturulmuş anahtarlara taşımak harcamayı yetkilendiren şeyi değiştirir.

Cüzdanlar, sürümler ve kanıtların sınırları

Bir kütüphane sürümünü cüzdan sürümünden ayrı okuyun. Barındırılan bir web sitesi için, anahtar oluşturma günündeki kod, bugünkü uygulama sürümünden daha önemlidir. Tablo belgelenmiş bir olayı kaynak kodu bulgularından ayırır.

19 Eylül 2026’da kontrol edildi
ProjeSürüm veya dönemBunun ortaya koyduğu
BitcoinJS / bitcoinjs-lib0.1.3Açıklamada örnek olarak adlandırılmıştır. JSBN Mart 2014’e kadar kullanıldı; bu her türev için tam etkilenen sürüm aralığını belirlemez.
Blockchain.info
Blockchain.com
Tarihi web cüzdanı; numaralandırılmış etkilenen aralık doğrulanmadıUnciphered’ın araştırmasının başlangıç noktası bir müşteri cüzdanıydı. Bu, her Blockchain.com cüzdanını veya mevcut uygulamayı suçlamaz.
bitaddress.org2.6.5 · 2.8.0
2013-12-01 · 2014-01-18
2.6.5 JSBN’yi 1.4’e güncelledi. 2.8.0 tüm havuz Web Crypto başlatmasını ve zorunlu fare/klavye entropisini ekledi. Bunlar belgelenmiş değişikliklerdir, kanıtlanmış “tüm önceki sürümler savunmasız / tüm sonraki sürümler güvenli” sınırı değildir.
Coinpunk0.2.1
63ca325be538
İncelenen depo anlık görüntüsü kendini 0.2.1 olarak etiketler ve Math.random()/Arcfour yedeği ile daha güçlü yollar içerir. Bu bir kod bulgusudur, her dağıtımın yedeği kullandığının kanıtı değildir. Geliştirme durdu.

Bu genel bakış burada doğrulanan uygulamaları kapsar; kapsamlı bir etkilenen cüzdan listesi değildir. Listelenmemiş bir ürün otomatik olarak etkilenmemiş değildir. Eski bir oluşturma tarihi veya 1 ile başlayan bir adres jeneratörü tanımlamak için yeterli değildir.

Hedefi bir kez hazırlayın

Aşağıdaki üç yol yeni bir Electrum Desktop cüzdanını hedef olarak kullanır. Menü isimleri bu makale için kontrol edilen İngilizce 4.8.2 masaüstü arayüzüne atıftır. Güncel sürümü resmi siteden indirin; 4.8.2 talimatlar için referanstır, kalıcı minimum sürüm değildir.

Yeni hedef olarak önerdiğimiz donanım cüzdanları →

Electrum — resmi indirme ve imza kontrolleri ↗

  1. Güvenilir, güncel bir bilgisayarda işletim sisteminiz için Electrum’u indirin. Resmi imza talimatlarını izleyin ve kuruluma başlamadan önce imzalayan parmak izini bağımsız olarak kontrol edin.
  2. File → New/Restore seçin, cüzdana randstorm-new adını verin, sonra Standard wallet → Create a new seed seçin. Yeni kelimeleri kağıda yazın ve onaylayın, cüzdan dosyası parolası belirleyin. Eski gizli anahtarı içe aktarmayın.
  3. Para yatırmadan önce, sadece YENİ kağıt yedeği kullanarak File → New/Restore → Standard wallet → I already have a seed ile recovery-check oluşturun. Her iki cüzdandaki ilk alma adresini View → Addresses ve Addresses sekmesi ile karşılaştırın. Bu kontrol sırasında her iki cüzdanı da açık tutun.
  4. randstorm-new’da Receive → Request (Lightning etkinse Onchain) kullanın. Bitcoin adresini kopyalayın. Aşağıdaki cüzdana özgü yol bu adrese göndermeli, ücret ve tam hedef onaylanmalı.

Blockchain.info: eski adresleri tutan cüzdanı kullanın

Bu yol, Blockchain.com üzerinden hala erişebileceğiniz tarihi bir Blockchain.info cüzdanı içindir. Mevcut gönderme talimatları bugünün web arayüzünü anlatır, doğrulanmamış 2012 ekranını değil. Trading Account bakiyesi farklı bir üründür.

  1. Orijinal şifreli yedeği ve giriş kayıtlarını saklayın. Web cüzdanında Settings → Wallets & Addresses → Bitcoin altında ayrı içe aktarılmış adresleri kontrol edin. Bildiğiniz eski genel adresleri görüntülenen bakiyelerle eşleştirin; yeni kurtarma ifadesinin içe aktarılmış anahtarları kapsadığı varsayılmamalıdır.
  2. Wallet panelinde Send’i açın, Bitcoin seçin ve yeni Electrum adresini dış hedef olarak girin. Küçük bir miktarla başlayın, Continue seçin, adresi, miktarı ve ücreti gözden geçirin, sonra Send.
  3. Electrum’un History’sinde onay bekleyin. Sonra kalan harcanabilir bakiyeyi gönderin, ücreti hesaba katın. Her ayrı finanse edilmiş içe aktarılmış adresi kontrol edin; başarılı test eski cüzdanı boşaltmaz. Tüm emekliye ayrılmış alma adreslerini kullanmayı bırakın.

Blockchain.com: mevcut gönderme talimatları ↗

bitaddress.org: Sweep ile kağıt cüzdan aktarımı

Bir bitaddress çıktısı genellikle tek anahtarı temsil eder, modern kurtarma ifadesi değil. Kağıdı ve orijinal HTML dosyasını koruyun: dosya adı veya altbilgi sürümü tanımlayabilir. Sürüm geçmişi kurulumu yeniden oluşturur; bireysel anahtarı sertifikalandırmaz.

  1. Özel anahtarı tanımlayın, genel alma adresini değil. Mainnet WIF genellikle 5, K veya L ile başlar; BIP38 şifreli anahtar 6P ile başlar. Önek sadece format ipucudur. Karşılık gelen adresi belirlediği için orijinal sıkıştırma biçimini koruyun.
  2. BIP38 için, önce resmi bitaddress deposundan doğrulanmış kopya ile yerel ve çevrimdışı olarak şifreyi çözün: Wallet Details → şifreli anahtarı girin → View Details → parolayı girin → Decrypt BIP38. Elde edilen adresi kağıtla karşılaştırın, sonra eşleşen WIF’i ilerletin. Anahtarı canlı web sitesine girmeyin veya bu eski araçla yedek cüzdan oluşturmayın.
  3. YENİ Electrum hedef cüzdanda Wallet → Private keys → Sweep açın. Şifresiz WIF’i yalnızca bu yerel diyaloğa girin. Hedefin randstorm-new’ye ait olduğunu kontrol edin, sonra işlemi ve ücreti yayınlamadan önce gözden geçirin.
  4. Sweep, sağlanan anahtarın kontrolündeki harcanabilir bakiyeyi tek işlemde aktarır. İçe aktarma değildir ve yukarıdaki küçük test dizisi değildir. Diğer finanse edilmiş kağıt cüzdan anahtarları için tekrarlayın ve tüm beklenen alımlar onaylanana kadar orijinalleri saklayın.

bitaddress.org — resmi depo ve imzalı dosyalar ↗

Coinpunk: eski sunucuya dokunmadan önce yedeği güvenceye alın

Coinpunk kendi kendine barındırılıyordu, bu yüzden evrensel bir güncel giriş sitesi veya kurtarma servisi yoktur. Bu etiketler, package.json’da sürüm 0.2.1 olarak belirtilen 63ca325be538 depo anlık görüntüsünden gelir. Değiştirilmiş dağıtım farklı olabilir.

  1. Orijinal güvenilir kurulumunuz hala çalışıyorsa, Backup → Download açın ve şifreli cüzdanın birden çok kopyasını saklayın. Giriş tanımlayıcısını, parolayı ve sunucu yedeğini de koruyun. Hayatta kalan tek örneği önce güncellemeyin veya yeniden yüklemeyin.
  2. Tarihi Send Bitcoins formu Bitcoin address to send to, Amount ve görüntülenen bir ücreti içerir. Orijinal örnek hala güvenilir çalışıyor ve hedef adresi destekliyorsa kullanın. Bu eski yazılıma bc1 adresi zorlamayın; incelenen adres ayrıştırıcı Base58Check kullanır.
  3. Uyumsuz hedef veya çevrimdışı sunucu için yedeği koruyun ve bu Coinpunk sürümünü anlayan yardım ile anahtarları yerel olarak kurtarın. Cüzdan modeli, değişim anahtarları dahil keyPairs’i şifreli bir yük içinde saklar. Bu Electrum seed veya Bitcoin Core wallet.dat değildir; dosya adını değiştirmek dönüştürmez.
  4. Kurtarılan WIF anahtarları orijinal adreslerle eşleştirildikten sonra, yukarıdaki Electrum Sweep prosedürünü her finanse edilmiş anahtar için kullanın. Değişim adresleri dahil tam seti kontrol edin. Hedef alımlar beklenen bakiye ile uyum sağlayana kadar şifreli yedeği ve parolasını saklayın.

Yeni hedef olarak önerdiğimiz donanım cüzdanları

Bu geçiş için fiziksel düğmeler tercih ediyorsanız Trezor Safe 3’ü, daha büyük dokunmatik ekran adres kontrollerini kolaylaştırıyorsa Trezor Safe 5’i öneriyoruz. Her ikisi de yeni imzalama anahtarlarını ayrı bir cihazda tutabilir. Bir tane satın almak eski anahtarı düzeltmez: cihazda tamamen yeni bir cüzdan oluşturun.

Amazon Associates programının katılımcısı olarak, nitelikli satın alımlardan kazanç elde ederim.

Trezor Safe 3

İki düğme ve monokrom ekran: düğme onayını tercih eden okuyucular için seçimimiz. Eski bakiyeyi aktarmadan önce cihazda tam alma adresini doğrulayın.

Amazon’da Trezor Safe 3’ü görüntüle

Trezor Safe 5

1,54 inç renkli dokunmatik ekran ve dokunsal geri bildirim: ekran boyutu ve dokunmatik kontroller önemli olduğunda tercihimiz. Daha konforlu ekran, yeniden kullanılan veya açığa çıkmış anahtarları güvenli yapmaz.

Amazon’da Trezor Safe 5’i görüntüle

Amazon bağlantıları bölgesel ürün araması açar, doğrulanmış satıcı listesi değil. Satıcıyı Trezor’un resmi Amazon mağazaları veya yetkili satıcılarla karşılaştırın. Kurulum sırasında cihaz kimlik doğrulama kontrollerini kullanın; asla sağlanan, önceden yazılmış cüzdan yedeğini kullanmayın.

  1. trezor.io/start adresinden başlayın ve Trezor Suite’i kurun. Cihaza özgü kurulum ve kimlik doğrulama kontrollerini izleyin, Create a new wallet seçin ve cihazda yedeklemeyi tamamlayın. Yedeği çevrimdışı tutun. Yukarıdaki örnekten eski cüzdanı veya yazılım cüzdanı seed’ini bu cihaza geri yüklemeyin.
  2. Normal gönderim için Trezor Suite’te Bitcoin hesabını seçin, Receive seçin ve bağlı cihazda tam adresi doğrulayın. Bu adresi Blockchain.com yolundaki yazılım cüzdanı adresi yerine kullanın. Gelen transferi ve onaylarını Electrum’un History sekmesi yerine Trezor Suite içinde kontrol edin.
  3. Electrum Sweep yolu için yeni yapılandırılmış Trezor’u bağlayın ve File → New/Restore → Standard wallet → Use a hardware device ile Electrum cüzdanı oluşturun. Trezor’un Electrum kılavuzunu izleyin ve eşleşen Bitcoin hesabı ile adres türünü kullanın. Trezor’da bir alma adresi doğrulayın, sonra sweep hedefi olarak kullanın. Sweep’e sadece ESKİ WIF anahtarını girin; Trezor yedek kelimelerini Electrum’a veya web sitesine asla yazmayın.

Trezor: cihazı Electrum’a bağlayın ↗

Kaynaklar ve kapsam

Bu vaka çalışması tarihi tarayıcı uygulamalarını ve farklı geçiş yollarını kapsar. Entropi, seed ifadeleri ve donanım cüzdanları arasındaki daha geniş ilişki için arka plan makalesine devam edin.

Arka plan: zayıf cüzdan tohumları nasıl oluşur →

19 Eylül 2026’da birincil dokümantasyon ve kaynak koduna karşı kontrol edildi. Testte gerçek fonlar veya özel anahtarlar kullanılmadı. Tablo kapsamlı bir liste veya cüzdanınızın teşhisi değildir.

SSS

BitcoinJS 0.1.3 cüzdan sürümümü tanımlar mı?

Hayır. Randstorm açıklamasında belirtilen bir kütüphane örneğini tanımlar. Bir cüzdan bu kütüphaneyi paketleyebilir veya değiştirebilir, sürümünü kullanıcıya açığa çıkarmaz. Orijinal cüzdan yapısı ve tarayıcı ortamı hâlâ tanımlanmalıdır.

bitaddress.org 2.8.0 kağıt cüzdanımın güvenli olduğunu kanıtlar mı?

Değişiklik günlüğü 2.8.0’da daha güçlü entropi toplama belgeler. Bireysel anahtarın nasıl oluşturulduğunu, hangi tarayıcı özelliklerinin mevcut olduğunu veya dosyanın değiştirilip değiştirilmediğini sertifikalandırmaz. Bu nedenle makale bunu belgelenmiş bir değişiklik olarak ele alır, evrensel bir güvenlik sınırı olarak değil.

Neden kağıt cüzdan yolu Import yerine Sweep kullanır?

Import orijinal özel anahtarı kullanmaya devam eder. Sweep, harcanabilir fonları hazırlanmış hedef cüzdana aktaran bir işlem oluşturur. Yeni cüzdan bağımsız oluşturulmuş anahtarlara sahip olmalıdır ve hedef ile ücret yayınlamadan önce kontrol edilmelidir.

Electrum Coinpunk yedeğini doğrudan açabilir mi?

İncelenen Coinpunk sürümü şifreli bir cüzdan yükü saklar, Electrum seed değil. Yedeği, giriş tanımlayıcısını ve parolayı koruyun. Anahtarları sürüme özgü uzmanlıkla yerel olarak kurtarın, sonra orijinal adreslerle eşleştirin ve sweep yolunu kullanın.