0 / 0 / 0
Регистрация: 11.10.2019
Сообщений: 14
|
|||||||||||
1 | |||||||||||
OPENSsl RSA не расшифровывает зашифрованное сообщение11.10.2019, 17:09. Показов 3349. Ответов 30
Всем привет. Уже несколько дней бьюсь над зашифровкой и расшифровкой текста через RSA шифрование. В интернете пытался найти в чем проблема, но так и не нашел. Почти у каждого кода, который я находил, примерно такая же реализация шифрования и расшифровки текста. Текст вроде и шифрует, но расшифровать он его не может( Мой код может и плохой, но это для меня как пример, чтобы понять сам механизм работы RSA шифрования. Так что за goto не ругайте)) Пишу в visual studio 2017. Помогите, пожалуйста.
Путем экспериментов выяснил, что программа прикрепленная ниже работает на пятый раз. Т.е. я запускаю ее, выбираю шифрование, потом расшифровку (после этого программа завершается с ошибкой). Запускаем еще раз и повторяем эту же процедуру 4 раза. На 5 раз программа не завершается с ошибкой, а расшифровывает текст. В чем может быть проблема?
0
|
11.10.2019, 17:09 | |
Ответы с готовыми решениями:
30
RSA. ключи. чего-то не расшифровывает Зашифрованное число RSA меньше изначального шифруемого? Реализация RSA в OpenSSL Есть ли для Аndroid класс реализации OpenSSL алгоритмом RSA ? |
571 / 353 / 133
Регистрация: 15.09.2017
Сообщений: 1,239
|
|
11.10.2019, 17:12 | 2 |
0
|
0 / 0 / 0
Регистрация: 11.10.2019
Сообщений: 14
|
|
11.10.2019, 17:22 [ТС] | 3 |
возможно я не правильно выразился, не совсем ошибка. строка 129 возвращает "-1" и строка 130 завершает программу. После этого я запускаю программу еще раз и повторяю те же действия, и на 2-6 запуск программа все таки расшифрует текст.
Добавлено через 5 минут возможно я не правильно выразился, не совсем ошибка. строка 129 возвращает "-1" и строка 130 завершает программу. После этого я запускаю программу еще раз и повторяю те же действия, и на 2-6 запуск программа все таки расшифрует текст.
0
|
571 / 353 / 133
Регистрация: 15.09.2017
Сообщений: 1,239
|
|
11.10.2019, 17:33 | 4 |
Rideslow, Запустите программу по F5 и отслеживайте изменения переменных, сделайте вывод промежуточных значений и найдете ошибку
0
|
0 / 0 / 0
Регистрация: 11.10.2019
Сообщений: 14
|
|
11.10.2019, 17:41 [ТС] | 5 |
0
|
571 / 353 / 133
Регистрация: 15.09.2017
Сообщений: 1,239
|
|
11.10.2019, 17:47 | 6 |
Могу предположить, что плохо старались
Когда ошибка возникает постоянно, то проще всего её найти, сложнее найти когда наоборот, и сотни запусков 1 привод к неверному. Повторюсь, оформите логи и вывод промежуточных значений, и будет вам счастье
0
|
Любитель чаепитий
|
|
12.10.2019, 05:50 | 7 |
после того, как функция возвращает -1, проверьте
ERR_get_error .https://www.openssl.org/docs/m... error.html
0
|
0 / 0 / 0
Регистрация: 11.10.2019
Сообщений: 14
|
|
12.10.2019, 06:50 [ТС] | 8 |
0
|
0 / 0 / 0
Регистрация: 11.10.2019
Сообщений: 14
|
||||||
12.10.2019, 18:22 [ТС] | 9 | |||||
после добавления кусочка кода, удалось выяснить, что возвращаются 2 ошибки:
1) error:040A1079:lib(4):func(161):reason(121) 2) error:04065072:lib(4):func(101):reason(114) код, как нашел их прикрепил
0
|
1394 / 1023 / 325
Регистрация: 28.07.2012
Сообщений: 2,813
|
|
12.10.2019, 19:53 | 10 |
Rideslow, не уверен, что это поможет, но файлы, которые ты окрываешь через _open, нужно открывать в бинарном режиме, т.е. с флагом _O_BINARY.
0
|
0 / 0 / 0
Регистрация: 11.10.2019
Сообщений: 14
|
|
12.10.2019, 21:07 [ТС] | 11 |
0
|
1394 / 1023 / 325
Регистрация: 28.07.2012
Сообщений: 2,813
|
|
12.10.2019, 21:47 | 12 |
Собрал у себя твой код с предложенными мной исправлениями. Файл размером в мегабайт без всяких проблем шифруется и дешифруется. Правда openssl я взял, видимо, поновее.
0
|
0 / 0 / 0
Регистрация: 11.10.2019
Сообщений: 14
|
|
12.10.2019, 22:03 [ТС] | 13 |
несколько запусков хорошо дешифрует? а то у меня раз через 5 дешифрует, а потом опять ломается.
Не могли бы вы скинуть свой openssl? у меня версия 1.0.1
0
|
фрилансер
5499 / 5095 / 1047
Регистрация: 11.10.2019
Сообщений: 13,346
|
|
12.10.2019, 22:10 | 14 |
Rideslow, а что за волшебная восьмеричная константа 0600 ?
0
|
0 / 0 / 0
Регистрация: 11.10.2019
Сообщений: 14
|
|
12.10.2019, 22:17 [ТС] | 15 |
0
|
фрилансер
5499 / 5095 / 1047
Регистрация: 11.10.2019
Сообщений: 13,346
|
||||||
12.10.2019, 22:21 | 16 | |||||
Rideslow, я код у себя опробовал - рабочий, ни разу не ломается. Вот версию библиотеки не знаю, я себе только нужные файлы как-то оставил, с версией потерялись ))
а goto можешь так убрать
0
|
0 / 0 / 0
Регистрация: 11.10.2019
Сообщений: 14
|
|
12.10.2019, 22:24 [ТС] | 17 |
Спасибо, что проверили, значит буду с версией openssl копаться, неужели я потерял несколько дней из-за версии?
0
|
0 / 0 / 0
Регистрация: 11.10.2019
Сообщений: 14
|
|
12.10.2019, 22:34 [ТС] | 19 |
0
|
фрилансер
5499 / 5095 / 1047
Регистрация: 11.10.2019
Сообщений: 13,346
|
||||||
12.10.2019, 22:46 | 20 | |||||
Rideslow, я порылся насчёт магической константы (не люблю такие вещи )
вот тут есть сорс https://unix.superglobalmegaco... tat.h.html в нём есть определение этих констант
удивило, что восьмеричные. Оригинальный подход
0
|
12.10.2019, 22:46 | |
12.10.2019, 22:46 | |
Помогаю со студенческими работами здесь
20
Расшифровать сообщение, зашифрованное шифром Цезаря Как написать шифрование RSA на python без import RSA Зашифровать сообщение имеющимся публичным ключом (RSA) Зашифровывает, но не расшифровывает Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |