![]() |
1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!
![]() ![]() |
![]() |
Unconnected |
![]()
Сообщение
#1
|
![]() mea culpa ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 372 Пол: Мужской Реальное имя: Николай Репутация: ![]() ![]() ![]() |
Здравствуйте, есть алгоритм шифрования DES, но он шифрует максимум около 8 байт(я могу ошибаться), т.е. бОльшие файлы игнорируются. Насколько я понимаю, нужно составить цепочку из 8-байтных блоков.Возможно,я что-то не так понял? Модуль c примером его использования прилагается.
-------------------- "Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
|
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Цитата но он шифрует максимум около 8 байт Вообще-то DES шифрует информацию 64 битовыми блоками, так что не "максимум", а именно 8 байт...Цитата Насколько я понимаю, нужно составить цепочку из 8-байтных блоков Угу... Читать файл порциями, кратными 8 байтам, что присоединенная программа и делает... Только вот по-моему, у нее есть небольшой недостаток: она будет увеличивать размер файла до размера кратного 8 (если в исходном файле было 53 байта, то после дешифрации станет 56, причем 3 конечных - мусор). Проверить сейчас не могу - TP недоступен, но выглядит программа USE-DES работоспособной... Или она работает некорректно? Тогда расскажи, в чем именно заключается неправильная работа... |
Unconnected |
![]()
Сообщение
#3
|
![]() mea culpa ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 372 Пол: Мужской Реальное имя: Николай Репутация: ![]() ![]() ![]() |
USE-DES вполне работоспособна, мне удавалось зашифровать небольшой txt файл.
Сообщение отредактировано: Unconnected - 16.07.2008 9:20 -------------------- "Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
|
Unconnected |
![]()
Сообщение
#4
|
![]() mea culpa ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 372 Пол: Мужской Реальное имя: Николай Репутация: ![]() ![]() ![]() |
Проблема в том, что при шифровании "больших" файлов(350 кб например) получаются файлы размером 4 кб.
-------------------- "Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
|
volvo |
![]()
Сообщение
#5
|
Гость ![]() |
Угу... проблема - вот тут:
Цитата n:=FileSize(f); { <--- описано как Word, но Word не может хранить размеры больше 64К }
k:=n div Rec; if n mod Rec<>0 then inc(k);
var
f_size: longint;
{
k и i я бы тоже сделал longint-ами, а то мало ли, захочешь
зашифровать файл размером больше 65535*512байт = 32Мб,
опять будет проблема
}
...
f_size := FileSize(f);
k:=f_size div Rec; if f_size mod Rec<>0 then inc(k);
...
Сообщение отредактировано: volvo - 16.07.2008 10:55 |
Unconnected |
![]()
Сообщение
#6
|
![]() mea culpa ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 372 Пол: Мужской Реальное имя: Николай Репутация: ![]() ![]() ![]() |
Получается, у тебя f_size вместо переменной n? Теперь возникает ошибка 98, F_size должна иметь целочисленный тип.
А если её сделать integer, то такая же песня с 4-мя килобайтами получается( Сообщение отредактировано: Unconnected - 16.07.2008 12:20 -------------------- "Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
|
volvo |
![]()
Сообщение
#7
|
Гость ![]() |
Я где-то написал, что вместо? Покажи, где... Я добавил переменную, которая должна выполнять свою функцию: хранить размер файла... Что там у тебя делает N - это другие проблемы, f_size это не касается никаким боком.
|
Unconnected |
![]()
Сообщение
#8
|
![]() mea culpa ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 372 Пол: Мужской Реальное имя: Николай Репутация: ![]() ![]() ![]() |
Volvo, огромное спасибо. Как репутацию повышать?
-------------------- "Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
|
![]() ![]() |
![]() |
Текстовая версия | 27.07.2025 12:05 |