第二个高度的区块又包含了大写的HASH1和小写的hash2的hash值,就形成了一个大写的HASH2,那么如果十个节点的服务器的HASH2都一致的话,这就说明他们的数据都是一样的。 私钥签名,公钥验证
私钥是什么呢?私钥其实就是一个随机数或一个坐标。比如2的6次方有64个数字,你若选其中的37作为你的坐标。如果把它想象成一块地的话,你把你的金子藏在37号地,要挖多少块地才能找到金子呢?如果我们的区块链比特币它私钥的数字是2的256次方,相当于宇宙的原子数,你随机找一个坐标把金子放上去,其他人几乎是不可能找到得。
在这里私钥经过椭圆曲线加密和两次hash后,会生成公钥地址,就是区块链上记录你钱或资产的帐户。我们也可以把私钥比喻成信箱的钥匙或密码,张三给李四转帐30元就用张三的私钥进行签名。大家可以看到,你改这个签名的字符串或者是改收款人或金额都是没有办法做到的,因为这个签名必须是用张三的私钥签名,才能被记账节点验证通过。 然后张三会把他对交易的签名发送给记帐节点去验证。如果十台服务器有七台验证通过以后,这个转帐就会成功,张三的余额就少了30,余额变为70,李四的余额就会增加30,变成130。
持有比特币最多的地址上有18.9万个比特币,相当于15多亿的人民币。那在公网上有这么多黑客攻击都没有破解他的私钥去把这个地址上的币给盗走,所以我们看出来比特币的安全性还是经受了实践的考验的。 梅克尔树的校验作用
大家可以看一下这一个区块里面有四笔交易,两两hash以后,再两两hash就变成了根hash值。 大家看这个图,把前面的TX0,TX1,TX2交易全部隐藏,只剩下TX3。这里我们把TX3的hash值加上TX2的hash值可以形成hash23,然后hash01+hash23可以算出根hash值,这说明我只要知道我自己的数据,我也能算出这个数据是不是有被篡改,有没有在这个区块里面。
我用一个加法来代替hash来看交易是否在这个区块里面。5+6等于11,11+12等于23,23+25等于48,35+48等于83,那么我只要绿色的和红色的这些数据我就可以证明我的交易是否在83这个头hash下面,就可以证明我没有被篡改,存在这个区块链中。
这个图就是私链或者联盟链的一些节点。尤其是联盟链,四个节点中只要有三个正常运行就能够维持,七个节点有五个能正常运行就能继续做区块链共识。
我们给海平线“海票惠”部署的节点都是放在海航云内网里面,但是用户只要获取部分数据,就可以通过merkle树来验证数据是否被篡改,并且可以把部分需要分享的数据拿出来给第三方,去证明这些数据是谁和谁签的合同,然后这个数据有时间锉,这也是没有办法篡改的。然后我们会把私链跟hash值写到比特币上,这样就更加没有办法篡改了。 或者我们把各个私链的头hash值串起来搞一条联盟链,将他们的头hash全部放在一条链上,这样也是一个很方便的方法。既能保护每一条私链的隐私,又能够保证他们的数据无法被篡改。 智能合约的运行过程
这是一个智能合约,就是一方面把股权或票据放到交易所,另一方面把数字货币也放到交易所。如果两个条件都能够匹配,那么就是一手交钱一手交货,自动执行。
这是海票惠的票据撮合平台。首先第一步,融资方和贷款方都会在平台上注册,那么都会开一个银行托管帐户,有票的一方把票据在区块链上平台上挂出,购票的一方就把钱存入银行的托管帐户。 (责任编辑:本港台直播) |