哈希里的数学

哈希里的数学


【本文由赞我(zaneds.com)独家冠名】


哈希算法,是由数学算法的构成的,这毋容置疑。什么算法,这里面很复杂。举个现实中的例子,手机摄像头的拍照效果,美图软件的美图功能,这里面是采用了一套算法运算的。算法的用处很大,以前在夜晚拍照,图像人脸是十分模糊,黑暗的,而且还会有雪花的出现。现在运用了算法优化,拍出来的照片跟眼睛看到的差不多。


话题扯远了,只是想侧面说明一下算法的强大。而运用与比特币的哈希算法,其功能更为强大。下面来了解下它的数学成分。

图片发自App


是人是会说谎的,但是数字不会骗人。区块链技术的成熟发展离不开数学的支持的,椭圆曲线方程就是比特币的数学基石之一。


了解过区块链的人都知道,公钥和秘钥的作用。它就是你的密码,一个是公共交易的密码,一个是私人的密码,确认身份的通证。有这两个来为我们的交易保驾护航,我们感觉妥妥的。


他们的作用毋庸置疑,但是他们产生诞生的由来是什么?比特币就是使用椭圆曲线算法生成公钥和秘钥的,而且选择的是secp256k1曲线来生成。Secp256k1它不是伪随机曲线,它本身不存在漏洞,所以NSA也是无从在这方面破解。在哈希算法中,每一个环节都必须安全可靠,随机生成。NSA如果知道一个能够影响特定曲线的椭圆曲线的漏洞,那么所有的安全加密都不复存在,他会把这个漏洞扩散到其他的算法上。不过椭圆曲线成功逃过了一劫。


SHA-256是SHA算法中的一种。而且SHA是安全散列算法,是一个密码散列函数的家族,能够计算出一个数字消息所对应,长度固定的字符串的算法。在这个家族里有SHA-1、SHA-224、SHA-256、SHA-384和SHA-512五种算法。

图片发自App


在这个椭圆曲线中,会有一条之前,与他们相交后会得到几个交点的数据,利用这几个焦点的数据来进行运算。但是会存在一个弱点,就是他们的精度是不精确的。因为交点是随机的,有可能得到的是无限的数字,很难进行下一步的运算。这时只能在源头改变它的曲线,把取整数的点保留,小数的点去掉。把等式进行了下一步的整改,整改成了y^2=X^3+aX+b+kp。K是任何整数,而p是大的一个素数。其次,x和y必须是整数,这就完美了解决的问题。但是最后的结果几乎不是一条曲线了,但是也够用了。


关于椭圆曲线的方程,大概就说到这里。了解一下这个技术,并无大碍。就像在工作中,学习自己为什么可以这么干,为什么这么干。能够想得比别人更远,看的比别人更多,学得比别人更加精细。这才是个人的价值所在。可能您会从这方面延伸到其它方面,可能你会从深入的学习中得到更多的灵感的启发。

图片发自App


比特币是属于数学的,由数学的算法得出,它的可靠性就来源于这套算法。算法一旦被攻陷了,他会变得一文不值,但是现在仍不存在攻陷的可能性。它仍然只是一个使用工具,与TCP/IP网络协议、支付宝、P2P一样,都是一种工具,其最大的意义就是为人们服务。他就是一把双刃剑,用的好的话,服务的社会,甚至改变整个金融圈子,用的不好的话,只会伤害了经济。

你可能感兴趣的:(哈希里的数学)