c# - AES 加密。从 Python (pyCrypto) 到 .NET

标签 c# .net python aes pycrypto

我目前正在尝试将遗留 Python 应用程序移植到 .NET,其中包含 AES 加密,使用我可以告诉 pyCrpyto 的内容。我的 Python 和 Crypto 经验非常有限。该代码使用下一页中的代码片段。 http://www.djangosnippets.org/snippets/1095/

到目前为止,我相信我已经设法弄清楚它使用 AES 调用 Crypto.Cipher 并将我们的 key 的前 32 个字符作为密码,但没有模式或 IV。当它被添加到数据库时,它还会在加密文本上放置一个前缀。

我无法解决的是如何在 .NET 中解密现有的加密数据库记录。我一直在查看 RijndaelManaged,但它需要一个 IV,并且在 python 中看不到任何引用。

任何人都可以指出在 .NET 中可以使用什么方法来获得所需结果的方向。

最佳答案

AES(和 Rijndael)需要模式和 IV。 IV 可能是零向量,但它仍然是 IV。模式可能未明确指定...但如果它使用 AES,则仍然存在模式。

尝试这个答案了解一些背景:
Which AES library to use in Ruby/Python?

关于c# - AES 加密。从 Python (pyCrypto) 到 .NET,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2973546/

相关文章:

c# - 日志文件的分析、预处理或后处理

c# - 强制 C# 应用程序编译为 x64 而不是 AnyCpu

c# - RX Switch() 的订阅和取消订阅命令

python - 将 func 应用于需要前一行和前一列的值的数据框列

c# - 如何不使用 XmlSerializer 编写基于值的元素?

c# - wpf 数据绑定(bind)不从属性更新

.net - 空对象模式值得吗?

.net - REST API 是否应该在响应正文中返回异常?

python - 使用 python 套接字接收大型 http 请求

python - 在 Ubuntu 中安装 scikit-learn 时遇到一些麻烦