Hash 将比算法输出更长的输入字符串放入哈希算法是否存在问题?

Hash 将比算法输出更长的输入字符串放入哈希算法是否存在问题?,hash,unique,sha1,sha256,sha512,Hash,Unique,Sha1,Sha256,Sha512,目前我正在为用户电子邮件设计一个散列系统,但是如果用户电子邮件的长度超过散列输出,会发生什么呢。我通常使用sha1 sha256或sha512,如果它根据算法产生差异。。。在某种程度上,算法似乎无法继续生成唯一的输出。哈希值的长度通常为13(DES)到86(SHA2)个字符。如果你输入的时间更长,这是完全正常的。把它想象成一个“交叉和”,你也可以用任意长的数字 关于唯一性,将标准crypt(3)函数与SHA-512和集合a-zA-Z中的字符一起使用。/您有54个不同的字符和86个字符长的字符串,

目前我正在为用户电子邮件设计一个散列系统,但是如果用户电子邮件的长度超过散列输出,会发生什么呢。我通常使用sha1 sha256或sha512,如果它根据算法产生差异。。。在某种程度上,算法似乎无法继续生成唯一的输出。

哈希值的长度通常为13(DES)到86(SHA2)个字符。如果你输入的时间更长,这是完全正常的。把它想象成一个“交叉和”,你也可以用任意长的数字

关于唯一性,将标准crypt(3)函数与SHA-512和集合a-zA-Z中的字符一起使用。/您有54个不同的字符和86个字符长的字符串,因此有54^86个不同的值。太多了:-)

(但不要使用13个字符长的DES-crypt,这在现代硬件中是可以强制执行的,并且始终使用“salt”值,以便相同的输入字符串给出不同的散列值,并且不能使用“彩虹表”攻击)