问题标签 [cbc-mode]
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.
php - Ruby 到 PHP AES
我试图将一些在 CBC 模式下使用 AES 265 加密数据的 ruby 代码转换为 php,但它不起作用,转换后的 php 代码返回一个空字符串。这是我所拥有的:
红宝石:
和PHP代码:
c# - AES CBC 中的填充
我正在尝试在 C# 中使用(128 位 AES)随机 IV 测试 CBC。
在我要解决的问题中,我有 12 字节的输入消息。条件是,如果 PlainText 小于块大小(16 字节),则要使用的填充从 0x01 开始,然后到 6 0x00。
例子:
我似乎无法在RijndaelManaged找到这个PaddingMode。
有人可以建议我如何执行以下操作吗?
- 可变长度填充
编辑:
我的填充功能
测试我的CBC的方法
java - Java:算法 RSA 的密钥不适合对称加密。
我正在尝试使用 AES/CBC 加密文件,密钥必须是随机的并使用 RSA 加密。我得到“算法 RSA 的密钥不适合对称加密。”......这似乎是什么问题?
这是我的代码的一部分:
java - 使用密码短语的带有 CBC 的 Java AES
我想用 Java 实现 256 密钥 AES 和 CBC 加密。收件人向我发送了 256 位密码作为字符串“absnfjtyrufjdngjvhfgksdfrtifghkv”,它使用以下 openssl 命令完美运行:
base64 格式的输出为:U2FsdGVkX1/yA4J8T+i1M3IZS+TO/V29rBJNl2P88oI=
当我描述它时,它返回原始输入字符串:
我的问题是我不能让我的加密在java中工作并用上面的命令解密它。我知道我的密钥应该使用我的密码生成。下面是我的代码示例,其中 IV 是随机生成的,密钥是使用密码和随机盐生成的。
我的 java base64 输出是 XimWIM+8UewzobFOMfevaw== ,当我尝试运行时:
我收到“坏幻数”错误。java加密的哪一步我做错了?
c++ - Crypto++ encrypt and decrypt in two different c++ programs
I am writing a code to encrypt and decrypt with crypto++ library .I found a code to encrypt and decrypt which is shown below.The code works OK as one program.but when I divide into two c++ programs (One for encryption and another for decryption) the decryption pargram gives me error
terminate called after throwing an instance of 'CryptoPP::InvalidCiphertext' what(): StreamTransformationFilter: ciphertext length is not a multiple of block size
The ciphertext I get after encryption is
which I transfer into the decryption code. What am I doing wrong?
my first program for encryption is
I am sending the ciphertext using URL eg. https://xxx.xxx.xx.xx/_SERVER_TEST.fcgi?���z=(f�����P%���2��W3�p�H�����^��@C��#������bp���nx��
and on the other side I an trying to decript my ciphertext . but the URL dont understand the cipher.
my second program Decryption is
algorithm - 如何实现 CBC 模式?
我的问题在于 AES 加密算法和在算法中实现 IV。我有 ECB 版本的 AES 工作并且我已经对其进行了彻底的测试。我试图通过添加 IV 使其更安全。我希望通过了解 IV 在算法中的实现方式来更好地理解它。
我知道IV在加密之前与纯文本进行异或运算,然后IV与加密数据一起存储以进行解密。但是当我去解密时,我是否在解密过程之后进行相同的 XOR 计算?
我尝试了上述过程,并且我的加密和解密测试使用相同的值,但是当我将这两个过程并排放置时,我得到的值彼此非常接近,但它似乎并不完全正确。不要求修复代码,只是为我制定的过程,以便我知道我这样做是正确的。谢谢。
php - PHP MYCRYPT - 带有 Mcrypt CBC 的 RIJNDAEL_128 给出不正确的输出
我正在使用文本
但是,每当我用上面提到的值刷新调用这些函数的页面时,我都会得到不同的值加密,但在解密时,初始解密值每次都会改变,但其余部分会像明智地一样正确解密:
F7…Ÿ{4©eŠQ9t¤e 是 Dave1336407610774000000000000
我还参考了类似问题并在解密中使用了“iv”功能并在其中回答了
有人可以指导我这里出了什么问题吗?
php - PHP MYCRYPT - RIJNDAEL_128 与 Mcrypt CBC 每次都会给出不同的加密字符串
我又带着 PHP+RIJNDAEl_128+CBC 回来了。
我成功地对原始字符串进行了加密和解密。
但我面临的唯一问题是我每次都得到不同的加密字符串。
我认为理想情况下每次都应该相同。
下面是代码:
php - PHP AES 128 位 CBC 加密给出大小警告
我正在使用 128 位的 AES ALgo 和 CBC 密码模式加密,下面是代码:
但这给了我一个警告,输出为:
警告:mcrypt_generic_init():密钥大小太大;提供的长度:64,最大值:第 10 行 /var/www/cipher.php 中的 32 警告:mcrypt_generic_init():密钥大小太大;提供的长度:64,最大值:第 14 行 /var/www/cipher.php 中的 32 加密:vM/XVYSjs/QApdCUEQ8bdQ== 解密:我的秘密文本
现在有人可以指导我为什么我面临尺寸问题以及如何在不改变密钥的情况下消除尺寸问题......