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

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

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

Купить рекламу здесь за 20 тыс руб в месяц! alarforum@yandex.ru


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

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

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

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

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

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

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

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Опции темы



Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru
Пеллетный котёл Emtas
котлы EMTAS
Здесь нужно купить рекламу за 7 тыс руб в месяц! )
пишите сюда - alarforum@yandex.ru
ИКС 840