| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 区块链 -> 比特币白皮书概要 -> 正文阅读 |
|
[区块链]比特币白皮书概要 |
特币白皮书主要是讲述了思想,以下正文是我当时记录的认为重要的内容。对于没有了解过比特币的读者,可以起到扫盲的作用。 每个电子币=数字签名链 非对称加密,达到去信任的点对点支付,从而不需要第三方平台;问题无法解决双向支付。? 接下来说明,如何解决双向支付问题?
将前一个块的时间戳纳入当前块数据中,将块数据进行散列生成时间戳,然后广播给所有节点。 意义:确保数据存在性,保证时间顺序存储交易信息,所有节点都具有历史交易序列。
进行区块随机散列计算时,需要进行特定值(就是满足要求的解)的扫描工作,例如:要求散列满足SHA-256且必须以N个0开头。随着0的增加,工作量指数上升。 最长的链代表了最大的工作量,而且每个节点只在最长的链上继续工作。 想要更改某个区块的数据,需要工作量为:更改该区块信息后计算散列的工作量+计算该区块之后所有已有区块散列的工作量+生成更长链所需要的工作量。 如果求解的难度不变,当硬件计算速度提升,参与节点减少或增加时,导致区块新增速度降低或增快;因此需要工作量证明的难度必须与'生成区块的速度'相关联,当生成区块速度增加了,就要增加难度。 比特币网络 描述了一个新交易被记录到区块链中的过程。 硬盘回收 区块中通过MK树组织交易信息,将(符合规定判定为)老交易信息对应的分支从MK树中抽除掉,这样区块体的大小就减小了。 简化的支付确认SPV 用于在SPV节点(仅持有部分区块头构成的链)中验证交易。 例如验证交易A,向对等节点请求某些数据(符合条件的区块头和mk树)并且记过Bloom过滤器,通过MK树验证交易存在,确定区块后,再通过区块深度确认区块有效(确认该区块上方是否已经有大于等于6个区块)。 比特币隐私 传统隐私模型:公众与交易信息和交易双方身份是被分离的。 参考资料 区块链讲解 http://business.sohu.com/20161011/n470006712.shtml |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 | -2024/12/29 10:04:56- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |
数据统计 |