区块链网站|NFTS 比特币介绍 深刻理解比特币核心概念和原理

深刻理解比特币核心概念和原理

广告位

深解比特币核心概念和原理

一、比特币是什么,有什么特点?

虚拟货币的P2P(点对点)形式。分散会计系统;

去中心化:任意节点的权利和义务是平等的,系统中的数据块由整个系统中具有维护功能的节点共同维护和管理;

透明度:系统是开放的。除了每个交易方的私人信息被加密之外,区块链的数据对每个人都是公开的。任何人都可以通过开放接口查询区块链数据并开发相关应用,因此整个系统信息高度透明。

自制力:人无法干预,半数以上决定去做;区块链采用基于共识的规范和协议(如一套公开透明的算法),使整个系统中的所有节点在去信任的环境中自由、安全地交换数据,使“人”的信任变为机器的信任,任何人为干预都不起作用。

信息不可篡改:一旦信息被验证并添加到区块链,它将被永久存储。除非能同时控制系统中51%以上的节点,否则在单个节点上对数据库的修改是无效的,因此区块链的数据稳定性和可靠性极高。

匿名性:由于节点之间的交换遵循固定的算法,其数据交互不需要信任(区块链中的程序规则会自行判断活动是否有效),因此交易对手不需要通过暴露身份来让对方信任自己,这对信用的积累很有帮助。

溯源:由于其公开透明,每一笔交易信息都可以溯源!

二、比特币的原理

数据存储在网络节点中,例如每台计算机;那么问题来了,每台电脑里都是谁的数据,数据被篡改了怎么办;

1.数据验证

说以下数据:

这些数据分别储存在王二、张三、李四和吴钊的电脑里。有人可能会篡改数据。比如张三把余额改成了300。如何验证张三的数据是假的?

A.你可以一个一个的查,就是把王二、张三、李四、吴钊的数据一个一个的查,你会发现张三的数据在张三的电脑里和别人的电脑里是不一样的,但是这样太低效了(只有四个数据,如果有一百万个数据,效率就太低了)。

B.在介绍第二个之前,先了解一下哈希函数(类似于常用的MD5加密)

哈希函数:哈希(原始信息)=汇总信息

哈希函数的特征:

同样的原始信息,用同样的哈希函数总能得到同样的汇总信息。

原始信息的任何细微变化都会导致汇总信息的不同。

原始信息不能由抽象信息反算。

第一,张三的数据会被Hash加密,假设Hash(数据)会得到4564asdasdasd6ABA;

加密李四、王二、吴钊的数据得到789789attdghjfg7A,对比汇总信息发现张三的数据有误。

这样对比汇总信息会比对比原始数据信息效率高很多,进一步提高了效率,

块:序列号时间戳哈希值事务

假设一个块的哈希值是789789attdghjfg7A;例如,生成一些事务。当一个新的区域快速形成时,符合Hash(789789attdghjfg7A,new transaction data)=12323 as 4d 56 a4 SDS。然后,在比较时,比较新的汇总信息。如果新的汇总信息是正确的,说明以前的账簿数据也是正确的。这样就会形成一个链式结构。在这种情况下,只需要检查最后一块的信息。只要最后一块的信息是正确的,就意味着前一块的信息是正确的,整个区块链的信息也是正确的。这样会提高效率。

2.所有权问题

一般所有银行卡都有卡号和密码,账号和密码匹配就可以支付。比特币的账号相当于一个地址,密码是私钥,从一个地址到另一个地址进行支付。并且地址和私钥是不对称的关系,即:

Hash(Hash(fun(私钥))=地址

Fun是一系列具体的算法。

如何交易:

步骤1:散列事务以获得事务摘要。

哈希(

{“快递地址”:“ahsuidhujkashduikhasidgh”,

“收货地址”:“asyduihiuqawherihiahdi”,

\” Amount\”: \”1btc\”} \’

)=456as4d646a5s4d66

第二步:用私钥签署摘要。

签名(\’事务摘要\’,\’私钥\’)=签名信息

两步后广播,告诉周围节点,我(付款地址)用签名xxx向他(收货地址)支付了1btc.而周围的节点收到后会进行验证。

如果Verify(签名信息,付款人地址)=交易汇总,则写入台账,并向周围节点广播;否则记账失败。

并且签名验证是可逆的过程。

签名(交易摘要,私钥)=签名

验证(签名、快递地址)=交易摘要

比特币安全只受私钥控制,不像银行里的钱可以被银行冻结。

3.你为什么记账?(采矿)

簿记:哈希打包过程,消耗资源。既然要花钱,为什么节点要参与记账?记账完成后,你会获得一个比特币奖励(这个奖励其实就是发行比特币的过程)。既然有奖励,大家就会去记账,就会出现记账不一致的情况,就会有一个规则来约束大家记账。

规则:一段时间内只有一个人可以成功记账;

通过解决密码学问题(即工作量证明),可以竞争获得唯一记账权。

其他节点复制(第二步的结果)记账结果。

工作量证明:

Hash(以前的哈希值,事务记录集)=asdfasdasdad56161

如果是这样的话,可以快速记账。为了显示记账的难度,交易记录的值必须以N个零开头。

Hash(最后一个哈希值,事务记录集,随机数)=00000000000000000asdasda45456

是不断改变随机数,以获得从N个零开始的记录值。

交易记录集:

收集广播中尚未记录在分类帐中的交易记录。

交易的验证

给自己添加转账交易(采矿奖励)

4.以谁的账本为准?(共识机制)

第一个验证正确的有记账优先权,你可以打包积木,这样你就可以获得奖励。

如果两个节点同时完成工作负载认证,将使用谁的数据块?

只有累积工作量最大(链最长)的区块链才会被识别。

分叉:

假设一个节点接收到#3458B的广播,验证成功,就会形成一个新的块。最长的链将是#3459B。

广告位
本文来自网络,不代表区块链网站|NFTS立场,转载请注明出处:https://www.qklwz.com/btb/btbwhy/5508.html
上一篇
下一篇

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

返回顶部