17.02.2006 0:36:04Шифрование через JCP Ответов: 2
Чикарёв Константин
Установил JCP. Успешно генерируются ключи, сертификаты, создаётся хранилище. Попробовал запустить тестовый пример ClassicEncrypt. Класс выполняется до инициализации шифра, где выкидывает исключение:
Exception in thread "main" java.security.InvalidKeyException: Illegal key size or default parameters
at javax.crypto.Cipher.a(DashoA12275)
at javax.crypto.Cipher.init(DashoA12275)
at javax.crypto.Cipher.init(DashoA12275)
at userSamples.ClassicEncrypt.main(ClassicEncrypt.java:127)

Возможно, я что-то упустил в настройках.
 
Ответы:
17.02.2006 15:53:30Иван
Cудя по диагностике причина в следующем.
У вас установлен SUNовская JRE с экспортными ограничениями. США запрешает экспорт "сильной" криптографии.
JCP с длиной ключа 256 бит попадает под это ограничение.
Эти ограничения устанавливаются файлами local_policy.jar и US_export_policy.jar в каталоге jre\lib\security.
Файл с политиками можно скачать отсюда http://java.sun.com/j2se/1.4.2/download.html.
Для отладки можно скопировать US_export_policy.jar в local_policy.jar.
17.02.2006 16:10:14maddcast
Спасибо за быстрый ответ. Причина была именно в этом.