朋友老说哈希算法,请问到底什么是哈希算法?
发布网友
发布时间:2022-03-27 09:29
我来回答
共2个回答
热心网友
时间:2022-03-27 10:59
首先,一般哈希算法不是大学里数据结构课里那个HASH表的算法。一般哈希算法是密码学的基础,比较常用的有MD5和SHA,最重要的两条性质,就是不可逆和无冲突。
所谓不可逆,就是当你知道x的HASH值,无法求出x;
所谓无冲突,就是当你知道x,无法求出一个y, 使x与y的HASH值相同。
这两条性质在数学上都是不成立的。因为一个函数必然可逆,且由于HASH函数的值域有限,理论上会有无穷多个不同的原始值,它们的hash值都相同。MD5和SHA做到的,是求逆和求冲突在计算上不可能,也就是正向计算很容易,而反向计算即使穷尽人类所有的计算资源都做不到。
我觉得密码学的几个算法(HASH、对称加密、公私钥)是计算机科学领域最伟大的发明之一,它授予了弱小的个人在强权面前信息的安全(而且是绝对的安全)。举个例子,只要你一直使用https与国外站点通讯,并注意对方的公钥没有被篡改,G**W可以断开你的连接,但它永远不可能知道你们的传输内容是什么。
顺便说一下,王小云教授曾经成功制造出MD5的碰撞,即md5(a) = md5(b)。这样的碰撞只能随机生成,并不能根据一个已知的a求出b(即并没有破坏MD5的无冲突特性)。但这已经让他声名大噪了。
热心网友
时间:2022-03-27 12:17
哈希算法将任意长度的二进制值映射为较短的固定长度的二进制值,这个小的二进制值称为哈希值。哈希值是一段数据唯一且极其紧凑的数值表示形式。如果散列一段明文而且哪怕只更改该段落的一个字母,随后的哈希都将产生不同的值。要找到散列为同一个值的两个不同的输入,在计算上是不可能的,所以数据的哈希值可以检验数据的完整性。一般用于快速查找和加密算法
希望采纳
朋友老说哈希算法,请问到底什么是哈希算法?
首先,一般哈希算法不是大学里数据结构课里那个HASH表的算法。一般哈希算法是密码学的基础,比较常用的有MD5和SHA,最重要的两条性质,就是不可逆和无冲突。所谓不可逆,就是当你知道x的HASH值,无法求出x;所谓无冲突,就是当你知道x,无法求出一个y, 使x与y的HASH值相同。这两条性质在数学上都...
什么是哈希算法?具体怎么用啊???有什么用啊?
1、哈希是一种加密算法,也称为散列函数或杂凑函数。哈希函数是一个公开函数,可以将任意长度的消息M映射成为一个长度较短且长度固定的值H(M),称H(M)为哈希值、散列值(HashValue)、杂凑值或者消息摘要。2、哈希算法就是一种特殊的函数,不论输入多长的一串字符,只要通过这个函数都可以得到一个...
哈希算法的原理 哈希算法是什么
1、哈希算法又叫散列算法,是将任意长度的二进制值映射为较短的固定长度的二进制值,这个小的二进制值称为哈希值。它的原理其实很简单,就是把一段交易信息转换成一个固定长度的字符串。MD5和SHA-1可以说是应用最广泛的Hash算法,而它们都是以MD4为基础设计的。2、这串字符串具有一些特点:(1)信...
哈希算法是什么呢?
哈希算法就是一种特殊的函数,不论输入多长的一串字符,只要通过这个函数都可以得到一个固定长度的输出值,这就好像身份证号码一样,永远都是十八位而且全国唯一。哈希算法的输出值就叫做哈希值。哈希算法也被称为“散列”,是区块链的四大核心技术之一。是能计算出一个数字消息所对应的、长度固定的字符串...
什么是哈希算法?具体怎么用啊???有什么用啊?
哈希(Hash)算法,即散列函数。它是一种单向密码体制,即它是一个从明文到密文的不可逆的映射,只有加密过程,没有解密过程。同时,哈希函数可以将任意长度的输入经过变化以后得到固定长度的输出。哈希函数的这种单向特征和输出数据长度固定的特征使得它可以生成消息或者数据。计算方法:用来产生一些数据片段(例如...
什么是哈希运算?
哈希运算是一种有点复杂的密码学运算。简单的说,哈稀运算就是哈稀函数的求解题。输入任何一串字符,经过哈希函数都可以得到一串不一样的输出,而比特币记账时要做的哈希运算就是要找到一个初始值X,而这个初始值X经过哈希运算后得到的Y是符合系统要求的。哈稀函数是单向唯一的,即一个值经过哈希函数...
哈希算法是什么呢?
哈希算法就是一种特殊的函数,不论输入多长的一串字符,只要通过这个函数都可以得到一个固定长度的输出值,这就好像身份证号码一样,永远都是十八位而且全国唯一。哈希算法的输出值就叫做哈希值。原理:哈希算法有三个特点,它们赋予了区块链不可篡改、匿名等特性,并保证了整个区块链体系的完整。第一个...
什么是哈希算法?
这时候会用一个非对称加密算法加密一下这个HASH值,这样即便能够计算HASH值,但没有加密密钥依然无法篡改加密后HASH值。这种算法用途很广泛,用在电子签名中。HASH算法也可进行破解,这种破解不是传统意义上的解密,而是按照已有的HASH值构造出能够计算出相同HASH值的其他原文,从而妨碍原文的不可篡改性的...
怎么理解哈希算法?
哈希算法是一种只能加密,不能解密的密码学算法,可以将任意长度的信息转换成一段固定长度的字符串。这段字符串有两个特点:1. 就算输入值只改变一点,输出的哈希值也会天差地别。2. 只有完全一样的输入值才能得到完全一样的输出值。3.输入值与输出值之间没有规律,所以不能通过输出值算出输入值。
哈希的算法是什么?
哈希算法是一个广义的算法,也可以认为是一种思想,使用Hash算法可以提高存储空间的利用率,可以提高数据的查询效率,也可以做数字签名来保障数据传递的安全性。所以Hash算法被广泛地应用在互联网应用中。哈希算法也被称为散列算法,Hash算法虽然被称为算法,但实际上它更像是一种思想。Hash算法没有一个...