主页 > 比特派钱包和imtoken哪个安全 > 什么是哈希算法? 什么是哈希算法?

什么是哈希算法? 什么是哈希算法?

熟悉区块链的朋友首先想到的肯定是比特币挖矿。 比特币挖矿是不断修改区块头中的随机数,然后计算区块的哈希值,知道哈希值满足特定标准的过程。 ,那么哈希算法到底是什么?

什么是哈希算法?

散列算法也称为散列算法,它将任意长度的二进制值映射到一个较短的固定长度的二进制值,这个小的二进制值称为散列值。 它的原理其实很简单,就是将一条交易信息转换成一个定长的字符串。

这个字符串有一些特点:

1、信息一样,字符串也一样。

2.信息的相似性不会影响同一个字符串。

3、可以生成无数信息,但是字符串的类型是确定的,所以是不可逆的。

我们举个例子来理解:如果我们要搜索一张图片,在一个巨大的图库中搜索图片,如果不进行人工标注,是一个极其庞大和困难的工作量。

但是在训练集上,可以通过哈希算法得到一系列的哈希函数。 通过这些函数,可以将每张图片转换成一串0~1的代码。

神奇的是,代码串相似的图片对应的语义也相似。

这就是现实生活中使用简单哈希算法的方式。

哈希算法有什么用?

哈希算法可以检查信息是否相同,这个优点可以节省重复文件传输的时间。

举一个生活中很常见的例子,我们在生活和工作中使用一些软件来给别人发送文件数据。 如果有人向一个人发送一个文件,然后另一个人向另一个人发送同一个文件比特币采用的哈希算法是,那么这个社交软件在第二次发送文件时会比较两次发送的哈希值,如果发现还是一样,软件就不会再上传文件到服务器了。

此外,哈希算法还可以验证信息所有者的真实性。

比如我们在一个网站上注册一个账号,如果网站保存了密码,那么无论这个网站多么安全,都会有被盗用的风险。 但是如果你使用保存密码的哈希值而不是保存密码,就没有这种风险,因为哈希值加密过程是不可逆的。

哈希算法会被破解吗?

理论上可以得到哈希值,但是对应的用户密码很难得到。

假设一个网站被攻破,黑客获得了哈希值,但是只有哈希值是无法登录网站的,还必须计算出对应的账号密码。

计算密码的工作量非常大且繁琐。 严格来说,密码是可以被破译的,但是破译的成本太高比特币采用的哈希算法是,被成功破译的概率很小,所以基本不用担心密码被泄露。

当然,黑客也可以使用物理方法,就是猜测密码。 他可以随机地一个一个地尝试密码。 如果猜测的密码计算出的哈希值与真实密码的哈希值完全相同,则密码猜对了。

密码越长越复杂,越难猜对。 如果有办法提高密码被猜出的概率,就可以认为哈希算法已经被破解了。

举个例子,原来猜的概率是1/100000000000000,现在增加到1/1000了。 如果猜一个密码需要1秒,按照前面猜的概率,可能要等到地球毁灭才能猜到,但后面只需要1小时。 在这种情况下,哈希算法被破解。

好了,看到这里,是不是对哈希算法有了初步的了解呢? 不要太担心你的账户和资产被黑客攻击的风险,因为哈希算法只是比特币的原理算法,还有其他算法共同作用于比特币的运行,所以即使哈希算法是破解后,您的账户信息就无法被盗取。