比特币白皮书链接: https://bitcoin.org/files/bitcoin-paper/bitcoin_zh_cn.pdf

一、摘要部分

1. 摘要的正常架构模型

1. 比特币白皮书 解析 - 图1

2. 本文摘要的架构

1. 比特币白皮书 解析 - 图2

二、简介

1. 传统的 基于信用的模式

1. 比特币白皮书 解析 - 图3

2. 用密码学来替代原来的中心化中介

1. 比特币白皮书 解析 - 图4

三、交易

1. 解析交易原理

1. 概念

  1. 电子货币:不是具体的某个数,而是一条加密记录(数据),所以你拥有了交易记录才说明你拥有了数字资产。注意:这条记录里没有你的姓名、身份证号等信息,唯一表示你身份的是你的公钥(钱包),证明你所有权的是你的私钥(密码)。
  2. 当你拥有支付一条记录时,你就拥有了一定数量的比特币。这时你就可以创建一条新的记录把它花出去。这条记录包含你从别人那里收到这条记录的信息。

    2. 示例

    116.jpg

    3. 双花问题

    上述“王二麻付给大鱼2块钱”过程,可以通过大鱼的私钥和王二麻的公钥来验证该交易记录是由王二麻创建的,但是无法保障王二麻没有将此电子货币支付给别人。

    4. 交易公布模型

    为了解决双花问题,中本聪引入了“交易公布模型”,即人人都可以参与验证是否双花的过程。在比特币系统中存在功能不同的节点,如果你参与到交易的验证过程中那么你也就是一名“矿工”了,通过矿工模型你不但可以挖到新的比特币,也可以参与验证计算获得奖励。
    比特币的交易是一个时间序列的链条,在产生一条新的交易记录时永远有先后顺序,即便是双花你总有先后顺序,你不可能同时创造两笔交易,那么我们只需要证明其中一条是有效的即可,并且将其记录到交易链条上即可,那么其他的交易就是无效的了。

    四、时间戳服务器

    1. 概念

  3. 时间戳:时间戳服务器通过对以区块(block)形式存在的一组数据实施随机散列而加上时间戳。

  4. 如何获取一个去中心化的时间?—-利用“多数人的正义”,时间来自于连接的其他节点(node)时间的中位数(mean,是个数学概念,比平均值更不受极端数字影响),要求连接的节点(node)数量至少为5,中位数和本地系统时间差别不超过70分钟,否则会提醒你更新本机的时间。同时,在接收到新的block时会拒绝时间与自己差距+2小时和-(前11个block时间中位数)的block。

    五、工作量证明

    1. Proof-of-Work

    硬件的运算速度在高速增长,且节点参与网络的程度会有所起伏。为了解决这个问题,工作量证明的难度(the proof-of-work difficulty)将采用移动平均目标的方法来确定,即令难度指向令每小时生成区块的速度为某一预设的平均数。如果区块生成的速度过快,那么难度就会提高。
    详解链接:https://blog.csdn.net/guoqingshuang/article/details/81087053