Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 双因素认证系统的一次性密码逆向工程_Java_Security - Fatal编程技术网

Java 双因素认证系统的一次性密码逆向工程

Java 双因素认证系统的一次性密码逆向工程,java,security,Java,Security,给定一个基于时间的一次性密码生成器(如Google Authenticator),需要多少(时间、PIN)对实例才能显著削弱算法,使其能够将可能的种子缩小到原始函数?如果一个人通过短信或电子邮件向客户发送PIN码(而不是使用keyfob或实际的Google Authenticator应用程序,它不会让人看到过去的PIN码),泄露过去的PIN码是否会对系统构成重大威胁(请注意,电子邮件和短信都携带相对精确的时间信息) OTP算法的详细信息: 参考Java实现: 从数学上讲,对过去的引脚进行详细

给定一个基于时间的一次性密码生成器(如Google Authenticator),需要多少(时间、PIN)对实例才能显著削弱算法,使其能够将可能的种子缩小到原始函数?如果一个人通过短信或电子邮件向客户发送PIN码(而不是使用keyfob或实际的Google Authenticator应用程序,它不会让人看到过去的PIN码),泄露过去的PIN码是否会对系统构成重大威胁(请注意,电子邮件和短信都携带相对精确的时间信息)

  • OTP算法的详细信息:
  • 参考Java实现:

从数学上讲,对过去的引脚进行详细分析可能会发现算法中存在缺陷——我想这在很大程度上取决于算法本身。但我知道Facebook在尝试登录时通过短信发送双因素身份验证。每次登录Facebook时,你都会收到一条包含一次性密码的短信。你为什么需要知道?不知道你是否更有可能从中得到答案。这个问题与双因素身份验证系统的设计有关,它是否应该包含生成的一次性密码的时间戳存储。如果这大大削弱了系统的安全性,那么有人会争辩说,该设计不应包括任何过去OTP(电子邮件、短信或其他)的存储,我将在那里交叉发帖,并添加一个与这个问题相关的链接。不能说对过去管脚的详细分析可能会揭示算法中的缺陷——我想这在很大程度上取决于算法本身。但我知道Facebook在尝试登录时通过短信发送双因素身份验证。每次登录Facebook时,你都会收到一条包含一次性密码的短信。你为什么需要知道?不知道你是否更有可能从中得到答案。这个问题与双因素身份验证系统的设计有关,它是否应该包含生成的一次性密码的时间戳存储。如果这大大削弱了系统的安全性,那么有人会认为设计不应该包括任何过去OTP(电子邮件、短信或其他)的存储。@smparkes谢谢,我将在那里交叉发布并添加一个指向此问题的链接。