通过随机点击键盘生成随机密码?

信息安全 密码 随机的
2021-08-11 15:38:11

只需在键盘上随机单击,为不同目的手动生成随机字符串/密码有多安全?

我通常需要随机字符串作为盐和密码,我想知道这种方法是否足够,或者我是否需要一个强大的算法来为我生成密码。

假设我将包括数字,可能还有特殊字符和小写/大写字母

3个回答

这样的密码将与您的手指一样随机。敲击键盘的人往往不是很随意。例如,它们通常会在左侧键和右侧键之间交替。根据经验,如果您将其设置得足够长,这样的密码可能会相当安全,大约是使用良好随机生成器生成的随机密码的两倍。

使用这种“手动过程”制作的密码的主要问题是很难量化其随机性。特别是如果您生成多个这样的密码:我希望来自同一人类用户的连续“键盘随机”密码表现出相似性。因此,您必须过度使用才能重新获得一些保证,这意味着更长的密码(并且没有人喜欢输入长密码)。

我建议使用强大的随机生成器。骰子会做;硬币也一样(但是 d20 每次投掷都会比硬币给你更多的随机性)。如果您当时恰好有一台计算机可用,那么它也可以使用。

您应该尝试随机输入的方法并生成 100 个随机字符串,然后分析它们并检查您是否找到了模式。最有可能的是,您会看到字符串不是那么随机的。

最好使用随机数生成器。无论您使用什么操作系统,都有允许生成随机数据的库。尝试手动生成随机数据是个坏主意。

是一篇关于人类生成的随机数的有趣文章。

使用计算机生成的号码/密码可能有缺点,因为计算机无法生成完全随机的集合。它必须基于某些东西来给它一个起点,所以最终模式会重复,尽管随着技术的发展,我们在随机性计算中使用无限不重复小数越来越好,这会将曲线球扔进可预测性的混合。

根据一般规则,计算机不能自己做出决定,它不可能是完全随机的。另一方面,人类可以是随机的。即在没有外部输入或逻辑指示他/她“应该”选择什么的情况下决定 10 个数字。