-1

这让我困惑了一段时间。我对加密没有广泛的了解,但我了解原理。
举个例子,假设我有一个程序,其唯一目的是将随机用户的输入发布到我的私人 Facebook 个人资料中。现在要做到这一点,该程序必须有我到 facebook 的登录信息(如果不是这种情况,假设另一个第三方应用程序)。此信息或凭据必须存储在某个地方,因为程序的 post 方法将在没有管理的情况下完成。

我知道将登录凭据作为纯字符串存储在代码中是一个糟糕的策略,因为编译后的代码可以被反编译并且我的凭据是可读的。推荐的解决方案是将它们存储在一个单独的文件中,加密。

据我了解,加密/解密需要一个也需要存储在某处的密钥。不能从反编译的代码中读取此密钥和加密算法并用于解密凭据吗?

存储凭据是基于反编译解密的额外步骤加密的好处,还是我严重误解了某些东西?

4

1 回答 1

0

当您拥有加密版本时,有两种方法可以检查提供的凭据:

  1. 解密加密版本;这显然需要存储解密所需的工具,这是不安全的
  2. 加密您要检查的内容,并查看它是否与您的加密版本匹配。这不需要解密任何东西的能力。
于 2015-12-21T14:38:18.283 回答