Hash 用于标识对象的SHA1哈希的长度?

Hash 用于标识对象的SHA1哈希的长度?,hash,Hash,我是否可以创建一个非常短的SHA1散列来唯一标识一个对象,该对象通常具有类似于1300992607的id 这是一个相对理论性的问题,但是SHA1散列对于对象id来说有多短并且仍然是唯一的?如果你在这里问的问题不对,请帮助我。不,你不能,散列不是那样的 您可以为id创建一个散列,并从中获取任意数量的位。使用的位越多,得到两个不同id相同的哈希值的可能性就越小,但无论从哈希值中使用多少位,都不能保证永远不会发生冲突。@Joseph Silvashy:是的。散列只能以另一种方式保证是唯一的,即,如果有

我是否可以创建一个非常短的SHA1散列来唯一标识一个对象,该对象通常具有类似于
1300992607
的id


这是一个相对理论性的问题,但是SHA1散列对于对象id来说有多短并且仍然是唯一的?如果你在这里问的问题不对,请帮助我。

不,你不能,散列不是那样的


您可以为id创建一个散列,并从中获取任意数量的位。使用的位越多,得到两个不同id相同的哈希值的可能性就越小,但无论从哈希值中使用多少位,都不能保证永远不会发生冲突。

@Joseph Silvashy:是的。散列只能以另一种方式保证是唯一的,即,如果有两个不同的散列码,则它们不能来自同一个原始值,无论散列码有多小,原始值有多大。