区块链笔记
来源:互联网 发布:三维动画演示软件 编辑:程序博客网 时间:2024/05/17 12:47
区块链解决的两个问题:双花问题和拜占庭将军问题。
1、双花问题:
“双花”问题是指:加密数字货币和其他数字资产一样,如同可以将一个文件以附件形式保存并发送多次,具有无限可复制的缺陷。如果没有一个中心化的机构,我们无法确认一笔数字现金或资产是否已经被花掉或提取。为了解决这个“双花”问题,可以信赖的第三方需要保留交易总账从而保证每笔现金或资产只被花费或提取过一次。
在区块链中是如何解决这个问题的呢?是通过在每一个区块上都包含了上一个区块的哈希值,从创始区块开始连接到当前区块从而形成区块链。每一个区块都要确保按照时间顺序在上一个区块之后产生,否则前一个区块的哈希值是未知的。同时由于区块链中所有的交易都要进行对外广播,所以只有当包含在最新区块中的所有交易都是独一无二且之前从未发生过,其他节点才会认可该区块。因此在区块链中,就非常难出现“双花”问题。
内容:拜占庭帝国国土辽阔,当攻打敌人的时候,每个军队都分隔很远,将军之间只能靠信使传消息。
在战争的时候,拜占庭军队内所有将军必须达成一致的共识,决定是否去攻打敌人的阵营。但是,军队可能有叛徒和敌军间谍,左右将军们的决定,扰乱军队的秩序,使达成的共识并不代表大多数人的意见。这时,在已知有间谍的情况下,其余忠诚的将军在不受叛徒的影响下如何达成一致的协议,就是拜占庭将军问题。
数学的解决方法可以看此文:拜占庭将军问题深入探讨 (有些地方还没理解,以后再看看)
区块链对于这个问题的解决方案:
区块链的基本结构也是用数字签名的形式解决拜占庭将军问题。
区块链采用了PoW(工作量证明)的方法来确认,提交一个所有人都必须经过大量尝试计算才能得出,却十分容易证明正确的计算结果。例如,只有一个前13个字符是0的哈希值结果可以被系统接受成为“工作量证明”,这就需要全网花费一定时间算出大量的无效值。这就是减慢信息传递速率,但使得整个系统可用的“工作量证明”。
- 区块链笔记分享:
- 区块链笔记
- 区块链学习笔记1
- 区块链学习笔记2
- 区块链的学习笔记
- 区块链技术学习笔记
- 区块链
- 区块链
- 区块链
- 区块链
- 区块链
- 区块链
- 区块链
- 区块链的区块结构
- 区块链技术,比特币技术的汇总笔记
- 区块链技术,比特币技术的汇总笔记
- 区块链解读-区块链金融
- 【区块链系列1】区块链科普
- 【LeetCode】C# 6、ZigZag Conversion
- 素数筛法以及其并行优化(MPI)
- ubuntu 安裝mysql
- bzoj 4417: [Shoi2013]超级跳马
- 从CrimeListFragment带附加信息跳转到CrimeActivity,并把附加信息给CrimeFragment
- 区块链笔记
- 如何利用Construct 2制作一个简单的游戏
- 路德《致全德市长及地方议会参议员的信》
- react-native三种创建组建的方式
- openstack heat部署redis_cluster
- mysql |那些关于第二大的事
- iTunes连不上iphone
- linux指定定时脚本清理缓存车看内存使用情况
- python中字符串与datetime的相互转换