Как избежать использования BouncyCastle в качестве провайдера с jCryption

Я использую jCryption для безопасного входа в систему. На клиентском компьютере я использую пакет JavaScript, а на Java-расшифровке я использую Jar BouncyCastle для расшифровки.

Проблема в том, что он работает нормально в Tomcat, но когда я беру одно и то же веб-приложение и развертываюсь на Jboss, у меня возникают проблемы с загрузкой фляги BouncyCastle.

Мой вопрос: есть ли способ шифрования с использованием jCryption, который даст более стандартизированный вывод RSA, который позволит мне использовать других поставщиков безопасности?

3 ответа

Вот фрагмент для декодирования RSA, совместимого с jCryption. Мы предполагаем, что encExternalKey это то, что jCryption отправить в key параметр при вызове рукопожатия. modulus а также secretExponent взяты из 100_1024_keys.inc.php файл, который поставляется с jCryption.

RSAPrivateKeySpec privateKeySpec =
   new RSAPrivateKeySpec(new BigInteger(modulus, 10), new BigInteger(secretExponent, 10));
RSAPrivateKey privateKey = (RSAPrivateKey) KeyFactory.getInstance("RSA").generatePrivate(privateKeySpec);

Cipher cipher = Cipher.getInstance("RSA/ECB/NoPadding");
cipher.init(Cipher.DECRYPT_MODE, privateKey);
StringBuilder externalKeyBuf =
    new StringBuilder(new String(cipher.doFinal(new BigInteger(encExternalKey, 16).toByteArray())));
String externalKey = externalKeyBuf.reverse().toString().trim();

Вообще говоря, если вы хотите обеспечить безопасность, избегайте криптографии JavaScript, вместо этого используйте SSL/TLS.

Основными проблемами являются:

  • недостаточное качество реализации криптографических процедур (например, случайных чисел)
  • клиент не знает, был ли этот скрипт подделан злоумышленником MITM, даже если библиотека JavaScript имеет достаточное качество.

К сожалению, вы не повышаете уровень безопасности, используя криптографию JavaScript на своем веб-сайте.

JCryption не так безопасен, как вы думаете:

http://www.securityfocus.com/archive/1/520683

Моя рекомендация... сделать что-то похожее на это:

http://www.frostjedi.com/terra/dev/rsa/index.php

Следующий URL уточняет:

http://area51.phpbb.com/phpBB/viewtopic.php?f=84&t=33024&start=0

Другие вопросы по тегам