问题标签 [pbkdf2]

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 投票
4 回答
11922 浏览

cryptography - PBKDF2-HMAC-SHA2 测试向量

RFC6070中有 PBKDF2-HMAC-SHA1 的测试向量。RFC4231中有 HMAC-SHA2 的测试向量。

但到目前为止,我还没有在任何地方找到 PBKDF2-HMAC-SHA2 的测试向量。

我对 SHA256 最感兴趣,所以我将发布一些我用我的实现计算的向量。如果有人可以验证/确认他们,或者贡献他们自己的,我会很高兴。

0 投票
1 回答
20386 浏览

java - PBEKeySpec iterationCount 和 keyLength 参数有什么影响?

深入研究 java 加密和散列世界,我看到了类的构造函数示例,PBEKeySpec该类具有不同的值iterationCountkeyLength参数。似乎没有什么可以解释这些参数的影响或含义。

我假设这keyLength是密钥的长度,因此 32 位加密将采用 32 作为密钥长度的值,但这种假设感觉是错误的。我的猜测iterationCount是每个字符被加密的次数,同样也没有感受到这种假设的爱。

信息或解释的链接表示赞赏。

0 投票
1 回答
1871 浏览

java - Java 中的 PBKDF2 与 Bouncy Castle 对比 .NET Rfc2898DeriveBytes?

我有一些使用 PBKDF2 生成密钥的 C# 代码。

这工作正常。我正在尝试使用 Bouncy Castle 在 Java 中实现相同的功能。无法让它工作(Java 缺少无符号类型的事实使它更加烦人)。

生成的 bcKey 字节数组不同。我究竟做错了什么?我是要正确处理从未签名到已签名的转换,还是不会像我预期的那样工作?

0 投票
1 回答
355 浏览

encryption - 位串的大小在散列函数中是否重要?

我正在尝试创建PBKDF2的实现来生成密钥以使用 AES-256 加密文件,但我有一个关于盐大小的问题。我计划使用 SHA-256 并与密码连接,如果连接的位串的大小大于 256 位,是否会有所不同,或者如果盐和密码都是 256 位,是否会被认为更安全,使他们的串联 512 位?

0 投票
4 回答
4671 浏览

cryptography - 多次加密(MD5)可以提高安全性?

我看到有人用 MD5 多次加密用户密码以提高安全性。我不确定这是否有效,但看起来不太好。那么,这有意义吗?

0 投票
4 回答
8996 浏览

c# - .NET:PasswordDeriveBytes 和 Rfc2898DeriveBytes 之间的区别

我试图理解一些 C# 代码,我已经收到了,它处理密码学,特别PasswordDeriveBytes是从System.Security.Cryptography.

.NET 文档中,它说PasswordDeriveBytes使用“​​PBKDF1 算法的扩展”,该算法稍后在文档中指定为“PKCS#5 v2.0 标准”,即 PBKDF2(据我所知)。但是,我在网上找到的任何地方(包括 Stack Exchange 上的此处)都说“使用 Rfc2898DeriveBytes,因为不推荐使用 Password* 并使用 PBKDF1”。但在msdn.microsoft.com上的文档中唯一的区别似乎是 Rfc*-version 特别提到了 PBKDF2,其中 Password* 表示“PBKDF1 的扩展”和“PKCS#5 v 2.0”。

那么,谁能告诉我这两个类(如果有的话)有什么区别以及为什么我应该使用一个而不是另一个来推导 PBKDF2 密码密钥?

现在,处理相同数据的其他代码明确使用 PBKDF2,并且可以工作,因此这表明确实PasswordDeriveBytes也使用 PBKDF2,或者 PBKDF2 在某些情况下只是与 PBKDF1 兼容,但我想确定它是不是一些随机事物的副作用,而且事情只是神奇地起作用(最终可能会神奇而壮观地破坏),而没有人真正理解为什么。

0 投票
1 回答
1002 浏览

password-encryption - PBKDF2 在 Python 和 Javascript 库之间不匹配

使用密码“password”,salt“1234567812345678”100次重复,128位结果

http://bitwiseshiftleft.github.com/sjcl/demo/是一个 javascript 实现,给出结果 A374FF6A12280F020162A62A9B3212AA

http://matt.ucc.asn.au/src/pbkdf2.py是一个 python 实现,结果为 89FBE50AF230BD273076AA9BC9F1142A

如果 PBKDF2 是它们都实施的标准,它们为什么不同?

0 投票
1 回答
3041 浏览

javascript - 如何等待咖啡脚本(或 javascript)中的回调?

我正在开发一个密码管理器 webapp,它使用 Parvez Anandam 的 pbkdf2.js 生成密钥(即将文本密码转换为适合 AES 的 256 位密钥)。我正在使用该项目来学习咖啡脚本。我无法从回调中获取数据。这是我的代码:

由于deriveKey 立即返回,我没有数据——最后一行打印“1”。处理这个问题的正确方法是什么?在 java 中,我希望得到一个类似 Future 的对象,我可以加入或等待,但我意识到我的后端习惯可能不适合 UI 代码。我应该从继续加密并提交表单的回调中调用“继续”函数吗?

0 投票
3 回答
8787 浏览

sql - 是否有 PBKDF2 的 SQL 实现?

有谁知道PBKDF2的 SQL 实现?

(我宁愿不使用外部库,例如ChillKat 的 ActiveX组件。)

0 投票
2 回答
16224 浏览

android - Android中的PBKDF2函数

是否有适用于 Android 的 PBKDF2 实现。我正在尝试使用 PBKDF2 函数派生密钥。我找不到这样做的例子。