无法将 PBEWithHmacSHA1AndDESede 与 Bouncy Castle fips jar 一起使用,可与 RSA cryptoJ 一起使用

Posted

技术标签:

【中文标题】无法将 PBEWithHmacSHA1AndDESede 与 Bouncy Castle fips jar 一起使用,可与 RSA cryptoJ 一起使用【英文标题】:Can't use PBEWithHmacSHA1AndDESede with Bouncy Castle fips jar, works fine with RSA cryptoJ 【发布时间】:2017-06-14 07:26:46 【问题描述】:

我有一个使用算法 PBEWithHmacSHA1AndDESede 创建密钥的代码

SecretKeyFactory.getInstance("PBEWithHmacSHA1AndDESede");

上述内容适用于 RSA JSAFE JCE,但不适用于 BouncyCastle Fips Jar。

匹配 RSA 的 PBEWithHmacSHA1AndDESede 的 bouncycastle 算法是什么?

【问题讨论】:

【参考方案1】:

PBEWithHmacSHA1AndDESede 转换为 DESede/CBC/PKCS5Padding 密码,密钥由 PBKDF2withHmacSHA1 创建

SecretKeyFactory kf = SecretKeyFactory.getInstance(
    "PBKDF2withHmacSHA1", "BCFIPS");

Cipher c = Cipher.getInstance("DESede/CBC/PKCS5Padding", "BCFIPS");

【讨论】:

以上是关于无法将 PBEWithHmacSHA1AndDESede 与 Bouncy Castle fips jar 一起使用,可与 RSA cryptoJ 一起使用的主要内容,如果未能解决你的问题,请参考以下文章

无法将 createdAt 和 updatedAt 保存为日期时间值,也无法将后端保存为前端

C# 无法将类型为“System.Byte[]”的对象强制转换为类型“System.Data.DataTable

无法将类型为“System.Collections.Generic.List`1[EPMS.Domain.SingleItem]”的对象强制转换为类型“EPMS

无法将 .json 文件从 CSV 下载到 JSON 转换并且无法将 JSON 转换为 CSV

无法将 ReactiveUI 添加到 NUnit 测试项目

“无法将图像数据写入路径” - Laravel 图像干预