问题标签 [rijndael]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1526 浏览

rsa - 我的 C# RSA/AES/salt/IV 最佳实践方法是否遗漏了什么?

虽然我不是密码学家,但我确实认为自己在 [a] 对称加密、散列和加密随机数生成方面的最佳实践大多是最新的。我已经搜索并发现了许多关于 SO 和其他地方的帖子,这些帖子与加密数据、salt 和 IV 的持久性有关。我所要求的是查看我正在做的事情,以确保我正在拼凑的各个部分正确拼合,即安全拼合。这是我的计划:

在 C# 中,我使用 RSACryptoServiceProvider 生成一个漂亮的、大的 4096 位密钥对。为了持久保存到磁盘/数据库,我使用了包含私钥信息的 ToXmlString(true) 方法。然后,我使用 AES 加密整个 Xml 文档,如下所述:http: //msdn.microsoft.com/en-us/library/sb7w85t6 (v=VS.90).aspx ,使用从 Rfc2898DeriveBytes 派生的密钥使用 10,000 轮和从 RNGCryptoServiceProvider 生成的 64 位盐。但现在的问题是,储存盐以及静脉输液。我知道盐可以是公开的,我很确定 IV 也可以。因此,最简单的处理方法似乎是将它们与加密的 Xml 一起放入纯文本 Xml 文档中并完成。

有什么我想念的吗?

Edit0:是的,IV 不必保密:http ://www.w3.org/TR/xmlenc-core/#sec-Nonce 。

Edit1:盐现在是从密码产生的(在填充到至少 64 位后仍然使用 10k 轮),因此它不会单独保存。IV 会自动添加到 CipherValue 的前缀。

0 投票
2 回答
1631 浏览

security - 如何保护加密密钥免受逆向工程?

我的软件使用的是 AES Rijndael。

我使用 SHA-256 哈希从任意长度的字符串生成密钥,然后将其作为私钥和公钥传递,因为在这种情况下我不需要区分两者。

如何保护我的密钥不被从可执行文件中窃取?

我知道不要使用文字,而是在运行时通过一些预先确定的步骤生成密钥,但是在发送到 AES 初始化函数之前,密钥仍然会在内存中,因此可以很容易地检索到。

AES 显然非常安全,但是如果有人破坏了可执行文件,那对我有什么好处呢?

解决这个问题时有一些常见的做法吗?

0 投票
1 回答
700 浏览

php - Rijndael PHP 编码 FLASH 解码

0 投票
6 回答
62074 浏览

.net - 如何使用密码生成 Rijndael KEY 和 IV?

如何使用密码生成 Rijndael KEY 和 IV?密钥长度必须为 256 位。

0 投票
2 回答
2115 浏览

networking - AES Rijndael 和小/大端?

我正在使用 AES Rijndael 的公共领域参考实现,通常以名称“rijndael-fst-3.0.zip”分发。我打算用它来加密网络数据,我想知道加密结果在大/小端架构上是否会有所不同?换句话说,我可以在小端机器上加密一个 16 字节的块,然后在大端机器上解密同一个块吗?当然,反过来也是如此。

如果没有,我应该如何交换字节?

在此先感谢您的帮助。

亲切的问候。

0 投票
2 回答
5669 浏览

c# - 使用 C# AES 或 Rijndael 加密和解密 xlsx、docx 文件

我们使用 Rijndael 加密对所有类型的文件进行加密。较新的 .xlsx 和 .docx 文件在尝试打开时(在加密和尝试解密之后)会引发错误。Excel 2003 尝试打开文件时出错:“转换器无法打开文件”。我安装了 Excel 插件,当不使用加密/解密时,我可以在 Excel 2003 中打开 xlsx 文件。

我已将代码更改为使用 AES,但存在相同类型的问题(但在这种情况下,文件不会下载,只是位于 Firefox 下载列表中)。我在这里阅读了有关注意加密/解密文件的字节大小/长度的建议,但不知道如何解决这个问题,我发现如果我上传 xls 文件,进入的加密文件的长度是不同的从解密的文件出来,xls保存并打开正常,所以我不知道如何测试这是否是问题,因为这些长度在有效的文件上有所不同。我包含代码以查看是否有人能发现任何可能导致 xlsx/docx 文件加密错误的问题。我已经最小化了代码,所以如果有任何语法错误,可能是由于这个原因。

我已经安装了 Excel 2007 来查看加密和解密的 .xlsx 文件是否会在 Excel 2007 中打开。当我尝试打开文件时,我得到一个提示:“Excel 在 'myfile.xlsx' 中发现了不可读的内容。你要恢复此工作簿的内容吗?”。Excel 2007 能够通过以下消息恢复/修复文件:“Excel 完成了文件级别的验证和修复。此工作簿的某些部分可能已被修复或丢弃”。因此,加密/解密会创建无效文件,但 Excel 2007 能够修复此问题;Excel 2003 转换器无法对该文件执行任何操作。

0 投票
2 回答
947 浏览

c# - rijndael 加密器有效字节大小

我有以下代码:

key 和 iv 的长度相同,它们是长度为 32 的字节数组。在运行时,此代码段失败,表示不支持该长度。我也试过 16. 也不起作用。

我用错了吗?是什么赋予了?

0 投票
2 回答
8114 浏览

php - PHP到Delphi并使用Rijndael返回加密-解密

我在使用 rijndael 密码解密从 PHP 发送到 Delphi 的字符串时遇到问题。我在 PHP 端使用 mcrypt,在 Delphi 端使用 DCP_rijndael。

目前我有以下代码。

PHP:

在德尔福:

我尝试在 Internet 上使用几个单元来实现密码,并发现大多数人都在谈论 DCP 组件。即便如此,我还没有设法让它正确解密。我已经尝试使用字节数组作为参数、AnsiStrings、WideStrings 等,但不幸的是没有运气。

对不起,如果我在这里遗漏了一些非常明显的东西,因为经过数小时的搜索,我的大脑状况不佳。

0 投票
1 回答
1057 浏览

c# - Javascript“Fritz Schneider 的 Rijndael 参考实现”和 .NET 之间的互操作

我正在使用 javascript Fritz Schneider 的 Rijndael 参考实现。我想用 C# 解密结果。

Javascript Rijndael 函数中提供的输入变量是

其中plaintext 是要加密的文本,key 是加密密钥,mode 选择ECB 或CBC。我们使用的模式是ECB。

现在,对于 Microsoft Rijndael 实现,我应该使用什么初始化向量来解密它?

作为记录,整个 javascript 加密是这样的。

谢谢。非常感谢帮助。

0 投票
2 回答
1312 浏览

.net - 可以在 Rijndael 加密中对许多文件使用静态 IV 值吗?

我对Rijndael 加密中的IV有疑问。

我目前使用 Rijndael 的方法是使用一对静态 KeyIv所有加密操作(我的意思是我将这对 Key 和 Iv 用于我计算机中的所有受保护文件)。

我听说 IV 必须unique为每个 Rijndael 加密。真的吗?我目前的使用方法有什么问题(如果有的话)single static Key and Iv pair