2

我正在寻找一个想法来加密密码(登录密码)并在输入前解密。

有没有人做过这样的事情?

我知道我们必须确保加密逻辑不应该对用户可见,但我不确定如何隐藏/保护它?

4

1 回答 1

1

从根本上说,您采用的任何完全自动化的方法都可以由可以访问 java 程序的用户复制。他们解密密码所需的所有成分都将出现在程序中。如果他们能够运行该程序,他们也可以“盲目地”使用它来为他们解密密码。

但是,您可以尝试让有权访问您的文件系统的人难以获得未加密的密码。

您将K使用 AES-128 在某个密钥下加密您的密码。

那么你的挑战就是K难以实现,所以让它成为你的程序每次都必须计算的东西。然后攻击者必须复制这些计算以产生密钥,这通常意味着强迫他们对程序进行逆向工程——除非,正如我所说,他们能够简单地运行程序。

您也可以这样做,以便计算依赖于存储在网络服务器等上的一些远程值。

有很多方法,但你不会比通过默默无闻的安全做得更好。它永远不会真正安全。只是弥补一些东西:P

于 2012-10-12T17:49:25.947 回答