小白也能懂的比特币及区块链原理

2018-06-29  本文已影响0人  jingkanghou

小白也能懂的比特币及区块链原理

文中尽量以大白话讲解比特币及区块链的基本原理,一步一步的画出区块链的鸟瞰图。
!!!相关概念描述并不严谨,仅是面向于小白的小白化说明。

查看原文

初探

比特币

一种加密数字货币(也叫加密货币)。
什么是数字货币?比如:Q币、游戏币.....。哦,原来这么简单,那加密货币就是加密了的数字货币,这有什么好玩的?嗯......,咱们继续看......

区块链

......,这个名词,看起来很深奥,先绕过......

比特币和区块链的关系

账本中的每一页对应区块链中的一个区块(区块,就是记录了很多条比特币交易记录的数据块),账本中的付款记录对应区块中交易记录:

记录对应

故事中我们为了安全,建立了六个相同的账本,每人保管一份:

账本分布存放

而区块链中,每一份完整的区块链数据分布保存在世界各地的计算机中,这些计算机通过通信网络相连接,每台计算机都被称为网络中的一个节点:

区块链网络

区块链的安全性远比账本要高:账本中的签名是可以模仿的;有六个帐本也可能被全部替换掉。而在比特币的运行机制中这种情况几乎不可能发生,而这个[几乎不可能]基本等于[不可能]。为什么这么说,咱们继续分解......

数字签名

在前面故事中,每个付款人都要对自己的付款记录进行签字,以确认这条付款记录是正确的,并且这笔钱是自己付的。比特币在交易过程中也会产生很多交易记录,而这些记录都是通过数字签名来确认的。
数字签名广泛应用于电子商务、在线支付等业务场景中,由一个私钥和一个公钥组成。

数字签名是无法伪造的,一个私钥对一个消息只能的产生一个数字签名。在比特币交易中,有两个地方使用了数字签名:

数据特征码

比特币是通过哈希算法(SHA-256和RipeMD160)计算数据的哈希值的,哈希值有什么用呢?我们可以理解为哈希值是数据特征码,这个特征码能够唯一代表这块数据。数据不同产生的特征码不同,对数据的任何细小改动,都会使得最终得到的数据特征码不同。
那么,这个特征码有什么用呢?
先看看区块的结构:

区块结构

从上图中我们看到区块有两部分组成,hash值组成的区块头和交易记录组成的区块体(为了便于理解此处区块头和交易记录都做了简化)。

不可篡改

读到这里细心的你可能已经对区块链的不可篡改原理有了一些了解:对区块中的任意交易记录任何修改都会引起数据验证无法通过。

引申一下前面的内容

如果你想修改一条了交易记录,为了这条修改后的记录合法,你需要:

上图中红色字体部分是修改【交易记录1】而引起重算的所有特征码。这里只是以5条记录为例,实际上,目前一个区块(1M)中依交易记录大小的不同有可能会存放3000~4000条记录。

挖矿

挖矿,这个名词用在软件系统中似乎让人有些摸不着头脑。其实它是指按照比特币特定规则计算出指定区块的区块Hash的过程,新的区块只有在计算出区块Hash才能放上链并被全网认可。但是,这个过程跟挖矿有什么关系呢?为什么会被称为“挖矿”呢?这得从区块Hash的计算过程说起。

修改交易记录的巨大成本+挖矿难度的限制,想要篡改数据?呵呵,你试试看……,:-)

矿工、挖矿奖励及交易费

重申

本文仅是面向于小白的对比特币和区块链基本概念和原理的小白化说明,很多描述并不严谨,如果你想了解更专业的相关知识,可以参考精通比特币这本书。

上一篇下一篇

猜你喜欢

热点阅读