EC ElGamal в Надувном замке для Явы

(это чисто для академических целей)

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

Я дошел до использования названных кривых в генерации пары ключей

ECNamedCurveTable.getParameterSpec("prime192v1")

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

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

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

1 ответ

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

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

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