一种将敏感数据存储到磁盘的方法,没有(严重)担心用户被篡改?

时间:2011-07-21 02:12:19

标签: python encryption credentials

我正在编写一个连接到twitter并使用OAuth API的应用程序,我的问题是存储consumer_key和consumer_key_secret

如何安全地存储这些值,以便用户难以访问但仍能在我的应用程序中使用它们?

到目前为止,我已经将它们存储在pyc中并加密它们作为建议,但我对任何其他想法持开放态度。

2 个答案:

答案 0 :(得分:1)

DRM的替代方法(您所描述的)是通过您自己的受控计算机上的服务器应用程序代理安全交互。由于您使用的是OAuth,因此您可以对自己的服务器使用相同的身份验证凭据,就像直接连接到Twitter一样。

这种方法的优点是没有私钥泄露;您不与您的消费者共享您的私钥,因为它存储在他们无法阅读的远程服务器上,而您的消费者不会与您共享他们的密码(相反,他们会获得一个OAuth令牌,将该特定登录信息绑定到您的具体服务)。

答案 1 :(得分:0)

如果我遗漏了某些内容,我会道歉,但xAuth出了什么问题?这似乎是它的完美用例。您的应用程序将利用(并因此存储)消费者密钥(oauth_consumer_key)而无法解决这个问题:您必须具有唯一标识您的应用程序的内容。您可以从用户那里获取凭据,然后传递这些凭据并接收oauth_tokenoauth_token_secret,以便您代表用户拨打电话。