巴比特原创 | 区块链将引爆跨学科研究,比特币只是第一颗“核弹”
战争因其非预期的后果而臭名昭著,但其也加速了组织、科学、技术、社会和政治变革,第一次世界大战就是这样的例子,1919年,一些学术团体的代表成立了美国学术团体理事会,之后的五年里,“跨学科”(interdisciplinary)一词开始出现,其最初的含义相当于“合作研究” [1] 。
跨学科研究涉及将两个或多个学科结合到一个活动或者项目当中,其思考方式是通过跨越边界来创造某种东西,比如HIV/AIDS和全球变暖问题,就需要运用不同的学科才能去尝试解决这种复杂问题 [2] 。
而新出现的区块链,它也是一种跨学科的产物,其涉及到的学科种类非常繁多,主要有数学、计算机科学、密码学、经济学、法学,此外还可能会涉及到政治学、哲学乃至宗教学等。
因此想要真正地掌握区块链,实际上是一件极其困难的事情,而在当今世界上,能够同时精通这些学科的人是极其罕见的,而比特币神秘的创造者satoshi nakamoto(中本聪)就是这样的一个人或者群体。
本文旨在简单地提炼出区块链涉及到的学科及一些具体的分支(限于篇幅和能力,这里仅提主要的几个学科),如果我们把区块链当作是一个兵工厂,那么接下来我们要做的,就是将它一点一点整理出来,然后再组装成武器,为接下来可能爆发的区块链战争作好准备。
(区块链主要涉及的学科)
一、区块链与数学
在区块链的世界里,我们会遇到一大堆奇怪的术语,例如“coinbase”、“merkle root”、“block”等,而这些术语背后,其实都是数学在作为基础,而数学作为一个基础支柱层,它支撑着密码学和计算机科学,比如上图中提到的有限域和代数曲线,它们就是比特币区块链椭圆曲线算法ECDSA的基础,而像零知识证明算法,则是运用到了更多复杂的数学计算,也因此,区块链本质上是建立在数学基础之上的,反过来,它的兴起也在促进人们对数学学科的探索。
二、区块链与计算机科学
计算机科学实际是涉猎非常广泛的学科,并且它与密码学的关系非常密切,在本文当中,我们主要讲的是编程语言和分布式计算。
2、1 关于编程语言
当我们要使用某种区块链时,就需要去下载该区块链的软件,而软件就是通过编程语言编写的,例如比特币最初的客户端就是中本聪通过c++语言编写的,后面core还添加了Python语言版本,而另一大区块链平台以太坊,则拥有多个语言版本的客户端,例如使用Go语言的go-ethereum(geth),使用javascript语言的ethereumjs-lib,使用Rust语言的Parity等,此外,以太坊的智能合约则是通过solidity或者Vyper语言编写的 [3] ,又或者Facebook正在开发的Libra稳定币项目,它是通过一种新的编程语言Move [4] 编写的。随着区块链的发展,一些原本较为小众的语言开始逐渐发光,例如Rust语言就是这样的例子,此外,Go语言也越来越受区块链开发者们的欢迎,总的来说,当前区块链世界的编程语言选择思路大体上可分为四种,一种思路是像以太坊那样使用各种编程语言编写客户端,然后让用户自己去进行选择,另一种则是主动选择一种偏主流的语言去编写客户端,还有一种是重点考虑安全性去选择最合适的语言,最后一种是像Facebook这样的大厂自己去重新开发一门编程语言,至于哪种语言或者方式才是最合适的,这便是一个仁者见仁智者见智的话题了。
2、2 关于分布式计算
在计算机科学中,分布式系统是指一组计算机通过网络相互连接并通信后,协调各计算机行为而形成的系统,组件之间彼此进行交互以实现一个共同的目标,而区块链世界里的分布式系统主要类型有对等式(Peer-to-peer)架构和多层架构。所谓对等式(Peer-to-peer)架构,是指没有提供特殊权限的体系结构,而系统中享有同等权利的节点我们称其为对等节点(Peer),使用这种架构的区块链,其去中心化程度是相对较高的,因此会有难以篡改的特性,但这种架构带来的弊端就是可扩展性较差,而其中最好的例子就是比特币。
与分布式计算密切相关的,就是共识算法,经典的共识算法有Paxos算法、Raft算法,而目前区块链市场上普遍使用的共识算法主要分为PoW、PoS、DPoS、PBFT等几个大类。
这些共识算法的权衡侧重点不同,因此很难进行同维度的比较。
在区块链世界,我们也会看到多层架构,这与web应用有些类似,像比特币采用的是主链+闪电网络(Layer 2)+侧链的架构,以太坊则是ETH1.0(PoW)+ETH2.0(分片链+PoS信标链+Plasma链、状态通道等layer 2)的架构,另外,当前还有像bloXroute这样的layer-0层扩展协议,但尚未接受广泛测试和验证。
2、3 关于集成电路和量子计算
在公链领域,维护网络是存在激励(coin或者token)的,在比特币早期时代,参与网络共识的矿工是使用的CPU设备进行挖矿,此后又过渡到GPU,再之后就发展到ASIC(专门为某种特定用途设计的集成电路)挖矿时代,而生产这些设备的公司是当前区块链行业最富有的一个群体。这些年来,加密货币ASIC芯片的发展非常迅速,从13年的110nm到现在主流的7nm芯片,比特币网络的算力在这段时期更是经历了大约80万倍的增长 [5] ,这大大增加了比特币区块链网络的安全度,使其账本的公信力越来越强。
而另一个备受关注的计算机领域——量子计算,其与区块链行业也是密切相关的,如果说,今天的区块链不去发展,那么20年后成熟的量子计算技术将对区块链造成极大的破坏,这一点或许也是华为创始人任正非所讲到的“区块链在量子计算面前一钱不值”的本意。
简单说,假设我们能够穿越时空,然后拿到大约20年后成熟的量子计算机,那么我们就可以使用它去计算出今天大约1/3流通量(约650万BTC)的比特币 [6] ,但问题在于,我们并没有能够穿梭时空的机器,而区块链技术也是在不断发展的,相关的抗量子算法的研究会更容易落地,也就是说,最终量子计算成熟后,其对区块链并不会构成威胁,反而会是起到促进的作用。
三、区块链与密码学
3、1 关于哈希函数
加密哈希函数是将任意大小的数据映射成固定大小字符串的算法,哈希函数通常需要两个安全性要求: 单向性 和 抗碰撞性 ,前者确保底层哈希函数不可逆,而后者则意味着我们难以找到具有相同哈希值的两个输入。对于哈希函数,存在的两种威胁分别是哈希碰撞攻击和生日攻击。 [7] 。而在区块链世界,最常用的哈希函数是SHA256,它是SHA(安全哈希算法)系列中的加密算法之一,而比特币的地址生成使用了双重SHA256(加密了两次)机制,从而提高了系统的安全性。
另外,在区块生成、签名消息摘要等地方,也都需要用到哈希函数。
3、2 关于数字签名
除了哈希函数之外,数字签名也是区块链中另一个必不可少的密码学组件,它们的存在,可以保证数据源的验证、不可抵赖性和完整性,这使得对手方不能在新消息上伪造有效签名。在当前的区块链世界,ECDSA和EdDSA是最常用的两种数字签名方案,比如当前的比特币和以太坊就是采用的ECDSA,而Monero则是采用的EdDSA。
然而,这些签名方案并不是会一直被使用下去的,例如比特币开发者们就在讨论采用Schnorr签名来替换掉当前的ECDSA签名方案 [8] ,而以太坊则会采用BLS签名方案 [9] ,这些签名方案都有自己的独特之处,而它们共同存在的好处是可聚合签名,节省区块空间 [10] 。
3、3 关于零知识证明
所谓零知识证明,它要解决的问题,是让证明者能够在不向验证者提供任何有用信息的情况下,使验证者相信某个论断是正确的,简单说,它可以解决区块链的隐私问题。随着区块链的发展,相关的零知识证明方案不断涌现了出来,例如Zcash使用的zk-SNARKs,Monero、Grin采用的Bulletproofs,以太坊3.0计划使用的Zk-STARKs [11] 等。
而这些不同的零知识证明方案也有着各自的权衡,有的证明大小较小、验证较快,但需要可信设置,有的则不需要可信设置,但证明较大,而对于我们一般用户而言,似乎用户体验和相关费用可能会是更为关键的考虑因素,这也是区块链项目方需要去重点考虑的问题。
四、区块链与经济学
4、1 区块链与博弈论
博弈论是研究参与者在系统的定义范围内做出的逻辑决策,而运用某些激励结构和机制,就可以导致参与者的行为变得可预测和诚实。博弈论的典型例子被称为囚徒困境,而一个博弈的解称为纳什均衡。
例如,比特币网络通过奖励矿工BTC(一种经济激励)来激励他们使用自己的计算能力来保护网络,节点之间的共识是通过工作量证明(PoW)算法达成的,比特币的天才设计之处在于故意让挖矿变得困难和低效,从而使恶意参与者付出代价,这样,网络就可以确保节点不会偏离协议,这种促进良好行为和阻止不良行为的设置,就是运用到了博弈论。
而以太坊2.0采用的PoS系统,还进一步设置了惩罚措施,以惩罚恶意行为或者其他对系统不利的行为。
4、2 区块链与奥派经济学
奥地利经济学是起源于奥地利维也纳的一种学派,这一经济学派非常重视自由市场,他们认为市场在没有任何外部力量干预的情况下会运行得最好,这是一种自下而上的工作方式,它与当前主流的凯恩斯经济学派是是相对立的,大多数的比特币学家都倾向于奥派经济学。
五、区块链与法学
由于区块链世界当中,公链存在着原生资产,因此区块链与金融是密切相关的,而这些资产在不同的国家便会有不同的定义。
例如在中国,比特币、以太币等公链等原生资产就属于商品范畴,而ICO、IEO、STO等融资发代币的行为就属于涉嫌非法融资,是不被国家许可的。
而在美国,比特币、以太币等则属于财产或大宗商品范畴,用户需要进行纳税,而多数ICO代币项目就属于证券范畴,会受到SEC的监管,如果没有进行注册,则会遭到处罚甚至无法继续项目的运营。
而随着区块链稳定币的影响力越来越大,现有法律可能会得到更新 [12] 。
相比之下,无币区块链(联盟链)则与法律相对较远(安全)。
六、小结
区块链是一个横跨了多种学科的新生领域,无论是有币的公有链还是无币的联盟链,都具有很大的尝试价值,而且在研究方向上,公链相对于联盟链会更具颠覆意义,但前者也会伴随着大量的法律风险。
区块链的技术战争已处在爆发边缘,而这势必将引发跨学科研究的新一轮高潮,如果说比特币是区块链世界的第一颗“核弹”,那么,接下来,我们还将迎来更多的区块链“杀伤性武器”。
参考资料:
1. A Note on the Origin of “Interdisciplinary”: https://items.ssrc.org/from-our-archives/a-note-on-the-origin-of-interdisciplinary/ ↵
2. https://en.wikipedia.org/wiki/Interdisciplinarity ↵
3. https://www.8btc.com/article/516934 ↵
4. https://www.8btc.com/article/433776 ↵
5. https://www.blockchain.com/charts/hash-rate?timespan=all ↵
6. https://www.8btc.com/article/377559 ↵
7. https://www.sciencedirect.com/science/article/pii/S108480451830362X ↵
8. https://www.8btc.com/article/382107 ↵
9. https://www.8btc.com/article/488095 ↵
10. https://www.8btc.com/article/359642 ↵
11.https://www.8btc.com/article/484995 ↵
12.https://www.8btc.com/article/520460 ↵