Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > C++ > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail


Донат для форума - использовать для поднятия настроения себе и модераторам

А ещё здесь можно купить рекламу за 25 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

Ответ
 
Опции темы
Старый 17.05.2013, 11:01   #1
frommars
Форумчанин
 
Регистрация: 02.07.2011
Сообщений: 144
Репутация: 3
По умолчанию Обёртка для Rinjdael

Приветствую!
Решил написать обёртку для шифрования алгоритмом Rinjdael. Как известно, алгоритм шифрует за раз 16 "символов", в связи с этим, что бы зашифровать строку, было принято решение разбить её на подстроки по 16 символов, зашифровать, соеденить в одну строку, ну и что бы можно было вывести на "печать", накрыть сверху base64.
Всё вроде бы предельно просто и понятно, но в процессе реализации появилось несколько проблем:
1) Как узнать на сколько частей нужно разбить строку? Тут решение простое
Код:
#define ceil(x, y) ({ (x + y - 1) / y; })
..........
for(i = 0; i < ceil(strlen(plain) , 16); i++)
{
	for(k = 0; k < 16; k++)
		buf[k] = plain[k+i*16];
aes_encode(....
}
и тоже самое при расшифровке.
Но при длине строки на расшифровку в 112 символов, цикл выполняется 7 раз, а если посчитать на калькуляторе - то должен выполняться 8(результат от деления - 7,9375), ну и соответственно пропадает конец шифруемой строки.
2) И даже при таком подходе, при некоторых длинах строки, часть строки не расшифровывается.

В связи с чем хотел бы узнать, как правильно сделать обёртку для это шифрования, что бы можно было шифровать строки любой длины?


P.S. буду благодарен за любые наработки на С(не плюсах не желательно).
P.S.2. если кому то вопрос интересен, но не знаете где взять сам алгоритм - можно вот использовать для опытов.

Последний раз редактировалось frommars; 17.05.2013 в 11:37.
frommars вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Какие есть компоненты для Delphi для создания такого интерфейса? Marsel737 Свободное общение 7 24.09.2011 18:25
какие инструменты используются для программирования для windows mobile 5 или 6 zazic2p Свободное общение 15 06.06.2011 08:05
Хорошая программа для разрезания жестких дисков для 7-ой винды и других ОС. Pumik2010 Windows 3 01.03.2011 02:28
Включить двойную буферизацию для формы в VBA для MsAccess 2003 dplz Microsoft Office Access 0 16.05.2010 17:00
Насколько можетбыть коротким код для решения задчки для Экселя? saga Microsoft Office Excel 0 04.04.2009 13:35


10:08.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.