财经365讯(编辑 章馨),区块链存在的问题:目前来说整个区块链还处在非常早期。有点像1993、1994年的互联网,那个时候很多的底层基础设施还不是特别完善,TCPIP协议互联网的基础刚刚开始普及,现在的区块链像那个时候的状态。
具体来说有三个问题,第一个是交易速度慢(TPS),比特币的网络,以太坊的网络能够处理交易的次数,比中心化的机构还是有非常非常大的差距的。
支付宝一秒钟大概是几十万笔账的量级,所以说它能扛住每年的“双十一”非常密集大规模并发的时间节点。
现在比特币的网络一秒只能支持7笔,以太坊大概是几十笔,目前新的一些,例如EOS号称是一秒钟能达到百万级、到后来的几千笔,主网到今年6月份才能上线,还是非常非常初级的阶段。
也就是说底层基础设施不完善,想在这个链上去运行各种各样的应用也是非常困难的一件事。
第二个问题是:调不了bug,比如像以太坊的网络,一旦所有的代码写好,智能合约,所有的框架在链上面进行一个约定,发布了之后,全世界所有的节点都同步,出现了问题修改不了。
这是非常痛苦的事情,因为即便是天才写出来的程序也不可能没有bug,以太坊发展历史上出现了一次分叉的现象,ETH是分叉之后的以太坊,最早有一个项目叫做DAO,有黑客利用以太坊的漏洞窃取了部分钱财。当时以太坊的创始人非常着急想把漏洞重新补上。
但是社区有两种意见,一种觉得代码就是法律,这个东西既然写了,就昭告天下,不能去改,这是一种意见,我们称“区块链原教旨主义者”;但另一派他们认为新生事物要经过不断发展、不断替代完善自己的,在两派相持的状态下以太坊进行了硬分叉,把漏洞给堵上了。
但是有一批人他们不认可这次分叉,维持ETC。所以区块链有这样的问题改不了bug,怎么迭代呢?举EOS的例子,他们尝试通过投票等等这样的共识机制来去完善链上的一些代码。
最后是安全性的问题,这里安全指每一笔账目都公开可查,有不少人可能都持有比特币或者以太坊,只要别人知道你的钱包地址,相当于是银行账号,就可以在以太坊或者比特币的网络上面查到余额是多少。
曾经有人做了比特币全世界的排行,从排名第一的账户拥有的比特币数量一直排到第十,大概可以看到比特币的集中程度,这有可能会存在安全性的问题,毕竟大家都不希望自己的资产余额是多少被别人知道。
区块链人才部分,同样类似互联网早年的时候,1993、1994年,那个时候崛起一批人,有非常多的站长以及一批程序员,比如像雷军、张小龙都是在那一代成长起来的。
对于区块链来讲也是类似的,现在我们在经历同样的这样一个技术荒芜的状态。整个中国区块链的开发人才可能只有几千人左右。
整个比特币包括区块链发展历史才九年。在这样的时代就需要这些开发者、程序员具备技术的基础,同时有对人性的洞察,再加上商业的一个理解,这是我们比较看好的。区块链还是理解门槛比较高的东西,现在大家人人都在谈区块链,但是实现原理还是比较难懂。
区块链的实现原理
刚才是从宏观层面给大家做了介绍,下面以比特币为例给大家介绍区块链的实现原理,技术是理解是必不可少的。和我们之前经历的几次像O2O,包括团购等等商业层面的创新还不一样。区块链是自下而上的底层技术的改变。
2008年的时候中本聪发表了这一篇论文叫做《点对点电子现金系统》,这里面并没有提到区块链的概念。而是关于比特币,这一他所想要创造的电子现金进行了一个非常完善系统的阐述。
这篇论文被区块链从业者当作“圣经”一样,自从有了这篇论文,整个区块链的世界就诞生了。谁也没想到,从这篇论文诞生之后,能够掀起这么大的一个波澜。
大家知道非常多的技术要么是诞生在大学,或者一些研究机构的实验室里面。包括其他的像军方,比如像互联网最早期是在军队诞生的,后面才实现了军转民,但区块链非常有意思,最早先有比特币,后面大家觉得比特币的底层技术非常好,给它取了一个名字叫做区块链。
比特币的发明者是一个没有任何人见过并且活跃一段时间又消失的人,叫做中本聪,中本聪消失之后整个比特币运行非常稳健,价格不断攀升历史高位。
普及一下知识点,首先是函数,给一个x能够映射y。第二个是哈希函数,现实当中任意的字符串,所有的信息都可以通过哈希这样的一个函数去把它变成一长串非常规律的字符。在比特币整个实现里面哈希函数是反复出现的一个名词。
比如说一本书,或者是说一部辞海,包括一部电影等等,在计算机的网络里面都可以变成0和1组成的一长串的代码,这个代码通过哈希函数都可以变成高度格式化的一串数据,这个东西我们又叫做“数据指纹”,像每个人指纹可以代表我们整个人一样。基于哈希函数,以及椭圆曲线方程、非对称加密等等组合成为了区块链比特币网络所使用的加密算法。
私钥、公钥和地址,私钥可以简单理解为就是只有我们自己知道的,它是一个PIN码,本质上来说是随机数,256位的二进制数字,64位十六进制的数字,是由比特币网络或者说一些软件随机生成的,也就是说一旦我们大家在网上下载了一个钱包,就会帮你生成这样的私钥。
私钥的数量有大概有10的70次方这么多,这个数量超过了整个宇宙原子数量的总和,也就是说随机产生的私钥基本上不存在重复的可能,这样也保证了比特币整个网络的安全。
通过私钥我们可以生成公钥,通过一系列的加密算法,这个公钥它可以生成比特币的地址,可以类似的理解为是一个银行账户的地址,一般来说是1开头。
通过私钥可以得到公钥,公钥通过单向的哈希函数可以得到比特币的地址,这个过程是单向的,顺着可以,反过来是不行的,也就是所谓的非对称加密。
比特币的交易当中,交易是整个比特币系统最重要的部分,交易的本质是一个数据结构。比特币采用UTXO的交易结构,整个比特币最大的创新,一部分是区块链结构,另外一个就是UTXO,每一笔交易都是通过这样的方式。
我要查某一个地址所拥有的余额,我相当于是把所有跟这个交易相关的地址里面UTXO遍历一遍,进行一个相加,最后得出的是“账户”里面的余额。比特币区块链是全球总的账本,每一笔交易在上面都可以查询。
交易过程:从自己的钱包里发起一笔交易,接着会用自己的私钥进行签名,把这笔交易在整个比特币的P2P网络里面进行广播,接收到这条信息的节点会进行一个验签,用的是交易发出者的公钥地址,用私钥进行签名,用公钥进行验签,达到一定的规则要求之后会有挖矿节点,把这笔交易进行一个记录,然后记在整个比特币的账本里,后续的区块进行确认,进行循环,这笔交易永久保存在比特币区块链上面。整个区块链像是一个“账本”,每一个区块就是账本当中的一页,其中包含了交易信息、表头,以及各种各样的数据,把首尾相连组成了区块链。第一个区块链是2009年1月份的时候诞生了创世区块链,中本聪用自己的电脑挖出了第一个区块。