问题标签 [blowfish]
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.
java - 从 Diffie-Hellman 输出中选择加密密钥
我在 Java 中与RFC 3526中的一些大型组实现了Diffie–Hellman 密钥交换。我的输出是一个相当大的字节数组。将输出的前 448 位(56 字节)用于河豚密钥是否安全?我应该以任何方式转换字节,还是为密钥选择任何特定字节?
encryption - ColdFusion:整数“0”不转换为 ASCII 字符
我有一个字符串(由用户 ID 和日期/时间戳组成),然后我使用 ColdFusion 的Encrypt(inputString, myKey, "Blowfish/ECB/PKCS5Padding", "Hex") 对其进行加密。
为了与 3d 派对交互,我必须执行以下操作:
- 将结果字符串中的每个字符对转换为 HEX 值。
- 然后将 HEX 值表示为整数。
- 然后将结果整数作为 ASCII 字符输出。
- 所有的 ASCII 字符组合起来形成一个字节串。
- 然后将字节串转换为 Base64。
- Base64 是 URL 编码并最终发送出去(呸!)
当原始 cfEncrypted 字符串包含“00”时,这一切都可以无缝运行。
十六进制值 00 转换为整数(通过函数 InputBaseN) 0 然后拒绝正确转换为 ASCII 字符!
生成的 Bytestring(以及因此的 url 字符串)被弄乱了,3d 方无法破译它。
值得一提的是,我确实在页面顶部声明了:<cfcontent type="text/html; charset=iso-8859-1">。
有什么方法可以正确地将 00 输出为 ASCII 吗?我可以避免在原始加密字符串中包含“00”吗?任何帮助将不胜感激 :)
security - AES vs Blowfish 用于文件加密
我想加密一个二进制文件。我的目标是防止任何人读取没有密码的文件。
具有相同密钥长度的 AES 或 Blowfish 哪个更好?我们可以假设攻击者拥有大量资源(软件、知识、金钱)来破解文件。
command-line - 最好的 Blowfish 命令行工具?
我们的应用程序需要使用(例如)Blowfish 加密算法来加密/解密文件。我们知道bcrypt可能是一个不错的选择,但它不能直接从我们的应用程序中调用(因为它会提示输入关键短语)。
哪个是现有的最佳选择?
我们更喜欢 Windows 工具,尽管 Linux 也不错。
perl - 使用河豚或AES加密/解密Perl中的二进制文件?
我试图在 Perl 中加密然后解密二进制文件但没有成功,解密的文件总是与原始文件不同。我尝试了 Blowfish 和 AES (Rijandael),这是一个简短的示例:
有人可以帮我找出问题所在吗?
cryptography - 如何获得 Blowfish 加密密钥
我有一堆使用Blowfish和相同密钥的加密和解密形式的消息。有没有办法key
摆脱这些消息?
对任何算法或工具的引用将不胜感激。我只有密码学的基本知识,所以如果问题太宽泛且不够具体,请纠正我。
blowfish - 河豚算法如何在 C++ 中工作?
大家好,我必须使用 C++ 中的 Blowfish 算法加密我的数据……你们能告诉我,另一端是否知道我使用的是什么算法,他们可以不提取密钥并解密吗?这种方法的数据安全性如何?
encryption - Base64 编码输出不同于 as3crypto 和 pycrypto 加密库
我正在尝试使用对称加密将数据从 actionscript 3(客户端)传递到 python(服务器)。
我使用的库是 as3crypto 和 pycrypto,我不确定我是否正确使用了这些库。
动作脚本 3:
这是上述函数的 base64 编码输出。
xvVqLzV5TU4=
现在,使用 pycrypto 库中的相同密钥、初始化向量和算法会给我不同的输出。
Python:
I82NQEkSHhE=
我很确定我在加密过程中做错了,因为我可以在两个库上对“testtest”进行base64编码并接收相同的输出。
动作脚本 3:
产量...
dGVzdHRlc3Q=
Python:
产量
dGVzdHRlc3Q=
有人可以在python或actionscript中使用相同的IV加密和base64encode相同的字符串,所以我知道哪个库实际上产生了正确的输出?
php - Crypt() 函数的河豚盐长度?
根据crypt() 文档,盐需要是字母表“./0-9A-Za-z”中的 22 个基数为 64 位的数字。
这是他们给出的代码示例:
第一个令人困惑的部分是 salt 有 25 个字符,而不是 22 个。
问题 #1:这是否意味着盐应该超过22 个字符?
然后我自己测试了这个功能并注意到了一些东西。如果我使用 20 个字符的盐,我会得到这个
因此,当我使用 20 个字符的盐时,整个盐都在输出中。这很方便,因为那时我不必将盐存放在单独的地方。(我想使用随机盐)。我将能够从生成的哈希中读取盐。
但是,如果我按照文档所述使用 22 个字符的盐,或者使用更长的盐,盐会在最后被切断。
问题 #2:那么,盐的正确长度到底是多少?20?22? 更长?
问题 #3:另外,在检查密码时从哈希中读取盐值是否是个好主意?而不是将盐存储在一个单独的字段中并从那里读取它。(这似乎是多余的,因为盐似乎包含在哈希中)。
c - C中的块密码字符串加密/解密
我正在尝试找到一个好的分组密码(AES、Blowfish 等)来加密/解密字符串。我在 C 中找不到任何好的示例。我在 C# 和 C++ 中找到了很多,在 c 中也找到了很多,但它们不支持char*
's. 如果有人能指出我正确的方向,那就太好了。