0 / 0 / 0
Регистрация: 18.05.2014
Сообщений: 13
|
||||||
1 | ||||||
Шифрование RSA02.06.2014, 15:06. Показов 9946. Ответов 4
Метки нет (Все метки)
Доброго всем времени суток. Делаю курсовую работу по криптографии - реализация алгоритма RSA. Вот написал уже целый код, который работает при небольших значениях (их брал с вики).
Использую такие данные: p=3557 q=2579 d=3 e=6111579 исходный_текст=111111, шифрованный текст получается 4051753, собственно и расшифровка происходит тоже верно. А вот когда уже беру числа из задания исходный_текст=2006201801310518 p=85785751 q=63284773, то уже получается неверно. Пожалуйста, помогите разобраться, в чём у меня проблема.
Добавлено через 8 минут Среда разработки VS 2012
0
|
02.06.2014, 15:06 | |
Ответы с готовыми решениями:
4
RSA шифрование RSA шифрование шифрование RSA Асимметричное шифрование, RSA |
594 / 532 / 76
Регистрация: 22.03.2011
Сообщений: 1,585
|
|
02.06.2014, 16:59 | 2 |
скорей всего где-то выходит за границы long long. демонстрируйте на небольших числах, либо используйте библиотеки для работы с большими числами...
0
|
0 / 0 / 0
Регистрация: 18.05.2014
Сообщений: 13
|
||||||
02.06.2014, 18:26 [ТС] | 3 | |||||
Спасибо за ответ, а какие есть библиотеки, и какие использовать лучше/проще? Да и вообще как их правильно использовать, а то опыта у меня в этом маловато? (=
Добавлено через 20 минут Попробовал подключить ntl, но походу дела что-то делаю не так. Качаю от сюда - http://www.shoup.net/ntl/download.html Папку include/ntl кладу в папку VC/include Далее прописываю строку в проекте:
0
|
594 / 532 / 76
Регистрация: 22.03.2011
Сообщений: 1,585
|
|||||||||||
02.06.2014, 18:56 | 4 | ||||||||||
Сообщение было отмечено SODJ как решение
Решение
SODJ, из моего опыта я использовал только GMP
не скажу, что там супер удобный интерфейс (он С-стайл), но для не особо сложных целей подходит... кстати RSA считается там как mpz_powm(res,v,e,n); как следует из википедия =) правда подключение там не очень легкое. но если захочешь все же использовать то могу помочь: http://rghost.net/56091446 хедеры и либу распаковывай в папку с исходным кодом и пиши сверху
0
|
0 / 0 / 0
Регистрация: 18.05.2014
Сообщений: 13
|
||||||
02.06.2014, 23:54 [ТС] | 5 | |||||
Вау, спасибо большое =) Только вот теперь что-то не могу понять, как правильно все математические операции привести к нужному типу (да и в целом мне пока не понятны такого рода махинации), чтобы MVS их не подчёркивала.
и что означает цифра 10 в конце? Добавлено через 4 часа 22 минуты OstapBender, Решил пока написать программу попроще с использованием gmp, но при компиляции теперь выдаются такие ошибки линковщика, не знаете в чём может проблема?
1>------ Построение начато: проект: Test, Конфигурация: Debug Win32 ------ 1> Test.cpp 1>MSVCMRTD.lib(mstartup.obj) : error LNK2020: эхЁрчЁх°хээр* ыхъёхьр (0A0000C7) __native_startup_state 1>MSVCMRTD.lib(mstartup.obj) : error LNK2020: эхЁрчЁх°хээр* ыхъёхьр (0A000134) __native_startup_lock 1>MSVCMRTD.lib(mstartup.obj) : error LNK2020: эхЁрчЁх°хээр* ыхъёхьр (0A000135) __native_dllmain_reason 1>MSVCMRTD.lib(mstartup.obj) : error LNK2001: эхЁрчЁх°хээ√щ тэх°эшщ ёшьтюы "___native_dllmain_reason" 1>MSVCMRTD.lib(mstartup.obj) : error LNK2001: эхЁрчЁх°хээ√щ тэх°эшщ ёшьтюы "___native_startup_state" 1>MSVCMRTD.lib(mstartup.obj) : error LNK2001: эхЁрчЁх°хээ√щ тэх°эшщ ёшьтюы "___native_startup_lock" 1>C:\Users\Gin\Documents\Visual Studio 2012\Projects\Test\Debug\Test.exe : fatal error LNK1120: эхЁрчЁх°хээ√ї тэх°эшї ¤ыхьхэЄют: 6 ========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ========== Изменил конфигурацию на Release и добавил #pragma comment(linker, "/NODEFAULTLIB:msvcrt.lib") Вот что получил опять. 1>MSVCMRT.lib(mstartup.obj) : error LNK2020: неразрешенная лексема (0A0000C6) __native_startup_state 1>MSVCMRT.lib(mstartup.obj) : error LNK2020: неразрешенная лексема (0A000131) __native_startup_lock 1>MSVCMRT.lib(mstartup.obj) : error LNK2020: неразрешенная лексема (0A000132) __native_dllmain_reason 1>MSVCMRT.lib(mstartup.obj) : error LNK2001: неразрешенный внешний символ "___native_dllmain_reason" 1>MSVCMRT.lib(mstartup.obj) : error LNK2001: неразрешенный внешний символ "___native_startup_state" 1>MSVCMRT.lib(mstartup.obj) : error LNK2001: неразрешенный внешний символ "___native_startup_lock" 1>C:\Users\Gin\Documents\Visual Studio 2012\Projects\Test\Release\Test.exe : fatal error LNK1120: неразрешенных внешних элементов: 6
0
|
02.06.2014, 23:54 | |
02.06.2014, 23:54 | |
Помогаю со студенческими работами здесь
5
Шифрование файлов алгоритмом RSA RSA Шифрование.Найдите ошибку пожалуйста Шифрование/дешифрование методом RSA с открытым ключом. С++ Не работает RSA шифрование с++ Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |