İçeriğe geçin
buybitcoinsmart

Sözlük / Adresler ve anahtarlar

Bech32m

Bech32m nedir?
Bech32m, bech32'deki bir kusuru sağlama toplamındaki tek bir sabiti değiştirerek giderir ve bc1p ile başlayan her Taproot adresi orijinal kodlama yerine bunu kullanır.

Tanımlandığı belge: BIP-350.

Kusur dar ama gerçektir. Bir bech32 dizesi "p" karakteriyle bittiğinde, o son harfin hemen önüne herhangi bir sayıda "q" karakteri eklemek veya silmek sağlama toplamını geçerli bırakır, böylece bozulmuş bir adres kontrolü geçebilir. BIP-350, bech32'nin 1 değerini birleştirdiği yerde sağlama toplamına 0x2bc830a3 değerini katarak bu açığı kapatır.

Nasıl çalışır

Bech32m, tek bir sayısı değiştirilmiş bech32'dir. Kodlayıcı insan tarafından okunabilir öneki açar, veriyi ekler, sonuç üzerinde aynı BCH polinomunu çalıştırır ve yalnızca son adımda farklılaşır; burada çıktı 1 yerine 0x2bc830a3 ile birleştirilir. Okuyucunun görebildiği her şey aynı kalır: aynı 32 karakterli alfabe, aynı "1" ayırıcısı, aynı altı sağlama toplamı karakteri, aynı 90 karakterlik üst sınır.

Sabiti değiştirmek bir yan etki değildir. Mekanizmanın kendisidir. İki şema birbiriyle uyuşmadığı için bir bech32m dizesi bech32 sağlama toplamı testinde başarısız olur ve bir bech32 dizesi de bech32m testinde başarısız olur; böylece eski yazılımlar yeni adresleri yarım anlamak yerine doğrudan reddeder. BIP-350 bunu, bech32'nin yerinde sessizce yamalanması yerine seçilmiş kasıtlı bir uyumluluk kırılması olarak tanımlar.

Ayrım çizgisi tanık sürümüdür. 0 numaralı tanık sürümü, yani tek anahtarlar ve betikler için bc1q adresleri, bech32'yi korur. 1 ile 16 arasındaki tanık sürümleri bech32m kullanır. Bugün yalnızca 1 numaralı sürüm tanımlıdır, Taproot olarak, dolayısıyla pratikte bech32m bc1p anlamına gelir. Kural, henüz var olmayan sürümleri kapsayacak şekilde yazıldı; bu yüzden doğru bir cüzdan adres önekini değil sürüm numarasını kontrol eder.

Nerede görülür

Bir bc1p alım adresi bech32m'dir, 62 karakter uzunluğundadır ve 32 baytlık bir anahtarı kodlar. Test ağlarında aynı çıktılar tb1p olarak görünür. Taproot çıktıları 14 Kasım 2021 tarihinde 709.632 numaralı blokta harcanabilir hale geldi; bech32m adreslerinin ana ağda gerçek değer taşımaya başladığı nokta burasıdır.

Bitcoin Core, BIP-350'yi 22.0 sürümünde uyguladı ve o sürümden itibaren adres alan her uzaktan yordam çağrısı, 1 ve üzeri tanık sürümleri için bech32m gerektirir. 23.0 sürümü daha ileri gitti: yeni oluşturulan tanımlayıcı cüzdanlar otomatik olarak bir tr() tanımlayıcısı alır, böylece istenmeden bc1p adresleri verir.

Pratik zorluk para çekme ekranında ortaya çıkar. Bazı platformlar bc1p hedeflerini hâlâ reddeder, çünkü adres doğrulayıcıları bech32'yi anlar ama daha yeni sabiti anlamaz. Böyle bir durumda cüzdanınızda bir sorun yoktur ve aynı kurtarma ifadesinden türetilen bir bc1q adresi bitcoinleri aynı cüzdana ulaştırır.

Bech32m vs P2TR

Bech32m bir kodlamadır, P2TR ise bir çıktı türüdür ve bugün yalnızca zamanlama tesadüfü sayesinde örtüşürler. Bech32m, 1 veya üzeri sürümdeki herhangi bir tanık programının metin olarak nasıl yazılacağını söyler. P2TR ise 1 sürümlü bir programın ne anlama geldiğini söyler: bir Schnorr imzasıyla veya bir betiğin açığa çıkarılmasıyla harcanabilen, 32 baytlık ayarlanmış bir genel anahtar. Dolaşımdaki her bech32m adresi bir P2TR çıktısını kodlar, ancak 2 numaralı tanık sürümü herhangi bir şeye atandığı anda bu doğru olmaktan çıkar, çünkü o adresler de bech32m olur ve Taproot olmaz.

Karıştırılmaması gerekenler

Sık sorulan sorular

Bech32m ile ilgili bir şey yapmam gerekiyor mu?

Hayır. Kodlamayı cüzdanınız halleder. Bunun görünür hale geldiği tek yer, bc1p hedeflerini reddeden bir hizmettir ve oradaki çözüm, aynı cüzdandan bir bc1q adresine para çekmektir.

Bech32'yi düzeltmek yerine neden ikinci bir biçim oluşturuldu?

Çünkü sessiz bir düzeltme, eski ve yeni yazılımın hangi adreslerin geçerli olduğu konusunda anlaşmazlığa düşmesine yol açardı. Sağlama toplamı sabitini değiştirmek iki kodlamayı karşılıklı olarak geçersiz kılar, böylece güncellenmemiş cüzdanlar bir bech32m adresini yanlış okumak yerine doğrudan reddeder.

Sıradaki okuma

İlgili terimler

Daha fazlası: Adresler ve anahtarlar

Bu sayfayı İngilizce okuyun