Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

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

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

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.12.2017, 23:27   #1
Сергей Сидорчук
 
Регистрация: 13.12.2017
Сообщений: 7
По умолчанию Алгаритм AES

Всем доброго времери суток!
Дано задание- написать программу для шифрования файлов, используя виндовс CryptoApi, алгаритм Аеs, формат файла произвольный. Программа должна иметь графический индерфейс, размер ключа выбирает пользователь, как и режим шифрования. Собственно я начал писать, вродь все ясно, кроме одного! Какой размер открытого текста надо передать в CryptEncrypt? Насколько я знаю блоки для AES имеют размер 16 байт, а кто то пишет, что в виндовс функцию CryptEncrypt можно подовать блоки кратные 16 байтам. Я запутался! Помогите понять!
Спасибо!

Последний раз редактировалось Аватар; 13.12.2017 в 23:30.
Сергей Сидорчук вне форума Ответить с цитированием
Старый 14.12.2017, 00:10   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Цитата:
Я запутался! Помогите понять!
Как за более-менее серьезные задачи браться так в путь, а как доку прочитать по используемой функции...
https://msdn.microsoft.com/en-us/lib...(v=vs.85).aspx
pdwDataLen [in, out]
Цитата:
A pointer to a DWORD value that , on entry, contains the length, in bytes, of the plaintext in the pbData buffer. On exit, this DWORD contains the length, in bytes, of the ciphertext written to the pbData buffer.

If the buffer allocated for pbData is not large enough to hold the encrypted data, GetLastError returns ERROR_MORE_DATA and stores the required buffer size, in bytes, in the DWORD value pointed to by pdwDataLen.

If pbData is NULL, no error is returned, and the function stores the size of the encrypted data, in bytes, in the DWORD value pointed to by pdwDataLen. This allows an application to determine the correct buffer size.

When a block cipher is used, this data length must be a multiple of the block size unless this is the final section of data to be encrypted and the Final parameter is TRUE.
p51x вне форума Ответить с цитированием
Старый 16.12.2017, 08:53   #3
Сергей Сидорчук
 
Регистрация: 13.12.2017
Сообщений: 7
По умолчанию

Спасибо! Теперь я понял.
Сергей Сидорчук вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
AES на Ассемблере dimon17 Фриланс 2 25.06.2017 09:19
AES/scrypt - C++ $continue$ Общие вопросы C/C++ 3 10.04.2016 08:08
Шифрование AES. asmars Общие вопросы C/C++ 3 03.05.2012 16:22
Delphi-AES Євгеній Бєлік Общие вопросы Delphi 0 29.10.2011 18:24
написать алгаритм по программе(турбо паскаль) lilia2121 Помощь студентам 2 13.05.2010 11:40