|
Испортить файл dbf с целью починить его в нужный момент
|
|||
---|---|---|---|
#18+
Коллеги! Вопрос. Можно ли и как СРЕДСТВАМИ VFP 9.0 "испортить" файл dbf, причем так, чтобы зная как он "испорчен" опять же СРЕДСТВАМИ VFP 9.0 его починить. Для чего? Ну, например, такой файл, вероятно, не откроется для просмотра. В то же время, указанный файл можно чинить в своем приложении и работать с ним, потом опять ломать. И т. д. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 19:17 |
|
Испортить файл dbf с целью починить его в нужный момент
|
|||
---|---|---|---|
#18+
UAP, попробуй FREAD(), FWRITE(), запорть заголовок, потом восстанови :) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 19:27 |
|
Испортить файл dbf с целью починить его в нужный момент
|
|||
---|---|---|---|
#18+
ТОлько, всё-же, неплохо бы предварительно изучить структуру заголовка... А так - да, можно подменить сигнатуру файла, счетчик записей, типы данных и длину полей... ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 19:32 |
|
Испортить файл dbf с целью починить его в нужный момент
|
|||
---|---|---|---|
#18+
Коллеги! Предположим, мы точно знаем что мы испортили. То есть "пароль" не забыт! Нет ли опасности описываемыми действиями безвозвратно испортить файл? Именно ломанием банки, где лежат огурчики? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 19:45 |
|
Испортить файл dbf с целью починить его в нужный момент
|
|||
---|---|---|---|
#18+
UAP, в принципе, такая опасность есть всегда. кстати, инфа в файле dbf с запорченным заголовком элементарно читается лучше его закодировать, а потом раскодировать ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 19:51 |
|
Испортить файл dbf с целью починить его в нужный момент
|
|||
---|---|---|---|
#18+
Ну, тут все зависит от того, что именно вы пытаетесь скрыть. Ведь "во время работы" содержимое всё равно будет доступно, и если дисковый файл "раскодирован", то "сбои" в ПО элементарно оставляют информацию в открытом виде... Другое дело, если нужно только "защититься от просмотра" в моменты неиспользования ПО. Тут возможно многое (и необязательно ломать заголовки) - от шифрования содержимого полей до "свёртки-развёртки" таблиц при выходе-входе (например, в контейнер - архив с паролем). ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 20:36 |
|
Испортить файл dbf с целью починить его в нужный момент
|
|||
---|---|---|---|
#18+
UAPКоллеги! Вопрос. Можно ли и как СРЕДСТВАМИ VFP 9.0 "испортить" файл dbf, причем так, чтобы зная как он "испорчен" опять же СРЕДСТВАМИ VFP 9.0 его починить. Для чего? Ну, например, такой файл, вероятно, не откроется для просмотра. В то же время, указанный файл можно чинить в своем приложении и работать с ним, потом опять ломать. И т. д. Сделать предварительно копию файла, а файл вааще затереть нулями (чем угодно). Потом восстановить из копии. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2012, 02:24 |
|
Испортить файл dbf с целью починить его в нужный момент
|
|||
---|---|---|---|
#18+
Интересные предложения! Есть над чем подумать. Опишу реальную ситуацию, которая привела меня к рассматриваемой теме. Вероятно, найдется эн+1 (й) способ, который окажется оптимальным! Итак... Имеется приложение, которое формирует таблицу с данными формата dbf VFP 9. Указанная таблица поступает в контролирующий орган, где производят ее проверку и УТВЕРЖДЕНИЕ. После этого эта таблица возвращается назад тому, кто ее создал, НО ОНА ТЕПЕРЬ ДОЛЖНА БЫТЬ ТОЛЬКО ДЛЯ ЧТЕНИЯ в как можно более широком смысле слова (нужно максимально защитить таблицу от корректировки во исключение изменения данных). Конечно приложение должно "уметь" работать с такой УТВЕРЖДЕННОЙ таблицей. Постановка вопроса именно такова. Как быть? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2012, 14:01 |
|
Испортить файл dbf с целью починить его в нужный момент
|
|||
---|---|---|---|
#18+
> Автор: UAP > ... НО ОНА ТЕПЕРЬ ДОЛЖНА БЫТЬ ТОЛЬКО ДЛЯ ЧТЕНИЯ ... > Как быть? У баз FireBird'а есть режим только для чтения, когда приложение распространяется на компакт-дисках. У MS есть такой-же режим. Поставь експресс и после возврата утвержденной таблицы заливай эту таблицу в базу, переводи её в режим read-only и пусть все работают уже с этой табличкой. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2012, 15:05 |
|
Испортить файл dbf с целью починить его в нужный момент
|
|||
---|---|---|---|
#18+
Как вариант, получать контрольную сумму таблицы после ее утверждения, передавать таблицу и зашифрованную контрольную сумму при открытии проверять контрольную сумму таблицы с эталоном и если не совпадает громко ругаться о порче ... ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2012, 16:35 |
|
Испортить файл dbf с целью починить его в нужный момент
|
|||
---|---|---|---|
#18+
UAPИмеется приложение, которое формирует таблицу с данными формата dbf VFP 9. Указанная таблица поступает в контролирующий орган, где производят ее проверку и УТВЕРЖДЕНИЕ. После этого эта таблица возвращается назад тому, кто ее создал, НО ОНА ТЕПЕРЬ ДОЛЖНА БЫТЬ ТОЛЬКО ДЛЯ ЧТЕНИЯ в как можно более широком смысле слова (нужно максимально защитить таблицу от корректировки во исключение изменения данных). Конечно приложение должно "уметь" работать с такой УТВЕРЖДЕННОЙ таблицей. Постановка вопроса именно такова. Ну тогда примерно так: "УТВЕРЖДЕННУЮ таблицу" хранишь в зашифрованном/архивированном виде где-нибудь в "труднодоступном" месте. При старте приложения приводишь ее в рабочее состояние, селест ее в курсор без опции readwrite и снова таблицу "закрываешь" от глаз юзерских. а курсор при завершении работы уничтожаешь... Тогда и приложение не сможет ничего поменять без дополнительных действий, но может так оно и надо? НО: AndreTM...Ведь "во время работы" содержимое всё равно будет доступно, и если дисковый файл "раскодирован", то "сбои" в ПО элементарно оставляют информацию в открытом виде... ... |
|||
:
Нравится:
Не нравится:
|
|||
08.07.2012, 06:47 |
|
Испортить файл dbf с целью починить его в нужный момент
|
|||
---|---|---|---|
#18+
UAPУказанная таблица поступает в контролирующий орган, где производят ее проверку и УТВЕРЖДЕНИЕ. После этого эта таблица возвращается назад тому, кто ее создал, НО ОНА ТЕПЕРЬ ДОЛЖНА БЫТЬ ТОЛЬКО ДЛЯ ЧТЕНИЯ ... В момент утверждения создается ЭЦП и при открытии каждый раз проверяется. Или как выше предложили проверка контрольной суммы, что по сути тоже самое, только менее стойко к взлому. Делать примерно так: копируешь на клиента, проверяешь ЭЦП, открываешь монопольно и работаешь. Копирование гарантирует защиту от случайного искажения исходного файла (фокс иногда меняет заголовок), а монопольное открытие гарантирует что в процессе работы извне ничем не поправить копию. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.07.2012, 15:06 |
|
Испортить файл dbf с целью починить его в нужный момент
|
|||
---|---|---|---|
#18+
UAPИнтересные предложения! Есть над чем подумать. Опишу реальную ситуацию, которая привела меня к рассматриваемой теме. Вероятно, найдется эн+1 (й) способ, который окажется оптимальным! Итак... Имеется приложение, которое формирует таблицу с данными формата dbf VFP 9. Указанная таблица поступает в контролирующий орган, где производят ее проверку и УТВЕРЖДЕНИЕ. После этого эта таблица возвращается назад тому, кто ее создал, НО ОНА ТЕПЕРЬ ДОЛЖНА БЫТЬ ТОЛЬКО ДЛЯ ЧТЕНИЯ в как можно более широком смысле слова (нужно максимально защитить таблицу от корректировки во исключение изменения данных). Конечно приложение должно "уметь" работать с такой УТВЕРЖДЕННОЙ таблицей. Постановка вопроса именно такова. Как быть? Если не нужно серьезной защиты USE ... NOUPDATE Prevents changes to the table and its structure. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.07.2012, 15:15 |
|
|
start [/forum/topic.php?fid=41&fpage=55&tid=1583590]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
39ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
52ms |
get tp. blocked users: |
2ms |
others: | 262ms |
total: | 401ms |
0 / 0 |