问题标签 [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 - PHP中这个Cipher.encrypt()函数的等价物是什么
客户使用 Cipher.encrypt() 函数(来自我不知道的某种编程语言)向我发送了一条加密消息,详细信息如下:
我需要解密消息以便使用 PHP 从中提取数据。我曾尝试使用 php 函数 mcrypt_decrypt :
但我无法解密该消息,因为这两个函数似乎有不同的参数。
那么有人对如何使用 PHP 解密消息有任何建议吗?
java - 使用 PKCS7Padding 的 AES CBC 加密在 Java 和 Objective-C 中具有不同的结果
我用 Java 为 Android 创建了一个应用程序,并使用Cipher
类通过 AES 加密数据。现在我想把这个算法带入 iOSCommonCrypto
类。该代码有效,但结果不同。
这是Java中的代码:
这是Objective-C中的代码:
更新1:
数据:text to encrypt
钥匙:testkey
Java (所需)结果:7ptTEyImNz9KgC96+JPFXQ==
Objective-C 结果:U7FAVHi01q0Hhf+m9NsKjw==
java - Java bruteforce for 循环结果令人困惑
我创建了一个小程序,试图从 AES-CBC 密钥中找到 20 个丢失的位。它的结构如下:
所以问题来了:如果我从 0 开始,我不会得到任何结果。用于跟踪目的的字符串总是打印到我达到 2^20。但是,如果我将 i 设置为所需的解决方案 0xd63c5 或 0xd63c4,我会得到解密的文本。即使使用 0xd63c3 也没有“功能”。也许我看不到树木的树木,但我尝试找到解决方案已经有很长一段时间了。
任何帮助表示赞赏,在此先感谢。
java - AES 加密在 ECB 模式下实施,但不符合安全要求。如何实现CBC模式
我已经在 java 中实现了 AES 加密,但该算法不被团队接受,因为它是在不符合安全性的 ECB 模式下实现的。我对密码学和安全性要求非常陌生。
有人可以帮我将算法更改为 CBC 模式。我附上了我在 ECB 模式下实现的代码。
早日回复将不胜感激。提前致谢
security - 使用 AES 的 OpenSSL 数据传输
我想使用 OpenSSL 在服务器和客户端之间进行数据传输。我想在 CBC 模式下使用 EVP 和 AES 来做到这一点。但是当我尝试在客户端解码第二条消息时,EVP_EncryptFinal_ex 返回 0。我的方案显示在图片上。
我认为,这种行为是因为我为一个 EVP 上下文调用了两次 EVP_EncryptFinal_ex(和 EVP_DecryptFinal_ex)。如何正确执行?
encryption - aes 256 cbc 模式上的暴力破解
我有一系列加密文本,它们通过 aes 256 位 cbc 模式加密,每个加密文本都有一个 iv,我也有它们,我知道它的算法是 aes 256 位 cbc 模式我可以生成新的加密值,我知道什么是纯文本,但 iv 会有所不同我还有其他名为 mac 的东西,我不知道它是什么,它是 64 个字符的十六进制格式,因为我知道该算法适用于名为 elocryptfive 的 laravel 插件之一,我可以对其进行任何攻击以查找密钥或解密值?
c++ - AES 在 Qt 的 StringSource 和 StringSink 函数中无法正常工作
我在Qt中使用了Crypto++库,因为使用模式中的方法加密字符串并使用 of和定义字符串参数。AES
CBC
StringSource
StringSink
input
output
首先,我从文件中读取所有字节(“unicode”或“ASCII”编码),然后将其设置为函数中的input
参数StringSource
,然后将参数设置为string
(数据类型)用于输出(密文)。只是我想得到一个字符串并用“aes-cbc”加密它并显示输出。
另外,我知道FileSource
并且是用于将数据写入文件FileSink
的两个函数(consistinput
和流参数)!output
但我想将文件内容作为输入字符串读取。
我的代码:
现在我有以下问题:
当我读取压缩文件内容(例如 900 字节)并将其设置为输入时
StringSource
,生成的密码将不完整(例如 320 字节)“QMessageBox”中的输出
strlen(cipher.c_str())
不同cipher.size()
我的代码真正工作当我阅读一些文件(“unicode”或“ASCII”,“大”或“小”大小)并且有时工作不正确时。我不明白是哪个原因导致了这个问题?
- 甚至,我直接设置了一些输入字符串(不是从文件中读取)并再次失败!
问候!
objective-c - 带有 IV 的 AES-128 CBC 加密如何在 Objective-C 中工作?
我正在尝试使用“带有 IV 的 AES-128 CBC”加密字符串。这是输入参数和预期输出:
密钥:000102030405060708090A0B0C0D0E0F
四:00102030405060708090A0B0C0D0E0F0
输入数据:EA010B23CDA9B16F0001020304050607
输出:B773C36749E87D3F8FED98FE52026A15
I have verified the output on this web site:
http://extranet.cryptomathic.com/aescalc/index?key=000102030405060708090A0B0C0D0E0F&iv=00102030405060708090A0B0C0D0E0F0&input=EA010B23CDA9B16F0001020304050607&mode=cbc&action=Encrypt&output=B773C36749E87D3F8FED98FE52026A15
如何在目标C中使用带有IV的AES-128 CBC加密字符串?(结果与http://extranet.cryptomathic.com/aescalc相同)我正在尝试获取加密字符串 - B773C36749E87D3F8FED98FE52026A15 ,但没有运气。
我曾尝试使用此库进行加密:https ://github.com/Pakhee/Cross-platform-AES-encryption/tree/master/iOS
这是我的目标c代码:
encryptedData 的输出为:<68f8ed75 e79f2ba2 c80e67a2 f0c84b7a c4b07fd1 59e937e5 14644cba c0ddb60c 40502375 7798e7a1 58bd05a5 b3d9e7bd>
我希望 *encryptedData 的值应该是<42373733 43333637 34394538 37443346 38464544 39384645 35323032 36413135>的值,这是B773C36749E87D3F8FED98FE52026A15
的十六进制数
我试过另一个库 - https: //githubdev/FBtec5/FBEncryptor
输出为 <2beea977 aef69eb1 ed9f6dd0 7bf5f1ce d1e5df46 2cbf8465 773f122d 03267abb 2e113d9b 07189268 4fd6babe 7b1c0056>
似乎我使用了错误的库或者我对加密函数的输入错误。对目标 c 的 AES 库有什么建议吗?
encryption - 通过kafka发送加密数据
我正在使用 AES - CBC 模式加密消息,然后通过 kafka 发送。消费者在没有密钥和初始向量的情况下如何解密消息。
如果我必须在这里使用密钥交换,我很困惑,消费者也可以发回给生产者吗?
任何建议
谢谢
python - Python 3 中使用 PKCS#7 填充的 AES-CBC 128、192 和 256 加密解密
我根据我的要求搜索了很多关于完整加密解密示例的内容。事实上,我有很多链接和示例,但没有一个适用于 AES-192-CBC 模式和 AES-256-CBC。
我有以下示例,它应该适用于所有类型,但它仅适用于 AES-128-CBC 模式。我是 Python 新手。谁能帮助我哪里错了?
我在 Windows 上使用 Python 3.4,但无法迁移到 Python 2.7。
尽管此代码使用 192 位和 256 位加密加密数据并成功解密,但我的其他 .Net 和 Ruby 应用程序只能解密使用 128 加密加密的数据。
注意 .Net 和 Ruby 应用程序已成功相互测试,并使用具有所有加密类型的在线加密工具进行了测试。
请注意,我的应用程序需要 AES-CBC 模式和 PKCS#7 填充,并且必须在 Python 3.4 上运行。