2021年618京享红包 - 618大促主会场
九阳 Joyoung电磁炉 电陶炉 2200W大功率 家用火锅套装 旋转控温 红外光波加热 H22-x3 赠烤盘
凯迪仕电子锁618狂欢购
有健康 更热爱
美丽雅品牌会员周

区块链入门

秋意凉 1年前   阅读数 95 0

区块链入门

本文对慕课网上的区块链概述课程做一个自己的总结。

说到区块链,很多人第一反应想到的就是比特币。但是比特币≠区块链,比特币等数字货币是区块链技术上的一个应用场景。

为什么叫做“区块链”?**

比特币系统的数据是以区块的形式存储的,并且通过哈希的方式把区块连接起来,形成一个链条,所以称为区块链。

比特币——数字货币,也是一种去中心化记账系统**

比特币的特点,也是信任机制能够存在的原因:
①财产只受自己控制
②无通胀——比特币总量是不会变的,2100万个
③没有假钞——任何作弊的支付无法得到比特币网络中其他矿工的确认
④流通性好——点对点直接到账,免去很多中心环节

账本如何验证?

对于记账系统中账本的验证,需要用到哈希函数
因为哈希函数存在这些特性:
①相同初始信息用同一个哈希函数总能得到相同的摘要信息。
②初始信息发生微小变化,获得的摘要信息都会变得面目全非。
③哈希函数很难逆向运行,即摘要信息无法推算出初始信息。

例如给出一个这样的账本:
在这里插入图片描述
对这个账本进行哈希表示:
在这里插入图片描述
此时又有新的账本记录加入,会加入先前账本的哈希值,生成新的表示:
在这里插入图片描述
之后对照哈希值时,将对照的是“456635B”这个新生成的哈希值,如果这个哈希值正确,那么新加入的数据和之前“787635A”哈希值所对应的数据都是正确的。

只有相同的样本信息,才会得到相同的哈希值,只要发生任何微小的变化,哈希值都会不一样;
换句话说,只要比较哈希值,就可以知道数据有没有被改动。

区块
将序号、时间戳、Hash值以及交易记录,这样的信息保存下来,称为“区块”,其中,序号、时间戳、哈希值又称为区块的“”。
在这里插入图片描述
结合刚才的例子,“456635B”的哈希值确认无误,则“787635A”对应的信息也正确,即

第二个账本信息正确,可以推出第一个摘要信息正确;
同理,第一个摘要信息正确亦可证明前一个账本信息也是正确的。

由各个区块之间的关系,便可形成“区块链”的结构:在这里插入图片描述
由此可知,每个节点在核对数据时,只需要核对最后一个区块的摘要信息,只要最后一个区块的摘要信息正确,则整个区块链的信息都确认无误。

账户所有权

比特币交易系统中
①点对点交易
②没有第三方
而系统中的账户是用地址表示的,转账的过程也是将比特币从一个地址转移到另一个地址。账本不保存任何个人信息。
在这里插入图片描述
能够使用该地址进行支付的用户,则拥有这个账户的所有权。
在比特币中,每个地址都会有一个对应的“私钥”,拥有私钥则可以使用该地址进行支付。
在这里插入图片描述
私钥不能泄露,一旦泄露,比特币极有可能就会丢失。
需要注意的是,私钥通过一系列计算,包括两次哈希,便可推导出地址;但由于哈希是单向密码体制,地址是无法推导出私钥的。

非堆对称加密技术(交易签名)
1、交易进行hash得到摘要
2、私钥对摘要进行签名
3、广播
4、验证

签名过程:
①对原始交易记录进行哈希运算
②得到签名信息
在这里插入图片描述
验证过程:
在这里插入图片描述
签名与验证是一个逆运算:
签名——加密过程
验证——解密过程

在这里插入图片描述

记账

①记账——hash打包过程
②消耗资源
③获得奖励

挖矿——工作量证明

规则

①一段时间内只有一个人可以记账成功
②通过解决密码学难题(即工作量证明)竞争获得唯一记账权
③其他节点复制记账结果
也由于这些特点,记账的过程被称为“挖矿

工作量证明

Hash(上一个Hash值,交易记录集) = 456635BCD

Hash(上一个Hash值,交易记录集,随机数) = 0000aFD635BCD

为了提高记账难度,保证一段时间只有一个人可以记账,因此比特币在要求哈希值满足一定条件必须要以若干个0开头。
所以引入随机数,通过改变随机数使哈希值达到要求以获得唯一记账权

交易记录集

①收集广播中还没有被记录账本的交易
②交易的有效性验证
③添加一笔给自己转账的交易(挖矿转账)

共识机制

多个节点同时完成工作量证明时,使用谁的区块,这是就需要共识机制
为什么要遵守协议?
因为节点的工作量只有得到其他节点的认同,才是有效的

共识:认可累计工作量最大的区块链
每个节点都是独立的,会选择最长的链,然后延长最长链


注意:本文归作者所有,未经作者允许,不得转载

全部评论: 0

    我有话说: