2018-07-15区块链技术

2018-07-15  本文已影响0人  欧洲神奇君

一: 区块链的前世今生, 前景,比特币,比特币原理

Cypherpunk(密码朋克)

比特币-----区块链

比特币的总量是不变的,是两千一百万个,流通性特别好,全球无缝点对点流通直接到账 区块链包含了序号、时间戳、hash值以及交易记录的账本0构成了区块0,账本1构成了区块1、......所有这些区块串联的结构,称为区块链只要区块链中最后一个区块的hash值是正确的,则整个区块链都是正确的 当添加新账本(账本1)的时候,会将上一个账本(账本0)的hash值连同当前账本一同计算出一个新的hash值hash(hash(账本0), 账本1) = 456635B只要该用户存储账本的hash值与其他用户账本的hash值相等,就说明该用户存储的账本0与账本1都是没有问题的 区块一个区块包含了序号、时间戳、hash值以及交易记录,前三者称为区块头

账户所有权问题

账户是一个地址,点到点,一个地址有一个对应的私钥,私钥两次hash得到地址,地址无法得到hash 那么如何在不泄露私钥的情况下得到地址,使用非对称的加密技术对私钥进行签名,交易进行hash得到摘要,用私钥对摘要进行签名 用签名和付款方的地址进行验证运算,如果等于原始交易信息的摘要 1.付款地址+收款地址+金额 = 摘要信息2.摘要信息和私钥进行验证匹配,得要签名信息3.解密:付款地址+签名信息 = 摘要信息

记账——Hash打包过程

记账消耗了计算机资源,即付出了一定成本,完成记账的节点可以获得一定数量的比特币奖励。这个奖励就是比特币的发行过程。

大家都在记账,会有记账不一致的情况。

记账规则

一段时间内(一般是10分钟)只有一人可以记账成功

工作量证明:hash(上一个交易摘要,交易记录集,随机数) == 若干个0开头的hash

工作量证明

针对记账不一致的情况,通过解决密码学难题(即工作量证明)竞争获得唯一记账权

普通的hash打包过程会获得一个摘要信息(hash值),这里规定获得的摘要信息必须以“0000”开头才能算作挖矿成功,获得唯一记账权。

由于原始信息任何微小的变化都会哈希出面目全非的摘要信息,这里引入第三个参数“随机数”,通过找到适合的随机数,使得获得的摘要信息以“0000”开头(现在为18个0),找

理论上需要16*18次运算得到一个hash值

共识机制

两个节点同时完成工作量证明,该使用谁的打包的区块

节点选择出累计工作量最大(/最长)的区块链,再以此区块链通过不断挖矿来继续延长该区块链,共识机制就是来保证此要求

例如,两个节点同时完成工作量证明,分别打包成3458A和3458B,周围的节点选择出累计工作量最大(/最长)的区块链为3458A后进行广播,以3458A作为主链,3458B作为备用

如果同时有两条链,选择最长的累积工作量最大的链 0

每一次只需要验证区块链最后区块的哈希值,就可以间接验证整个账本的数据。

所有权 ,用私钥来确认的。

区块其实是一系列的交易的打包

 0

上一篇下一篇

猜你喜欢

热点阅读