1

我的任务是让字符串加密到一定长度。理想情况下......函数应该作为参数......

  1. 可变大小的待加密字符串
  2. 结果加密字符串的长度

它不需要解密。我一直在查看 SHA384,但我无法理解在线示例,以至于无法对其进行修改以使其散列到指定长度。

4

3 回答 3

2

你没有说你是否想要一个加密安全的散列。加密哈希:SHA-1、SHA-2、SHA-3 和其他具有固定范围的输出大小,通常相对有限。

非加密哈希通常具有更广泛的可用大小。对于非加密散列,我经常建议使用FNV 散列,它易于实现并提供广泛的输出大小:32 位到 1024 位。

于 2017-07-20T20:51:05.110 回答
1

您不能请求长度,这是方法的一部分。

如果您想要更短的输出,只需删除额外的字节,每个字节(和位)都是单独随机的,删除哪些字节没有区别。


散列不是加密,它是一种单向不可逆函数,它接受可变数量的输入并生成固定数量的输出。

您需要对哈希进行加密吗?

于 2017-07-20T18:14:20.327 回答
0

哈希是一种单向函数,这意味着它不能被反转。如果您想生成许可证密钥(例如),您可以简单地对散列字符串进行子串化。

于 2017-07-21T00:04:49.660 回答