【发布时间】:2012-04-02 00:36:09
【问题描述】:
我有一个程序会定期将敏感数据的小片段(比如 8 个字节)附加到多个日志文件中。我希望对这些数据进行加密。我希望程序在启动时自动启动,所以我不想在程序启动时输入密码。我也不希望它在某处存储密码,因为这几乎会破坏加密的目的。
出于这些原因,在我看来,公钥加密是一个不错的选择。程序知道我的公钥,但我的私钥在其他地方受密码保护。
到目前为止,一切都很好。但是当我尝试使用 PyCrypto 来 RSA(或 ElGamal)加密一个 5 字节的小字符串时,输出会爆炸到 128 个字节。我的日志文件已经足够大了……另一方面,当我尝试使用对称加密(如 Blowfish)时,输出字符串与输入字符串一样大。
所以,我的问题是:是否有一种相当安全的公钥加密算法,我可以一次加密 8 个字节的数据并且不会让它崩溃? (我想2倍就可以了)。我想我想要的是一个公钥流密码。
如果没有这样的事情,我想我会放弃并使用对称加密并在启动时手动提供密码。
【问题讨论】:
-
我不认为有这样的事情;在 SSL 之类的事物中,有一种使用会话密钥(即从非对称密码保护的东西派生的对称密码密钥)的趋势,但我不知道如何在您的情况下使用它(通信是单向的……)
标签: python encryption public-key-encryption