文章阅读页通栏

比特币的加密本质: 哈希函数是什么?

来源: 区块网 作者:
什么是哈希? 加密哈希函数是在数字数据上运行的数学运算。在比特币中,所有操作都使用SHA256作为底层加密哈希函数。 安全哈希算法是由美国国家安......
什么是哈希?

加密哈希函数是在数字数据上运行的数学运算。在比特币中,所有操作都使用SHA256作为底层加密哈希函数。

安全哈希算法是由美国国家安全局(NSA)设计的一套加密哈希函数。

简单地说,哈希函数就像一个黑盒子,在这里输入任何大小的数字信息,结果(输出)是一个字母数字字符串(例如:0xe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855)。对于SHA-256,输出是32字节。该函数有两个特点:

1)毫不含糊:哈希 (输出)就像输入数据的指纹。因此,从数字输入的哈希中,您无法创建原始数字输入。

塑米网 www.gd-yongfeng.com 2)抗冲突:任何人都不可能能够找到导致相同哈希输出的两个不同输入值?;痪浠八?,对于任何不同的输入,总会有不同的输出。这允许使用这个函数来检查数据完整性,通过将计算的“哈?!?算法执行的输出)与已知和期望的哈希进行比较,可以确定数据的完整性。例如,计算下载文件的哈希,并将结果与之前发布的哈希进行比较,可以显示下载是否被修改或篡改。

但是为什么哈希在区块链中如此重要呢?

这是挖矿过程和矿工职责的一部分: 矿工获取一些交易并将其用作输入的一部分,他们试图计算一个哈希函数来为链提供一个新的块。

加密哈希算法有很多。下面列出了一些相对经常被引用的算法??梢栽诎用芄:冉系囊趁嫔险业礁惴旱牧斜?。

MD5

MD5是由Ronald Rivest在1991年设计的,用于替换以前的哈希函数MD4,并在1992年指定为RFC 1321。对MD5的冲突可以在几秒钟内计算出来,这使得该算法不适合大多数需要加密哈希的用例。MD5生成128位(16字节)。

SHA-1

SHA-1是美国政府Capstone项目的一部分。该算法的最初规范——现在通常称为SHA-0——由美国政府标准机构NIST(国家标准与技术研究所)于1993年以“安全哈希标准FIPS PUB 180”的名义发布。它在出版后不久就被美国国家安全局撤回,并被1995年在FIPS PUB 180-1(通常称为SHA-1)上出版的修订版所取代。SHA-1生成一个160位(20字节)的哈希。

文档可能只将SHA-1称为“SHA”,这可能与其他标准哈希算法(如SHA-0、SHA-2和SHA-3)相冲突。

RIPEMD - 160

RIPEMD (RACE Integrity Primitives Evaluation Message Digest)是由比利时鲁汶大学(Katholieke Universiteit Leuven) COSIC研究小组的Hans Dobbertin、Antoon Bosselaers和Bart Preneel在鲁汶开发的一个加密哈希函数,于1996年首次出版。RIPEMD基于MD4中使用的设计原则,其性能类似于更流行的SHA-1。然而,RIPEMD-160并没有被破坏。顾名思义,RIPEMD-160生成160位(20字节)的哈希。

Whirlpool

在计算机科学和密码学中,Whirlpool是一个加密哈希函数。它是由Vincent Rijmen和Paulo s.l. M. Barreto设计的,他们在2000年首次描述了它。Whirlpool是基于一个基本修改版本的高级加密标准(AES)。Whirlpool生成一个512位(64字节)的哈希。

SHA-2

SHA-2(安全哈希算法2)是由美国国家安全局(NSA)设计的一组加密哈希函数,于2001年首次发布。它们是使用merker - damgard结构(来自单向压缩函数本身)构建的,使用分类的专用块密码器中使用的Davies结构来构建。

SHA-2基本上由两种哈希算法组成:SHA-256和SHA-512。SHA-224是SHA-256的一个变体,具有不同的初始值和截断的输出。SHA-384和不太为人所知的SHA-512/224和SHA-512/256都是SHA-512的变形。在AMD64等64位上,SHA-512比SHA-256更安全,而且通常比SHA-256更快。

以位为单位的输出大小由“SHA”名称的扩展名给出,因此SHA-224的输出大小为224位(28字节),SHA-256生成32字节,SHA-384生成48字节,最后SHA-512生成64字节。

SHA-3

SHA-3 (Secure Hash Algorithm 3)于2015年8月5日由NIST发布。SHA-3是更广泛的Keccak的一个子集。Keccak算法是Guido Bertoni、Joan Daemen、Michael Peeters和Gilles Van Assche的成果。Keccak基于sponge 结构,sponge 结构还可以用于构建其他加密原语,如流cypher。SHA-3提供与SHA-2相同的输出大小:224、256、384和512位。

还可以使用SHAKE-128和SHAKE-256函数获得可配置的输出大小。这里名称的-128和-256扩展表示函数的安全强度,而不是以位为单位的输出大小。

BLAKE2

2012年12月21日,布莱克的改版产品BLAKE2发布。它是由Jean-Philippe Aumasson、Samuel Neves、Zooko Wilcox-O 'Hearn和Christian Winnerlein创建的,目标是取代广泛使用的MD5和SHA-1算法。当运行在64x64和ARM架构上时,BLAKE2b比SHA-3、SHA-2、SHA-1和MD5更快。尽管BLAKE和BLAKE2还没有被标准化为SHA-3,但它已经在许多协议中使用,包括argon2加密哈希,因为它在现代cpu上提供了很高的效率。由于BLAKE是SHA-3的候选对象,BLAKE和BLAKE2都提供了与SHA-3相同的输出大小——包括可配置的输出大小。

关键词: 比特币  哈希函数  
0/300
? 上海助孕网 | 广州代孕 | 高鹰代孕 | 看狗网 | 鹤壁新闻资讯网 | 湛江新闻资讯网 | 加勒比看书 | 济南代怀孕 | 深圳代孕 | 武汉途欣悦买卖卵子 |
  • 新疆沙湾纺织服装产业日新月异
  • 大力弘扬改革开放精神
  • 陈涛:物联网技术与商业模式融合才能创造更多价值
  • “金融消费者权益日” 南通交行在行动
  • 不止于味 中盐金坛家用盐新品上线
  • 盛茂林:促进新时代政协工作提质增效
  • 帕拉庄园:西藏农奴社会的现代记忆
  • 抗战影片《榆社1945》开机拍摄
  • 触目惊心!叙利亚8岁女童瘦到皮包骨
  • 新华社评论员:深刻把握新时代的历史方位——三论学习贯彻党的十九大精神
  • 庆阳剪纸:传统文化与新时代内涵融合发展
  • 东昌府区牵紧项目牛鼻子 唱响实干最强音
  • “桐祭·祈愿”主题班会上,3000只纸鹤祈愿和平
  • 中信银行:信银理财争取成为第一批落地的股份行理财子公司
  • 太原市消协发布消费警示:买空调时要注重实用与节能