информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Сетевые кракеры и правда о деле ЛевинаПортрет посетителяГде водятся OGRы
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Бэкдор в xz/liblzma, предназначенный... 
 Три миллиона электронных замков... 
 Doom на газонокосилках 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / web building
Имя Пароль
ФОРУМ
все доски
FAQ
IRC
новые сообщения
site updates
guestbook
beginners
sysadmin
programming
operating systems
theory
web building
software
hardware
networking
law
hacking
gadgets
job
dnet
humor
miscellaneous
scrap
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
Зачем шифровать весь файл? Сами записи можно шифровать... 09.07.04 19:35  Число просмотров: 1481
Автор: Heller <Heller> Статус: Elderman
<"чистая" ссылка> <обсуждение закрыто>
> 1. Если шифровать строки/записи в текстовых файлах, то
> придеться шифровать запись целиком, чтобы данные одного
> поля не могли существовать без другого, иначе рискуем
> схватить фальсификацию.
> Если каждая запись будет шифроваться ключом создавшего эту
> запись пользователя, то можно себе представить скорость
> работы такой базы и смысл ее существования, когда один
> пользователь не может даже прочесть данные, записанные
> другим пользователем. При этом мы все равно не сможем
> исключить потерю данных из-за возможности удаления.
> Можно, конечно, сделать вариант шифрования некоторым общим
> ключом, зашифрованным паролем пользователя и исключить
> возможность удаления отдельной записи путем шифрования всей
> таблицы/файла, но при этом накладные расходы на
> шифрование/дешифрование всего файла, для получения всего
> лишь одной записи, будут расти в геометрической прогрессии
> и подобная реализация теряет всякий смысл на начальном
> этапе проектирования.

Зачем шифровать весь файл? Сами записи можно шифровать достаточно простым и стандартным способом, а для избежания фальсификации дополнительно вычислять хеш-функции соседних записей, а не всего файла. Будет и быстро и просто.


> 2. Есть возможность реализовать это путем разделения данных
> по пользователям, размещая эти данные в каталогах
> пользователей, а затем реплицировать эти данные в
> недоступных для пользователя файлах (в оригинальной
> файловой БД) при помощи специально написанного робота и
> синхронизировать файлы пользователей с этой БД. Но при этом
> мы теряем актуальность и on-line'овость данных.

Скорее тут проблема уже в самой организации файловой системы - индексирование и потери объёма. Хотя и с тем и с другим можно бороться (уже обсуждалось).


> 3. Самый лучший вариант самостоятельной организации БД на
> текстовых файлах - написание COM серверов, которые будут
> работать на отдельной машине-сервере, предоставлять данные
> пользователям и разграничивать доступ к данным.
> IMHO, этот вариант - изобретение велосипеда и
> убивание кучи времени на разработку, когда это время можно
> с намного большей пользой потратить на изучение реляционных
> БД, SQL серверов и структурированного языка
> запросов.


Ну не так уж это и сложно. При условии, что ты пишешь не универсальный механизм на все случаи жизни, а программу, которая фактически по заданному ключу вынимает из файла определённые данные или напротив пишет их в файл (в сложнейшем случае ещё и проверяет несколько условий). Здесь надо учесть, что пишешь прогу ты для конкретного случая и количество/размеры/прочее полей/записей чаще оказывается более-менее чётким, что уже избавляет программиста от доброй половины работы. Можно сделать реализацию с использованием двух файлов - один хранит сами данные, а второй указатели на зиписи в первом. К тому же при написании собственной базы можно внести ряд корректировок, таких как "лёгкую" архивацию, к примеру - которые в общем случае не допустимы, но в отдельных ситуация могу оказаться достаточно полезными.

Я вообще не против баз. Спорить, что текстовики лучше баз - глупо как минимум. Базы лучше. Но преимущества баз перед текстовиками имхо не так уж и велики. Во всякиом случае в этом топике я пока не видел ни одного действительно весомого аргумента в пользу баз. Аргументов-то куча, но сказать что они особо значимые - нельзя имхо.
<web building> Поиск 






Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2024 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach