Гость
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Испортить файл dbf с целью починить его в нужный момент / 13 сообщений из 13, страница 1 из 1
05.07.2012, 19:17
    #37868237
UAP
UAP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испортить файл dbf с целью починить его в нужный момент
Коллеги!

Вопрос.

Можно ли и как СРЕДСТВАМИ VFP 9.0 "испортить" файл dbf, причем так, чтобы зная как он "испорчен" опять же СРЕДСТВАМИ VFP 9.0 его починить.

Для чего? Ну, например, такой файл, вероятно, не откроется для просмотра.

В то же время, указанный файл можно чинить в своем приложении и работать с ним, потом опять ломать.

И т. д.
...
Рейтинг: 0 / 0
05.07.2012, 19:27
    #37868246
gore-egor
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испортить файл dbf с целью починить его в нужный момент
UAP,

попробуй FREAD(), FWRITE(), запорть заголовок, потом восстанови :)
...
Рейтинг: 0 / 0
05.07.2012, 19:32
    #37868253
AndreTM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испортить файл dbf с целью починить его в нужный момент
ТОлько, всё-же, неплохо бы предварительно изучить структуру заголовка...
А так - да, можно подменить сигнатуру файла, счетчик записей, типы данных и длину полей...
...
Рейтинг: 0 / 0
05.07.2012, 19:45
    #37868267
UAP
UAP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испортить файл dbf с целью починить его в нужный момент
Коллеги!

Предположим, мы точно знаем что мы испортили.

То есть "пароль" не забыт!

Нет ли опасности описываемыми действиями безвозвратно испортить файл?

Именно ломанием банки, где лежат огурчики?
...
Рейтинг: 0 / 0
05.07.2012, 19:51
    #37868273
Jonny540
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испортить файл dbf с целью починить его в нужный момент
UAP,

в принципе, такая опасность есть всегда. кстати, инфа в файле dbf с запорченным заголовком элементарно читается
лучше его закодировать, а потом раскодировать
...
Рейтинг: 0 / 0
05.07.2012, 20:36
    #37868306
AndreTM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испортить файл dbf с целью починить его в нужный момент
Ну, тут все зависит от того, что именно вы пытаетесь скрыть. Ведь "во время работы" содержимое всё равно будет доступно, и если дисковый файл "раскодирован", то "сбои" в ПО элементарно оставляют информацию в открытом виде...
Другое дело, если нужно только "защититься от просмотра" в моменты неиспользования ПО. Тут возможно многое (и необязательно ломать заголовки) - от шифрования содержимого полей до "свёртки-развёртки" таблиц при выходе-входе (например, в контейнер - архив с паролем).
...
Рейтинг: 0 / 0
06.07.2012, 02:24
    #37868489
reware
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испортить файл dbf с целью починить его в нужный момент
UAPКоллеги!
Вопрос.
Можно ли и как СРЕДСТВАМИ VFP 9.0 "испортить" файл dbf, причем так, чтобы зная как он "испорчен" опять же СРЕДСТВАМИ VFP 9.0 его починить.
Для чего? Ну, например, такой файл, вероятно, не откроется для просмотра.
В то же время, указанный файл можно чинить в своем приложении и работать с ним, потом опять ломать.
И т. д.
Сделать предварительно копию файла, а файл вааще затереть нулями (чем угодно). Потом восстановить из копии.
...
Рейтинг: 0 / 0
06.07.2012, 14:01
    #37869191
UAP
UAP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испортить файл dbf с целью починить его в нужный момент
Интересные предложения!
Есть над чем подумать.
Опишу реальную ситуацию, которая привела меня к рассматриваемой теме.
Вероятно, найдется эн+1 (й) способ, который окажется оптимальным!
Итак...
Имеется приложение, которое формирует таблицу с данными формата dbf VFP 9.
Указанная таблица поступает в контролирующий орган, где производят ее проверку и УТВЕРЖДЕНИЕ.
После этого эта таблица возвращается назад тому, кто ее создал, НО ОНА ТЕПЕРЬ ДОЛЖНА БЫТЬ ТОЛЬКО ДЛЯ ЧТЕНИЯ в как можно более широком смысле слова (нужно максимально защитить таблицу от корректировки во исключение изменения данных).
Конечно приложение должно "уметь" работать с такой УТВЕРЖДЕННОЙ таблицей.
Постановка вопроса именно такова.
Как быть?
...
Рейтинг: 0 / 0
06.07.2012, 15:05
    #37869302
Игорь Горбонос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испортить файл dbf с целью починить его в нужный момент
> Автор: UAP
> ... НО ОНА ТЕПЕРЬ ДОЛЖНА БЫТЬ ТОЛЬКО ДЛЯ ЧТЕНИЯ ...
> Как быть?


У баз FireBird'а есть режим только для чтения, когда приложение распространяется на компакт-дисках. У MS есть такой-же
режим. Поставь експресс и после возврата утвержденной таблицы заливай эту таблицу в базу, переводи её в режим read-only
и пусть все работают уже с этой табличкой.

Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
06.07.2012, 16:35
    #37869466
ЛДПР
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испортить файл dbf с целью починить его в нужный момент
Как вариант, получать контрольную сумму таблицы после ее утверждения, передавать таблицу и зашифрованную контрольную сумму при открытии проверять контрольную сумму таблицы с эталоном и если не совпадает громко ругаться о порче ...
...
Рейтинг: 0 / 0
08.07.2012, 06:47
    #37870471
Jonny540
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испортить файл dbf с целью починить его в нужный момент
UAPИмеется приложение, которое формирует таблицу с данными формата dbf VFP 9.
Указанная таблица поступает в контролирующий орган, где производят ее проверку и УТВЕРЖДЕНИЕ.
После этого эта таблица возвращается назад тому, кто ее создал, НО ОНА ТЕПЕРЬ ДОЛЖНА БЫТЬ ТОЛЬКО ДЛЯ ЧТЕНИЯ в как можно более широком смысле слова (нужно максимально защитить таблицу от корректировки во исключение изменения данных).
Конечно приложение должно "уметь" работать с такой УТВЕРЖДЕННОЙ таблицей.
Постановка вопроса именно такова.
Ну тогда примерно так: "УТВЕРЖДЕННУЮ таблицу" хранишь в зашифрованном/архивированном виде где-нибудь
в "труднодоступном" месте. При старте приложения приводишь ее в рабочее состояние, селест ее в курсор без опции readwrite
и снова таблицу "закрываешь" от глаз юзерских. а курсор при завершении работы уничтожаешь...
Тогда и приложение не сможет ничего поменять без дополнительных действий, но может так оно и надо?
НО: AndreTM...Ведь "во время работы" содержимое всё равно будет доступно, и если дисковый файл "раскодирован", то "сбои" в ПО элементарно оставляют информацию в открытом виде...
...
Рейтинг: 0 / 0
08.07.2012, 15:06
    #37870620
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испортить файл dbf с целью починить его в нужный момент
UAPУказанная таблица поступает в контролирующий орган, где производят ее проверку и УТВЕРЖДЕНИЕ.
После этого эта таблица возвращается назад тому, кто ее создал, НО ОНА ТЕПЕРЬ ДОЛЖНА БЫТЬ ТОЛЬКО ДЛЯ ЧТЕНИЯ ...
В момент утверждения создается ЭЦП и при открытии каждый раз проверяется. Или как выше предложили проверка контрольной суммы, что по сути тоже самое, только менее стойко к взлому.

Делать примерно так: копируешь на клиента, проверяешь ЭЦП, открываешь монопольно и работаешь. Копирование гарантирует защиту от случайного искажения исходного файла (фокс иногда меняет заголовок), а монопольное открытие гарантирует что в процессе работы извне ничем не поправить копию.
...
Рейтинг: 0 / 0
08.07.2012, 15:15
    #37870629
ksv55
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испортить файл dbf с целью починить его в нужный момент
UAPИнтересные предложения!
Есть над чем подумать.
Опишу реальную ситуацию, которая привела меня к рассматриваемой теме.
Вероятно, найдется эн+1 (й) способ, который окажется оптимальным!
Итак...
Имеется приложение, которое формирует таблицу с данными формата dbf VFP 9.
Указанная таблица поступает в контролирующий орган, где производят ее проверку и УТВЕРЖДЕНИЕ.
После этого эта таблица возвращается назад тому, кто ее создал, НО ОНА ТЕПЕРЬ ДОЛЖНА БЫТЬ ТОЛЬКО ДЛЯ ЧТЕНИЯ в как можно более широком смысле слова (нужно максимально защитить таблицу от корректировки во исключение изменения данных).
Конечно приложение должно "уметь" работать с такой УТВЕРЖДЕННОЙ таблицей.
Постановка вопроса именно такова.
Как быть?
Если не нужно серьезной защиты
USE ... NOUPDATE
Prevents changes to the table and its structure.
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Испортить файл dbf с целью починить его в нужный момент / 13 сообщений из 13, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]