2017-02-19 10 views
0

Я хорошо знаю, что Java 7 по умолчанию не поддерживает шифры на основе GCM. Поэтому я попытался сделать это через Bouncy Castle.Как добавить поддержку AES-GCM для Tomcat 7 в Java 7

У меня есть следующие шифры, настроенные в моем разъем HTTPS для Tomcat:

шифры = "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, TLS_DHE_RSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384, TLS_DHE_RSA_WITH_AES_256_CBC_SHA256, TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_DHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 "

И я поставил bcprov-jdk15on-156.jar в jdk1.7.0_80/JRE/Библиотека/внутр.

Также добавили следующее свойство к jdk1.7.0_80/JRE/Библиотека/безопасность/java.security

security.provider.1 = org.bouncycastle.jce.provider.BouncyCastleProvider

Когда GCM-шифры настроены в разъеме Tomcat, клиенты не могут подключиться к моему серверу вообще. Кажется, настройка Bouncy Castle не имеет никакого эффекта.

Есть ли в любом случае я могу заставить это работать? Любой другой поставщик JCE, который я мог бы использовать, может быть?

ПРИМЕЧАНИЕ: Я использую Oracle JDK 1.7.0_80. Невозможно перейти на Java 8.

+0

Есть ли у вас какие-либо ошибки в Tomcat, во время запуска или подключения клиента? –

+0

@SlawomirJaranowski нет, ничего. – drox

ответ

0

В Oracle Java JDK ограниченная криптография ограничена.

Пожалуйста, установите:
Java Cryptography Extension (JCE) Безлимитный Strength политики Юрисдикция http://www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.html

+0

Неограниченная сила Юрисдикция уже добавлена. Это не повлияет на шифры GCM в Java 7 – drox