【问题标题】:How to make existing Java code FIPS 140-2 compliant?如何使现有的 Java 代码符合 FIPS 140-2?
【发布时间】:2021-04-27 01:20:57
【问题描述】:

我们有一些执行 AES 和 RSA 加密的 Java 库(使用 javax.crypto.Cipher)。

为了使代码FIPS 140-2 兼容,出现了一项新要求。阅读一些文章我的理解是我必须在JDK/JRE中的java.security文件中更改以下内容并重新编译代码。这会使我的库符合 FIPS 140-2 吗?

#Use these three providers for FIPS compliant
security.provider.1=com.rsa.jsafe.provider.JsafeJCE
security.provider.2=com.rsa.jsse.JsseProvider
security.provider.3=sun.security.provider.Sun

#Disable the below providers for FIPS compliant
#security.provider.1=sun.security.provider.Sun
#security.provider.2=sun.security.rsa.SunRsaSign
#security.provider.3=sun.security.ec.SunEC
#security.provider.4=com.sun.net.ssl.internal.ssl.Provider
#security.provider.5=com.sun.crypto.provider.SunJCE
#security.provider.6=sun.security.jgss.SunProvider
#security.provider.7=com.sun.security.sasl.Provider
#security.provider.8=org.jcp.xml.dsig.internal.dom.XMLDSigRI
#security.provider.9=sun.security.smartcardio.SunPCSC
#security.provider.10=sun.security.mscapi.SunMSCAPI

我是否需要执行任何其他更改,例如使用任何特殊的 jar、使用任何参数进行编译等?

【问题讨论】:

    标签: java jce fips


    【解决方案1】:

    要符合 FIPS 140-2:

    对于您的情况:

    • AES128、AES192 或 AES256 用于加密,操作模式为 GCM、CCM、CTR、CBC、CFB、OFB(或 XTS 用于存储)。
    • 用于密钥建立或签名的 RSA,密钥大小至少为 2048 位。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-05-29
      • 1970-01-01
      相关资源
      最近更新 更多