如果問(wèn)幣圈中任何一個(gè)人: 比特幣面臨的最大挑戰(zhàn)是什么? 你很可能會(huì)聽(tīng)到的回答是: "可擴(kuò)展性".
為了解釋施諾爾簽名 (Schnorr signature) 是什么, 它將如何有助解決可擴(kuò)展性, 我將首先簡(jiǎn)要回顧為什么可擴(kuò)展性必須去解決以及目前的一些進(jìn)展.
回顧
關(guān)于比特幣網(wǎng)絡(luò)應(yīng)該如何擴(kuò)展, 在過(guò)去幾年已經(jīng)有了非常多的爭(zhēng)論, 如何才能通過(guò)一種平滑的方式讓數(shù)以百萬(wàn)(最終達(dá)到數(shù)十億)計(jì)的用戶立刻用上比特幣.
在今天, 比特幣還無(wú)法承受如此量級(jí)的用戶. 對(duì)于每隔 10 分鐘被加入到區(qū)塊鏈中的區(qū)塊, 其中用來(lái)存儲(chǔ)交易的空間是有限制的. 這種限制是出于設(shè)計(jì)層面, 為了確保能夠保留比特幣作為一個(gè)前所未有創(chuàng)新的主要特點(diǎn) (抗審查, 去中心化, 不可更改和開(kāi)放性).
所有的比特幣使用者都希望網(wǎng)絡(luò)能夠擴(kuò)展, 但是當(dāng)真正談到如何實(shí)施, 卻有著一些不同的優(yōu)先級(jí):
有些人主要想盡可能地授權(quán)更多的用戶, 以此來(lái)保持比特幣的完整性特征. 他們想要最小化需要施加給其他人的信任, 確保如果我們真的進(jìn)行擴(kuò)展時(shí), 也是十分保守性地?cái)U(kuò)展.
其他人主要想要通過(guò)以盡可能低的費(fèi)用和可接受的安全性, 來(lái)盡可能地讓更多人參與其中, .
由于沒(méi)有人掌管比特幣, 就如何發(fā)展比特幣, 所有的利益相關(guān)者(開(kāi)發(fā)者, 用戶, 礦工和企業(yè))都需要達(dá)成共識(shí), 這比想象中要難的多. 大部分的利益相關(guān)者都同意擴(kuò)展比特幣的必要步驟. 而爭(zhēng)論主要存在于采取這些步驟的時(shí)間和順序, 因?yàn)檫@對(duì)網(wǎng)絡(luò)的健康至關(guān)重要.
在所有的爭(zhēng)論中, 一個(gè)叫做 隔離見(jiàn)證 (Segregated Witness) 的技術(shù)解決方案被提了出來(lái). 它并非主要用于解決擴(kuò)展性問(wèn)題 (盡管它確實(shí)能夠增加交易空間), 而是作為更多可擴(kuò)展性創(chuàng)新的一個(gè)墊腳石. 隔離見(jiàn)證解決了在比特幣中一個(gè)長(zhǎng)期存在的 bug, 正是因?yàn)檫@個(gè) bug 阻礙了這些創(chuàng)新.
經(jīng)過(guò)一年多的測(cè)試, 隔離見(jiàn)證已經(jīng)在所有的利益相關(guān)者 (開(kāi)發(fā)者, 用戶, 礦工和企業(yè)) 中有了廣泛支持, 并且馬上會(huì)被實(shí)現(xiàn). 這些為下一個(gè)創(chuàng)新開(kāi)啟了大門: 施諾爾簽名, 它可以進(jìn)一步有助于提高可擴(kuò)展性.
問(wèn)題 #1: 可擴(kuò)展性
為了成功地完成一筆比特幣交易, 必須要有簽名. 不幸的是, 在區(qū)塊鏈的區(qū)塊中這些簽名必須要占據(jù)一定的空間.
這就會(huì)引發(fā)一個(gè)問(wèn)題: 當(dāng)你想要從多個(gè)地址給一個(gè)地址發(fā)送交易的時(shí)候, 這些交易中的每一個(gè)都需要有它們自己的簽名.
所有的這些簽名數(shù)據(jù)會(huì)增加交易的大小, 因此需要付給礦工更多的交易費(fèi). 因?yàn)槟阏加昧丝赡苡糜谄渌灰椎目臻g, 所以你需要這些空間進(jìn)行付費(fèi).
如果僅是一個(gè)人從多個(gè)地址發(fā)送交易, 難道不應(yīng)該有某種方式僅需要一個(gè)簽名即可完成這個(gè)操作嗎? 這正是施諾爾簽名允許我們做的事情.
據(jù)估計(jì), 這個(gè)升級(jí)將會(huì)減少至少 25% 的存儲(chǔ)和帶寬使用. 需要明確指出的是: 這是一個(gè)非常巨大的效率提升.
等等, 還不止.
施諾爾簽名的另一個(gè)主要好處(并非下面所說(shuō)的問(wèn)題 #2)是, 就如何保護(hù)比特幣的隱私性有所增強(qiáng).
一些用戶故意使用多個(gè)簽名來(lái)發(fā)送交易, 因?yàn)檫@的確是增強(qiáng)隱私性的一個(gè)方式. 比如,
你可以請(qǐng)求多個(gè)人或設(shè)備來(lái)參與發(fā)送一個(gè)交易, 這就是通常所說(shuō)的 "多重簽名(MultiSig)". 這僅是擁有可編程貨幣的眾多好處之一.
當(dāng)然了, 你不希望外面不相關(guān)的人看到你正在做什么, 而施諾爾簽名也會(huì)使你的簽名看起來(lái)跟其他簽名看起來(lái)沒(méi)什么兩樣.
問(wèn)題 #2: 垃圾郵件攻擊
在過(guò)去 6 個(gè)月, 比特幣網(wǎng)絡(luò)遭受了不計(jì)其數(shù)的攻擊.
之所以我叫它垃圾郵件攻擊, 是因?yàn)樗?strong>只是為了推送一個(gè)政治議程. 一些人拼命地想要推送他們?cè)黾涌蓴U(kuò)展性的想法. 當(dāng)五月底一個(gè)擴(kuò)展性方案通過(guò)的時(shí)候, 攻擊就突然停止了.
下面你看得到是一個(gè)內(nèi)存池的圖, 它包含了在任一時(shí)刻所有等待被加入到區(qū)塊鏈中的未確認(rèn)交易.
盡管有些人曾寄希望于這些未確認(rèn)交易的尖峰是有機(jī)增長(zhǎng), 但是進(jìn)一步的分析明確顯示這只是垃圾信息.
為了鼓勵(lì)人們?cè)黾訅K的大小, 攻擊者通過(guò)各種構(gòu)造方法, 盡可能多的占用交易空間, 一連幾周都使得比特幣交易的費(fèi)用十分高昂.
他們的方法之一是通過(guò)頻繁地從許多來(lái)源發(fā)送交易, 在交易中包含數(shù)十個(gè)簽名, 如下所示:
(原圖見(jiàn) Twitter)
基于進(jìn)一步的分析, 在這筆交易中的每一個(gè)來(lái)源顯然都是在幾天前才剛剛存在. 這僅是我在幾十筆交易中識(shí)別出的其中一筆, 而其他的也都遵循同樣的模式和方法. 作為這些垃圾郵件攻擊的眾多案例之一, 你可以 訪問(wèn) block 470824 .
幸運(yùn)的是, 施諾爾簽名有助于抵制這種類型的垃圾郵件攻擊. 如果我們每筆交易僅有一個(gè)簽名, 那么區(qū)塊將能夠容納更多的交易, 垃圾郵件攻擊者也將需要發(fā)送更多的交易來(lái)與眾人競(jìng)爭(zhēng), 因此很可能需要花費(fèi)更多的金錢來(lái)占據(jù)之前同樣的交易空間. 施諾爾簽名經(jīng)常是一個(gè)交易中一個(gè)最大的獨(dú)立部分, 所以攻擊者將會(huì)處于不利地位.
如果攻擊者選擇不使用施諾爾簽名, 繼續(xù)使用舊的簽名, 那么相比之下,
其他使用施諾爾簽名的人發(fā)送的交易會(huì)更小, 也就是交易費(fèi)越少. 這也會(huì)使得攻擊者的攻擊成本高于以前.
盡管這些垃圾郵件攻擊的費(fèi)用估計(jì)達(dá)到數(shù)百萬(wàn)美元, 但對(duì)于那些想要破壞網(wǎng)絡(luò)的富人, 政府或大型機(jī)構(gòu), 這些只不過(guò)是十分微小的投入.
盡管有些公開(kāi)的參與者清楚地知道這些攻擊的來(lái)源, 我仍將在本文給出誰(shuí)應(yīng)當(dāng)為這些攻擊負(fù)責(zé)的一些揣測(cè). 終有一日, 比特幣會(huì)需要抵制這些攻擊, 無(wú)論它們來(lái)自內(nèi)部還是外部.
有趣的是, 于我而言, 無(wú)論哪種情況, 像這樣的攻擊都是反生產(chǎn)力的:
如果這是一個(gè)為了推送議程的內(nèi)部攻擊, 它將導(dǎo)致人們不再認(rèn)真對(duì)待你的議程, 因?yàn)槠涔粜再|(zhì)十分顯然 (如圖所示).
如果這是試圖損害比特幣的外部攻擊, 這只會(huì)增加曝光度而已器赞,并證明比特幣是對(duì)中心化控制貨幣的威脅.
但對(duì)于用戶而言, 這兩種情況下都必然會(huì)感到不適,不過(guò)我們最終會(huì)找到解決方案第美,又或者是攻擊者可能會(huì)把錢花光脾歇。
在隔離見(jiàn)證激活以后, 看到施諾爾簽名在比特幣能夠?qū)崿F(xiàn), 我真的非常興奮. 與隔離見(jiàn)證類似悼泌,施諾爾簽名不僅對(duì)自身的升級(jí)十分有用,而且是未來(lái)創(chuàng)新的一個(gè)墊腳石, 比如混幣(CoinJoin), 它對(duì)提升比特幣的隱私性有著巨大潛力。不過(guò)這可能是另外一篇文章的內(nèi)容了.
本文譯自: Why Schnorr signatures will help solve 2 of Bitcoin’s biggest problems today