【问题标题】:How to add OAEPParameterSpec to a JWE object?如何将 OAEPParameterSpec 添加到 JWE 对象?
【发布时间】:2019-12-24 15:20:34
【问题描述】:

我需要将 OAEPParameterSpec 作为 AlgorithmParameterSpec 添加到 JWE(Json Web 加密)对象。我该怎么做?

我正在使用客户端 - 服务器应用程序。服务器正在使用 RSA-OAEP-256 加密算法进行加密,客户端无法解密它,因为它使用的是 HSM 并且存在填充问题。大量研究表明,必须使用 BouncyCastle 提供程序来解决这个问题,但这与我无关,因为我无法更改 HSM。

为了做到这一点,应该在服务器端进行调整,然后再加密是添加以下行

AlgorithmParameterSpec oaepParameterSpec = new OAEPParameterSpec("SHA-256", "MGF1", MGF1ParameterSpec.SHA256, PSource.PSpecified.DEFAULT); 

这个“oaepParameterSpec”必须添加到我正在使用的 JWE 对象中,但我找不到任何参考来指导我如何做到这一点,也找不到关于如何更改/设置 AlgorithmParameterSpec 的 jose4j 规范。

【问题讨论】:

    标签: java security jwe jose4j


    【解决方案1】:

    jose4j 中的 RSA-OAEP-256 实现使用 OAEPParameterSpec https://bitbucket.org/b_c/jose4j/src/2e8f0c3fe7fdc9c8c48a572e02a677fb16c21448/src/main/java/org/jose4j/jwe/RsaKeyManagementAlgorithm.java#lines-84 所以我不知道该路径是否会有所帮助。

    【讨论】:

    • 我遇到过。但这里的问题是我必须通过 JWE ( JsonWebEncryption ) 对象进行加密。我需要找到一种方法如何将 JWE 对象与 RsaKeyManagementAlgorithm 实例链接/初始化,但我不知道该怎么做。
    • JsonWebEncryption 对象将使用 JWE 中的 alg 标头值指示的 KeyManagementAlgorithm 实现。测试中的一些示例用法(有点)bitbucket.org/b_c/jose4j/src/…bitbucket.org/b_c/jose4j/src/…
    猜你喜欢
    • 2020-04-11
    • 2014-09-14
    • 2023-01-19
    • 2018-10-06
    • 2012-01-09
    • 2017-05-03
    • 1970-01-01
    • 2014-08-31
    • 2021-05-26
    相关资源
    最近更新 更多