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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 29.05.2009, 22:15   #1
max38934
Пользователь
 
Регистрация: 04.02.2009
Сообщений: 43
По умолчанию зашифрованный файлик - повреждение

Имеется зашифрованный файлик, вот как узнать поврежден он или нет? (хеш функцию нужно использовать или контрольную сумму?)
max38934 вне форума Ответить с цитированием
Старый 30.05.2009, 00:36   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

данный вопрос без конкретики — не имеет смысла...
(сравните: у меня в холодильнике есть какая-та баночка с консервами, как узнать, внутри содержимое в порядке? )

А так, да - достаточно сохранить контрольную сумму или хеш. Потом достаточно посчитать КС и сравнить с сохранённой КС. если совпадает - то файл не повреждён.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 30.05.2009, 01:11   #3
Lime
Форумчанин
 
Аватар для Lime
 
Регистрация: 10.02.2009
Сообщений: 815
По умолчанию

У меня такаяже идея была) Иметь хэш файла (думаю уже зашифрованного ) и дописать его (хэш ). А при проверке считать без добавленной информации.
Lime вне форума Ответить с цитированием
Старый 30.05.2009, 09:40   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Lime, да. с моей точки зрения, это нормальное решение!
p.s. на самом деле, дополнительно неплохо бы ещё делать так, как делают нормальные программы шифрования — хранить хеш (или контрольную сумму распакованного файла). тогда, после распаковки можно проверить на совпадение и, в случае несовпадения выдать сообщение "CRC error. Bad password."
Serge_Bliznykov вне форума Ответить с цитированием
Старый 30.05.2009, 13:16   #5
max38934
Пользователь
 
Регистрация: 04.02.2009
Сообщений: 43
По умолчанию

Цитата:
данный вопрос без конкретики — не имеет смысла...
Я хотел узнать саму идею.
Всем спасибо!
max38934 вне форума Ответить с цитированием
Ответ


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