掘金者说-第10期-硬核之哈希函数

789 阅读2分钟

第一季-思想篇

翻译——What Are Hash Functions

  Hi,大家好!我是Lucky。今天分享自己借助工具翻译的文章,关于区块链更好的理解之一:What Are Hash Functions

  一个哈希函数是一个接受输入值的函数,从该输入创建一个输入值确定的输出值。对于任何x输入值,每当运行哈希函数时,您将始终收到相同的y输出值。这样,每个输入都有一个确定的输出。函数基本上是接受一个输入并从该输入派生一个输出。

  因此,一个哈希函数是接受输入(可以是任何数据——数字、文件等)并输出哈希函数。哈希通常显示为十六进制数。

  这是哈希函数md5,它从任何输入数据创建32个字符的十六进制输出。哈希函数通常是不可逆的(单向的),这意味着如果只知道输出,就无法计算出输入,除非尝试所有可能的输入(这称为暴力攻击)。哈希函数通常用于证明某些内容与其他内容相同,而不预先显示信息。这里有一个例子。

  假设:爱丽丝在向鲍勃吹嘘她知道他们数学课上挑战题的答案。鲍勃想让她证明她知道答案,而不让她告诉他答案是什么。因此,爱丽丝将她的答案(假设答案是42)进行哈希运算,得到这个哈希:

  爱丽丝给鲍勃这个哈希,鲍勃无法从这个哈希中找出答案是什么,但是当他自己找到答案时,他可以哈希他的答案,如果他得到相同的结果,那么他知道爱丽丝确实得到了答案。哈希通常用于这种验证信息的上下文中,而不向正在验证的一方透露信息。

  此篇文章字简言洁。正所谓:讲道理,还不如讲故事。该例子生动形象的概括了哈希函数。此篇文章是硬核的外文,通过工具进行翻译排版。分享给大家,感谢小伙伴阅读。

英文版