如何在没有对称密码的情况下将公钥/私钥用于短数据

时间:2013-11-23 06:29:35

标签: javascript python c openssl public-key-encryption

我想分别用私钥和公钥加密和解密数据。

数据介于1到32个字节之间。

我不想对数据使用对称密码 - 我想直接使用数据上的密钥。 (由于性能原因通常不会这样做,但我的数据非常小。)

这可能吗?我应该从哪里开始?

2 个答案:

答案 0 :(得分:1)

也许keyczar就是你要找的东西: http://www.keyczar.org/

答案 1 :(得分:1)

  

我想用私钥和公钥加密和解密数据

几乎所有使用加密技术的人都会告诉你,你自己写一个加密的风险。使用标准库,它们是用所有的东西(如果你不了解这些技术)使你的流量不安全。

也就是说,这里有一些Python库(但你可以在大多数语言中从PHP到Java或者你的船上浮动):

https://pypi.python.org/pypi/pycrypto

https://www.dlitz.net/software/pycrypto/

Crypto RSA in Python

https://pypi.python.org/pypi/PyECC

你会看到pycrypto,因为如果你想使用RSA,它会很受欢迎。另一个包是PyECC,它包含椭圆曲线加密的功能。如果您希望减少密钥大小或减少用于加密的资源(通常在移动系统或小型设备中),这一点非常重要。密钥增长时difference in key sizes (link)会变得荒谬(为了提高安全性)