请选择 进入手机版 | 继续访问电脑版
设为首页 收藏本站
开启辅助访问 切换到宽版 快捷导航
菜单

编辑推荐

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21

区块链鼻祖比特币之5:独特交易模式的优势与困境解决

0
回复
104
查看
[复制链接]
发表于 2020-2-8 18:02:13 | 显示全部楼层 |阅读模式
独特交易模式解决所有权转移
在上一篇文章中,我们已经知道了比特币通过所有钱转移而不是账户的方式来设计,

通过这样的设计,我们就可以知道每一笔交易的前世今生。追溯到历史的交易。这样就增加了造假的难度。如下图所示,每一笔交易都会追溯。比特币的所有权链传递如下:

20180426165750462.png
20180426165856740.png




也就是说,我们的每一笔交易都依赖于前面的交易。但是前面的交易一定就值得信赖吗?当然不是,所以我们仍然需要对交易的之前节点进行验证。也就是说,将交易链条的所有记录进行验证。实际上,当你安装比特币钱包时,就会下载历史所有的记录并逐渐回溯检验交易有效性,直到最初的节点。记住,你是和匿名对象进行交易,为自己验证每笔交易很重要。



独特交易模式解决双重支付
交易支付后,就不能再重复的使用。也就是说,交易的链条只能是唯一的。否则有人就可能重复支付。例如,尹成给小郑支付后,又给小明支付了。这是绝对不允许的。

独特交易模式如何解决处理海量的交易?
由于目前已经有了海量的交易数据,那么如何快速的找到之前的交易。其实很简单就像数据库一样,通过哈希索引值来快速实现。
20180426170459747.png






尹成要把钱支付给唯一的用户小郑,需要在交易中发送地址,代表目的地。对于这一串地址来说,只有小郑的私密才能够打开。并且小郑已经解开了的信息会传播给比特币网络上的其他节点。其他节点正如前面讲到的数字签名,会很容易的得到验证,是小郑解开的。他是这笔钱的新主人。      

发送报文时,发送方用一个哈希函数从报文文本中生成报文摘要,然后用自己的私钥对摘要进行加密,加密后的摘要将作为报文的数字签名和报文一起发送给接收方,接收方首先用与发送方一样的哈希函数从接收到的原始报文中计算出报文摘要,接着再用发送方的公钥来对报文附加的数字签名进行解密,如果这两个摘要相同、那么接收方就能确认该数字签名是发送方的。

如何支付给唯一的用户?
前面已经提到了,确定了发出者和交易金额的不可伪造性,那么如何支付给唯一的用户呢?

尹成要把钱支付给唯一的用户小郑,需要在交易中发送地址,代表目的地。对于这一串地址来说,只有小郑的私密才能够打开。并且小郑已经解开了的信息会传播给比特币网络上的其他节点。其他节点正如前面讲到的数字签名,会很容易的得到验证,是小郑解开的。他是这笔钱的新主人。      

发送报文时,发送方用一个哈希函数从报文文本中生成报文摘要,然后用自己的私钥对摘要进行加密,加密后的摘要将作为报文的数字签名和报文一起发送给接收方,接收方首先用与发送方一样的哈希函数从接收到的原始报文中计算出报文摘要,接着再用发送方的公钥来对报文附加的数字签名进行解密,如果这两个摘要相同、那么接收方就能确认该数字签名是发送方的。

信息公开又如何解决匿名?
如果你使用TOR网络进行操作比特币并且隐藏ip地址,那么你就能在放心的在只透露公密的情况下使用比特币。但是,交易是公开的存储在比特币网络中的。要避免有人可以的找出你的交易串。你可以对每一个将要进行的交易产生一个新公密。你可能会问,不同的公密为什么都可以进行数据签名的验证?其原理也是很简单的,正如之前提到的九宫格一样,其密码可能会有多个。不同的密码都可以验证九宫格的正确性。


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则