区块链:比特币中的区块、账户验证以及记账

账本存储在每个节点中,怎么保证每个节点中的数据共同,或者说怎么避免某些节点的账本被歹意篡改而影响到整个网络的买卖?

如果说买卖的验证由各个节点完结,那么怎么在不把暗码走漏给其他节点的前提下,证明自己对某个账户的所有权呢?

去中心化就要求时刻有节点在线,由这些节点去完结记账、验证买卖等作业,那么有什么机制能够让节点有动力自发的保持在线去完结这些作业呢?

对于上面的问题,比特币都给出了很高雅的处理方案,咱们一一道来。

迪拜Citizens School接受比特币和以太坊支付学费:3月29日消息,Watcher.Guru发推称,迪拜一所名为Citizens School的学校成为中东地区第一所接受比特币和以太坊支付学费的学校。[2022/3/29 14:23:52]

1.账本验证问题

实际上对于第一个问题,很简单想到处理办法,那便是少数服从多数,如果某个节点的账本数据被篡改了,那么只需求和全网其他节点的数据比对,就必然能发现异常。

但问题在于,随着时刻的推移,记录的累积,数据量会越来越巨大,记得在13年的时分,笔者下载的比特币钱包,从网络同步下载下来的买卖账本数据就现已多达几十GB,如果说要对这么大的数据进行逐一传输、比对,能够说是不现实的。

分析:油价下跌或损害使用火炬气挖矿的比特币矿工:CoinDesk发文称,出于环境原因,采油公司需要减少气体排放。因此,为了防止在现场散发出多余的气体,即火炬气,一些比特币采矿公司(例如加拿大的UpstreamData、科罗拉多州的CrusoeEnergy和德克萨斯州的DJBitwreck)捕获了多余的气体,以为数百台比特币挖矿计算机提供了燃料。然而,如果石油市场崩溃导致这些电源关闭,比特币矿工就无法捕获他们的废气。当比特币的价格急剧下跌时,比特币挖矿很快就会变得无利可图,导致一些矿业关闭。如果比特币价格保持低位,那么只有大型的矿场才能承受数月持续没有利润。[2020/4/21]

在介绍比特币的处理方案前,咱们先了解一个函数:Hash函数,俗称哈希函数。

声音 | Circle首席执行官:比特币将在全球经济中扮演重要角色:Circle首席执行官Jeremy Allaire在接受CNBC采访时表示,比特币将在全球经济中扮演重要角色。Allaire称:“我们正处在一个主要央行以加密形式的表达其货币的阶段。用户将能够以与其他加密货币相同的速度、便捷性和效率使用它们。但最终我们相信,这些全球账户单位将汇集不同的储备货币,或许篮子也将包括比特币。”(CNBC)[2019/9/14]

关于Hash函数的细节,咱们今后再描绘,现在咱们需求知道便是:一段数据经过Hash函数的运算后,得到一段长度很短的数据,咱们称之为摘要数据,能够表示成:

Hash(原始数据)=摘要数据

而Hash函数有以下三个特点:

相同的原始数据,经过同一个Hash函数,总是能得到相同的摘要数据;

原始信息的任何细小的修正,经过Hash函数后,得到的摘要数据会改头换面;

不行逆运算,即:拥有摘要数据,无法逆向反推出原始数据。

比特币的做法是,买卖账本数据依照时刻分块存储,每一块只存储10分钟的买卖账本数据,这每个存储单元即称之为“区块”。而每一个区块的头部会记录这一数据块的序号、时刻和Hash摘要数据。

比较巧妙的当地在于,区块头部中的Hash摘要数据是由上一个区块的摘要数据和本区块的买卖账本数据叠加后经过Hash函数得到的,即:

第n块的Hash值=Hash(第n-1块的Hash值+第n块的账本数据)

能够看到,虽然每一个区块内的买卖账本数据是独立的,可是区块头部的Hash值却是依赖于上一区块的Hash值,从而形成了一条链式的结构。这想必也便是“区块链”姓名的由来。

链上的任何一个区块中的数据受到的篡改,都将反映到最新的一个区块的Hash值上,因此,要想验证某个节点的账本数据是否正确,只需求比对最新一个区块的Hash值即可。

2.账户所有权的证明

如果我要经过某个账户给另一个账户转账,必然需求证明我对此账户的所有权。对于中心化的货币系统,咱们只需求向银行出示暗码即可,可是对于去中心化的系统,如果咱们也经过出示暗码给其他节点,来证明咱们对账户的所有权,那么咱们的暗码也就走漏给了其他节点。

事实上这是一个现代暗码学中比较根底的问题,说白了便是怎么在不露出自己私钥的前提下,自证身份,也有很成熟的处理办法:利用非对称加密算法。关于算法的细节,计划在后面单独说说现代暗码学的一些根底算法,这儿咱们就用类比的办法描绘一下。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金星链

[0:0ms0-0:522ms