Skip to content
欢迎扫码关注公众号

JEP 115: AEAD CipherSuites

摘要

支持 SP-800-380D、RFC 5116、RFC 5246、RFC 5288、RFC 5289 和 RFC 5430 中定义的 AEAD/GCM 密码组。

目标

  1. 实现 JCA/JCE 中的 AEAD/GCM 密码算法。
  2. 更新 JCA/JCE,以支持 AEAD 操作。
  3. 在 JSSE 中实现基于 AEAD/GCM 的密码套件。

动机

作为美国国家安全局 Suite B 计划(国家密码基础设施现代化)的一部分,JDK 需要支持 AES 等密码的 Galois 计数器模式(GCM)密码模式。GCM 也在一些新的 TLS 密码套件中使用。对于进入美国政府销售领域以及需要现代密码技术的其他客户,GCM 模式将是必需的。

为了满足 Suite B TLS 合规性,当客户端和服务器都支持必要的密码套件时,必须使用 GCM 密码套件。要实现 Suite-B 合规性,GCM 密码套件需要在默认的 JSSE 提供程序中得到支持。

描述

在 JDK 7 中,Java SE 已经为 AEAD/GCM 接口提供了定义。在 JDK 8 中,JCA/JCE 提供程序将实现这些 AEAD/GCM 接口。PKCS#11 标准的 GCM 支持在 PKCS#11 V2.30 规范中被定义,但该规范仍然是草案。因此,SunPKCS11 提供程序在 JDK 8 中将不会增强以支持 GCM。

此功能将在默认 JSSE 实现中支持以下密码套件:

  • TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 (RFC 5430, RFC 5289)
  • TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 (RFC 5430, RFC 5289)
  • TLS_ECDH_ECDSA_WITH_AES_128_GCM_SHA256 (RFC 5289)
  • TLS_ECDH_ECDSA_WITH_AES_256_GCM_SHA384 (RFC 5289)
  • TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (RFC 5289)
  • TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (RFC 5289)
  • TLS_ECDH_RSA_WITH_AES_128_GCM_SHA256 (RFC 5289)
  • TLS_ECDH_RSA_WITH_AES_256_GCM_SHA384 (RFC 5289)
  • TLS_RSA_WITH_AES_128_GCM_SHA256 (RFC 5288)
  • TLS_RSA_WITH_AES_256_GCM_SHA384 (RFC 5288)
  • TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 (RFC 5288)
  • TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 (RFC 5288)
  • TLS_DH_RSA_WITH_AES_128_GCM_SHA256 (RFC 5288)
  • TLS_DH_RSA_WITH_AES_256_GCM_SHA384 (RFC 5288)
  • TLS_DHE_DSS_WITH_AES_128_GCM_SHA256 (RFC 5288)
  • TLS_DHE_DSS_WITH_AES_256_GCM_SHA384 (RFC 5288)
  • TLS_DH_DSS_WITH_AES_128_GCM_SHA256 (RFC 5288)
  • TLS_DH_DSS_WITH_AES_256_GCM_SHA384 (RFC 5288)
  • TLS_DH_anon_WITH_AES_128_GCM_SHA256 (RFC 5288)
  • TLS_DH_anon_WITH_AES_256_GCM_SHA384 (RFC 5288)

请注意,为了支持 JVM 中的 AEAD 密码套件,GCM 密码实现必须至少从一个 JCA/JCE 提供程序中可用。因此,作为这个 JEP 的一部分,SunJCE 提供程序将得到相应增强,以提供 JSSE AEAD 密码套件所需的 GCM 支持。

测试

  1. 需要验证新接口是否符合预期行为。
  2. 需要验证实现是否以意外的方式破坏了向后兼容性。
  3. 需要验证实现是否以意外的方式引入了新的互操作性问题。

影响

  • JCP: 对 JCP 没有影响
  • 其他 JDK 组件:对其他 JDK 组件没有影响
  • 兼容性:最小化影响
  • 安全性:对安全性没有影响
  • 可移植性:对可移植性产生有限影响
  • 用户界面:无图形用户界面
  • 文档:需要记录新功能的文档
  • 国际化:最小化影响,可能会添加新的错误消息
  • 本地化:最小化影响,可能会添加新的错误消息
  • 法律问题:无法律问题
  • 其他:无其他已知影响

Page Layout Max Width

Adjust the exact value of the page width of VitePress layout to adapt to different reading needs and screens.

Adjust the maximum width of the page layout
A ranged slider for user to choose and customize their desired width of the maximum width of the page layout can go.

Content Layout Max Width

Adjust the exact value of the document content width of VitePress layout to adapt to different reading needs and screens.

Adjust the maximum width of the content layout
A ranged slider for user to choose and customize their desired width of the maximum width of the content layout can go.