SHA256加密算法在比特币中的关键作用研究
经济论坛
SHA256加密算法在比特币中的关键作用研究
高杰
(深圳图灵科技控股集团,广东深圳518000)
摘要:通过显卡挖矿可以获得数字化的矿产,之后换成金钱为Geek玩家常做的事情,那么是如何挖矿的,挖的到底是什么,这些同密码学与数学有着密切的联系。本文在介绍SHA算法的基础上,分析其安全性以及核心加密算法,使大家有所了解。
关键词:Geek玩家;SHA算法;加密算法
1引言
SHA的中文含义为安全散列算法,顾名思义就是安全性被优先考虑,散列算法有很多,其中最为重要的就是SHA家族,其是美国安全局设计的,通过美国国家标准与技术研究颁布的,注重的为安全性以及加密的算法。
2比特币中SHA算法
2.1SHA算法介绍
比特币的计算内容可以用下列公式表示:SHA256(SHA256(version+prev-hash+merkle-root+ntime+nbits+X))<TARGET 比特币的算法为获得这样的x,使其符合整个公式的需求,其涉及的主要内容为:
其一,比特币区块的版本号为version;其二,上一个区块的散列数值为prev-hash;其三需要写入交易记录散列数值为merkle-root;其四为更新的时间ntime;其五为当前难度:nbits。
依据比特币的相关算法,X数值介于0到2的32次方之间,TARGET为已经给定的依据目前难度获得的数值。比特币算法
的特点就是因为散列性质,其需要那个x只能通过计算得到,而没有任何的捷径。这里的X就是Block Hash,得到合适的Block 较为困难,需要通过大量的计算得到,这一计算过程为具体挖矿。持续的挖矿是整个比特币系统正常运转的前提,不断的接入新的Block延续的为Block Chain过程,假如节点算力为整个比特币网络的n%,为此这一节点就有n/100的概率获得这个Block Hash。
2.2挖矿的功能
在整个比特币计算体系内部,挖矿的功能如下所示,首先为在2100万的总量达到前获得新的货币,其次
为维持货币的支付功能,最后为通过算力保证整个比特币系统的安全。其实计算本社价值与比特币的价值直接相关,其不能贡献计算的结构黑科研机构,也不能创造价值,其只是计算得到一个相对无意义的数据,利用这个数据与比特币的关系,为计算赋予其价值。金矿通过资源的消耗产生黄金,之后注入流通领域。电脑挖矿也是一样,利用电力与时间的消耗,得到比特币之后在进入到交易系统。
2.3比特币难算的症结
事实上面,除了比特币自身的特征,比如生产速度在一定区域被到之后自动降低为一半,整个比特币的规模已经被限定在2100万个,使得比特比的后期产量越来越低。同时比特币自身所使用的算法比如SAH-256,自身也需要耗费大量的额计算量,从计算的角度来分析,SHA算法为比特币数学结构的核心,如果没有SHA算法,比特币的安全就得不到保证。
2.4SHA的安全性比特币如何挖矿
对于SHA来说之所以被叫作安全算法,主要含有下面几点,首先因为信息摘要反推原输入的信息,从计算理论上来分析是十分困难的。也就是在通过SHA算法之后,即使你看到最终的散列计算结构,也难以知道原来的内容为何。任何的函数都是有被反推从而计算得到的可能,也没有任何人试图否认这种算法。不过这种计算模式需要的资源以及相关计算难度,尤其是其含有的计算量较大,超过了人类目前所掌握的计算能力;其次如果要想获得两组不同的信息对应得到相同的信息摘要,在计算理论层面来分析
是非常困难的。任何对于输入的变化,都是具有很高的概率导致其产生信息摘要的不同。这种模式也就是说,SHA算法可以将任何两组不同的信息,经过处理之后得到完全不同的计算结果。对于任何原始信息哪怕是出现极小的变化,都是导致结果产生很大的差异。
虽然单独的来说,满足第一条与第二条都不算困难,不过既需要满足相关复杂的加密性能,又可以维持十分优异的抗碰撞能力,在实际使用的时候并不容易。SHA为人们经过长期选择最后发现最为安全以及优异的散列算法,其可以同时满足人们对安全性以及稳定性的需求。现在的SHA算法已经发展成为一个家族,其中含有SHA-1、SHA-224、SHA-256等多个算法那,其中最为古老的算法就是SHA-1,后面的算法统称为SHA-2,相比于SHA-1,SHA-2的保密性更为优异,更为难以破解。
由于其含有优异的加密效果以及保密能力,SHA家族被广泛地应用到计算机加密、文件加密等很多的层面。同时,目前很多的加密等都是采用这种方法进行加密。为了大幅度的提升其安全性,比特币计算的时候不仅仅采用的为SHA-256的算法,还采用的为诸如ECDSA椭圆曲线加密的算法。对于整个比特币计算的时候,需要开展多次的SHA-256的计算或者是相关变化,使得最后的结果更为复杂并难以破解。3SHA算法的其他应用
因为SHA家族算法的优异加密效果,为此在很多层面具有广泛的应用。比如在银行、购物网站等都是使用SHA加密算法对于用户的敏感信息开展加密。用户在输入任何时候的时候,首次输入采用的就是SH加
密编程为密文存放早银行系统内部。如果用户需要消费或者是购物的时候,用户输入自身的相关信息与密码之后,计算机再次开展进行计算,并将用户的本次输出数据计算结果,同之前的SHA加密之后存留结构开展对比分析。如果信息相符,就允许用户的操作。这样做到好处十分明显,比如相关工作人员在没有权限的情况下,很难知道用户的密码与相关敏感信息的情况,所有的信息都是通过密文的模式储存,即使出现信息泄露自后,只要是对方不知道算法,还是无法进行解密。
对于SHA这种散列解密算法,数据相关性意义不大,为此适用于GPU等大规模集成电路开展快速并行计算。对于SHA 在GPU上面计算的分析,其支持具有大量的逻辑判断操作十分困难。但是SHA-256的算法仅仅为单纯的数学计算,没有较多的逻辑,基本操作为大量的32位整数循环右移运算构成,为此在GPU上面不仅仅容易并行化,其运算的效果比CPU计算高很多。一些的研究性显示,目前最为快速的Core i74770k在比特币的计算方面速度不到10MH/s,不过地段的显卡可以轻松地达到130MH8s。
4结语
随着加密的兴起,作为关键核心的核心加密算法的研究SHA256具有安全可靠以及低成本等优势,在很多领域都具有广阔的应用前景。因此,有必要对SHA算法基础理论进行深入研究分析,进而推动SHA算法技术快速发展。
参考文献
[1]陈雷,王文国.基于SHA256散列算法的比特币挖矿优化研
究[J].信息技术与信息化,2015(10).
[2]李实.挖矿背后的秘密SHA-256加密算法浅析[J].微型计
算机,2014(10).
[3]费运亚.一种基于SHA256加密算法的软硬件协同设计方
法研究[D].北京大学,2014.
[4]付小娟,吴洪坤.哈希算法在硬件加密技术中的应用研究[J].河南机电高等专科学校学报,2014(5).
[5]刘钰力.基于FPGA的SHA256高效数字加密系统[D].兰州
大学,2011.
142

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。