白话解读:区块链の技术名词
区块链在本质上就是一种记账方法,当然了,并不是通过人来记账的,而是通过一种软件(或者说程序/代码),我们暂且简称为区块链客户端。以上一讲的例子来说,张三、李四、王二麻子、赵五、孙六等人,就相当于一个个的区块链客户端软件,他们运行在不同的设备上,彼此之间独立工作。通常我们把运行中的客户端软件称为“节点”。这些节点运行后,彼此之间会认识一下。他们彼此之间是这样认识的:张三认识李四和王二麻子,赵五联系到张三并通过张三结识了李四和王二麻子,这样赵五也认识了李四和王二麻子。通过这样的方式,所有人就形成了一张网,有什么事只要招呼一声,立马消息就会传遍整个网络节点。这种方式跟新闻转发差不多,不需要依靠某一个人,大家就能互通消息了,在区块链软件的结构中,这种互相通信的功能称为“网络路由”(就像我们现在上网需要通过路由器将我们链接到互联网世界一样)。
在这个网络中,每个节点都维护着自己的一个账本,账本中记录着网络中发生的一笔笔账务。具体是什么样的账务呢?这得看具体是什么样的功能网络。区块链技术属于一种技术方法,可以用来实现各种不同的业务功能,小到如之前的例子中的日常记账,大到各种复杂的商业合约,等等,记录的数据也就各不相同了。网络中的节点是独立记账的,可是记账的内容要保持一致。所用到的方法就是设定一个游戏规则,通过这个规则选出一个记账的节点,就如之前例子中的掷骰子。在区块链系统中,这个所谓的“掷骰子”称为“共识算法”,就是一种大家都遵守的筛选方案,我们可以先这么简单地理解。选出一个节点后,则一段时间内的账务数据都以这个节点记录的为准,这个节点记录后会把数据广播出去,告诉其他的节点,其他的节点只需要通过网络来接收新的数据,接收后各自根据自己现有的账本验证一下能不能接的上,有没有不匹配和不规范的,如果都符合要求,就存储到自己的账本中。
在有些系统中,会考虑到被骰子投中的节点的劳动付出,毕竟它要负责整理数据,验证数据,打包数据,还要再广而告之,这个活还是挺辛苦的。于是会设计一种激励机制,负责打包数据的那个节点可以获得系统的奖励,这个奖励类似于论坛积分、商城积分,站在软件技术的角度,就是一个数据。这个数据可以视为奖金,有时候大家会很积极的去争取这份奖金,于是就希望投骰子能投中自己。所以,有些区块链系统在这个环节会设计出一种带有竞争的机制,让各个节点去抢,谁能抢到这个机会谁就能获得打包数据的权力进而同时获得该笔奖金,在这种情况下,我们会形象地将这个竞争的过程称为“挖矿”。
那么,话又说回来了,我们将一个个运行的客户端成为节点,那到底怎么标记不同的使用者呢?也是通过用户名注册吗?当然不是。在区块链系统中,这个地方的设计很有创意,是通过一种密码算法来实现的,具体来说是通过一种叫“公开密钥算法”的机制来实现的。我们知道,对于一种密码算法来说,无论算法过程是什么样的,都会有一个密钥。而公开密钥算法拥有一对(也就是两个)密钥,跟虎符一样,是彼此配合使用的,可以互相用来加解密。其中一个叫私钥,另外一个叫公钥,公钥可以公开给别人,私钥要自己保管好。在区块链系统中,公钥就是用来用户身份识别的,一般不会直接使用公钥不容易让人记住。公钥往往都是比较长一串字符,实际处理的时候都会进行转换,比如我取得公钥的最后20个字节或者经过一系列更复杂的转换,最后得到一个称为“地址”的转换结果,这个“地址”就能代表一个用户。
为什么在区块链系统中要用这么一个奇怪的用户身份表示方法呢?似乎看起来除了有些创意之外,也没有别的用处。这里我们就得在介绍下这个公开密钥算法的特别能力。之前提到说这种算法有两个密钥,那么这两个密钥是怎么配合工作的呢?我们来简单说明一下:用公钥加密的数据必须用对应的私钥来解密,而用私钥加密(通常称为“签名”)的数据必须用对应的公钥来解密。这个特点可是能发挥很大的用处的,就像上面的例子中如果张三要发送给李四一张支票,要怎么传送呢?如果直接快递寄过去,会被记账的人拿到,风险就会增加。于是张三想了一个办法,他在支票上签上自己的名字(使用自己的私钥签名,相当于盖了公章),然后再用李四的公钥加密一下,这个时候其他人就算拿到支票也没用,因为只有李四才能用自己的私钥将其解密,也只有李四才能解开这张支票来使用。这种功能设计在区块链系统中称为“脚本系统”。
现在我们知道了,区块链的技术理念,其实就是大家共同来参与记账,通过一种规则不断的选出账务打包者,其他节点接收验证,并且每个用户都有一对密钥表示自己,通过脚本系统的功能实现在公共网络中定向发送有价值的数据。
限于篇幅,分享至此。
下回预告:区块链如何来干活。
--致敬布道!福生无量
小福利送起来:如果觉得自己学习区块链知识太累太无聊,欢迎前往“橙子达摩院”,免费学习研讨区块链知识,学成毕业还会有20Vollar赠送(以发文时间计算,合¥110),别问我为啥,我只能悄悄告诉你,老师脑子进水了,放点水给你们哈。(易学中讲,金生水,水即为财啦;水利万物而不争sa;千金散尽还复来哒。)
有意免费学习并领取奖学金者,添加作者微信(qiulaokou),备注“橙子达摩院”。
其他相关文章在微信公众号“VDS链金师丘处机”,搜索添加即可查阅历史文章。
本文多数概念引自《白话区块链》——蒋勇、文延、嘉文著,如有侵权,请联系作者删除,谢谢!