一: 区块链的前世今生, 前景,比特币,比特币原理
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每一次只需要验证区块链最后区块的哈希值,就可以间接验证整个账本的数据。
所有权 ,用私钥来确认的。
区块其实是一系列的交易的打包
网友评论