当开始jetty-distribution-9.3.0.v20150612
有openjdk 1.8.0_51
一个亚马逊EC2 Linux机器上运行,是所有配置的ECDHE套房不支持打印.
2015-08-12 16:51:20 main SslContextFactory [INFO] Cipher TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 not supported
2015-08-12 16:51:20 main SslContextFactory [INFO] Cipher TLS_DHE_RSA_WITH_CHACHA20_POLY1305_SHA256 not supported
2015-08-12 16:51:20 main SslContextFactory [INFO] Cipher TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 not supported
2015-08-12 16:51:20 main SslContextFactory [INFO] Cipher TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 not supported
2015-08-12 16:51:20 main SslContextFactory [INFO] Cipher TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 not supported
2015-08-12 16:51:20 main SslContextFactory [INFO] Cipher TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 not supported
2015-08-12 16:51:20 main SslContextFactory [INFO] Cipher TLS_ECDHE_RSA_WITH_CAMELLIA_256_CBC_SHA384 not supported
2015-08-12 16:51:20 main SslContextFactory [INFO] Cipher TLS_ECDHE_RSA_WITH_CAMELLIA_128_CBC_SHA256 not supported
2015-08-12 …
Run Code Online (Sandbox Code Playgroud) 我正在使用一个远程服务器,该服务器使用Netty通过Netty SSLHandler库通过TLS握手执行客户端身份验证.这个S/O问题提供了一点:使用双向SSL Handake设置Netty(客户端和服务器证书)
现在,我对这个系统的问题是服务器需要一个TrustManager来初始化SSLContext.根据我的观察,这使用了SunJSSE提供程序.现在,在设置此实现之后,我开始使用RSA客户端证书.现在,我无法使用ECC客户端证书,因为SunJSSE无法识别它们(我认为Java SE 7包含SunEC作为提供商.但SunEC是SunJCE实现而不是SunJSSE实现,因此不能用作TrustManager的提供者).那么,我该怎么办呢.我听说Bouncy Castle可以识别这些证书,但我仍然无法实例化BC作为提供者的TrustManager.
编辑:如果没有办法使用TrustManagers,我是否应该只使用BouncyCastle的API而不是netty的库?这似乎关闭了.这是我显示堆栈跟踪的其他S/O问题:客户端ECC SSL证书包含"未知命名曲线"