明年3月27至28日,一年一度的全球最大规模的比特币峰会将于美国旧金山SVN West举行。
第一届比特币峰会(Bitcoin 2019)也在旧金山举办,吸引了海内外近4000名比特币爱好者参与,其中近250人为核心开发者、学术专家、矿业巨头、投资机构、互联网企业巨头以及持币巨鲸等,包括前CIA技术分析员斯诺登、时间戳发明者W.Scott Stornetta、特斯拉最⼤大股东之⼀方舟资本的CEO Cathie Wood、Tor(洋葱网络)、微软、推特高层。峰会共得到近70家企业赞助及参与,包括知名矿机厂商、矿池、钱包、资产安全、投资应用等。本届峰会从加密数字货币市场的发展趋势以及区块链技术发展与应用出发,回归比特币设计初心,去思考数字货币/区块链的落地应用、比特币前沿技术以及未来的资本市场发展。
2020年对于比特币来说是特殊的一年:区块奖励减半。加密货币行业的大家都将目光集中在了“减半行情”上,而忽视了比特币相关的技术进展——这是比特币的价值支撑之一。许多最近才了解比特币的人甚至是部分加密行业从业者,接受了大量诸如区块链2.0、比特币3.0等的信息“教育”,都将比特币视为技术落后且停滞不前的老古董。
实际上,比特币的技术正在快速发展。头部的加密货币开发者社区每年都在扩大,他们都在努力完善比特币协议及其周边的一切。仅举几个例子,一些较大的项目(例如Taproot,Stratum V2,OP_CHECKTEMPLATEVERIFY和Drivechain)已取得了较大的进展,并且有望在2020年发布。同时,隔离见证[SegWit]的采用率在整个2019年一直保持增长,每个月会有越来越多的比特币通过Chaumian CoinJoin工具进行混币,并且越来越多的钱包和服务商采用bech32地址标准。
随着2019年接近尾声,我们来看一下过去一年中发布了哪些新技术。
更去信任化的Guix
计算机是二进制的:它们以“1和0”的形式接受计算机程序的指令。但这对于人类来说是不可读的。因此,程序通常以人类可读的编程语言编写,然后被编译(“翻译”)为二进制代码。
但这意味着,当你下载二进制文件(例如最新版本的Bitcoin Core程序)时,你没法检查它是否与Bitcoin Core的GitHub代码库中托管的开源项目是否一致。你只能信任给你发送软件的人或者下载软件的网站。
为了解决这个问题,许多比特币核心开发人员将最新版本的Bitcoin Core程序编译为二进制文件,作为发布过程的校验部分,并交叉检查该二进制文件是否匹配。只有匹配成功,他们才会对二进制文件进行加密签名。这些签名又可以由下载二进制文件的用户用以检查。这样,就不用说信任某位开发人员了 。(甚至,如果用户不想信任该组开发人员,还可以自己编译二进制文件。)
不过,这比听起来要难。例如,因为二进制文件是在不同的操作系统上或以不同的速度完成的,所以二进制文件的编译过程通常会受到较小的变量的影响。即使从相同的源进行编译,实际结果可能是生成出不同的二进制文件,也不可能进行交叉检查。
为了解决这个问题,比特币开发人员使用了一个名为Gitian的程序。可以将Gitian理解为计算机中的虚拟计算机,可以在其中编译程序,因此始终会产生完全相同的二进制文件。
但是,Gitian自身也存在一个问题:它严重依赖Ubuntu的二进制文件。理论上,这会为对Gitian进程的复杂攻击成为可能,可能会间接影响用户最终下载的Bitcoin Core二进制文件。
因此,Chaincode Labs工程师Carl Dong推出了Guix,一个二进制验证系统,允许用户检查下载的Bitcoin Core客户端是否与Bitcoin Core开发人员编写的代码完全一致。2019年7月,比特币核心项目合并了对Dong的解决方案的支持,从而消除了另一层面上的信任问题。
今年早些时候,Dong在接受比特币杂志采访时表示:“Guix允许我们以一种大大减少了可信需求的二进制文件集的方式来构建环境。大部分环境都是通过从一个很小的二进制种子构建而成的,并且此构建过程更易于检查。”
侧链上的资产不断增加
2018年,首次推出比特币侧链:Blockstream的Liquid和RSK Labs的RSK,目前这两个项目都由联合组织保护。用户可以有效地将比特币从比特币区块链转移到另一条区块链,而在那里,比特币可以遵循不同的协议规则。
截至2019年,比特币侧链越来越多地用于更广泛的资产上。尤其是Liquid,它托管着一系列另类资产,根据Liquid的协议规则,这些资产可以快速私下交易。除了一些测试和游戏token或尚未实际使用的资产(例如Infinite Fleet的INF,因为该游戏尚未发布),SideShifts可能会是第一个在Liquid侧链上部署其原生token SAI的公司。(SideShift最初公布可能在2019年1月进行部署,并在今年晚些时候跟进——不过一直没有确定具体的时间。)
此外,一些稳定数字资产也在Liquid上找到了根据地,例如Listed Reserve和Condensat Technologies发行的稳定币。然后,在2019年7月,Tether(USDT,按市值计算目前行业最大的稳定币)被部署在Blockstream的侧链上。在撰写本文时,USDT就是市值排名第四的加密货币,现在可以利用它来进行交易所之间的套利,并可以通过Blockstream的Green钱包进行访问。
Blockstream的CSO Samson Mow告诉比特币杂志:“ Liquid Network上诸如稳定币和通证之类的替代资产的增长表明侧链技术正在迅速成熟。(但实际上)我们预期的是Liquid的使用率在2020年才会增加。”
似乎,在不久的将来确实可能会有更多资产被托管Liquid上。就在2019年12月上旬,总部位于迪拜的加密货币交易所BTSE发布了托管在Blockstream侧链上的token产品。
Shamir备份可提供更安全的种子存储方法
硬件钱包通常被认为是存储比特币的较安全的解决方案之一。但即使是硬件钱包,也可能损坏、丢失、被盗或无法使用。这就是为什么鼓励用户保留备用种子的原因:通常是在一张纸上写下的系列单词,可以用来恢复硬件钱包上的资金。但这带来了新的风险:如果种子被盗,盗窃者就可以动用你的所有资金。如果丢失了种子(例如,由于将种子切成小块并存储在不同的位置),到了需要用的时候,就不能用它来恢复钱包了。
在2019年8月,SatoshiLabs推出了针对此问题的解决方案:Shamir Backups(Shamir备份)。经过一年多的发展,Trezor硬件钱包背后的公司完成了基于Shamir的密钥共享方案(Secret Sharing)的种子格式。该方案是由著名密码学家Adi Shamir创建的加密算法。现在可以将钱包种子“拆分”为几个不同的种子(“子密钥”),恢复钱包需要其中的授权集的子密钥。SatoshiLabs的Shamir备份最多可以创建16个子密钥,而单个子密钥甚至还可以继续分成子密钥的子集。
SatoshiLabs首席执行官Marek“ Slush” Palatinus在与Bitcoin Magazine交谈时建议道:“分享一种实用的使用技巧——如果你希望即使你已经不在了,孩子或亲人也能公平地动用你的数字资产,可以将子密钥平均分配,以防止单独的某个人使用了你的资金。现在这种场景可能性更大了,我们很乐意为业内的任意项目提供这种开源解决方案。”
使用终点支付(P2EP)的新隐私工具
Pay to Endpoint(P2EP,终点支付)是一种隐私技术,这个技术是在比特币隐私研究人员们参加了一场针对隐私的头脑风暴活动之后,于2018年夏季首次通过博客和电台播客对外普及的。(确切地说,目前还不清楚究竟是谁参加了这场活动。)
简单来说,即使只有一小部分比特币用户会使用P2EP,P2EP仍可打破区块链分析所依赖的假设。它通过让交易的接收者通过CoinJoin参与交易来实现这一点,交易时,除了实际付款外,还会向他们自己发送资金。如果区块链监测者假设交易中发送的所有比特币都属于发送者(通常情况是这样),那么它们就错了。频繁出错可能会使这种启发式监测方法完全无用。
在2018年的最后几个星期时,该隐私工具的演示版本和早期实现已经被JoinMarket引入了,其形式为Bustapay和PayJoin。不过,这些版本尚未得到进一步发展。
但是在2019年8月,注重隐私的Samourai钱包在使用Cahoots的方案下发布了自家产品的P2EP版本,名为Stowaway。Stowaway与P2EP的某些其他版本略有不同,因为它仅允许用户向明确选择的对等用户付款。Samourai Wallet开发人员认为,这样做的隐私性会更好一些,因为收件人确实需要向发件人透露其部分比特币的所有权。
同样在今年发布的还有STONEWALLx2。使用STONEWALL(不带“ x2”),用户可以使正常的支付看起来像CoinJoin付款一样(即使不是),目的就是为了混淆区块链监测者。使用STONEWALLx2,可以创建真实的CoinJoins,其中使用选定合作方的资金进行混合。这个可信赖的合作方只会拿回他自己的资金。Samourai钱包不久知乎还将提供像Cahoots那样的服务,在一笔高额支出中Samourai团队自身作为选定合作方。
匿名的Samourai钱包开发人员“ Samouraidev”告诉比特币杂志:“我们的主要目标之一是为我们的用户提供最佳的链上交易隐私。在过去的一年中,我们一直在按照路线图前进,不仅将链上交易隐私工具放在了工作首位,而且也放在了所有用户的手中。”
除了Cahoots(以及它的Chaumian CoinJoin实用产品Whirlpool)之外,2019年的Samourai钱包还推出了“Dojo”:一种专用于隐私(以及安全性)的后端全节点服务器。
Miniscript使比特币编程变得容易
从技术上讲,花费比特币实际上是指“解锁”比特币,然后再次“锁定”比特币。比特币“解锁”的条件被嵌入到代码中,该代码是为比特币专门设计的一种称为“脚本(Script)”的编程语言创建的。然而,脚本也有一些复杂的地方,最明显的就是,代码并不易于理解,这使得很难对代码进行处理。
为了改进这一点,Blockstream的Andrew Poelstra,Pieter Wuille和Sanket Kanjalkar(实习生)设计了脚本的“简化版”:从“脚本工具箱”中选择“工具”,使这种编程语言更易于使用和验证。正如它的名字一样,Miniscript几乎可以实现Script所允许的所有内容,除了一些附带的用例,但是更加直接和可预测。
Blockstream的研究主管兼Miniscript联合设计师Andrew Poelstra今年早些时候对比特币杂志说道:“从理论上讲,Miniscript的局限性比Script要大。但是它可以胜任人们实际使用Script的所有工作。”
为了使编写Miniscript的过程更加容易,Wuille还设计了一种“策略语言”。策略语言实际上就像是自己的编程语言。对可以使用该策略语言条件进行编程后,可以将其编译为Miniscript,或者最终编译为有效脚本。这种策略语言的另一个好处是,它可以自动编译为尽可能最好、最高效的Miniscript版本。
虽然当前的Miniscript版本实际上不是最终可发布版本,但Blockstream已在内部使用了,并且Wuille共享了一个演示版本的策略语言,供任意用户使用。