四分钟解析比特币白皮书

在四分钟内解析比特币白皮书

安德烈弗朗索瓦的 照片

介绍:

目前互联网上的金融交易大部分完全通过第三方服务完成,其中主要是Visa,Mastercard,Paypal和其他银行机构。这种制度的核心基础是信任。我们相信这些机构去存储,验证和处理我们的电子支付信息。

这些机构采取各种措施来调解维持信任体系的费用,这反过来又增加了金融网络的交易成本。这些措施阻碍了公平参与个人和企业的经济活动,要么拒绝参与,要求身份验证,要么通过其他不公平的做法。这种货币体系与我们几个世纪以来的不同 - 通过现金或硬币进行的经济活动。但今天已经被信任第三方所取代。

基于数学的电子支付:

中本聪在2009年提出的比特币计划被认为是第一个基于数学而不是信任的数字化,分散化货币。比特币是一个点对点网络,这意味着交易直接发生在用户之间,没有可信任的第三方。它是分散的,这意味着没有人控制着“系统”,每个人都可以公开参与。它是数字稀缺的,这意味着没有人可以复制和花费同一枚硬币两次。这些技术在当时的计算机科学领域是前所未有的,而革命性发明的结合使得创建分散的点对点数字货币  - 比特币成为可能。

什么是银行系统(集中式网络)的交易?

交易是将$ X从A转移到B的请求。系统通过将A的余额减少$ X并将B的余额增加$ X来完成该过程。

在银行系统中,这很容易执行和维护。每当用户尝试花钱时,网络都会检查用户是否具有所需的余额。如果是这样,它从他们的账户中扣除金额。如果没有,网络因平衡不足而不允许交易。

集中网络

什么是比特币网络(分散式网络)中的交易?

由于网络的性质,交易在分散的网络中不是直截了当的。在一个分散的网络中,没有一个“机器”拥有绝对的真理。网络中的每台机器都有自己的真相版本,他们都在其中的一个版本上找到了共识。

不同类型的网络:集中式,分布式和分散式。

比特币网络使用分布式节点网络*,通过使用密码术和称为区块链的公共分布式账本验证交易区块链是公共资产负债表,记录所有发生过的比特币交易。这意味着网络中的所有参与节点都会维护区块链的副本并一起就区块链的一组更新达成一致。

* =参与网络的计算机和/或机器。

块由网络中的所有节点复制,它看起来像这样:

区块链复制

技术上,交易发生在比特币地址之间,而不是用户。比特币地址是一串长长的字母数字字符,并带有相关的公钥/私钥对。将私钥看作您只知道的实际密码。数字签名只能使用此密钥生成,并用于证明交易的所有权。稍后更多。

区块链中的更新如何发生?

当用户之间发生交易时,它会广播到整个网络。节点验证并将它们添加到它们的区块链副本中,然后再次广播到其他节点以通知它们有关更新。为了保持这个网络的完整性,每十分钟,一组交易(称为 - 块)被“接受”或“确认”并添加到区块链中。节点将接受的块发布到网络,并且循环继续。

什么是双重支出?

在身体检查中,签名会验证交易的所有权和有效性。它证明了业主写了支票,并愿意将钱从他的账户转移给收款人。但在比特币网络中,业主通过数字签名并将其附加到交易中来转移硬币。 数字签名看起来像这样:

电子签名

收款人可以通过使用加密魔法来验证签名以确认所有权。但问题是,收款人想验证付款人是否已经花了向他承诺的硬币,即硬币是否花了两倍。收款人需要证明,在交易时,他的交易是第一次交易,其他交易应按正确的顺序处理。如果付款人试图不止一次地使用“相同”的硬币,系统应该拒绝他们。

比特币网络如何防止双重支出?

比特币网络通过使用区块链和称为工作证明的共识流程解决了这个问题

我们知道网络中的节点知道所有的事务,并且它们都有一个历史记录。工作证明机制期望节点消耗能量来更新区块链。使用电力是证明他们已经完成工作以获得结果的一种方式。他们解决了一个很难(但可行)的计算问题,这个问题很快就可以验证,但是生产起来非常耗时。

这意味着如果节点想要在区块链中进行恶意更新,节点将不得不消耗能量。他们的计算资源必须高于网络中所有诚实的节点。这在数学上几乎不可能。

这个难以计算的问题是什么?

新形成的块包含作为工作证明的随机数值。一个随机数就是一个数字,当与块体进行散列时会产生网络期望的“特定输出”。该系统需要恒定的散列才能接受一定数量的前导零。

工作证明:找到现时值

由于SHA256散列函数是完全伪随机函数,因此创建块的唯一方法是使用随机数的试错法。使用随机数进行验证的过程很容易验证,但要预测随机数值几乎是不可能的。所需的平均工作量对于更多所需的零来说是成倍的困难。

如果两个节点找到一个随机数,会发生什么?

发现nonce值的第一个节点将其广播到网络,并开始在链上的下一个块上工作。有时会有多个节点发现正确的散列,或者新块没有到达网络中的所有节点。这导致同时创建多个分支。它看起来像这样:

采矿期间创建了几个分支

工作证明表示最长的连锁店关于CPU能源的工作量最多。因此,只要节点接收到分支最长的块,它就会忽略所有较短的分支并开始在新块上工作。

注意:节点将始终选择从其他节点接收到的第一个块,并将其他块保留在其缓存中。

矿业:

采矿是在不断增长的区块链中反复收集,验证和更新广播交易的过程,以确保每个人都同意交易的顺序。矿工,这是网络中的节点,是保持区块链一致和安全的矿工。由于没有中央机构发放硬币,因此该系统每次成功开采一个新区块时都会用新比特币激励矿工,即解决硬计算问题并为区块链添加区块。这是在网络中创建新比特币的唯一方式。

请注意,矿工与使用比特币网络传输比特币的用户(如你和我)不同。

比特币挖掘

认识概念:

默克尔树:

默克尔树是一种在叶节点处具有数据的二叉树。中间节点由两个孩子的散列组成。哈希向上传播到树顶部,这有助于验证欺诈事务,因为数据的小改变将改变上面所有节点的哈希。默克尔树提供了一个非常有效的方法来确定一个块是否与链中的其他块不同。

称为“简化支付网络”(SPV)的另一种协议仅下载块头和与其关联的事务的分支。它有助于确保区块链安全,并通过下载区块链的一小部分来提供平衡。

可视化块内的Merkel树

结论:

比特币白皮书提出了一个独特的革命性系统,用于在没有可信第三方的情况下进行电子支付交易。具有自己的交易历史副本的节点网络 - 区块链,维护系统的一致性; 数字签名授权交易和所有权; 工作证明的安全性,并使攻击者无法在计算上篡改交易历史。

参考文献:

比特币白皮书

图片来源:

paperalternative

谢谢阅读!如果您相信区块链对技术的影响可以让您喜欢刚刚阅读的内容,请点击并按住👏,或在下面留言。这将帮助我们获得更多的观众。

本文的版权归 庹阳 所有,如需转载请联系作者。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏信安之路

浅谈以太坊智能合约的安全漏洞

智能合约的安全是区块链安全中的热议话题,但其实 89% 的智能合约都存在漏洞,本文将浅谈以太坊智能合约出现过的一些安全漏洞。

19200
来自专栏CSDN技术头条

从原理到实例,他用区块链技术做一了个COIN 客户端

本文来自作者 Lijia 在 GitChat 上分享 「手动做一个自己的 COIN 客户端:附区块链核心代码解读」 ? 基本原理和设计 2008年初,中本聪团队...

91230
来自专栏CDA数据分析师

Youtube 网红老师带你看懂区块链的作用丨附中字视频

翻译/校对: Mika 本文为 CDA 数据分析师原创作品,转载需授权 Youtube 的科技网红Siraj以风趣幽默的方式讲解科技热点而备受追捧,在这期内容...

19890
来自专栏申龙斌的程序人生

Bitcoin Core与Bitcoin ABC两个打架?

今天比特币的价格超过7000美元,交易所价格超过46000元,场外交易超过48000元,很多人又开始准备屯点BTC了。我在2017年5月开始写区块链相关的系列文...

43260
来自专栏深入浅出区块链技术

比特币如何挖矿(挖矿原理)-工作量证明

24250
来自专栏Seebug漏洞平台

以太坊合约审计 CheckList 之“以太坊智能合约设计缺陷问题”影响分析报告

作者:LoRexxar'@知道创宇404区块链安全研究团队 发布时间:2018/08/22

13940
来自专栏区块链大本营

套利、投资、创业,从0到1打造更好的点对点交易协议

16530
来自专栏SAP最佳业务实践

SAP最佳业务实践:FI–资产会计(162)-9 ABZU增价

4.5.3 ABZU增价 增价 一般被理解为对资产评估的后续更改(折旧冲销)。增价使固定资产的帐面值得以提高。当与基于帐面净值的折旧方法一起使用时,增价会提高...

44060
来自专栏网络

闪电网络原理通俗解释

第章 引言 今天有人宣布BTC上的闪电网络可以使用了,甚至今天价格也突然涨了1000美元(有没有因果关系不知道),可闪电网络到底是啥,真的可以用了吗? 闪电网络...

42870
来自专栏magicsoar

又见区块链

一、区块链 1.1区块链是什么 关于区块链有着不同的定义,有的是从技术的应用层面,有的是从技术层面,这里我根据不同的解释,汇总出了一个技术层面上的定义 区块链的...

32660

扫码关注云+社区

领取腾讯云代金券