|
154 / 138 / 34
Регистрация: 23.05.2009
Сообщений: 275
|
|||||||||||||||||||||
Алгоритм симметричного шифрования TwoFish12.12.2011, 16:17. Показов 18140. Ответов 20
Метки нет (Все метки)
При реализации алгоритма возникли сложности. Сначала работа шла живо и весело, запрограммировал расширение ключа, шифрование... Но когда дело дошло до дешифровки получилась какая-то ерунда. Сообщение не расшифровывается. Как ни бился не могу понять в чем проблема.
Помогите, люди добрые! Вдруг свежий глаз заметит какую-нибудь оплошность или ошибку в алгоритме... Буду рад любой помощи! TwoFish.h:
![]() P.S. Так же хотелось бы узнать советы по поводу улучшения программы в общем Добавлено через 14 часов 15 минут Сегодня на свежую голову посмотрел еще раз алгоритм и почувствовал себя дибилом - в некоторых операциях алгоритма я использовал логический битовый сдвиг, когда нужно было использовать циклический сдвиг... В общем прошу прощения за тему "сам спросил - сам ответил". Выкладываю что получилось - авось кому-нибудь да пригодится, правда здесь шифрование и дешифрование производится для одного блока размером 128 бит... TwoFish.h:
0
|
|||||||||||||||||||||
| 12.12.2011, 16:17 | |
|
Ответы с готовыми решениями:
20
Скомпилить код алгоритма симметричного шифрования Реализовать систему симметричного блочного шифрования (лаба по информационной безопасности) Алгоритм симметричного шифрования ГОСТ 28147-89 |
|
0 / 0 / 0
Регистрация: 13.12.2014
Сообщений: 13
|
|
| 13.12.2014, 13:42 | |
|
Приветствую! возникла небольшая проблема, не удается запустить этот алгоритм(twofish) на qt-creator, хочу узнать в чем проблема? или на Dev-c++ запустить ?Спасибо
0
|
|
|
Фрилансер
3709 / 2082 / 567
Регистрация: 31.05.2009
Сообщений: 6,683
|
|
| 14.12.2014, 02:33 | |
|
Уточните, в чём проблема.
0
|
|
|
0 / 0 / 0
Регистрация: 13.12.2014
Сообщений: 13
|
|
| 14.12.2014, 15:38 | |
|
ошибку выдает, в определенных строках, хотел уточнить у вас, вы этот код на чем запускали? Благодарю.
0
|
|
|
Фрилансер
3709 / 2082 / 567
Регистрация: 31.05.2009
Сообщений: 6,683
|
|
| 14.12.2014, 15:59 | |
|
Откомпилировал гнутым компилятором напрямую.
К Qt у меня подключен такой же, проблем, на первый взгляд, не должно быть. Напишите, какие ошибки
0
|
|
|
0 / 0 / 0
Регистрация: 13.12.2014
Сообщений: 13
|
|
| 14.12.2014, 16:11 | |
|
у меня к вам небольшая просьба, можете отправить скриншот qt где вы запускаете код
0
|
|
|
Фрилансер
3709 / 2082 / 567
Регистрация: 31.05.2009
Сообщений: 6,683
|
|||||||||||
| 14.12.2014, 16:43 | |||||||||||
|
Простите, чего именно скриншот? Приложения? Класса TwoFish? Класса MainWindow?
Вот так я подключил класс к тестовому проекту:
Вот полученный файл tratata:
0
|
|||||||||||
|
0 / 0 / 0
Регистрация: 13.12.2014
Сообщений: 13
|
|
| 14.12.2014, 16:49 | |
|
можете отправить полностью source cod(.cpp .h .ui .cpp) точнее source file-ы ну что есть, просто я не очень понял что и как
0
|
|
|
Фрилансер
3709 / 2082 / 567
Регистрация: 31.05.2009
Сообщений: 6,683
|
|
| 14.12.2014, 17:07 | |
|
Разбирайтесь
0
|
|
|
0 / 0 / 0
Регистрация: 13.12.2014
Сообщений: 13
|
|
| 14.12.2014, 17:18 | |
|
Спасибо большое, но еще возникли вопросы, после компиляции(компилируется без ошибок) появляется mainwindow на котором pushbutton, при нажатии без действии, хотел спросить где мы задаем слова для шифрование/дешифрование ?
0
|
|
|
Фрилансер
3709 / 2082 / 567
Регистрация: 31.05.2009
Сообщений: 6,683
|
|
| 14.12.2014, 17:26 | |
|
Вы код вообще смотрели? Это тестовое приложение, шифрует один блок нулей, потом дешифрует его обратно. Результат пишет в файл, файл я публиковал.
0
|
|
|
0 / 0 / 0
Регистрация: 13.12.2014
Сообщений: 13
|
|
| 14.12.2014, 19:11 | |
|
Вы код вообще смотрели? Это тестовое приложение, шифрует один блок нулей, потом дешифрует его обратно. Результат пишет в файл, файл я публиковал.
Да посмотрел, результат пишет в файл, а файл где находится после тестирование? Добавлено через 1 час 16 минут Да посмотрел, результат пишет в файл, а файл где находится после тестирование?
0
|
|
|
Фрилансер
3709 / 2082 / 567
Регистрация: 31.05.2009
Сообщений: 6,683
|
|
| 15.12.2014, 00:11 | |
|
Там же, где лежит *.exe.
То есть при запуске из Qt-Creator - в папках с именем типа имяПроекта-Debug или имяПроекта-Release
0
|
|
|
0 / 0 / 0
Регистрация: 13.12.2014
Сообщений: 13
|
|
| 15.12.2014, 06:12 | |
|
Спасибо нашел, но у меня результат совсем по другому, вот:
№л`ЇЦ,:^wю—3.шл
0
|
|
|
Фрилансер
3709 / 2082 / 567
Регистрация: 31.05.2009
Сообщений: 6,683
|
|
| 15.12.2014, 07:55 | |
|
Это двоичный файл. Его смотрят в шестнадцатиричном виде.
0
|
|
|
0 / 0 / 0
Регистрация: 13.12.2014
Сообщений: 13
|
|
| 15.12.2014, 08:18 | |
|
как сделать так чтобы qt выдавал ответ как у вас ?
0
|
|
|
Фрилансер
3709 / 2082 / 567
Регистрация: 31.05.2009
Сообщений: 6,683
|
|
| 15.12.2014, 17:57 | |
|
У Вас точно такой же ответ. Только я его печатал через линуксовский hexdump.
Я не вполне понимаю, что Вы хотите выжать из этого теста. Это ведь только пример того, как вызываются функции класса TwoFish. Ну он еще показывает, что они таки работают. Для реальных данных ведь всё равно нужно будет многое переделывать
0
|
|
|
0 / 0 / 0
Регистрация: 13.12.2014
Сообщений: 13
|
|
| 15.12.2014, 23:30 | |
|
Спасибо большое! за потраченное время, на меня!
0
|
|
|
0 / 0 / 0
Регистрация: 02.12.2015
Сообщений: 6
|
|
| 22.05.2016, 22:10 | |
|
Конечно, два года прошло, но все же...
Пытаюсь запустить этот код, но выдается ошибка MSVCRTD.lib(exe_main.obj) : error LNK2019: ссылка на неразрешенный внешний символ _main в функции "int __cdecl invoke_main(void)" (?invoke_main@@YAHXZ)
0
|
|
|
Фрилансер
3709 / 2082 / 567
Регистрация: 31.05.2009
Сообщений: 6,683
|
||||||
| 27.05.2016, 11:52 | ||||||
|
Shestera, проект был под четверку, а у Вас, скорее всего, уже пятёрка. Там кое-что изменилось.
Попробуйте добавить в файл проекта строку:
0
|
||||||
| 27.05.2016, 11:52 | |
|
Помогаю со студенческими работами здесь
20
Алгоритм шифрования Алгоритм шифрования DES Алгоритм шифрования по ГОСТу Алгоритм шифрования RC4 алгоритм шифрования MISTY1 Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|