Blockchain

Taproot Üzerine İnşa Etmek: Ödeme Havuzları Bitcoin'in Sonraki Katman İki Protokolü Olabilir

Bu makale, önerilen Taproot protokol yükseltmesine dayalı teknolojik bir kavram hakkındadır. Taproot'un nasıl çalıştığına dair temel bilgilere henüz aşina değilseniz, önce okumanız önerilir. bu açıklayıcı.

Kazık kökİlk olarak Bitcoin Core katılımcısı Gregory Maxwell tarafından önerilen Bitcoin protokolüne yönelik potansiyel bir yükseltme olan , gelişiminin son aşamalarındadır. Teknoloji, kullanıcıların karmaşık akıllı sözleşmeleri normal görünen işlemlerin içine gizlemesine olanak tanıyan akıllı bir kripto hileleri kombinasyonundan oluşuyor - karmaşıklık yalnızca bir sözleşmenin tarafları işbirliği yapmadığında ortaya çıkıyor.

Bu fikirden yararlanarak, Jeremy Rubin, Antoine Riard, Gleb Naumenko ve Gregory Maxwell dahil (ancak bunlarla sınırlı olmamak üzere) Bitcoin Core'a katkıda bulunanlar, Bitcoin Core olarak adlandırılan genel bir kavram hakkında spekülasyon yapıyorlar. ödeme havuzları, katılım havuzları veya madeni para havuzları. Bu havuzlar - şimdilik ödeme havuzları olarak adlandıracağız - bu kullanıcıların herhangi birinin ödeme yapmasına (veya almasına) izin verirken, kullanıcı gruplarının Bitcoin blok zincirinde kaydedilen aynı madeni paraların (teknik olarak: UTXO'lar) sahipliğini paylaşmasına izin verir. onlarla. Grup ve bireysel üyeleri bir Taproot yapısında "saklandıkça", hepsi daha fazla mahremiyetin, akıllı sözleşme esnekliğinin ve diğer avantajların keyfini çıkarıyor...

Tasarım özellikleri bir Ödeme Havuzu teklifinden diğerine biraz farklılık gösterse de genel konsept aynıdır. İşte temel fikir…

Para Paylaşımı

İlk olarak, bir ödeme havuzu oluşturmak için, kullanıcılar madeni paralarını (kesirlerini) aralarında paylaşılan bir Taproot adresinde toplayarak birleştirir. Diyelim ki Alice'in üç madeni parası var, Bob'un iki madeni parası ve Carol'ın toplam altı madeni parası var. Birlikte, bu jetonları paylaşılan adrese gönderen ve altı jetonlu bir ödeme havuzu haline getiren bir işlem oluştururlar.

Blok zincirinde, ödeme havuzu adresi artık altı madeni para tutan normal bir Bitcoin adresi gibi görünüyor. Ancak görünenin altında Alice, Bob ve Carol Taproot'u zekice kullanarak ödeme havuzunda her birinin kendi payına düşen payını kontrol etmesini sağladı. Alice herhangi bir noktada adresten üç jeton talep edebilir, Bob herhangi bir noktada iki ve Carol bir talep edebilir.

Bunun nedeni, adresten jeton harcamak için yalnızca iki ana seçeneğin olmasıdır.

İlk seçenek, doğrudan adresten, teknik terimlerle Taproot anahtar yolundan harcama yapmaktır. Bu, üç katılımcının da işbirliğini (yani kriptografik imzaları) gerektirir. Alice, Bob ve Carol kabul ederse, altı jeton istedikleri gibi harcanabilir ve bu, Bitcoin ağındaki herhangi bir normal işlem gibi görünecektir. Örneğin üçlü, ilgili bakiyelerini bireysel adreslere geri göndermeye karar verebilir: Alice için üç, Bob için iki ve Carol için bir. Ama isterlerse altı madeni parayı da Julian'a bağışlamak için işbirliği yapabilirler veya anlaşabilecekleri başka bir şekilde harcayabilirlerdi. Önemli olan, üçünün de katılması gerektiğidir, bu nedenle kimsenin bakiyesi kendi işbirliği olmadan harcanmaz.

İkinci ana seçenek aslında birkaç alt seçenekten oluşur. Coin'lerini ödeme havuzuna göndermeden önce Alice, Bob ve Carol kriptografik ağaçta Taproot adresinin arkasına bir şey sakladılar: ödeme havuzundan para göndermenin alternatif yollarını eklediler. (Şu anda bu, üç katılımcının tüm seçenekleri ayarlamak için biraz karmaşıklık gerektirecek ve çok iyi ölçeklenmeyecek şekilde bu yollardan işlemleri önceden imzalamasıyla gerçekleştirilebilir; önerilen protokol yükseltmeleri, bunu gelecekte potansiyel olarak kolaylaştırabilir. .)

Katılımcılardan biri ödeme havuzundaki paraları alternatif bir Taproot yolu aracılığıyla harcamayı seçerse, genellikle o katılımcının bakiyesine karşılık gelen bir miktarı kendi seçtikleri bir adrese (ör. kontrol ettikleri bireysel bir adres) gönderir. (Alice'in durumunda, kendi adresine üç jeton, Bob'un durumunda kendi adresine iki ve Carol'ın durumunda bir.)

Bu alternatif yolu kullanarak, kalan jetonlar da otomatik olarak harcanır. Bu, ödeme havuzunun tasarımına bağlı olarak karmaşıklık ve ölçeklenebilirlik açısından farklı ödünleşimler sunan çeşitli şekillerde yapılabilir.

En basit çözüm, diğer tüm katılımcılara kendi paylarına düşen coinleri de kendi seçtikleri bir adrese göndermektir. Diğer bir deyişle havuzdan bir kullanıcı çıkarsa herkes havuzdan çıkar.

Riard ve Naumenko tarafından tercih edilen ikinci bir çözüm, kalan tüm madeni paraları bir yeni Tam olarak ilk ödeme havuzuna benzeyen ödeme havuzu, şu anda çıkış yapan kullanıcıyı içeren her şeyden sıyrıldı. Bu tasarım en iyi kullanıcı deneyimini sunar, ancak ölçeklendirilmesi en zor olanıdır, çünkü en önemlisi, tüm potansiyel yeni havuzlar için olası tüm çıkış senaryoları dahil olmak üzere tüm olası çıkış senaryolarına hazırlanmak gerekir. Bununla birlikte, ölçek, önceki ödeme havuzundaki kuralların herhangi bir yeni ödeme havuzuna taşınmasını sağlamak için henüz adlandırılmamış potansiyel bir Bitcoin protokol yükseltmesiyle elde edilebilir.

Ancak Rubin, bu ikinci çözümün pratik olmadığına inanıyor ve birinci ve ikinci çözümler arasında bir şey yapmayı tercih ediyor: bazı katılımcılar jetonlarını anında seçtikleri bir adrese alıyor, diğer katılımcılar jetonlarını yeni bir ödeme havuzuna gönderiyor. Bu tasarım, daha az ideal bir kullanıcı deneyimi sunar, ancak daha iyi ölçeklenebilir ve potansiyel OP_CHECKTEMPLATEVERIFY protokol yükseltmesi, tasarımı basitleştirmeye ve ölçeği daha da artırmaya yardımcı olur. (Çıkışlar, Ağaç Ödemeleri aracılığıyla gerçekleşir; bu tür ödemeler, Bu makale.)

(İkinci ve üçüncü çözümler arasında daha fazla değiş tokuş vardır, ancak tüm artıların ve eksilerin ayrıntıları bu makalenin kapsamı dışındadır; bitcoin-dev posta listesi tartışması ayrıntılar için.)

Kalan jetonların yeni bir ödeme havuzuna gönderilmesinin ne anlama geldiğini görmek için, Alice, Bob ve Carol'ın ikinci seçeneği seçtiğini varsayalım. herşey kalan paralar yeni bir ödeme havuzuna gönderilir. Bu tasarımda Alice ilk ödeme havuzundan çıkarsa, üç jeton kendi seçtiği bir adrese gönderilirken, diğer üç jeton Bob ve Carol arasında yeni bir ödeme havuzuna gönderilir. Bu noktada Alice, kendi madeni paraları üzerinde yeniden tek kontrole sahipken, Bob ve Carol için pek bir şey değişmedi. İkisi, kalan üç madeni parayı istedikleri gibi harcamak için yine de işbirliği yapabilir veya Alice'in daha önce yaptığı gibi, ikisi de tek taraflı olarak çıkabilir.

Bob daha sonra ikinci ödeme havuzundan tek taraflı olarak çıkarsa, seçtiği bir adrese iki jeton ve yalnızca Carol'ın kaldığı daha da yeni bir ödeme havuzuna (üçüncüsü) bir jeton gönderir. (Elbette, bu basitleştirilmiş örnekte, bu son ödeme havuzunun Carol'ın seçtiği bir adresle değiştirildiği bir tasarım aslında daha anlamlı olacaktır, ancak bu bir uygulama detayıdır.)

Önemli çıkarım, bir ödeme havuzundaki katılımcıların havuzdan istedikleri herhangi bir türde ödeme yapmak için işbirliği yapabilmeleri ve herhangi birinin herhangi bir noktada kendi madeni paralarıyla çıkıp kendi paralarının kontrolünü diğer katılımcılara bırakmasıdır.

Ödemeyi Ödeme Havuzuna Almak

Bu nedenle, tüm katılımcıların bakiyelerini bir ödeme havuzundan bireysel olarak çekebileceğini veya - hepsi kabul ederse - havuzdan harcayabileceğini belirledik. Aslında zekice bir şeyi mümkün kılan bu ikinci seçenektir: ödeme havuzu dinamik olabilir. Tüm katılımcılar aynı fikirde olduğu sürece, sadece kendilerine paralarını geri ödeyemezler veya başkalarına (Julian gibi) ödeme yapamazlar, daha da ilginç bir şey yapabilirler. Fonlarını farklı tasarımlarla ödeme havuzunun daha yeni sürümlerine taşıyabilirler.

Bu, örneğin herhangi birinin havuzdan harcama yapmasına izin verir.

Ayrıca bakınız

En son fikir birliği protokolü değişikliği olan Taproot, aktivasyona yaklaştıkça, Bitcoin geliştiricileri ağın tam olarak nasıl yükseltilmesi gerektiğini soruyor.

Diyelim ki Alice yeni bir araba alıyor ve bunun için bir bitcoin ile ödeme yapmak istiyor. Alice, Bob ve Carol daha sonra ödeme havuzundan bir jetonu araba galerisine ve kalan beş jetonu bir başkasına gönderen bir işlem oluşturabilir. yeni ilki ile aynı görünen ödeme havuzu, ancak bu sefer Alice, öncekinden bir eksik olmak üzere yalnızca iki jetonla tek taraflı olarak çıkabiliyor.

Bu arada işlem, diğer normal Bitcoin işlemleri gibi görünüyordu. Araba bayisi (veya blockchain casusları), Alice'in altı madeni paranın tamamına sahip olduğu ve birini arabayı satın almak için kullandığı ve diğer beşini bozuk para olarak tuttuğu sonucuna varabilir. Madeni paraların bir kısmının Bob ve Carol'a ait olduğu veya işlemle ilgili oldukları hakkında hiçbir fikirleri olmayacaktı.

Bir dahaki sefere, Bob bir ödeme yaptığında ve Alice ve Carol işbirliği yaptığında, bu aynı ödeme havuzundan yapılır ve dış dünya için bir kez daha sıradan bir Bitcoin işlemi gibi görünür. Ödeme havuzunun ortaya çıkan yinelemesinde, Bob iki yerine bir jetonla çıkabilir. Bu arada, aynı blockchain casusları, Alice'in tekrar ödeme yaptığını düşünmüş ve kafalarını daha da karıştırmış olabilir. (Blockchain casusları bir şekilde adresin gerçekten Alice, Bob ve Carol arasında bir ödeme havuzu olduğunu anlasalar bile, üçünden hangisinin en son ödemeyi yaptığını yine de söyleyemezler.)

Alice, Bob veya Carol her jeton harcadığında, işlem bunlardan herhangi birinden gelmiş olabilir ve ödeme havuzunun dışındaki hiç kimse aradaki farkı anlayamaz.

Ödeme havuzları sadece harcamaya izin vermiyor. Alice, ödeme havuzundaki “bakiyesini” doldurmak isterse bunu da yapabilir. Alice, Bob ve Carol bu durumda mevcut beş jetonu yeni bir Taproot adresine taşımak için işbirliği yapacak ve Alice aynı işlemde kendi (bireysel) adreslerinden birinden ek bir jeton gönderecektir. Yeni Taproot adresi, tek taraflı çıkış seçeneğinde yansıtıldığı gibi, bir kez daha üçü Alice'e ait olan altı madeni para içerecektir.

Aynı şekilde tamamen yeni kullanıcılar da ödeme havuzuna katılabilir. Alice, Bob ve Carol Dave'in katılmasına izin verirse, üçü Dave ile iş birliği yaparak ödeme havuzu fonlarını Dave'in yeni madeni paralarıyla birlikte Dave'in de katılmasına izin verecek şekilde tasarlanmış yeni bir ödeme havuzuna gönderen bir işlem oluşturur ve çıkar. keşke öyle seçseydi.

Ayrıca, ödeme havuzundaki katılımcıların birbirlerine ödeme yapma seçeneği de vardır. Örneğin Alice, Bob'a bir madeni para öderse, üçü fonları Alice'in bakiyesinden bir madeni paranın çıkarıldığı ve Bob'un bir madeni paranın eklendiği yeni bir ödeme havuzuna göndermek için işbirliği yapabilir. Blok zincirinde yine normal bir ödeme gibi görünür ve blok zinciri casuslarının kimin kime veya ne kadar ödediği hakkında hiçbir fikri olmaz. (Dave'in benzer bir şekilde mevcut katılımcılardan birinden dahili ödeme alarak havuza girmiş olabileceğini belirtmekte fayda var.)

Biraz ekstra karmaşıklıkla (ve ideal olarak en az bir ekstra Bitcoin protokol yükseltmesi ile) Giriş yok), transferler zincir dışında da tamamlanabilir. Alice, Bob'a ödeme yaptığında, bu durumda, tüm katılımcılar aynı şekilde yeni bir ödeme havuzuna para harcayan bir işlem oluşturacaktır, ancak bu işlem yalnızca aralarında paylaşılacaktır - ağa yayınlanmayacaktır (birisi hile yapmaya çalışmadığı sürece). Bu şekilde Alice, Bob ve Carol dengelerini "dahili olarak" güncellemeye devam edebilir ve hatta bir noktada Dave'in havuza girmesine izin verebilir. Hepsi havuzu kapatmayı kabul ettiklerinde, her birine en son bakiyelerini veren, orijinal ödeme havuzundan harcama yapan son bir işlem oluşturabilirler.

olarak bilinen daha eski bir fikre benzer. Kanal Fabrikaları, bu tür ödeme havuzları sonunda Lightning kanallarını, kasaları veya diğer Katman İki protokollerini barındırmak için bile kullanılabilir. Bu, bu tür havuzlardaki herhangi bir ek protokol katmanını "sarma" potansiyeli sunabilir, böylece tüm karmaşıklıkları aynı ve düzenli görünen işlemlerde gizleyebilir.

Kaynak: https://bitcoinmagazine.com/articles/building-on-taproot-payment-pools-could-be-bitcoins-next-layer-two-protocol?utm_source=rss&utm_medium=rss&utm_campaign=building-on-taproot-payment- havuzlar-olabilir-bitcoins-sonraki-katman-iki-protokol