问题标签 [3des]

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

c - 什么是三重 DESm (3DESm) 加密方法?它与 3DES 有很大不同吗?

我必须在 C 程序中解密已在 CBC 模式下使用 3DESm 方法加密的加密消息。它看起来与我们从 3DES 方法得到的加密消息完全不同。通常我们加密后得到的密文是一个长度为16的十六进制数,仅包含0-9和AF等字符。但我需要解密的密文长度超过 20 个字符,包括 AZ、az、0-9 中的所有字符,还包括一些特殊字符,如“+”和“=”。哪个图书馆有助于做必要的事情?

0 投票
1 回答
1293 浏览

.net - RAILO CFML 中的 DESede (3DES) 加密

我已经尝试了很多天来尝试解决这个问题。

第 3 方网络服务要求我使用带有 ECB 和 PKCS7padding 的 3DES 发送加密数据 - 他们使用的是 .NET

railo CFML 中的加密功能仅限于 DESede,没有任何其他选项(即默认值用于密码模式和填充)。

有没有人在 Railo 中遇到过这个问题并提出了解决方案(也许是基于 java 的)?- 我在这里认真地把头发拉出来!

根据下面 Leigh 的建议,我做了一些更改:

我已经取得了一些进展,我认为这个密钥上有某种 MD5 散列。

我在网上搜索并稍微修改了您的解决方案 - 我认为填充不是必要的,但生成的加密字符串起初似乎是我应该期待的,但仔细检查它是不正确的:

其结果是:26sfwv2DHDj7EHYd5Qao8veDtPbKIcv8rDVhbLPDEaWHO27EUGRF6KrdbXe7NBUVADYMdGuagfO4Tev584dUcgKGJ2h6kWPZxooNUGMgL2xB7e00YOkLosA8wFD569sZUd1MGKuF9yCjY1zCsAE4SgohkcuK9YZ7BizQma99 / W9yOsIjAfHtAqGiep4tMTQ + eFASYtPybccsgi8H4brIB / HAu0kaDSAw

预期的结果是: 26sfwv2DHDj7EHYd5Qao8veDtPbKIcv8rDVhbLPDEaWHO27EUGRF6MxaAzUpJDqQBq8NGgdqmtn6q / wVQNHGWrOE8 + aetKVC78nszS3ZO8AHjwoT1igv4lGl78n8jCHHU + KwnBT7KfXIYMTCuwO / MohIiFbGyhMXPsvv3 / G4OY1C2nEkN0LweLh4mTgtU8syT1M9XdmvwhaltsmPoFtoE9FujvQpJCY3

0 投票
1 回答
2093 浏览

.net - 在 .NET 中解密用 3DES 加密的 ColdFusion 中的字符串

我无法解密在 .NET 中加密的字符串。我在这里看到了其他几个解决方案,主要是在 C# 中解密用 3DES 加密的 ColdFusion 中的字符串,但我在尝试解密传递给我的 .NET 加密字符串时仍然遇到问题。这是错误:

“尝试加密或解密您的输入字符串时发生错误:给定最终块未正确填充。”

在进一步的测试中,当开始使用相同的解密文本时,我在 CF 中得到的加密字符串与在 .NET 中不同

这是用于加密/解密的 .NET 代码 - 我用填写信息替换了密钥和 IV 数据:

这是加密/解密的 CF 代码:

为了清楚起见 - 在尝试测试此代码时,我在解密 .NET 加密字符串时遇到了错误,因此我尝试加密 CF 中的值以查看是否得到相同的加密字符串。

在 CF 中,108644 被加密为 63Yp6O+8K+U=

在 .NET 中,108644 被加密为 7loa00RCdZo=

我陷入了僵局。我不知道从这里去哪里。任何帮助是极大的赞赏!

0 投票
2 回答
6341 浏览

java - 使用 Java 解密 3Des 中的值

我在解密来自使用 3Des 的第三方的值时遇到问题。他们给了我一个密钥、一个加密值、使用的模式以及解密后的值应该是什么,但到目前为止我一直无法弄清楚如何从 a 点到 b 点。我相信问题与他们给我的密钥有关——他们说这是明文密钥,但我认为它仍然需要以某种方式进一步转换。

下面的代码是我最初尝试了解如何解密该值的示例(在这种情况下为 AC9C5A46A63FC9EA)

任何见解将不胜感激。

0 投票
2 回答
4986 浏览

.net - 使用三重 DES 解密信息时出现错误数据

我正在通过.Net开发一个mvc应用程序,以保护我的敏感信息,例如web.config中的信息我有两个使用Triple DES加密和解密信息的函数,但是我对此并不陌生并成功达到在朋友的帮助下。

加密功能工作正常并返回正确的字符串但是当我尝试解密我得到的相同字符串时

Exception Details: System.Security.Cryptography.CryptographicException: Bad Data.

解密函数这一行的错误:

Results = Decryptor.TransformFinalBlock(DataToDecrypt, 0, DataToDecrypt.Length);

我试图以我作为注释代码包含的几种方式来解决它,但他们没有帮助,请帮助我解决这个问题。

0 投票
1 回答
2425 浏览

java - 密码/3DES/CFB/Java 和 PHP

我有一个 PHP 伺服器,它使用 CFB 模式解密 3DES 中的数据

我用 PHP 加密:

PHP 中的此脚本适用于其他系统。

我想用 Java 加密:

我在 PHP 和 Java 中的结果不同

如何修改Java处理以获得与PHP相同的结果?

0 投票
1 回答
1263 浏览

python - Python 中是否有 112 位 Triple DES 示例实现?

Python 中是否有 112 位 Triple DES 示例实现?

我找到了pydes,但它仅适用于Triple DES的 16 或 24 字节。

0 投票
2 回答
5032 浏览

java - TripleDES 算法:从 .NET 到 Java

我有这个 vb.net 代码(但我认为含义代码也与 c# 等效),我必须在 Java 中复制它并且无论如何我都无法修改它(只是复制):

确切地说,这是一个 .NET 实用程序类函数。

现在,

我不知道如何复制

在java代码中我开始写一些代码,但我不知道如何继续:

更新:

我刚刚更新了代码。现在应该不错了。Enctoken String 将是一个字符串数据表示(刚刚知道)。这样,只有当第二个参数为 NULL 时才设置固定键

更新 2

不幸的是,c# hash 总是与 Java hash 不同!!如何在java中复制这个??

我以这种方式尝试过,但它不起作用:

哈希

0 投票
1 回答
4070 浏览

c# - 将 Java Triple DES 结果与 C# one 匹配

我有以下三重 DES 的 C# 实现

我需要在 Java/Groovy 中产生相同的结果,我显然陷入了困境。我现在的代码如下:

这一个输出:ef2c57c3fa18d0a5

Hex.decode()这是充气城堡

我还尝试通过在最后一轮使用 DES/CBC 和 EBC 在 Java 中重现相同的 C# 代码,这给了我什至不同的结果:48f63c809c38e1eb

如果有人能给我暗示我可能做错了什么,那就太好了

更新:

感谢大家的帮助!无需太多调整即可按需工作的最终代码:

0 投票
1 回答
529 浏览

.net - 无法解析符号 GetSHA256String

我正在通过.Net开发一个mvc应用程序,以保护我在web.config中的敏感信息我的模型中有两个函数可以使用Triple DES加密和解密信息,但是我是新手并成功达到在朋友的帮助下到这里,并在这里寻求一些在线帮助。

但是现在当我尝试在我的 PC 中执行代码时,我收到了这个错误:

Cannot resolve symbol GetSHA256String

在使用此方法的加密和解密函数中。

我在这里缺少目录吗?请帮我解决这个问题。