比特币的密码学知识:加密哈希详解

Bitget下载

注册下载Bitget下载,邀请好友,即有机会赢取 3,000 USDT

APP下载   官网注册

哈希是一种经常使用的数据结构。一般来说,哈希是从定义域到值域的函数。对于任意输入的值域中的值,返回值域中的值。因为是函数,所以具有数学中函数定义所赋予的性质。简单地说,一个域中的值只能对应一个范围中的值,但是一个范围中的值在一个域中可能有多个值。

作为数据结构的hash,需要将定义域中相邻的输入尽可能分散到值域空间中,分散得越多越好。学过计算机的人都知道,hash提供的访问是O(1)复杂度的近似算法。。常见的基于哈希的数据结构主要是哈希集和哈希字典。

任何哈希都有碰撞的问题。所谓碰撞,就是不同定义域的值映射到同一个值域的值。所以常用的数据结构都有解决哈希冲突的方法。。因为篇幅有限,我们赢了';这里不讨论了。

Hash在数据库和分布式系统中也有广泛的应用,不仅在分布式系统的数据分区中有应用,在';加入';在数据库系统中。。事实上,排序和散列构成了大多数分布式数据处理系统算法的基础。

密码哈希与普通哈希相比,主要是强度不同,具有以下特点:

1。给定域的输入。,很容易计算出输出的范围。而给定值域的输出几乎不可能找到定义域对应的输入。我们对几乎不可能的定义可以理解为一个人可以';t裂

几辈子。2.对域的输入进行较小的更改。,将导致输出范围的巨大变化。这也是普通哈希需要具备的属性。它';只是加密散列更强调这一点。加密哈希应该是防冲突的。简单来说,如果在定义域中给定两个不同的输入。而它们对应的输出也不一样,那么哈希函数就有很强的碰撞性。

如果给定的输入无法在合理的时间内找到另一个输入来产生相同的输出,则该哈希函数是密码防冲突的。形式是绝对不存在的。后者不容易计算

4。在密码学上,哈希函数还应该具有所谓的谜题友好特性。具体来说,给定值字段的值来查找特定的输入,没有比暴力破解更有效的哈希算法来变得问题友好。。这个特性对于比特币非常重要

加密哈希最重要的特性就是为比特流生成一个摘要。简单来说,如果我们把比特流作为输入,散列结果作为输出,那么输出就是合法的摘要。。如果我们同时发布比特流和摘要。假设哈希不可更改,我们可以验证比特流是否被篡改。为什么可以这样做?

给定不同的输入,哈希函数将产生不同的结果。。加密哈希无法在合理的时间内从输出中推导出输入,也不可能找到另一个可以产生相同输出的输入。所以只要我们有办法保证摘要不被篡改,就可以用下面的步骤来判断比特流是否被篡改:

1。使用哈希算法

2对给定的比特流进行哈希运算。比较计算出来的hash和得到的hash是否一致,表示没有篡改,否则有篡改

密码哈希的这一特性被广泛用于检查接收到的东西在传输过程中是否被篡改。这也是比特币账本确保记录被篡改后能立即被检测出来的基础。

比特币的密码学知识:加密哈希详解文档下载: PDF DOC TXT
文章来源: 理财天下网
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至2384272385@qq.com举报,一经查实,本站将立刻删除。