【问题标题】:Encrypt in C++ and decrypt in Python在 C++ 中加密并在 Python 中解密
【发布时间】:2012-08-29 14:11:27
【问题描述】:

您知道哪些库可用于在 C/C++ 中加密并在 python 中解密以用于 RSA/AES/DES 算法?

我们将使用其中一种算法来加密 URL 中的一些参数。

我们已经尝试过一些 C++ 库:

在python中

  • pycryptopp
  • Python-RSA

但不幸的是,我无法匹配这些库使用的参数/键。

【问题讨论】:

  • 首先明确您的要求并确保您没有重新发明轮子。哪个实体将加密数据,哪个实体将解密它?密钥是如何分配的?您只需要机密性还是完整性?

标签: c++ python aes rsa des


【解决方案1】:

为什么不在每种语言中都使用 OpenSSL 包装器?这是一种非常标准化的加密方法,并且有许多库可以轻松编写代码本身。

http://www.openssl.org/

https://launchpad.net/pyopenssl

http://www.boost.org/doc/libs/1_49_0/boost/asio/ssl/detail/openssl_init.hpp

这将使两种语言与您可能需要的任何其他系统之间实现最大的兼容性。

【讨论】:

    【解决方案2】:

    我使用 pycrypto http://pypi.python.org/pypi/pycrypto/2.6

    pycryptopp 只是 Crypto++ 的包装器,这意味着您可能在 Crypto 、 Python 或两者中都做错了。

    如果您只是在 URL 中使用有效负载来处理 Web 内容,我编写了这个库来处理所有这些废话

    https://github.com/jvanasco/insecure_but_secure_enough/blob/master/insecure_but_secure_enough/__init__.py

    【讨论】:

    • 感谢您的回答。最后,我们在 QT 中用于加密 Crypto++ 并在 django-python 中用于解密 - pycrypto。 * from Crypto.Cipher insert AES
    【解决方案3】:

    看看keyczar,一个来自谷歌的加密工具包。它易于使用,它不仅仅是一组加密/解密功能;它具有其他功能(例如密钥管理)。它不依赖于单一的加密算法,开发者可以选择使用哪一种。

    这里有很好的文档:http://code.google.com/p/keyczar/w/list

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-05
      • 2021-11-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多