Taproot Bitcoin'e Geliyor: Nasıl Çalışır, Tarihçesi ve Etkileri PlatoBlockchain Veri Zekası. Dikey Arama. Ai.

Taproot Bitcoin'e Geliyor: Nasıl Çalışıyor, Tarihçesi ve Etkileri

Taproot Bitcoin'e Geliyor: Nasıl Çalışır, Tarihçesi ve Etkileri PlatoBlockchain Veri Zekası. Dikey Arama. Ai.

Taproot ve Schnorr imzaları Bitcoin'de 709,632. blokta yayına girecek. Bu, geleceğe inşa etmeye devam etmek için büyük bir temel başarı olacak. Son büyük protokol yükseltmemiz olan Ayrılmış Tanık'ın ağda yayına girmesinden bu yana dört yıl geçti. Bu bir yarılanma döngüsü kadar uzun!

Bunu bir düşün. SegWit'in canlı yayına geçmesinden Taproot'un canlı yayına geçmesine kadar dört yıl. Olması gerektiği gibi yavaş, metodik bir sabır. Ancak Taproot/Schnorr'un geçmişi bundan çok daha eskilere dayanıyor.

Taproot'un Tarihi

Bir süredir burada bulunan bazıları bunu ironik bulabilir, ancak bildiğim kadarıyla Schnorr imzalarından ilk kez bahseden kişi aslında eski Bitcoin Core geliştiricisinden kurumsal blockchain kurucusu Mike Hearn'e aitti. 2012 yılında kadar getirdi Düğüm doğrulamasını hesaplama açısından daha az pahalı hale getirmek için imzaların toplu doğrulanmasına ilişkin yeni bir şifreleme eğrisi fikri. Sonuçta önerdiği plan Schnorr imzalarına bağlıydı.

Adam Back saflığı tartışıyordu şemaları 2014 yılında Schnorr imzalarını kullanarak tek imzalı adreslere benzeyen çoklu imzalı adresler yapmak. Gavin Andresen bile dahil ECDSA yerine Schnorr Eğer sihirli bir değnek sallayabilseydi Bitcoin'de yapacağı değişikliklerden oluşan istek listesinde.

Bitcoin'in neredeyse başlangıcına yakın bir zamandan bu yana, Bitcoin Core'da aktif olarak yer alan geliştiricilerin çoğu Schnorr imzalarını istedi ve bunların ECDSA imzalarına üstünlüğü konusunda her zaman oldukça sağlam bir fikir birliği oluştu. Aslında ECDSA'nın özellikle Schnorr imza şemasının patentli olması ve patentlerle sınırlandırılmayan açık kaynaklı bir kriptografik imza şemasına büyük bir ihtiyaç olması nedeniyle yaratıldığı iddia edilebilir.

Schnorr, ECDSA'dan çok daha verimli ve kolayca değiştirilebilir (imzalara bir şeyler eklenebilir, çıkarılabilir vb. ve doğru şekilde yapılırsa kullanıcılara, sahip olmaları gerektiğinde hala geçerli imzalar bırakabilir). Yıllar boyunca çoğu kriptografik uygulamada ECDSA'yı kullanmak arzudan ziyade zorunluluk meselesiydi.

Yaklaşan Taproot yükseltmesinin Taproot yarısı olan Merkelleştirilmiş Soyut Sözdizimi Ağaçları (MAST), benzer uzun süredir devam eden bir geçmişe sahiptir. Alıntıyı bulamıyorum, ancak Peter Todd gibilerin 2013 veya 2014 civarında Bitcointalk.org'da ortalıkta dolaştığı bu ifadeyi oldukça net hatırlıyorum.

Özgün MAST için BIP Johnson Lau tarafından 2016 yılında önerildi. Bu teklif aynı zamanda 2017 yılı civarında Mark Friedenbach, BTCDrak ve Kalle Alm'ın iki ayrı BIP'e ayırmasıyla da bir miktar hareketlilik gördü (116 ve 117) ve Lau'nun orijinal önerisini genişletti.

MAST, Greg Maxwell'in ilk Taproot fikrini ortaya atmasına kadar bir sonraki yıl belirsizlik içinde oturdu. yayınlanan bitcoin-dev e-posta listesine ekleyin. Onun temel görüşü, aklına gelen birden fazla katılımcı arasındaki herhangi bir sözleşme durumunda, sözleşmenin, daha gelişmiş senaryolar ve işlemlerle sonucu zorlamak yerine herkesin yalnızca uygun sonucu imzalamasıyla çözülebileceği bir "optimum sonuç" olmasıydı. Bu, Taproot'un dayandığı temel iddiadır, yani MAST ağacını, diğer harcama koşullarının bir Merkle ağacının var olup olmadığını açığa vurmadan harcanabilecek normal bir üst düzey anahtara ayarlamak.

Bu tarih dersinin son küçük kısmı Pieter Wiulle'un şunu duyurmasıyla başlıyor: taslak BIP'ler 6 Mayıs 2019'daki posta listesine paralel olarak Schnorr ve Taproot için. Ocak 2020 itibarıyla bu resmi olarak tamamlandı. BIP'ler 340, 341 ve 342. Bu noktadan itibaren, uygulama düzeyinde sadece çok sayıda küçük ayrıntının iyileştirilmesi, bir miktar inceleme dönemi ve ardından uzun süren bir süreç vardı. aktivasyon mekanizmaları üzerine mücadele. Bu bizi şu ana götürüyor, aktivasyondan çekiniyor.

Schnorr İmzalarının Önemi

Peki Schnorr imzalarının nesi bu kadar önemli? Başlangıç ​​olarak işlemleri küçültüyorlar. Bir ECDSA imzası, bir işlemdeki tek bir imza için genellikle yaklaşık 72 bayt boyutundadır. Schnorr imzaları, imza başına maksimum 64 bayt hızında çalışır. Bu, her Schnorr imzası için ECDSA'ya kıyasla yaklaşık %12'lik bir boyut tasarrufu anlamına geliyor. Bu, hem ECDSA kullanıcısından daha az ücret ödeyecek olan Schnorr kullanan kişi için doğrudan bir faydadır, hem de başka birinin Schnorr'unu işlemek ve doğrulamak için blok zincirinde biraz daha az veri saklanmasını gerektirerek Schnorr kullanmayan kişilere de doğrudan bir fayda sağlar. imzalar.

Daha az veri depolamak her zaman iyidir, ancak daha da iyisi, depolamanız gereken verileri doğrulama verimliliğini artırmaktır. Schnorr'un güzel özelliklerinden biri olan arkasındaki matematiğin doğrusallığı, Bitcoin verilerinde istediğiniz güzel bir özelliğe de olanak tanır: toplu doğrulama. Düğümünüz ağdan bir blok aldığında, her bir işlemi ayrıştırır ve her imzayı tek tek doğrular.

Bu, blokları doğrulamanın neden çok fazla CPU gücü tükettiğinin büyük bir kısmıdır. Schnorr imzalarının tümü bir araya toplanabilir ve aynı anda matematiksel olarak doğrulanabilir; bu, onları bir araya getirip bir grup bireysel işlem yerine tek bir matematik işlemi yapmak gibi bir şeydir. Yani ne kadar çok Schnorr imzası varsa, hesaplama tasarrufu da o kadar büyük olur. Bu, ağ için büyük bir ölçeklendirme kazancıdır.

Schnorr'un getirdiği bir diğer büyük gelişme ise çoklu imza komut dosyalarıdır. Her çoklu imza adresinin, harcama sırasında bir çoklu imza komut dosyasında yer alan tüm bireysel ortak anahtarları açıkça ortaya koyması ve harcama sürecine dahil olan her anahtar için bir imza sağlanması gerekir. Schnorr'un matematiksel özellikleri sayesinde çoklu imza standardı olan MuSig'in kapısı açılıyor. Anahtarları birbirine ekleyebilir ve yeni imza protokollerini kullanmak için herkesin özel anahtar paylaşımlarının imzalayabileceği tek bir genel anahtar elde edebilirsiniz. Blockstream'den Jonas Nick Benchmarking MuSig2 iki dakika sürüyor bir milyon katılımcıların çoklu imzalı bir adreste imza atması. Çoklu imza komut dosyalarındaki ölçeklendirme iyileştirmesi hafife alınamaz.

Çoklu imza komut dosyalarına yönelik bu büyük atılımın aynı zamanda Bitcoin üzerine inşa edilen çok sayıda uygulamanın gizlilik profili ve maliyeti üzerinde de büyük bir etkisi var. MuSig tabanlı Lightning kanalları artık zincirdeki Schnorr/Taproot UTXO'ların tüm anonimlik kümesine karışabiliyor çünkü artık bunların ikiden iki çoklu imzalı çıktı olduğu gerçeğini kimse ayırt edemeyecek.

Birleşecekler ve tek bir imza komut dosyası gibi görünecekler. Aynı şey genel olarak herhangi bir çoklu imzalı UTXO için de geçerlidir. Bunun, soğuk depolarını tek imzalı bir komut dosyasından daha sağlam bir güvenlik ve kurtarma modeliyle daha iyi korumak için çoklu imza komut dosyaları kullanan kişiler için birçok etkisi olacaktır.

İlk olarak, blockchain'i izleyerek çoklu imzalı bir kurulum kullandıkları belli olmayacak, dolayısıyla bu, Lightning örneğinde olduğu gibi, onların diğer her şeyle karışmasını sağlayacaktır. Ancak ekonomiyle ilgili önemli bir kazanç var: Şu anda çoklu imzayı kullanmak, sonunda bir UTXO harcamasına dahil olan her anahtar için ayrı bir imza sağlamayı gerektiriyor. Schnorr/MuSig ile işler, tek birleştirilmiş genel anahtar için tek bir imza halinde sıkıştırılacak; bu, MuSig kullanarak çoklu imzalı UTXO'ların harcanmasının, blockchain'e daha az veri aktaracağından çok daha ucuz olacağı anlamına geliyor.

Schnorr imzalarının yaptığı son harika şey bağdaştırıcı imzalarının uygulanmasını büyük ölçüde basitleştirmektir. Geçerli bir imzaya eklenen veya ondan çıkarılan bir değerle "şifrelenen" bir bağdaştırıcı imzasını düşünün. Bu matematiksel işlemi tersine çevirene veya onu işlemek için kullanılan "anahtar" ile "şifresini çözene" kadar geçerli değildir. Bu ECDSA ile mümkündür, ancak Schnorr ile karşılaştırıldığında matematiğin doğrusal olmaması nedeniyle nispeten karmaşıktır ve uygulanmasında dikkate alınması gereken birçok güvenlik kaygısı vardır.

Schnorr'un doğrusal özellikleri nedeniyle, bir bağdaştırıcı imzası, tek bir sayı (örneğin 9,300,030 sayısı) alıp bundan bir değer çıkarmak (örneğin 30) kadar basittir. Bağdaştırıcı imzasını elinde bulunduran taraf, çıkarılan değeri öğrendiğinde, onu kolayca geri ekleyebilir ve işte, yine geçerli bir imzaları var.

Taproot'un Etkileri

Yukarıda biraz tartışıldığı gibi, gerçekte Taproot aslında sadece MAST'tır, ancak P2SH gibi çalışmak yerine (komut dosyasını hash ettiğinizde veya MAST durumunda, komut dosyası ağacının üst kısmındaki Merkle kökü), bir dosyada "ince ayar" yaparsınız. Merkle ağacının kökündeki Schnorr genel anahtarı.

İnce ayar, Schnorr'un doğrusal özellikleri nedeniyle işe yarar - bir genel anahtarı Merkle köküyle "ince ayarladığınızda" (bu Merkle kökünü genel anahtara ekleyin), o zaman Merkle kökünü orijinal özel anahtara ekleyebilir ve bunun için harcama anahtarını oluşturabilirsiniz. yeni ayarlanmış genel anahtar. Yani, aynı şeyi hem genel hem de özel anahtara eklersiniz ve bunlar hâlâ geçerli bir anahtar çiftidir. Bu, bir dalı kullanılmadığı sürece bir MAST ağacının varlığını gizler, ancak temelde bu hala yalnızca bir MAST ağacıdır, yalnızca daha verimli ve özel bir şekilde bağlı olunan bir ağaçtır.

Bir Merkle ağacında farklı harcama komut dosyalarını taahhüt etme ve yalnızca kullanılan komut dosyasını ortaya çıkarma yeteneği, Bitcoin üzerine inşa edilmesi mümkün olan akıllı sözleşme karmaşıklığı açısından büyük bir ölçeklenebilirlik kazancıdır.

Blok boyutunun blok başına işlem sayısını sınırlaması gibi, 100 kilobaytlık işlem boyutu sınırlama sınırı da vardır. Tek fark, bunun bir fikir birliği kuralı olmaktan ziyade bir politika kuralı olmasıdır. Bu, bir madencinin 100 kilobayttan daha büyük bir işlemi çıkarabileceği anlamına gelir, ancak varsayılan olarak ağdaki hiç kimsenin düğümü bundan daha büyük bir işlemi ilk etapta madenciye iletmeyecektir.

Bu, doğası gereği bir Bitcoin UTXO'yu kilitlemek için kullanılan betiğin boyutunu sınırlar. UTXO'nun siz harcayana kadar açıklanmayan bir komut dosyası karmasına kilitlendiği P2SH'de bile, eninde sonunda harcama zamanında tüm komut dosyasını açıklamanız gerekir. Taproot, betiği kullandığınızda betiğin tamamını açıklamanızı gerektirmeyerek betiğin bu ölçeklenebilirlik sınırını artırır. UTXO'yu harcayabileceğiniz tüm yolların toplam boyutunun işlem boyutu sınırıyla sınırlandırılması yerine, yalnızca Taproot UTXO'yu harcayabileceğiniz tek bir yöntemin bu sınırlamaya uyduğundan emin olmanız gerekir.

Taproot'un sağladığı birçok gizlilik avantajı da vardır. MAST ağacının en büyük faydalarından biri, coinlerin diğer taraflarca harcanabileceği her türlü koşullu durumu yaratma yeteneğidir.

Yaklaşık bir yıl sonra çocuklarınızın madeni paralarınızı harcayabileceği veya imzalamayı reddetmeniz durumunda karınızın ve avukatınızın madeni paraları geri alma potansiyeline sahip olduğu miras planları gibi şeyleri hayal edin. Bu harcama koşullarıyla ilgili hiçbir şey, fiilen kullanılmadığı sürece kamuya açıklanmaz. Bu iki yönlü süreç, oluşturduğunuz farklı harcama dallarında yer alan diğer taraflara, söz konusu UTXO'ya katılımları konusunda makul bir inkar edilebilirlik sağlar ve aynı zamanda onları, bir dereceye kadar kontrole sahip olduklarını bilerek önceden kendilerini hedef alan bir hırsız veya saldırgandan korur. hedefin UTXO'ları.

Teknik düzeyde Taproot da nispeten iyi bir şekilde tasarlanmıştır. Ayrı Tanık'a derinlemesine aşina olan ve okuyan herkesin tanık versiyonuna da aşina olması gerekir.

Ayrılmış Tanık uygulandığında, imza verilerinin taşındığı bir işlemin yeni "tanık" bölümünü oluşturdu. Tanık verilerinin bir sürüm bayrağı vardı, böylece yeni özellikler için temel katmandaki tanımsız OP_CODE'ları kullanmak zorunda kalmadan yeni işlevlere yükseltilebiliyordu.

Taproot/Schnorr aslında bu şekilde uygulandı. Ayrılmış Tanık işlemleri sıfır tanık sürümünü kullanır. Taproot/Schnorr yakında yayına girdiğinde, onları eski Ayrılmış Tanık işlemlerinden ayırmak için yeni tanık birinci versiyonunu kullanacaklar. SegWit'in tanık sürümlerini tanıttığı gibi, Taproot da Taproot kullanan UTXO'lar için MAST ağaçlarında kullanılan tapscript'ler için "tapleaf sürümünü" sunar. Bu, yalnızca MAST'ta gömülü komut dosyalarının temel katmanda yeni OP_CODE'lar kullanmadan yükseltilmesine olanak sağlamakla kalmaz, aynı zamanda tanık sürümlerini yükseltmeye gerek kalmadan da yükseltilir! Dolayısıyla Taproot, protokolle ilgili diğer ilgisiz yükseltmeleri sınırlamadan gelecekte yükseltme yapmak için mümkün olduğunca verimli olacak şekilde tasarlandı.

Taproot birçok farklı kullanım durumunu beraberinde getirecek. Başlangıç ​​olarak, bir Lightning kanalındaki ceza anahtarları veya bunların kullanılmasına izin veren zaman kilitleri gibi işbirlikçi olmayan tüm maddeler, Taproot ile bir MAST altına gömülebilir. Kullanılmaları gerekmediği sürece hiç kimse onların var olduğunu bilmeyecek, bu da hangi UTXO'ların aslında Lightning kanalları olup olmadığının anlaşılmasını zorlaştıracaktır.

Miras planları başka bir kullanım durumudur. Altı ay boyunca paranızı taşımadığınızda tüm ailenizin bir araya gelip UTXO'yu istedikleri gibi harcayabilecekleri şekilde yapılandırılmış bir Taproot ağacı hayal edin. Altı ay sonra, bir kişi hariç herkes harcayabilir (yani, anahtarlarınızın karınız, iki çocuğunuz ve ebeveyniniz olduğunu hayal edin, sonra da ekstra altı ay sonra karınızın, bir çocuğunuzun ve ebeveynlerinizin imza atabileceğini hayal edin) veya iki çocuğunuz ve ebeveynleriniz karınız olmadan imza atabilir vb.).

Altı ay sonra iki kişi hariç herkes harcayabiliyor. Sonunda, bir avukatın yardımıyla (hiçbir saçmalık olmadığından emin olmak için) UTXO'yu harcayabilecek tek bir kişiye indirgenebilir.

Veya soğuk deponuzun güvenliğini sağlamak için çoklu imza kullanıyorsanız ancak uzun vadede güvenli ve öngörülebilir olduğunu düşündüğünüz tek bir yeriniz varsa ne olur? Birkaç yıl sonra, diğer anahtarların kaybolması veya tahrip olması durumunda, o güvenli konumdaki anahtarın bu paraları tek başına harcayabileceği, ancak paralarınızı şu anda hırsızlık riskiyle karşı karşıya bırakmadan bir MAST oluşturabilirsiniz. bir anahtar ele geçirildi.

Bu, yalnızca gerçek uygulama ayrıntılarının üzerinde çalışıldığı ve uygulandığı son birkaç yılda değil, neredeyse Bitcoin'in doğuşundan bu yana üzerinde çalışılan, Bitcoin'e yönelik şaşırtıcı ve kapsamlı bir yükseltmedir.

Bitcoin protokolünün ölçeklenebilirliği ve kullanışlılığı açısından o kadar çok açıdan bir kazanç ki, bazılarının ne kadar incelikli ve "seksi olmayan" olması nedeniyle iletilmesi zor. Ama bu galibiyete gölge düşürmüyor. O halde herkes yakında kullanmak zorunda kalacağımız yeni oyuncaklarla oynamaya hazır olsun çünkü Taproot geliyor!

Bu Shinobi'nin konuk yazısıdır. İfade edilen görüşler tamamen kendilerine aittir ve BTC Inc veya Bitcoin Dergisi.

Kaynak: https://bitcoinmagazine.com/technical/bitcoin-taproot-explainer

Zaman Damgası:

Den fazla Bitcoin Dergisi