什么是加密哈希,一些算法是什么?它与python中的普通哈希有何不同?我如何确定使用哪种?
例如:加密哈希函数
你好--aaf4c61dcc5e8a2dabede0f3b482cd9ea9434d
地狱--44d634fa6b81353bc3ed424879ffd013501ade53
哈希函数
hash("你好")-1267296259
hash("helld")-1267296266
请帮助我
加密哈希函数与哈希表哈希函数不同。一个主要区别是加密散列函数被设计为不具有散列冲突弱点。它们被设计成在大多数情况下更加安全和不可逆转。但是像hash这样的哈希表哈希函数速度更快,设计用于快速访问内存中的项目或比较项目等。
假设两个不同的场景。如果你想在数据库中存储密码,你必须使用类似pbkdf2的东西,这样它更安全,生成速度也更慢,以防止暴力。但在另一种情况下,您只想拥有一组项,并检查该集合中是否存在项。您可以简单地存储32位或64位的项目哈希(例如类),并快速比较哈希而不是类。
例如,对于字符串"hello",计算和存储1267296259
要快得多,因为它是一个32位整数,计算和保存aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d
更安全、更慢。
附言:这里就是一个很好的例子。