вопросы шифрования базы данных - PullRequest
2 голосов
/ 09 июня 2010

Мы используем Sybase SQL Anywhere 11. Нам нужно зашифровать некоторые из наших таблиц в нашей базе данных. Я следовал инструкции и сделал это. Мы выбрали «сильный» вариант с алгоритмом encryptionKey и AES256_FIPS. Но есть кое-что, что мне не ясно в них.

  1. Требуется encryptonKey, когда мы создаем базу данных, удаляем базу данных и запускаем сервер базы данных, но для этого НЕ потребуется encryptionKey, когда мы останавливаем сервер базы данных и подключаемся к серверу для создания таблиц и добавления данных. Почему НЕТ encryptionKey спрашивается, когда мы подключаемся к нему или пытаемся остановить сервер? Я что-то не так делаю?

  2. не знаете, как проверить шифрование? Я все еще вижу весь простой текст в зашифрованных таблицах при использовании инструмента Sybase Central. Если кто-то знает имя пользователя и пароль базы данных, он / она может подключиться к базе данных и прочитать содержимое без ключа encryptionKey. это правильно?

Ответы [ 2 ]

2 голосов
/ 09 июня 2010

Я не могу говорить конкретно с системой Sybase, но шифрование базы данных в целом предназначено для шифрования на уровне файловой системы, чтобы предотвратить доступ к данным базы данных (то есть чтение двоичного файла и его синтаксический анализ).самостоятельно, а не через RDBMS), не для предотвращения доступа или обфускации данных через стандартный интерфейс базы данных (ожидается, что для этого вы будете использовать механизмы безопасности вашей RDBMS).

0 голосов
/ 09 июня 2010

Скорее всего, инструмент SQL Anywhere захватывает ключ шифрования при первом его вводе (т. Е. При запуске сервера), а затем сохраняет его в памяти для расшифровки для других операций.Как сказал @ Адам Робинсон, данные должны быть зашифрованы в файловой системе, или есть задний ход, взяв «аналоговое решение» и просто проанализировав необработанный файл, что является хорошим следствием вашего второго вопроса ...1002 * Если вы хотите проверить шифрование, попробуйте найти и открыть файл вне инструментов Sybase и посмотреть, сможете ли вы обнаружить какие-либо идентифицируемые данные.Я хотел бы начать с простого текстового поиска строки (создать ячейку с уникальной строкой, которую вы можете искать) и убедиться, что ее нет в зашифрованном файле.Для проверки вы также можете проанализировать незашифрованную версию базы данных и убедиться, что вы можете найти там строку.

...