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

标签 javascript python c openssl public-key-encryption

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

数据在 1 到 32 字节之间。

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

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

最佳答案

I'd like to encrypt and decrypt data with private and public keys

几乎所有使用过加密技术的人都会告诉您,编写加密技术需要您自担风险。使用标准库,它们由所有让您的流量不安全的东西(如果您不了解这些技术)组成。

也就是说,这里有一些 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,它包括椭圆曲线加密的功能。如果您希望减小 key 大小或减少用于加密的资源(通常是在移动系统或小型系统中),这一点很重要。 difference in key sizes (link)随着 key 的增长(为了提高安全性)可能会变得荒谬

关于javascript - 如何在没有对称密码的情况下将公钥/私钥用于短数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20159371/

相关文章:

javascript - 问题结构化 JavaScript( View 和模型逻辑分离)

Python 在函数内导入库以实现多线程

python扭曲的中间人实现

c - SDL 视频驱动程序

c - 有推荐的 DTLS 库吗?

javascript - 循环时输出中额外的 + ; javascript

javascript - 严格模式下是否定义了全局 var 关键字?

javascript - 如何创建倒计时 html 文本 60 到 0 的倒计时计时器

python - 获取类型错误 : unhashable type: 'list' in python dict

c++ - 如何将 char 编码为 2 位?