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

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

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

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

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

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

icq: 216409213
По умолчанию

Цитата:
Я запутался! Помогите понять!
Как за более-менее серьезные задачи браться так в путь, а как доку прочитать по используемой функции...
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, 09:53   #3
Сергей Сидорчук
 
Регистрация: 14.12.2017
Сообщений: 5
Репутация: 10
По умолчанию

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

Опции темы

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
AES на Ассемблере dimon17 Фриланс 2 25.06.2017 10:19
AES/scrypt - C++ $continue$ Общие вопросы C/C++ 3 10.04.2016 09: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


18:30.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru