2015-02-21 3 views
3

(это чисто для академических целей)EC ElGamal в Надувной замок для Java

Я получил RSA и ElGamal реализованы с использованием Надувной замок, но я не уверен, как impliment EC ElGamal. раздел 4.4 в спецификациях bouncy castle говорит: «В пакете org.bouncycastle.crypto.ec содержатся реализации для различных криптографических преобразований EC, таких как EC ElGamal». Однако он не объясняет, как его использовать.

у меня, насколько используя названные кривые в генерации ключей пары

ECNamedCurveTable.getParameterSpec("prime192v1") 

Но я не знаю ссылку алгоритма, например, «AES», «RSA» поставить инициализацию называет

KeyPairGenerator kpg = KeyPairGenerator.getInstance(algorithm, provider); 

Или, если что-нибудь еще нужно изменить при использовании ECC? Я полагаю, что ограничение размера сообщения в ECC основано на размере кривой? приведенный выше пример - 192 бита.

+0

См. Этот ответ [ответ на крипто] (http://crypto.stackexchange.com/a/9990/1172), который показывает, как сообщение может быть преобразовано в точку. –

+0

И [этот ответ Расмуса] (http://stackoverflow.com/a/6664005/589259) должен дать вам последний кусочек головоломки. –

+0

Эта вторая ссылка была полезна. Итак, у bouncy castle нет кодировки, такой как встроенный метод koblitz? – colobusgem

ответ

2

С помощью ECElGamalEncryptor вы можете только зашифровать точку на кривой. Это на самом деле то же самое с учебником RSA (то есть модульное возведение в степень), где вы можете только зашифровать большое целое число (меньше модуля).

Вы должны использовать схему, такую ​​как ECIES, для шифрования с криптографией с эллиптической кривой. ECIES в основном использует статический Diffie-Hellman для шифрования сообщений.

+0

Я знаю, что такое ECIES. Как я уже сказал, это чисто академическое, я выполняю тесты на разных реализациях. Как использовать 'ECElGamalEncryptor'? Имеет ли надувной замок функцию кодирования, чтобы превратить сообщение в точку? или это встроено в двигатель? – colobusgem

+0

ОК, надо признать, что я тоже застрял с этим. –

Смежные вопросы