RSA зашифрован на Java, не может расшифровать на C++ с помощью API openssl.C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 RSA зашифрован на Java, не может расшифровать на C++ с помощью API openssl.

Сообщение Anonymous »

на стороне Java:
  • используйте jumpycastle, чтобы получить пару ключей, PrivateKey и PublicKey

    зашифруйте исходное сообщение1 с помощью закрытого ключа, чтобы получить зашифрованное сообщение2.
  • расшифровайте зашифрованное сообщение2 с помощью открытого ключа. , успешно получите то же исходное сообщение1
на стороне C++:
  • на основе openssl, API «RSA_public_decrypt» и «RSA_private_encrypt».
  • используют один и тот же открытый ключ (который сгенерированный на стороне Java), чтобы расшифровать сообщение2, вернуть буфер, в котором каждый байт заполнен 0, и RSA_public_decrypt вернет успех.
кроме того:
  • на стороне C++, если использовать частный ключ для шифрования исходного сообщения1, чтобы получить зашифрованное сообщение3, а затем расшифровать его с помощью открытый ключ, успешное получение сообщения1. но сообщение3 не совпадает с зашифрованным сообщением2 (сторона Java).
  • все вышеперечисленное использовало RSA_NO_PADDING
  • на стороне Java, зашифровано больше раз, получите то же сообщение2
  • на Сторона C++, зашифрованная несколько раз, тоже получит то же сообщение3. но сообщение2 отличается от сообщения3.
вопрос в том, как расшифровать на стороне C++, чтобы получить оригинал message1, которое было зашифровано на стороне Java?
спасибо!

Подробнее здесь: https://stackoverflow.com/questions/417 ... penssl-api
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»