Файл .ibd
содержит все данные и все индексы для таблицы. («Табличные пространства» могут содержать несколько таблиц; принципы одинаковы.)
С помощью плагина (и т. Д.), SELECT
автоматически проходит расшифровку, делая шифрование «прозрачным». Тем не менее это реально. Вам нужно было что-то сделать, чтобы запустить программу, правильно? Именно тогда «ключ» был загружен в оперативную память для использования.
Шифрование файлов .ibd защищает вас от одной угрозы: кто-то захватывает (или копирует) ваш диск.
Но будьте осторожны. Существуют временные таблицы, журналы, другие журналы и т. Д., Которые могут быть или не быть зашифрованы. Они временно содержат некоторые данные. Ранние версии шифрования MySQL не смогли включить некоторые из них.
Функции AES позволяют вводить / дешифровать отдельные строки (например, один столбец в одной строке за раз). Но это позволяет вам защитить ключ en / decryption. Или, по крайней мере, никогда не иметь его на диске в виде открытого текста.
Прочитайте о «шифровании в покое» и «шифровании в полете». Шифрование файлов "в покое". Умный хакер атакует ваш код, чтобы он мог запустить SELECT
после того, как учетные данные были загружены.
С шифрованием или без него «инъекция SQL» (qv) является хорошо зарекомендовавшим себя способом взлома данных и даже файловой системы. Защита для этого обеспечивается, например, проверкой / экранированием / etc данных, которые поступают из HTML <form>
. Шифрование файлов не защищает от этого.
Я дал вам короткий список угроз для ваших данных. Реальный список намного длиннее. Вам нужно найти такой список и решить, какие из них вы хотите инвестировать в защиту. Безопасность не проста.