问题标签 [initialization-vector]

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 回答
1521 浏览

php - 没有IV的php mcrypt加密

我需要使用加密机制。我选择了 mcrypt,因为它是可用的以及它的示例。但是我看到生成时间太多了。当我在给定示例中使用 IV 时,它花费了很多时间,而当我删除它时,它会立即生成加密值。

那么,如果在不使用 IV 的情况下加密存在任何重大安全问题?

0 投票
0 回答
602 浏览

encryption - AES CBC - 有消息输入和输出以及 IV 并且必须找到密钥

我已经给出了初始化向量和输入文本。我也有编码的文本。

现在我的问题是,我怎样才能找到密钥,因为我的任务是更改输出文本。(这是一个家庭作业,我的教授说你可以在回家的路上在火车上半小时内完成......但我完全不知道,只知道 AES 和 CBC 是如何工作的,但绝对不是我必须如何开始这个任务。

任务:前 16 个字节是初始化向量,后 16 个字节是我的密文。我的文字是“向卡尔发送 5 美元”。现在我认为我首先需要关键因为我的任务是将消息“向卡尔发送 5 美元”更改为“向鲍勃发送 50 美元。

0 投票
1 回答
1171 浏览

javascript - 用 CryptoJS 加密,用 php 解密:IV 有什么用?

我正在寻找一种方法,在 CryptoJS 中加密密码,然后在 php 中解密。我看过关于同一主题的其他帖子,但我需要有人解释所有 IV 和关键内容。

我的 CryptoJS 加密代码:

0 投票
1 回答
234 浏览

c# - How does AESCrypt handle the initialization vector (IV) for file format 2?

How does AESCrypt handle the initialization vector (IV) for file format 2?

It seems like you cannot specify an IV when generating a file... so I'm assuming that the IV is stored unencrypted next to the ciphertext?

It's open source. I took a quick look at the code and it wasn't immediately clear.

This link references an IV1... but it's not fully clear. Where does IV1 come from?

0 投票
1 回答
246 浏览

.net - 在用尽唯一 IV 的数量之前,可以安全地调用 AesCryptoServiceProvider.GenerateIV 多少次?

我很困惑。根据下面我的IV“必须”对于每一轮加密都是唯一的。

IV 的属性取决于使用的加密方案。一个基本 要求是唯一性,这意味着不能在同一个密钥下重复使用任何 IV。对于分组密码,重复的 IV 值将加密方案转变为电子密码本模式:相等的 IV 和相等的明文导致相等的密文。- https://en.wikipedia.org/wiki/Initialization_vector

我正在使用.NET AesCryptoServiceProvider 类。我正在使用GenerateIV生成一个新的 IV 并将该 IV 与密文一起发送到远程端点,然后该端点将使用 IV 和私有共享密钥解密数据包。

我的数据包是 XML,因此总是以相同的前导文本开头。(例如“<SomeTag ...>unique_text</SomeTag>”)

在密钥的 5 到 10 分钟生命周期内,我的密钥可能会经历数千次加密/解密周期。在两次生成相同的 IV 之前,我可以调用 GenerateIV 多少次?或者换一种说法,GenerateIV 适合多少个周期?五,十,数百,数千,数百万?

这是有问题的代码:

似乎鉴于 AesCryptoServiceProvider.GenerateIV 生成的 IV 的大小是有限的,那么在生成重复的 IV 之前可以调用它的次数也是有限的。但是那个有限的数字是什么。

0 投票
0 回答
3231 浏览

c# - 不使用 IV 的 AES 加密

https://msdn.microsoft.com/en-us/library/system.security.cryptography.aes(v=vs.110).aspx

我打算使用 AES 来加密/解密我的消息。我不想在加密/解密时使用 IV,因为我已经在 KeyVault 中保护我的密钥,我只想与可以解密我的消息的其他方共享一个密钥。

有什么建议么?如何将 IV 设为可选/已删除。

0 投票
2 回答
931 浏览

c++ - 文件未完全解密,AES CBC 模式。第一个块没有解密。WCAPI

好的,所以我有 5 个要加密的文件。我没有设置 IV。

第一个文件解密没问题,

那么剩余文件的第一个块不会被解密。

所以文件解密了 99%。


我尝试将 IV 设置为静态值和随机值,结果相同。

我加密的第一个文件不必是我解密的第一个文件,它可以 100% 解密。

这让我相信它与解密有关?


因此,对于加密,我导入了一个 aes 密钥来创建一个密钥句柄。

然后我加密一个文件并使用相同的密钥句柄移动到另一个文件......

我应该为每个文件都有一个新的密钥句柄吗..?

有清除钥匙柄的功能吗?


有什么东西告诉我 WCAPI 正在使用最后一个文件的最后一个块作为下一个文件的 IV?

如果我可能会误解某些东西,请原谅我。

这是decrypt_file函数:

0 投票
1 回答
1190 浏览

encryption - 为什么 golang 加密示例不使用随机 IV?

根据 CWE-329 NON-Random IV 允许字典攻击的可能性。但是,在 AES 加密示例中,golang 文档使用非随机 IV:

这个实现是安全的还是我应该使用随机函数来获取我的 IV?

0 投票
1 回答
2918 浏览

cryptography - DES 中初始化向量的使用

假设我们必须使用 DES(或 Triple DES)加密一些数据。如果使用的 IV 是 8 个字节,设置为 '0'(即 IV 是一个常量 byte[],都设置为 0x00),可以吗?还是和一开始不使用静脉注射一样?

0 投票
1 回答
142 浏览

c# - 操作初始化向量并没有(真的)阻止我解密 AES 密文

我根据 MSDN 上的示例创建了以下类: https ://gist.github.com/anonymous/19d9e5f6747dfe75d553

每当我这样使用它时,它似乎加密得很好:

然后plainText包含以下内容:

�\aU��(���P\u0003�b\u001dxqrstuvwxyz1234567890

所以它似乎改变了 IV,并没有真正做任何事情(尤其是在较长的文档上)。为什么我们甚至需要静脉注射?