问题标签 [tripledes]

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

c# - C# 中的 TripleDES 解密

嗨,当我使用相同的实例TripleDES = new TripleDESCryptoServiceProvider();正确地解密消息时,但是当我尝试使用新实例进行 dcrypt 时,它显示“错误数据”

0 投票
2 回答
6353 浏览

c# - C# 中 TripleDES 的指定密钥大小是多少?

所以我试图在 C# 中使用 TripleDES 算法。

但是,我不断收到错误消息,说它不是指定的密钥大小。

这是什么意思,我该如何解决?

它在线上发生:

pdb 是一个 Rfc2898DeriveBytes。

所以是的,我该如何解决这个错误?

0 投票
2 回答
938 浏览

encryption - TripleDESCryptoServiceProvider - 易受拒绝服务攻击?

我们有一个旧的 ASP.NET 站点,它在此处使用加密方法:

http://www.codekeep.net/snippets/af1cd375-059a-4175-93d7-25eea2c5c660.aspx

当我们调用以下方法时,页面加载非常缓慢,最终返回 Connection Reset:

如果在后续的页面请求中多次调用该方法,应用程序池将关闭

这发生在运行 .NET framework v3.5 的 Windows 2008 服务器上。

我将问题缩小到TransformFinalBlock()电话。

注意:在 Cassini 上,我没有收到连接超时;而是引发以下异常:

为其他字符串调用 Decrypt() 在任何环境中都不会出现问题。

为什么会这样?这是 TripleDESCryptoServiceProvider 中的错误吗?

显然,我可以过滤 cipherString 以拒绝 " " 并避免这个特定问题。但是,我担心我不怀疑的其他一些 cipherString 值会导致 DoS。

更新 2011.06.28

以下是重现该问题的最少代码:

0 投票
4 回答
11100 浏览

encryption - TripleDES 密钥大小 - .NET 与 Wikipedia

根据维基百科,TripleDES 支持 56、112 和 168 位密钥长度,但 System.Cryptography.TripleDESCryptoServiceProvider.LegalKeySizes 表示它只接受 128 和 192 位密钥长度。

我正在开发的系统需要可互操作(由我的代码加密的数据需要在 PHP、Java 和 Objective-C 中可解密),在这种情况下我不知道谁是正确的。

那我应该相信谁?我如何确保我的加密数据是可移植的?

0 投票
1 回答
555 浏览

c# - 我的 TripleDES 包装器不起作用

紧接着我上一个与 TripleDES 相关的问题,这是我的 TripleDES 包装代码,用于加密和解密整数:

当我运行它时,我得到每个输入的确定性结果EncryptID,但每次调用都DecryptID返回零。我进入代码并说“输出”数组的内容全为零(并tr.TransformBlock返回零)。有谁知道我做错了什么?

我试着打电话tr.TransformFinalBlock,但我遇到了一个例外:

0 投票
1 回答
282 浏览

php - 什么可能导致 PHP mcrypt 破坏数据?

我正在使用 mcrypt 函数使用 TripleDES 加密文本块。90%的时间它应该正常工作,我可以很好地解密。剩下的 10% 虽然我根本无法解密它——好像我的密钥错误或数据被破坏了一样。

功能如下:

它们的键和 IV 是正确的长度(分别为 24/8)并且永远不会改变。就像我说的,它在所有东西上运行完全相同的代码,但只有 10% 以这种方式失败。

有什么我可以传递的$text导致这种情况吗?它不喜欢某些字符集吗?还是由于内存不足/其他一些服务器状况而发生这种情况?

任何帮助解决这个问题将不胜感激。谢谢!

0 投票
1 回答
2229 浏览

java - 从 android 调用时,TripleDES 算法会产生不同的结果

我有一个由 apache wicket 构建的简单 Java Web 应用程序。当我在网络应用程序中注册用户时,我使用三元组加密他们输入的密码并将其保存到数据库中。在登录页面,当他们输入相同的密码时,我对其进行加密并将加密后的密码传递给数据库,以检查它是否正确。

现在我正在构建一个具有相同登录功能的安卓应用程序。

在 android 应用程序登录页面中,我使用相同的加密库来加密密码,并且我对两个平台使用相同的密钥和初始化向量,但是如果我尝试在 android 中输入相同的密码字符串,TripleDes 算法会生成完全不同的加密密码(很多更长)。因此从 android 设备登录失败。我还注意到android生成的加密密码无法解密,它会引发异常。

我认为两个平台之间可能存在字符串编码问题差异,但无法弄清楚是什么原因造成的以及如何解决它。

这是我使用的算法:

}

0 投票
2 回答
1403 浏览

.net - 如何为 TripleDESCryptoServiceProvider 生成强加密密钥

我正在使用TripleDESCryptoServiceProvider并且需要存储加密密钥。

如果我调用 providersGenerateKey方法,这只是一个 base64 编码的字符串吗?如果是这样,我可以安全地取消编码,例如使用生成的字符串作为键吗?

稍微不同的是,在进行单向哈希时,使用相同的密钥作为盐密钥有什么问题吗?我正在为.net 编写一个简单的会员提供程序,它允许用户选择加密技术(普通、哈希、加密),所以想知道是否有必要让用户同时指定盐密钥和加密密钥。

0 投票
1 回答
1744 浏览

.net - 如果我有 IV、加密数据和结果值,我可以在三重 DES 加密算法中找到密钥吗?

这并不意味着任何类型的黑客攻击,我只是在尝试使用 .NET 中的三重 DES 加密技术。我有一些测试数据。我必须用给定的数据得到结果。我也有结果。但值永远不会匹配。我确信代码很好(将在下面给出)。所以我认为唯一的可能是钥匙错了,所以让我们找到钥匙,看看是否匹配。下面是我的代码:

最后的结果是1B529558534F43D15556AD65C7E396D5674EE8A09E0A29A84389020EF820AC51B7D5E1B33BDA18A2。由于我只需要 16 个字节,因此我只将前 16 个字节转换为 hex 1B529558534F43D15556AD65C7E396D5

但预期的结果是76db821f5c7af12dc8d70a6a79cfcb77 如果我能找到密钥,我可能知道密钥中也需要进行某种处理。

谢谢您的帮助!

0 投票
2 回答
10209 浏览

java - 用于 Java 三重 DES 加密/解密的 PHP 等效项

我正在尝试使用 PHP mcrypt 函数解密由 Java Triple DES 函数加密的密钥,但没有运气。在下面找到java代码

我想写一个与上面decryptText Java函数等效的PHP函数。我发现难以生成由 Java 代码生成的用于加密的确切 IV 值,这是解密所必需的。