比特量子币
㈠ 量子霸权的诞生:把一台比特币矿机改成量子矿机后会发生什么
先搞清楚算力的单位,也就是Hash碰撞的单位,
大家都用过U盘或者硬盘存储东西,单位是KB、MB、或者GB,比如8G的小U盘,1T的硬盘说的都是存储空间,全称应该是8GB、1TB。B是Byte字节的缩写,为存储单位;如果把Byte改成Hash就成了算力单位,Hash缩写为H,数学上这几个字母代表的关系是一样的。
K=2^10=1024≈1000;KH算力是每秒猜大概1000次
M=2^10K=2^20≈10^6;MH算力是每秒猜大概100万次;
G=2^10M=2^30≈10^9;GH算力是每秒猜大概10亿次。
T=2^10G=2^40≈10^12
P=2^10T=2^50≈10^15
E=2^10P=2^60≈10^18
以此类推,单位是TH,PH,EH,Z,Y,B,N,D等等
你的私钥是256位的二进制信息,也就是有2^256种可能。
以现在市面上最新的大算力矿机来看,是50T到60T之间,单位Hash/s.
简单粗暴的去算,这个每秒碰撞的次数,50 * 2^40 Hash/s
55T或者50T算力这个数字不好变化为2的n次方,假设为64T算力,单台矿机最高算力超过60T这个假设是可以成立的,即使是思维试验也要非常严谨地结合实际情况,64也就是2的6次方,。那么这个公式就变成如下形式:
如果量子计算机能够做到的话,如果是谷歌的53量子比特能够实现,那么每一个逻辑单元里的两种可能0和1,就变成了53种可能,从2到2^53. 单台矿机的算力就会从50 * 2^40 Hash/s
转变成
这个数字已经远远超过比特币私钥的所有可能性了,这也就是这台矿机全面改造成53量子比特计算机的样子,一瞬间直接破解。这个时间短到很难去描述(后面会讲到时间单位)。
这个数字实在是太麻烦,我们反推一下,如果我要很快破解一个私钥,就用一台矿机改造后的量子计算机,大概要多少个量子比特纠缠的量子计算机。
首先,50T=50*2^40,这是算力前文把50改成64变成了也就是一台64T的矿机,2^46H/s,这时候如果量子纠缠之后的量子比特是n,那么算力就变成了。
……此公式后面会引用
我们来找一个相对临界值。
假设 2^(256-46n) =64s ,也就是一分钟零四秒就破解了你的私钥,求解n 。
256-46n=6 推出,n=5.435 量子比特取整数。
5 比特量子纠缠的量子计算机(量子矿机)
如果n=5,所需要的时间就是
2^(256-46n)= 2^(256-46*5)=2^26 s
描述一下这个时间,就是
2^26 s ÷ 3600s ÷ 24h ÷ 365d = 2.128 年
注释:以上的s、h、d依次代表的是秒,小时,天等时间单位
也就是说5比特量子纠缠的量子计算机,2年多一点的时间就可以遍历目前所有比特币的私钥。
6 比特量子纠缠的量子计算机(量子矿机)
那么如果是6比特量子纠缠的计算机呢,同样算一遍,这个时候n=6.
2^(256-46n)= 2^(256-46*6) =2^(-20)s=9.5 *10^(-7)s约等于 10^(-6)s 等于 1 微妙,也就是不到1 微秒就可以把世界上所有的私钥的可能碰一遍。
注释:1s=1000毫秒;1毫秒=1000微妙
太可怕了!
只要增加一个比特的量子纠缠,就这么恐怖,对于一台 64T 的算力矿机就是一个任务从 2 年缩减到 1 秒以内。
2 比特量子纠缠的量子计算机(量子矿机)
咱们再把量子比特缩小到2比特的量子纠缠看一下,这台64T算力的矿机的算力会涨到多少。
上面这个是前文出现的一台64T的矿机每秒钟的hash碰撞次数,现在n=2我们看看算力到多少了,2^92 hash每秒
算一算这是多少T的算力,1T=2^40 hash
2^92 hash÷2^40 hash=2^52T
一台矿机的算力是64 T=2^6 T,2^(52-6)=2^46台矿机,约等于10的13.8次方台矿机,有点大不太好用语言描述,下面我们看下目前的全网算力。
目前全网的算力是89.98EH/s 相当于多少台64T的矿机呢?
实际上目前大厂商最新的是50-60T的比特币算力矿机,那么,如果全部换成新矿机保持这个算力是多少台呢?
全网所有的矿机加起来每秒钟发生了89.98*2^60次哈希碰撞。
89.98约等于2^6.5,所以全网算力是2^66.5 hash/s,而刚刚公式推算的2比特量子纠缠的量子矿机的算力是2^92 hash/s, 也就是比目前全网算力还大,具体算一下相当于
2^(92-66.5)=2^25.5约等于4745万个全网算力。
也就是你这一台64T的比特币矿机,外星人过来把里面的每个芯片的每个二极管全部改成2比特的量子纠缠后,你的算力就直接干到全网的4745万倍。
指数级增长的概念,日常是难以理解的,因为平时见到的指数级别还是不够大。做个思维试验,把一张1mm厚的纸张折叠50次有多厚?
0.001*2^50这个数字比地球到太阳的距离还远(这个拿科学计算器捣鼓一下就知道了,地球到太阳大概15000万千米)。
而量子计算的不可控制导致目前并不能有什么大的应用,毕竟半导体、二极管、芯片的工业成熟,运行稳定。如果每一个二极管逻辑上的0和1都变成了一个一个n比特的量子纠缠态去计算,这个是非常夸张的,这个算力增长不是2倍4倍几万倍,而是2的n次方倍,拿一张纸折叠下去,因为是折叠不动的所以是思维试验。
总结与展望
Google的所谓量子霸权的链接附上: https://drive.google.com/file/d/19lv8p1fB47z1pEZVlfDXhop082Lc-kdD/view
也就是12页的文字,回想起2008年的时候,比特币白皮书也就是短短十几页,这是不是一个很大的趋势呢?这个事情很难说,因为非常难以实现,量子态本身就是人类目前不能操控的领域。
但是,谁知道呢,爱因斯坦提出狭义相对论提出质量能量的转换公式的时候觉得这个只是理论上的东西,实现估计还要一百年。
1905年提出的时候,连提出者本人都不相信这个公式有什么实用价值,1945年的时候美国就直接将原子弹用于战争,四十年就把难以置信的东西扔到人类面前,直接结束了世界大战,核威慑时代来临,常规战争退出世界级别战争的舞台。
未来的世界里,或许所有现在的计算和矿机,都是常规计算,不管量子计算有多么难以实现,理解量子的时候有多少槽点, 如果不重视,很有可能槽点变泪点 。70年国庆就要来了,我们国家在量子计算领域一直走在世界前列,不断地突破,祝福我国继续开拓创新,勇攀高峰。不夸张的讲,谁先掌握量子计算,谁就成为量子霸权,就像世界上第一个研制出原子弹的国家一样,把现行所有的加密解密直接归于“常规”。
只是这个时间是10年还是40年,谁也说不准,因为这个理论到实践不是实验室做了一个化工材料要去工业化量产,而更可能是刚刚知道原子之间有个东西叫共价键是什么就要去人工合成蛋白质中间的跨度还是非常大。
本文是一个思想实验,也是继量子秘钥分发和量子计算两篇文章之后的又一篇文章,关于量子,暂时就讲到这里, 量子计算是伊甸园还是恶之花,现在都还很难讲 。未来的文章还是回归现实回归区块链项目,关注眼下的行业问题。
㈡ 量子比特
在经典图灵机模型中,储存经典信息的基本单位叫做比特。它是一个二进制变量,其数值一般记做二进制的 0 或者 1。一个比特要么是 0,要么是1,正如向空中抛起一枚硬币,那么它落下后要么正面朝上,要么反面朝上。我们用二进制的比特理论上可以储存任何信息,最简单的,像储存十进制整数就可以利用二进制和十进制的转换。3=11, 4=100, 50=110010 等等。当然,非整数也是可以写成二进制的形式,像 5.5=101.1,也就是说任意实数都可以按精度要求用二进制来表示。而在电子学中,很多器件是非常适合二进制表示的,像电压的高低和开关,电容器的带电荷与否等等,都可以来作为一个比特的载体。但在量子世界,一切都发生了改变。一个量子的硬币不仅可以正面或反面朝上,它甚至可以同时正反面都朝上,在你观测它之前。著名的薛定谔的猫就是这个道理,这只猫在开箱子,也就是观测之前,它又是死的又是活的,处于生和死的叠加态 (superposition state)上。正是叠加性这个奇妙的性质引出了量子比特 (quantum bit, qubit) 的概念。
(网络知道里不方便输入公式,更详细的介绍见量子研究网站:quantum-study.com/article/795/21.html)
在物理实现上,原则上具有叠加性质的两态量子系统都适用做qubit。目前的实验室里,像 核磁共振中处于磁场中的自旋 1/2 粒子 (自旋向上和向下),空腔中的原子的态 (原子的基态和激发态),超导结之间隧穿的库珀对 (Cooper pairs处于一个结和另外一个结时),都可以被用作 qubit。当然,如果一个硬币可以同时向上和向下也是可以的,在量子随机行走中我们就会看到这种量子硬币(quantum coin)。
现在我们可以回过头来在看一下经典计算机和量子计算机的差距,这次是存储容量上的。考虑一个简单的情况,我们要储存 45 个自旋 1/2 的粒子,这在量子系统中只是一个很小的体系,只需要 45 个 qubit 就可以实现。但如果我们要用经典计算机完成这个任务,约需要 245 个经典比特,也就是大概4 个 TB 的硬盘!这里有些典型的数据来跟它比较, 4TB 大概是 4000G 或者4000000M,而一部高清蓝光电影大概是 10G,一本书大概是 5M。另外一些比较有意思的数据是,美国国会图书馆的所有藏书总容量大概为160TB 或者说 50 个 qubit,而 2007 年人类所拥有的信息量总和为 2.2 × 109 个 TB,也仅相当于 71 个 qubit 的存储容量。
㈢ 你知道什么是量子吗你知道什么是量子比特吗
下面这句话,用的就全是专业概念:“基于量子叠加原理,一个量子比特可以同时处于0状态和1状态。”说得明确一点就是,n个量子比特能存储2的n次方个比特的信息。奇妙的是,说这番话的不是民科,而是2016年以来大火的《宝宝的物理学》系列的作者克里斯·费利(Chris Ferrie)博士。这是他在《宝宝的量子信息学》里写的。他甚至还做了一个幽默的比喻:为了存储我最喜欢的一个分子(咖啡因)的信息,就需要地球上所有的手机!
下面我们来从头解释起。
量子比特是什么?
“比特”是计算机科学的基本概念,指的是一个体系有且仅有两个可能的状态,一般用“0”和“1”来表示。典型的例子,如硬币的正、反两个面或者开关的开、关两个状态。
但在量子力学中,有一条基本原理叫做“叠加原理”:如果两个状态是一个体系允许出现的状态,那么它们的任意线性叠加也是这个体系允许出现的状态。
现在问题来了,什么叫做“状态的线性叠加”?为了说清楚这一点,最方便的办法是用一种数学符号表示量子力学中的状态,就是在一头竖直一头尖的括号“|>”中填一些表示状态特征的字符。这种符号是英国物理学家狄拉克发明的,称为“狄拉克符号”。 在量子信息中,经常把两个基本状态写成|0>和|1>。而|0>和|1>的线性叠加,就是a|0> + b|1>,其中a和b是两个数,这样的状态称为“叠加态”。“线性”意味着用一个数乘以一个状态,“叠加”意味着两个状态相加,“线性叠加”就是把两个状态各自乘以一个数后再加起来。
现在,你明白“一个量子比特可以同时处于0状态和1状态”是什么意思了吧?它实际是说,量子比特可以处于|0>和|1>的叠加态。在一个时刻只会处于一个这样的确定的状态,既不是同时处于两个状态,也不是迅速在两个状态之间切换,也不是处于一个不确定的状态,更不是时空分裂。
不得不说,“同时处于0状态和1状态”是一个很容易令人糊涂的说法,好像禅宗的打机锋,远不如旋钮的比喻清楚易懂。更糟糕的是,读者可能会以为自己懂了,然后胡乱引申,造成更大的误解。在科普文章中,类似这样的令人似懂非懂的说法太多了,简直是遍地陷阱。
那么,为什么许多人言之凿凿地说,n个量子比特包含2的n次方个比特的信息?
要让这句话有意义,关键在于:把a|0> + b|1>中的a和b这两个系数,当作两个比特的信息。这当然不是个严格的说法,因为把连续变量和离散变量混为一谈了。不过只要你姑且接受这种表述,你就可以明白,他们实际想说的是,“n个量子比特包含2的n次方个系数”,这就是正确的了。
这是怎么算出来的?
对于一个量子比特,n = 1,体系可以取的状态是a|0> + b|1>,有a和b两个系数,系数的个数等于2的1次方。
对于两个量子比特,n = 2,体系可以取的状态是……是什么?
你也许会觉得,第一个量子比特的状态是a1|0> + b1|1>,第一个量子比特的状态是a2|0> + b2|1>,总共有4个系数。
错了!按照这种方式,当你有第三个量子比特时,只是增加a3|0> + b3|1>的两个系数,总共有6个系数。广而言之,每个量子比特提供两个系数,所以n个量子比特包含的系数个数就是2n,怎么会是2的n次方呢?
真正的关键在于,对于多量子比特的体系,基本的描述方式并不是“第一个量子比特处于某个态,第二个量子比特处于某个态……”,而是“系统整体处于某个态”。
系统整体可以处于什么态呢?再次回忆叠加原理(敲黑板)!是的,叠加原理对多粒子体系也适用。 所以,我们要做的就是找出多粒子体系可以处于的基本状态,而这些多粒子基本状态是由单粒子的|0>态和|1>态组合而成的。下面我们来看这些基本状态。
首先,你可以让每一个量子比特都处于自己的|0>态,这时系统整体的状态是所有这n个|0>态的直接乘积(称为“直积”),可以简写为|000…>,狄拉克符号里有n个“0”。
然后,在这个态的基础上,你可以让第一个量子比特变成自己的|1>态,这时系统整体的状态是|100…>,这也是一个直积态。
然后,在|000…>的基础上,你可以让另一个量子比特(比如说第二个)变成自己的|1>态,这时系统整体的状态是|010…>。这样,你可以走遍所有的由n-1个“0”和1个“1”组成的字符串。
然后,在|000…>的基础上,你可以让两个量子比特变成自己的|1>态。这样,你可以走遍所有的由n-2个“0”和2个“1”组成的字符串。
这个过程继续下去,最终你会把所有的量子比特都变成自己的|1>态,得到由n个“1”表示的|111…>这个态。在这个过程中,你得到了所有的由“0”和“1”组成的长度为n的字符串。
这样的态总共有多少个呢?第一位有2种选择,第二位也有2种选择,一直到第n位都是2种选择。所有这些选择乘起来,就是2的n次方种选择。注意是相乘,而不是相加。在高中学过排列组合、二项式定理的同学们,肯定都看明白了吧?
机智如我,早已看穿了一切。
顺便说一下,这样的一个n粒子状态,有可能可以表示成n个单粒子状态的乘积,这时我们称它为“直积态”,但更常见的是不能表示成n个单粒子状态的乘积,这时我们称它为“纠缠态”。作为一个简单的例子,二粒子体系的(|00> + |11>) / √2就是一个纠缠态。你可以试着证明一下,很容易的~
㈣ 量子比特的概述
参照Shannon信息论中比特描述信号可能状态的特征,量子信息中引入了“量子比特”的概念。量子比特的英文名字为quantum bit,简写为qubit或qbit。
1983年,Stephen wiesner在他量子货币的提案中第一次引入了量子比特的概念。而“量子比特”这个术语的问世应归功于Benjamin schumacher,在他论文的致谢辞中,schumacher 表示术语“量子比特”是他在同William wootters的一次谈话时提出的,只是因为它同古代的一种长度测量单位腕尺(cubit)的发音相似。在量子计算中,作为量子信息单位的是量子比特,量子比特与经典比特相似,只是增加了物理原子的量子特性。
㈤ 比特币量子是什么符号
量子链QTUM
㈥ 为什么说量子计算机可轻易破解比特币,究竟怎么
摘要:在位于纽约市以北约50英里处僻静乡村中的一个小型实验室内,天花板下缠绕着错综复杂的管线和电子设备。这一堆看似杂乱无章的设备是一台计算机。它与世界上的任何一台计算机都有所不同,而是一个即将开创历史的里程碑式设备---量子计算机。
2017年5月3日,科技界的一则重磅消息:世界上第一台超越早期经典计算机的光量子计算机诞生。这个“世界首台”是货真价实的“中国造”,属中国科学技术大学潘建伟教授及其同事等,联合浙江大学王浩华教授研究组攻关突破的成果。
如果现在传统计算机的速度是自行车,量子计算机的速度就好比飞机。在过去的几个月里,IBM和英特尔已经宣布他们已经分别制造了50和49个量子比特的量子计算机。有专家指出,在十年之内,量子计算机的计算能力就可能赶超当前的超级计算机。
2018年3月5日在洛杉矶举行的美国物理学年会上,谷歌量子AI实验室研究科学家Julian Kelly报告了,带领谷歌团队正测试一台72量子比特通用量子计算机。然而,这还是仅仅是72量子比特而已。按照这个速度发展下去,很快量子计算机的神通,将强劲得让人恐惧。
那么,为什么说量子计算机可轻易破解比特币,究竟怎么回事?
要破解现在常用的一个RSA密码系统,用当前最大、最好超级计算机需要花60万年,但用一个有相当储存功能的量子计算机,则只需花上不到3个小时!也就是说,从电子计算机飞跃到量子计算机,整个人类计算能力、处理大数据的能力,就将出现上千上万乃至上亿次的提升。在量子计算机面前,我们曾经引以为豪的传统电子计算机,就相当于以前的算盘,显得笨重又古老!
虽然比特币协议使用的是不对称的加密货币,用相应的公钥验证私钥签署的交易,以确保比特币只能被合法所有人使用。使用当前可用计算机强制私钥与公钥保持一致不可行,但量子计算机却可以解决不对称加密货币的问题。
另外,比特币的规定是处理得更多的那个区块加入区块链,另一个区块则作废。举个例子,这就像于在一个账簿里有51个人说你在银行存了100块钱,而49个人说你存了50块钱,这种情况下,区块链算法少数服从多数,银行认为你存了100块钱是真,存了50块钱是假。所以一旦一位矿工拥有51%的算力,其他后续矿工将无法继续获得比特币。
Andersen Cheng,英国一家网络安全公司的联合创始人,他表示在量子计算机投入使用的那一天,比特币就会终结。你觉得呢?
㈦ qtum是什么币
很多朋友不知道qtum是什么币,接下来就一起来看看吧。
qtum是什么币
qtum是量子链币。QtumBlockchain(简称“量子链”或“Qtum”)致力于开发比特币和以太坊之外的第三种区块链生态系统,通过价值传输协议(“ValueTransferProtocol”)来实现点对点的价值转移,并根据此协议,构建一个支持多个行业(包括金融、物联网、供应链、社交、游戏等)的去中心化的应用开发平台(“DAppPlatform”)。
由于技术上的创新、治理结构完善、应用范围广,量子链将成为优于比特币和以太坊的公链:
1、从技术角度分析,量子链具有强大的开发团队,通过引入Identity、Oracle和数据馈送(Datafeeds)机制,并兼容比特币改进协议(BitcoinImprovementProposals)的UTXO交易模型,实现了首个基于IPoS(激励权益证明)共识机制的智能合约平台。在合规性方面,也符合不同行业的监管需求。
2、从治理角度分析,量子链设立量子链基金会,致力于量子链的开发建设、治理透明度倡导和推进工作,促进开源生态社会的安全、和谐。通过制定良好的基金会治理结构,分别从代码管理、财务管理和公共关系等多个维度帮助管理开源社区项目的一般轶事和特权事项,从而确保量子链的可持续性、基金会内部管理有效性及募集资金的安全性。
㈧ 为什么说量子计算机会是比特币的终结者
因为比特币协议使用的是不对称的加密货币,用其相应的公钥验证私钥签署的交易,以确保比特币只能被合法所有人使用。使用当前可用计算机强制私钥与公钥保持一致不可行,但量子计算机却可以解决不对称加密货币的问题。
硬件和软件的整合是这一过程的关键环节,量子计算能够解决目前电脑无法解决的问题前也许还需要“数次迭代”也就是说由于现在都是基于布尔逻辑体系展开运的电子计算机。而量子原理逻辑是颠覆性的,要实现商业化需要整个量子产业链的完善配套和优化。其中包括硬件方面的、操作系统、软件方面的方方面面的生态建设过程。走出实验实到完全商用,少说也得5到10年的筹备完善过程。
㈨ 关于比特币的谜题(完结)
你可曾想过: 为什么矿机算力越大越好?(既然是解数学题那为什么不是拼谁的算法厉害啊喂!) 比特币的数量总和为什么是2100万? 比特币盗窃是怎么回事? 我不玩比特币,就真的与比特币无关了吗…… 🤔️
关于大众不再感到陌生的比特币,背后还有许多巧妙之处。本文介绍了比特币的基本原理和主要原则,并结合对部分技术细节的剖析,来对上述的一些疑问作出解答。全文较长,约7000字,阅读时间约为22分钟,建议收藏后阅读😁
文章可以分成以下几个部分:
* 比特币先验知识
-- 密码学相关
-- 比特币重要概念
* 交易的生命周期
* 区块链的构成
* 区块链的生长
-- “挖矿”的数学本质
-- “矿工”的收益
* 比特币的共识机制
-- 比特币的去中心化共识
-- “最长链优先”原则
* 比特币安全性
比特币作为第一个去中心化的数字货币,其设计中运用了不少的密码学相关知识,主要包括非对称加密技术、哈希函数等等。理解这些密码学知识,能帮助我们更好地理解比特币中的一些概念及规则。
以下是比特币的一些定义及概念解说,了解过的小伙伴们可以直接跳过~
在比特币这个创新的支付网络中,一个交易的生命周期大概可以分为几个阶段:创建、传播和被验证交织、被打包进区块记录到区块链中、获得更多的确认。图1对这几个阶段做出了示意。
注:
1⃣️一个支付方A在发起一个比特币交易时,会使用自己的私钥对交易信息的哈希值进行签名。因此A向全网广播的内容除了交易信息之外,还有自己的公钥信息、对消息的签名。其他矿工只要利用A的公钥即可对这个交易进行验证,判断是否真的由A创建。
2⃣️”交易传播和交易验证“交替意味着 各个节点基于一定的规则独立验证每个交易(共识基础1) , 一个节点只有认为这个交易有效才会把它继续传播出去。
比特币的底层技术是区块链。区块链系统是一种分布式共识系统,区块链网络中所有的参与节点将就交易的状态达成一致。
区块链到底是什么呢?你可以把它理解成一种分布式的交易的共享账本,以区块为基本单位链接在一起。交易信息将被整理并打包记录在区块中。每一个区块,包含区块头,以及紧跟其后的交易列表。区块头包含3个区块元数据集合:前序区块哈希(严格来说是前序区块头哈希,因为只有区块头被用于哈希运算)、元数据集(包括难度、时间戳、随机数等)、一个基于加密哈希来高效概括区块中所有交易的默克尔树(merkle tree)。了解这个结构,将帮助我们更好地理解挖矿的数学本质。
你可能听说过“挖矿”这个词,或者听说众人争相购买挖矿机器来发家致富。但让人疑惑的是:都说打包区块的本质是解数学难题,但单凭那些看似简陋的机器嗡嗡嗡疯狂耗费电力,就能确保自己解出比特币难题的胜率高了吗?比特币技术原理中,矿工们解决的数学题,难道是一个暴力破解题?
看了一圈,发现矿工们解决的题,还真有点暴力破解的意思,每次尝试解题的过程几乎都是茫茫然、去碰运气的。拼的是谁足够幸运,也拼谁算的足够快;算的快了么,试错次数多,自然胜算也就大了。
解题的背景是这样的—— 挖矿节点通过基于工作量证明算法(Proof-of-Work,POW)的证明运算,独立将交易汇聚到新区块中(共识基础2)。 当矿工从网络中接收到一个新的区块的时候,他发现自己已经在上一轮竞争中失败了,所以立即开始新区块的挖矿过程。为了创建一个新的区块,他从内存池中选择交易来填充区块(加入区块的第一笔交易是一个“铸币交易”,3.2节会给出详相关细节)。接下来是填充字段来创建区块头(包括前序区块的区块头哈希、交易的默克尔树(Merkel树)、时间戳、难度目标值、随机数),然后开始计算这个新区块的工作量证明。
这个计算的过程简单来说是对区块头部进行两次sha256运算,得到一个RESULT,如果这个RESULT满足特定要求,这个人才能算是算对了、才有权利去记账。满足要求的RESULT被称为“工作量证明”(中本聪论文中称为“proof of work”)。
关于这个计算过程,强调以下几点:
第一,区块头部,包含了前序区块头部的哈希、本区块交易信息的默克尔树、时间戳、难度目标值、随机数等信息(见图2)。
第二,哈希运算具有“知道y,无法推出使得h(x)=y成立的x”、“即使输入只改变一点点,输出也会差很多”、“利用任意长度的数据作为输入,生成一个固定长度的确定结果”的特性。所以大家也不知道什么样子的输入才能产生自己想要的结果,矿工只能不断尝试。
第三,前面说到,区块头哈希值需要满足一个特定要求才能成为工作量证明——小于某一阈值,或者说哈希值含有给定前缀。阈值的大小求和挖矿难度有关:挖矿难度是一个动态参数,其值越大,则阈值越小,说明哈希值符合要求的概率更小,矿工每次计算能成为工作量证明的概率越小。比特币有一个自我调节过程——通过对现有的挖矿算力情况进行估算,来对应调整挖矿难度,可以保证区块链每十分钟出一个块,达到控制发行速度的目的。(这个过程的基本思想类似产品笔试的数据估算题,根据“一个提供、一个需要“的思路去构造一个等式,然后求解等式一边的一个因子;想了解挖矿难度系统和调整方式的同学可以进一步查阅~)
综合以上三点来看,为了产生工作量证明,用户基本上会通过调整随机数来碰运气(因为其他字段基本不变)、进行多次运算直至符合要求,别无他法。如此一看,随机数就具有“幸运数字”的意味了。因此,平均来讲,谁计算的能力越强(尝试的次数越多),就更有希望打包块。
你可能会想,矿工这么心甘情愿地消耗算力去维护区块链,是受到怎样的利益驱使呢?简单来说,矿工的收益来源有二:1、计算出工作量证明,创造一个新区块所获得的新币奖励;2、记账矿工费。
当矿工找到工作量证明、打包一个新区块,并把区块传送给他的所有对等节点。 每一个挖矿节点都独立验证新区块、把合格的新区块整合进区块链(共识基础3) ,并把这个区块继续传给自己的对等节点。结果是,只有经过验证的区块才会在网络当中广泛传播,保证了诚实矿工挖出的新区块能被区块链所接纳。挖矿成功的个体节点或集体节点,可以同时获得新币奖励和记账矿工费。
新币奖励类似于货币的发行,其遵循规则是,第一个四年每一个新区块产生50btc,第二个四年每一个新区块产生25btc,第三个四年每个新区块产生12.5btc,如此周期指数递减。按照等比数列求和可知,到2140年,比特币产生的总和约为21000000(所以说比特币数量有限,天生紧缩)。届时,不再随区块的产生增加新的比特币,矿工不再拥有第一项收益。但现实中,由于挖矿成本高昂,挖矿成功的往往是是一个矿池的所有参与者。收益被分给矿池地址,矿池按照组内算力贡献比例来分摊收益的。
记账矿工费又称交易费用,以交易输入和交易输出之间的差值的形式存在;一个区块的总交易费用是对加入区块的所有交易的(交易输入-交易输出)求和。一般来说,矿工费越高的交易,会越快被处理。而矿工费在这里起到两个作用,一个是奖励矿工,另一个是防止主链滥用(防止大家发送交易垃圾信息,因为提出交易是有一定代价的)。
矿工的收益以什么样的形式被验证呢?这里不得不提到 “铸币交易” 。每个计算机节点在进行工作量证明计算之前加入区块的第一笔交易,正是“铸币交易”。这个交易从无到有生成比特币,其金额是新币奖励与记账矿工费的总和,被支付到挖矿矿工自己的比特币地址。如果矿工找到了一个工作量证明使区块有效,他就赢得了这个奖励,因为他构造的“铸币交易”生效了。
关于铸币交易和“新币奖励”,之前有一个读者问我:一个矿工把自己挖到新区块的消息公布出去,他的工作量证明 不会被别人剽窃 吗?
个人认为,至少“铸币交易”能防止这件事情发生。让我们来重申一下计算工作量证明的过程——一个矿工E在新区块里加入了奖赏自己的“铸币交易”,并利用时间戳、前序区块头哈希、随机数、本区块交易的merkle树等信息计算出一个符合要求的工作量证明。
在这个过程中,merkle树啥样子,取决于包括“铸币交易”在内的本区块所有交易信息。因此可以把铸币交易视为工作量证明的间接变量之一。那么,即使其他人拿到了E的工作量证明,这个工作量证明也是带有E的印记的、与奖赏E的铸币交易相关的,别人根本无法纳为己用。
你还可以通过设想以下的场景来加深对共识基础2“挖矿节点通过基于工作量证明算法的证明运算,独立将交易汇聚到新区块中”的理解。
为什么一个挖出新区块的矿工不悄悄使个心眼,在创建区块之初就把铸币交易的金额设成1000BTC呢?原因在于每个节点都是基于相同的规则来独立验证区块的。矿工必须创建完美的、符合公共规则的、正确依据工作量证明方法的区块;而一个无效的铸币交易会导致整个区块无效,并被其他节点拒绝,永远无法成为账本的一部分。可以预想,为了生成这个工作量证明,矿工们已经投入了巨大的算力和电量去挖矿,如果涉嫌欺诈而被否决,其为挖矿付出成本都付诸东流。
综上所述,矿工不能冒领他人的奖励,而拿到奖励的矿工也必须只能拿取符合规定的数额。
比特币的卓越之处,在于建立了一种去中心化的自发共识。这种共识是自发产生的,是成千上万在网络中遵循着共同规则的节点,在异步交互中形成的,不依赖于任何中央机构的调解和干涉。
关于比特币的4项主要共识基础,本文在讲解对应细节时有提及,下面做一个整合:
这四个过程相辅相成、互相作用,形成了自发的全网共识,促使全网节点组合出可信、公开、权威的总账。
你可能会想,比特币是一个去中心化的、基于大众信任的、依靠众人力量运转的一个东西。万一有一部分矿工被坏人收买了咋办呢?“51%攻击”指的又是什么?比特币交易所要求的“6个确认”又是怎么回事?
这里首先要提到比特币的一个规则“ 最长链优先 ”。意思是, 比特币的账单链在出现分叉的时候,每个矿工会独立选择长(累积了最多工作量证明)的链条,在上面继续挖矿工作(共识基础4) 。
这个原则主要涉及到两个问题:
当有两个矿工A和B同时挖矿成功(算出符合要求的数学答案)时,他们分别把自己计算出来的工作量证明作为下一个块的前序区块哈希,生成一个块衔接到原有的链后面,由此出现了两个分支。
这个时候,这两个成功的矿工广播了自己打包成功的消息。由于区块链是一个去中心化的数据结构,区块消息到达不同节点的时间点不一致,故不同的节点可能拥有不完全一样的区块链视图——有的矿工会先收到A的消息,有的则先收到B的消息。为了解决这个问题,收到消息的矿工们遵循一个原则:选择并尝试延长最长的链。
因此,这两条分支会各自成长一小段时间,直到他们的长度出现差异(不可能长度一直相同),比如说其中一条链的矿工们,更快地打包在支链后面又加上一块。按照“最长链优先“的规则,较短的链会被抛弃,原本工作在短链上的矿工们都回到长链上工作。
换言之,分叉只是不同节点暂时的不一致现象,当新区块被加入到其中某一分支时,最终收敛将解决这一个问题。[读者可以思考一下,为什么区块链被设置成每十分钟挖出来一个块:如果时间短了,是不是就增加了分支产生的次数?如果时间长了,是不是交易结算的效率就太低了?]
双重支付的本质其实也是区块链的分叉,但这种分叉却是“非自然恶意蓄谋”的产物。
我们假设小敏是密谋双重支付的一方,她把自己仅有的10BTC先给小强、交换一块黄金,待这条交易信息P被打包进区块Q后,她从小强手中拿到了黄金。这时,小敏使了个心眼,她想偷偷抹去、篡改区块Q上的交易信息P,“白嫖”这块黄金。为了实现这样的目的,根据“最长链优先”法则,小敏必须剔除该笔交易P后、重新进行结算工作,集中算力来形成分叉,并让分叉以更快的增速超过并取代Q所在的主链。如果小敏确实能让分叉更长,分叉就成为了主链,其他节点也会转向新主链上继续工作。这样,小强付出了黄金,却没有收到这10个比特币,“赔了夫人又折兵”。
在这个过程中,小敏需要和原链进行“抗争”,使新分叉成为最长的主链,这被称为“共识攻击”。“共识攻击”本质上是对下一区块的争夺,攻击方越“强壮”、哈希算力越大,就越容易成功。
“共识攻击“成功的可能性有多大呢?
大多数比特币交易所规定,一个交易传送到区块链上后需要6个「确认」来完成验证该笔交易。这一规定的根据是,假设意图造假的矿工拥有10%的算力(挖矿成功概率0.1),那么造假矿工要构造另一条伪链实施长度超越,必须至少成功挖矿6次。那么原链被取代、被抛弃的概率约为0.1的6次方,趋近于0。你可以把比特币理解为地质构造层,表层可能因为季节变换而有所改变,甚至可能被风刮走,但一旦深入到地下,地质层就能更加稳定、不受干扰。
而假设有一群拥有了51%算力的矿工,他们控制了一半以上的全网哈希算力,可以故意在区块链中制造分叉、进行双重支付交易 。但事实是,全网哈希算力的大量增加,个体矿工几乎不可能控制哪怕1%的哈希算力了(但矿池带来的算力集中化控制,存在一定的风险)。更何况,如果真有拥有如此强大算力的组织,他完全可以凭借自己强大的算力投入到挖矿中去获取开发新区块所获的的比特币奖励,诚实挖矿比双花更有利可图。
尽管实际上并未出现51%攻击的问题,但不可否认的是,算力的集中违背了比特币去中心化这一初衷,并成为其继续发展的一大隐患。
一个系统的安全性,往往取决于系统安全的最薄弱环节,这也就是所谓的“木桶原理“。与区块链系统相关的安全性问题包括但不限于以下几项:
(1)在区块链上被广泛使用的公钥系统基本上是安全的,但量子算法在理论上能够破解公钥系统;因此,区块链的算法安全性是相对的。
(2)区块链协议本身存在逻辑缺陷,例如受到黑客攻击的区块链系统共识机制。
(3)所有数字货币系统高度依赖私钥,私钥在存储、使用方面的安全性成为区块链系统安全性中至关紧要的一环。
尽管区块链是去中心化系统,但目前绝大多数数字交易所却是中心化的,存在着人为安全漏洞及技术安全漏洞。这些数字交易所拥有存放大量加密货币的私钥,这对于黑客来说无疑是最瞩目的目标;只要黑客偷走了这些私钥,就可以获取到这些加密货币。
作者会继续阅读相关资料、不断完善本文,目标是完成一篇通俗易懂的比特币科普文章。:)
**本文系网上信息与个人理解的结合,如有偏差及误读,欢迎读者指出。也欢迎给出关于文章结构上的指导~
㈩ 量子和比特币是传销吗
比特币不是传销。比特币在我国完全是合法的。在2013年年底的时候,央行等五部委发布了比特币风险通知,在通知中明确把比特币定义为一种特殊的互联网商品,公民在自担风险的前提下可以自由的买卖,否定了其货币属性。央行行长周小川则把比特币比作是一种可交易的资产。比特币之家网有相关的报道。目前,世界上大多数国家对比特币也大都采取冷处理的态度,不肯定也不去否定。比特币只是一直小范围的社会化大实验。比特币虽然不是骗局,但打着比特币进行传销诈骗的活动却是屡禁不止。