我正在生成pin码,但为了方便用户,我希望它是任何长度的有效英语单词。有没有关于在JAVA中使用哪个api或util的建议?

我正在生成pin码,但为了方便用户,我希望它是任何长度的有效英语单词。有没有关于在JAVA中使用哪个api或util的建议?,java,Java,我正在生成pin码,但为了方便客户,我希望生成任意长度的有效英语单词。有没有关于在JAVA中使用哪种api或util的建议?提前谢谢你 有没有关于在JAVA中使用哪种api或util的建议 主要建议。。。不要这样做。应该由最终用户来考虑密码短语。您为生成密码短语而实施的任何系统方案都容易受到攻击 我不知道有哪种API或实用程序能做到这一点。但如果您确实发现了这样的API或实用程序,您应该立即对其产生怀疑: 任何生成密码短语的“通用”方案都会吸引试图击败它的人的注意 你应该担心有人在这个计划中加

我正在生成pin码,但为了方便客户,我希望生成任意长度的有效英语单词。有没有关于在JAVA中使用哪种api或util的建议?提前谢谢你

有没有关于在JAVA中使用哪种api或util的建议

主要建议。。。不要这样做。应该由最终用户来考虑密码短语。您为生成密码短语而实施的任何系统方案都容易受到攻击

我不知道有哪种API或实用程序能做到这一点。但如果您确实发现了这样的API或实用程序,您应该立即对其产生怀疑:

  • 任何生成密码短语的“通用”方案都会吸引试图击败它的人的注意

  • 你应该担心有人在这个计划中加入了后门

第二个问题是,生成的由随机英语单词组成的密码短语不会被记住,因此用户可能会将其记下来。一旦他们这么做了,你的安全就可以通过在他们偷来的钱包里寻找纸片等来解除了



嗯,我还生成了一个随机url,每个url都会关联一个pin。URL是通过邮件发送的,但PIN会在他们的手机上发短信。所以这不是一个容易的黑客攻击,因为我的URL也是随机的

如果有人可以访问用户的浏览器历史记录,或者窥探他的网络流量,那么他们就可以发现随机URL是什么


还是随机数作为PIN码就可以了


随机生成的PIN可能比非随机的(或用户提供的)要好,但两者都不符合要求。。。除非他们有10个以上的数字。

如前所述,这是一个非常糟糕的主意,会使pin容易受到黑客攻击。要求我们推荐或查找工具、库或最喜欢的非现场资源的问题会导致堆栈溢出,因为它们往往会吸引固执己见的答案和垃圾邮件。如果你在linux上,你可以看到你是否有
dict
。我还生成了一个随机url,每个url都会关联一个pin。URL是通过邮件发送的,但PIN会在他们的手机上发短信。所以这不是一个容易的黑客攻击,因为我的URL也是随机的。@devnull。。。让我知道怎么做?还是随机数作为PIN码就可以了?