在 Open Liberty 25.0.0.9 中为 JWT Builder 新增 ECDH-ES 密钥管理算法的支持
本次发布在 JWT Builder 中引入了对 ECDH-ES 密钥管理算法的支持,提供了比 RSA-OAEP 更安全的替代方案。
在 Open Liberty 25.0.0.9 中:
查看版本 25.0.0.9 中修复的 bug 列表。
使用 25.0.0.9 开发和运行应用程序
如使用 Maven,在您的 pom.xml
文件中添加以下插件配置:
<plugin>
<groupId>io.openliberty.tools</groupId>
<artifactId>liberty-maven-plugin</artifactId>
<version>3.11.5</version>
</plugin>
如使用 Gradle,在您的 build.gradle
文件中添加:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'io.openliberty.tools:liberty-gradle-plugin:3.9.5'
}
}
apply plugin: 'liberty'
如使用容器镜像:
FROM icr.io/appcafe/open-liberty
或者您也可以访问我们的下载页面获取归档包。
此外,您若使用 IntelliJ IDEA、Visual Studio Code 或 Eclipse IDE,还集成使用我们的开源 Liberty 开发工具 (Liberty developer tools),在 IDE 内实现应用程序的开发、测试、调试及运行管理等全流程支持。
为 JWT Builder 新增 ECDH-ES 密钥管理算法的支持
Open Liberty 在其 JSON Web Token 1.0(jwt-1.0
)功能中新增对 ECDH-ES(Elliptic Curve Diffie-Hellman Ephemeral Static,椭圆曲线 Diffie-Hellman 临时静态)作为密钥管理算法的支持。通过在 jwtBuilder
配置中启用该算法,应用开发者可利用椭圆曲线密码学(Elliptic Curve Cryptography)生成 JSON Web Encryption(JWE)令牌的内容加密密钥(CEK)。
与之前支持的 RSA-OAEP 相比,ECDH-ES 提供了更现代、更安全的密钥协商机制。
要启用 ECDH-ES,开发者需在 keyManagementKeyAlias
属性中指定一个EC(Elliptic Curve,椭圆曲线)公钥。EC 公私钥对可通过 securityUtility
或 keytool
工具生成,例如:
./securityUtility createSSLCertificate --sigAlg=SHA256withECDSA --keySize=256 --server=myServer --validity=3650 --password=password
keytool -genkeypair -alias eccert -keyalg EC -groupname secp256r1 -validity 3650 -storetype pkcs12 -keystore myKeystore.p12 -storepass password
在 JSON Web Token 1.0(jwt-1.0
)功能的 jwtBuilder
元素中,可通过 keyManagementKeyAlgorithm
属性配置使用 ECDH-ES 密钥管理算法。开发者需通过 keyManagementKeyAlias
属性引用用于 ECDH-ES 密钥管理的 EC 公钥别名,并通过 trustStoreRef
属性指定密钥库。
在 server.xml
文件中配置这些特性,示例如下:
<jwtBuilder
keyManagementKeyAlgorithm="ECDH-ES"
keyManagementKeyAlias="myECPublicKey"
trustStoreRef="myTrustStore" ... />
更多关于 jwtBuilder
的配置信息,请参阅 Open Liberty 官方文档。
本次发布修复的安全漏洞(CVE)
CVE 编号 | CVSS 分数 | 漏洞类型 | 受影响版本 | 说明 |
---|---|---|---|---|
4.4 |
存储型跨站脚本(Stored XSS) |
17.0.0.3-25.0.0.8 |
影响 |
|
5.3 |
拒绝服务(Denial of Service) |
18.0.0.2-25.0.0.8 |
影响 |
|
7.5 |
拒绝服务(Denial of Service) |
17.0.0.3-25.0.0.8 |
影响 |
|
5.9 |
Bypass security |
17.0.0.3-25.0.0.8 |
影响 |
如需查看历史版本中已修复的安全漏洞,请参阅安全漏洞(CVE)列表。