盘点区块链领域常见的四种加密算法

栏目: 编程工具 · 发布时间: 5年前

内容简介:在深入学习区块链时,不可避免的需要了解密码学。密码学流传已久,有几千年历史,在军事、外交、情报等领域有广泛的的应用。在区块链领域,也大量应用了密码学算法,比如哈希算法和椭圆曲线算法,今天我们盘点一下区块链项目常用的一些加密算法。比特币系统中使用的哈希函数分别用于完成工作量证明计算合生成地址。简言之,哈希算法是将任意长度的字符串映射为较短的固定长度的字符串。因为这个运算的确定性,高效性使得去中心化的计算能够实现。又因为对输入的敏感性,和该映射逆函数难以寻找(抗原像攻击),对区块链系统安全性有很大帮助。

在深入学习区块链时,不可避免的需要了解密码学。密码学流传已久,有几千年历史,在军事、外交、情报等领域有广泛的的应用。在区块链领域,也大量应用了密码学算法,比如哈希算法和椭圆曲线算法,今天我们盘点一下区块链项目常用的一些加密算法。

1. 哈希算法

比特币系统中使用的哈希函数分别用于完成工作量证明计算合生成地址。简言之,哈希算法是将任意长度的字符串映射为较短的固定长度的字符串。因为这个运算的确定性,高效性使得去中心化的计算能够实现。又因为对输入的敏感性,和该映射逆函数难以寻找(抗原像攻击),对区块链系统安全性有很大帮助。

盘点区块链领域常见的四种加密算法 盘点区块链领域常见的四种加密算法

2. 椭圆曲线算法

椭圆曲线是一套关于加密数据,解密数据交换密匙的算法, 也可用于对数据签名和验证。

签名一方面可以保证用户的账户不被其他人顶替,另一方面保证用户不能否认其所签名的交易。用私钥对交易信息签名,矿工用用户的公钥验证签名,验证通过,则交易信息记账,完成交易。

盘点区块链领域常见的四种加密算法 盘点区块链领域常见的四种加密算法

3. Base58编码

Base58是比特币使用的编码方式,主要用于产生比特币的钱包地址,这种编码格式不仅实现了数据压缩,保持了易读性,还具有错误诊断功能。

盘点区块链领域常见的四种加密算法

4. 零知识证明

零知识证明是20世纪80年代初由计算机科学家Goldwasser和Micali等人共同提出的一项技术,它主要是指证明者能够在不向验证者提供任何有用信息的情况下,使验证者相信某个论断是正确的。

零知识证明能够成立需要具备三个要素,即完整性、可靠性和零知识。举个例子来说就是,假设有一个环形走廊,出口和入口相邻但不互通(在目测距离之内),在这个环形走廊中间的某处有一道锁起来的门,只有拥有钥匙的人才可以通过;这时A要向B证明自己拥有打开这道门的钥匙,用零知识量证明来解决就是,B看着A走进入口并在出口等待,如果A从入口进入通过走廊并从出口走出,则可以证明其拥有打开中间那扇门的钥匙,而在这个过程中,他完全不用向B提供钥匙的具体信息。所以零知识证明实际上是一种概率证明而非确定性证明。

盘点区块链领域常见的四种加密算法


以上所述就是小编给大家介绍的《盘点区块链领域常见的四种加密算法》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

程序员的思维修炼

程序员的思维修炼

Andy Hunt / 崔康 / 人民邮电出版社 / 2010-12-10 / 39.00元

本书解释了为什么软件开发是一种精神活动,思考如何解决问题,并就开发人员如何能更好地开发软件进行了评论。书中不仅给出了一些理论上的答案,同时提供了大量实践技术和窍门。 本书供各层次软件开发人员阅读。一起来看看 《程序员的思维修炼》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换