Sözlük / Adresler ve anahtarlar
Türetme yolu
- Türetme yolu nedir?
- Türetme yolu, bir HD cüzdanın anahtar ağacındaki, m/84h/0h/0h/0/0 gibi yazılan ve yazılıma kurtarma ifadenizden milyarlarca anahtar arasından tam olarak hangisini yeniden oluşturacağını söyleyen yoldur.
Tanımlandığı belge: BIP-44.
Bir yol bir koordinattır, sır değil. Baştaki iki sayı, kelimelerinizin 1, 3, bc1q veya bc1p ile başlayan adresleri yeniden oluşturup oluşturmayacağını belirler; çünkü BIP-44, BIP-49, BIP-84 ve BIP-86 aynı ifadeyi farklı okur. Yolu yedeğinizin yanına kaydetmek, bitcoinlerinizi bulan bir geri yükleme ile sıfır bildiren bir geri yükleme arasındaki farktır.
Nasıl çalışır
Bir yol soldan sağa okunur, her eğik çizgi bir düzeydir ve her düzey aramayı daraltır. Baştaki m, kurtarma ifadenizden üretilen ana anahtardır. Ondan sonraki her şey bir dizindir ve bir kesme işareti ya da bir h harfi o dizini sertleştirilmiş olarak işaretler.
İlk düzey amaçtır ve adreslerinizin neye benzeyeceğine karar veren düzey odur.
| Standart | Hesap yolu | Ürettiği adresler |
|---|---|---|
| BIP-44 | m/44h/0h/0h | eski tip (legacy), 1 ile başlar |
| BIP-49 | m/49h/0h/0h | iç içe SegWit, 3 ile başlar |
| BIP-84 | m/84h/0h/0h | yerel SegWit, bc1q ile başlar |
| BIP-86 | m/86h/0h/0h | Taproot, bc1p ile başlar |
İkinci düzey, SLIP-0044 kayıt defterinden alınan para birimi türüdür; orada Bitcoin 0 ve her testnet 1 olarak geçer. Üçüncüsü hesap numarasıdır; tek bir kurtarma ifadesinin 0h konumunda kişisel bir cüzdanı ve 1h konumunda ortak geçmişi olmayan bir iş cüzdanını tutabilmesini sağlayan budur. Bundan sonra sertleştirme biter: dördüncü düzey zincirdir, dağıttığınız adresler için 0 ve para üstü için 1; beşincisi ise ödeme aldıkça yukarı doğru sayan adres dizinidir.
Sertleştirilmiş ve normal düzeyler arasındaki bu ayrım bilinçlidir. Hesap düzeyi sertleştirilmiş olduğundan, m/84h/0h/0h için genişletilmiş genel anahtar bir telefona veya bir muhasebeciye aktarılabilir; o kişi bunun altındaki her alma ve para üstü adresini türetebilir ama yana doğru başka bir hesaba ya da yukarı doğru ana anahtara tırmanamaz.
Çoklu imza kendi dalını kullanır. BIP-48, yerel SegWit için ortak imzalayan anahtarlarını m/48h/0h/0h/2h konumuna koyar ve son sertleştirilmiş düzey betik türünü adlandırır; böylece bir cihaz, hiçbir şey imzalamadan önce tek imzalı bir hesabı çoklu imzalı bir hesaptan ayırt edebilir.
Bitcoin satın alırken bu neden önemli
Yol güvenliğinize asla dokunmaz. Bitcoinlerinizin çalınmasının ne kadar zor olduğu konusunda hiçbir şeyi değiştirmez; önünüzdeki yazılımın onları bulup bulamaması konusunda ise her şeyi değiştirir.
Bunun yol açtığı başarısızlık yaygındır ve her seferinde korkutucudur. Bir borsada satın alır, bir cihaza para çekersiniz ve bitcoinler m/84h/0h/0h altındaki bc1q adreslerine iner. Bir yıl sonra aynı 24 kelimeyi eski tip adresleri varsayılan olarak kullanan farklı bir uygulamaya geri yüklersiniz; bakiye 0,00000000 gösterirken bir blok gezgini hâlâ paranızı eski adreste el değmemiş hâlde gösterir. Hiçbir şey kaybolmamıştır. Uygulama, her düzeyinde dört milyar çocuk bulunan bir ağacın yanlış dalına bakmaktadır.
Varsayılanlar, bu sitenin incelediği cüzdanlar arasında farklıdır. Trezor Suite ve Ledger Live hesap listesini adres türüne göre sunar ve sizin için sessizce bir amaç seçer. Electrum geri yükleme sırasında hangi betik türünü istediğinizi sorar ve serbest metin bir yol alanını gelişmiş bir seçeneğin arkasına saklar. Sparrow birkaç standart yolu aynı anda tarar ve hangisinde geçmiş olduğunu size gösterir. Hiçbiri yanlış değildir ve hiçbiri diğerinin ne yaptığını tahmin edemez.
İki alışkanlık sorunu tamamen ortadan kaldırır. Hesap yolunu ve adres türünü cüzdanın adıyla aynı nota yazın ve o notu kurtarma ifadesi olmadan ulaşabileceğiniz bir yerde, örneğin bir parola yöneticisinde saklayın; çünkü not tek başına hiçbir şeyi açığa çıkarmaz. Ardından, bir geri yüklemeye güvenmeden önce gösterdiği ilk alma adresini özgün cihazınızın gösterdiği adresle karşılaştırın. Bu iki dizi eşleşiyorsa altlarındaki her adres de eşleşir.
24 kelimeyi Electrum uygulamasına geri yükleyip sıfır görmek
Yanlış yolda bir geri yükleme şöyle gelişir. Bir Trezor Model T cihazı 24 kelimeyle kuruldu, bir borsadan yapılan para çekme işlemi ilk yerel SegWit adresine gitti ve cihaz şimdi bir çekmecede duruyor. Aylar sonra ifade bir dizüstü bilgisayarda Electrum uygulamasına yazılır.
Electrum taramadan önce betik türünü sorar. Eski tip p2pkh seçerseniz m/44h/0h/0h türetilir, 1 ile başlayan adresler gösterilir, hiçbir şey bulunmaz ve boş bir cüzdan bildirilir. Bitcoinler hâlâ bc1q adresindedir, hâlâ onaylıdır ve txid bilen herkes tarafından hâlâ görülebilir.
Düzeltme bir dakika sürer. Yeniden geri yükleyin, yerel SegWit seçin veya gelişmiş türetme alanını açıp m/84'/0'/0' yolu elle girin. Electrum yeniden tarar, bakiye görünür ve adres listesi, Trezor cihazının alma sekmesinde gösterdiği aynı diziyle başlar. Hâlâ sıfır gösteriyorsa ve ödemelerin dalın daha ilerisine gittiğini biliyorsanız, bir şeyin eksik olduğunu varsaymadan önce boşluk sınırını (gap limit) varsayılan 20 değerinden yükseltin.
Bu dizideki hiçbir adım bitcoinler için risk içermedi, çünkü geri yükleme bir okuma işlemidir. Her amacı sırayla, birbiri ardına deneyebilirsiniz ve tek maliyet her yeniden taramanın aldığı süredir.
Türetme yolu vs çıktı tanımlayıcısı
Bir yol nerede olduğunu söyler; bir tanımlayıcı nerede, neyi ve hangi anahtardan başlayarak söyler. wpkh([fingerprint/84h/0h/0h]xpub/0/*) tanımlayıcısı aynı yolu, ayrıca betik türünü bir sarmalayıcı işlev olarak, ayrıca genişletilmiş anahtarın kendisini ve ayrıca yanlış yazılmış bir karakteri yakalayan bir sağlama toplamını içerir. Birine bir yol vermek ona cüzdanınız hakkında hiçbir şey söylemez. Birine bir tanımlayıcı vermek tüm adres geçmişinizi ve o daldaki her gelecek adresi teslim eder; birinin e-postayla gönderilmesinin güvenli, diğerinin güvensiz olmasının nedeni budur.