@IT·互联网

初识BlockChain和Bitcoin(二)

2017-09-28  本文已影响0人  8000tank
  参考:
* [比特币是什么?| 知乎](https://www.zhihu.com/question/22076666/answer/172266472)
* [Bitcoin: A Peer-to-Peer Electronic Cash System](https://bitcoin.org/bitcoin.pdf)
* [比特币白皮书 个人翻译+注解](https://zhuanlan.zhihu.com/p/25039679)
* [(大鱼)精读比特币白皮书系列(1-6)](http://www.jianshu.com/p/ca0c0a0e0faa)
* [比特币的运行原理](http://www.jianshu.com/p/f1fa43273027)
* [比特币的私钥,公钥和地址是什么?](https://segmentfault.com/a/1190000008741956)   
* [区块链技术指南(《区块链原理、设计与应用》在线版)](https://github.com/yeasy/blockchain_guide)
比特币到底是什么?

什么是比特币(bitcoin)?

概念与定义

比特币是一种用去中心化、全球通用、不需第三方机构或个人,基于区块链作为支付技术的电子加密货币。作为一种特定数据,从地球一端向地球另一端转账比特币,就像发送电子邮件一样简单、低成本且无任何限制。比特币也因此常被用于跨境贸易、支付、汇款等领域。

比特币并不依赖中央机构来发行新钱和维护交易,而是由区块链来完成,用数字加密算法、全网抵御51%算力攻击保证交易安全(可参考《51%攻击解析 | 巴比特》)。交易记录以被全体网络电脑收录维护,每笔交易的有效性都必须经过区块链检验确认。

比特币的总量恒定为2100万个;其最小单位是 0.00000001 (一亿分之一)比特币,称为“1聪”(纪念其发明人中本聪)。如有必要,也可以修改协议(只要大多数用户同意)将其分区为更小的单位,以保证其流通方便。

易混淆的2个概念

(区块链的相关说明,可参考初识BlockChain和Bitcoin(一)

(一)中已提到,区块链可看作是一种数据库系统,其数据格式,根据技术应用场景,可分为三种:

  1. 数据间完全不相关(只是达成的共识,没有有效无效之说)
  2. 数据间具有某些逻辑结构(如对每笔交易,输入和输出都与之前交易有关,这些数据需要通过逻辑验证)
  3. 数据拥有图灵完备的逻辑(对每笔交易不仅要验证真实性和输入准确性,还要根据交易逻辑通过输入值来验证结果)

比特币系统就属于第二种,又叫分布式账本;而以太坊(Ethereum,一种体系,包括以太币)则属于第三种,可支持智能合约。

深入理解

比特币真的是一种“币”吗?
“1个比特币”的含义

在中本聪的《比特币白皮书》中,其实明确了其本质含义:“We define an electronic coin as a chain of digital signatures”,提取主干即为“We define an coin as a chain”。所以,1个比特币,其实就是一个“”(即区块链)。“币”的数量,是通过“链”上的“交易”而被推算出来的数值,“币”其实是并不存在的。

比特币的交易并不是使用一手交钱一手交货的方式,而是通过转账的方式将价值进行组合与分割,并且比特币的交易被设计为可以纳入多个输入和输出,即一笔交易可以转账给多个人。也正是因为如此,钱包上显示的比特币数值其实只是程序进行的一种处理,通过对交易的输入和输出进行反复追溯,并计算最终可用的值。

一些术语

比特币区块链涉及到的领域很多,包括分布式、存储、密码学、心理学、经济学、博弈论、网络协议等,有几个概念是要解释下的:

付款人地址 付款人对交易的签字确认 付款人资金的
来源交易ID
交易的金额 收款人地址 收款人的公钥 时间戳
合法的地址(公钥经过两次hash运算得到的160位hash值) 确保交易内容不被篡改 从哪个交易的输出作为本次交易的输入 多少钱,跟输入的差额为交易的服务费 合法的地址 收款人的公钥 交易何时能生效
注意:
1.这两条性质在数学上并不成立,因为一个函数必然可逆,且由于HASH函数的值域有限,理论上会有无穷多个不同的原始值,它们的hash值都相同
2.好的算法做到的是“求逆和求冲突在计算上不可能”,也就是正向计算很容易,而反向计算即使穷尽人类所有的计算资源都做不到
3.目前流行的Hash算法包括MD5、SHA-1和SHA-2(前两类已被证明安全性不足以用于目前商业环境)
假设D1中数据被修改,就会影响N1、N4和Root,因此沿着Root-->N4-->N1就能“快速定位”到发生改变的D1
交易的原理
比特币交易过程图解,一些术语在前面已做解释

每次发生交易,用户需要将新交易记录写到比特币区块链网络中,等网络确认后即可认为交易完成。每个交易包括一些输入和一些输出。一笔合法的交易,即引用某些已存在交易的UTXO,来作为交易的输入,并生成新的输出的过程。

在交易过程中,转账方需要通过签名脚本来证明自己是UTXO的合法使用者,并且指定输出脚本来限制未来对本交易的使用者(为收款方)。对每笔交易,转账方需要进行签名确认。并且,对每一笔交易来说,总输入不能小于总输出。

比特币网络中的节点,在收到广播来的交易信息后,将进行如下检查:

在对每笔交易的检查通过后,会将此交易标记为合法的未确认交易,并在网络内进行广播。网络中的矿工(也是网络节点)通过“挖矿”来完成对交易记录的记账过程,以此来维护整个网络的正常运行。

价值与意义

作为一种概念金融货币,比特币主要是希望解决已有金融货币系统的几个问题:

比特币之所以受到无数金融从业者的热捧,在于它首次真正意义上实现了足够安全可靠的去中心化数字货币机制。尽管充满了争议,但从技术角度看,比特币仍然是数字货币历史上一次了不起的创新。比特币网络在2009年上线以来已经在全球范围内7*24小时运行接近8年时间,支持过单笔1.5亿美金的交易。比特币网络由数千个核心节点参与构成,没有任何中心的运维参与,支持了稳定上升的交易量,从理论到实践,再到相关其相关技术的多领域拓展,相信它的发展前景会变得越来越好。

注:比特币历史上唯一已知的漏洞事件曾导致比特币的恶意增发,但问题很快被发现并修正,相关非法交易被撤销。
上一篇 下一篇

猜你喜欢

热点阅读