Spec-Zone.ru › MySQL 9.2

A.17 MySQL 9.2 FAQ: Шифрование данных InnoDB в состоянии покоя

A.17.1. Данные дешифруются для пользователей, имеющих разрешение на их просмотр?
A.17.2. Какова накладная стоимость шифрования данных InnoDB в состоянии покоя?
A.17.3. Какие алгоритмы шифрования используются при шифровании данных InnoDB в состоянии покоя?
A.17.4. Можно ли использовать алгоритмы шифрования сторонних производителей вместо предоставляемого функцией шифрования данных InnoDB в состоянии покоя?
A.17.5. Можно ли шифровать индексированные столбцы?
A.17.6. Какие типы данных и длины данных поддерживаются шифрованием данных InnoDB в состоянии покоя?
A.17.7. Данные остаются зашифрованными в сети?
A.17.8. Память базы данных содержит данные в открытом виде или зашифрованные?
A.17.9. Как определить, какие данные нужно шифровать?
A.17.10. Чем шифрование данных InnoDB в состоянии покоя отличается от функций шифрования, уже предоставляемых MySQL?
A.17.11. Функция transportable tablespaces работает с шифрованием данных InnoDB в состоянии покоя?
A.17.12. Сжатие работает с шифрованием данных InnoDB в состоянии покоя?
A.17.13. Можно ли использовать mysqldump с зашифрованными таблицами?
A.17.14. Как изменить (обновить, переключить) главный ключ шифрования?
A.17.15. Как мигрировать данные из табличного пространства InnoDB в открытом виде в зашифрованное табличное пространство InnoDB?

A.17.1.

Данные расшифровываются для пользователей, имеющих право на их просмотр?

Да. Шифрование данных в состоянии покоя разработано для прозрачного применения шифрования в базе данных без влияния на существующие приложения. Возврат данных в зашифрованном формате нарушит работу большинства существующих приложений. Шифрование данных в состоянии покоя обеспечивает преимущества шифрования без накладных расходов, связанных с традиционными решениями шифрования баз данных, которые обычно требуют дорогостоящих и значительных изменений в приложениях, триггерах базы данных и представлениях.

A.17.2.

Каковы накладные расходы, связанные с шифрованием данных в состоянии покоя?

Нет дополнительных расходов на хранение. Согласно внутренним тестам, накладные расходы на производительность составляют несколько процентов.

A.17.3.

Какие алгоритмы шифрования используются при шифровании данных в состоянии покоя?

Шифрование данных в состоянии покоя поддерживает алгоритм шифрования блоками Advanced Encryption Standard (AES256). Он использует режим шифрования блоками Electronic Codebook (ECB) для шифрования ключа табличного пространства и режим шифрования блоками Cipher Block Chaining (CBC) для шифрования данных.

A.17.4.

Можно ли использовать алгоритмы шифрования сторонних производителей вместо алгоритма, предоставляемого функцией шифрования данных в состоянии покоя?

Нет, использование других алгоритмов шифрования невозможно. Предоставленный алгоритм шифрования широко принят.

A.17.5.

Можно ли зашифровать индексированные столбцы?

Шифрование данных в состоянии покоя прозрачно поддерживает все индексы.

A.17.6.

Какие типы данных и длины данных поддерживает шифрование данных в состоянии покоя?

Шифрование данных в состоянии покоя поддерживает все поддерживаемые типы данных. Ограничений по длине данных нет.

A.17.7.

Данные остаются зашифрованными в сети?

Данные, зашифрованные функцией шифрования данных в состоянии покоя, расшифровываются при чтении из файла табличного пространства. Таким образом, если данные находятся в сети, они находятся в открытом виде. Однако данные в сети могут быть зашифрованы с помощью шифрования сетевого трафика MySQL, которое шифрует данные, передаваемые в базу данных и из нее, с помощью SSL/TLS.

A.17.8.

Память базы данных содержит данные в открытом виде или зашифрованные данные?

При шифровании данных в состоянии покоя данные в памяти расшифровываются, что обеспечивает полную прозрачность.

A.17.9.

Как определить, какие данные следует шифровать?

Требование стандарта PCI-DSS требует, чтобы номера кредитных карт (первичный номер счета или «PAN») хранились в зашифрованном формате. Законы о уведомлении о нарушении (например, CA SB 1386, CA AB 1950 и аналогичные законы в более чем 43 штатах США) требуют шифрования имени, фамилии, номера водительского удостоверения и других данных ПИН. В начале 2008 года CA AB 1298 добавила медицинскую и страховую информацию к данным ПИН. Кроме того, отраслевые стандарты конфиденциальности и безопасности могут потребовать шифрования определенных активов. Например, активы, такие как результаты фармацевтических исследований, результаты разведки нефтяных месторождений, финансовые контракты или личные данные информаторов правоохранительных органов, могут потребовать шифрования. В здравоохранении конфиденциальность данных пациентов, медицинских карт и рентгеновских снимков имеет первостепенное значение.

A.17.10.

Чем шифрование данных в состоянии покоя отличается от функций шифрования, уже предоставляемых MySQL?

В MySQL существуют симметричные и асимметричные API шифрования, которые можно использовать для ручного шифрования данных в базе данных. Однако приложение должно управлять ключами шифрования и выполнять необходимые операции шифрования и расшифровки, вызывая API-функции. Шифрование данных в состоянии покоя не требует изменений в приложении, прозрачно для конечных пользователей и обеспечивает автоматизированное встроенное управление ключами.

A.17.11.

Поддерживается ли функция переноса табличных пространств с шифрованием данных в состоянии покоя?

Да. Поддерживается для зашифрованных табличных пространств с файлом на таблицу. Для получения дополнительной информации см. Экспорт зашифрованных табличных пространств.

A.17.12.

Работает ли сжатие с шифрованием данных в состоянии покоя?

Пользователи, использующие шифрование данных в состоянии покоя, получают все преимущества сжатия, поскольку сжатие применяется перед шифрованием блоков данных.

A.17.13.

Можно ли использовать эти утилиты с зашифрованными таблицами?

Да. Поскольку эти утилиты создают логические резервные копии, данные, полученные из зашифрованных таблиц, не зашифрованы.

A.17.14.

Как изменить (обновить, переключить) главный ключ шифрования?

Шифрование данных в состоянии покоя использует двухступенчатую систему ключей. При использовании шифрования данных в состоянии покоя индивидуальные ключи табличного пространства хранятся в заголовке файла данных соответствующего табличного пространства. Ключи табличного пространства шифруются с помощью главного ключа шифрования. Главный ключ шифрования генерируется при включении шифрования табличного пространства и хранится вне базы данных. Главный ключ шифрования обновляется с помощью команды ALTER INSTANCE ROTATE INNODB MASTER KEY, которая генерирует новый главный ключ шифрования, сохраняет ключ и переключает его на использование.

A.17.15.

Как мигрировать данные из табличного пространства в открытом виде в зашифрованное табличное пространство?

Перенос данных из одного табличного пространства в другое не требуется. Чтобы зашифровать данные в табличном пространстве с файлом на таблицу, выполните ALTER TABLE tbl_name ENCRYPTION = 'Y'. Чтобы зашифровать общее табличное пространство или табличное пространство mysql, выполните ALTER TABLESPACE tablespace_name ENCRYPTION = 'Y'. Поддержка шифрования для общих табличных пространств была введена в MySQL 8.0.13. Поддержка шифрования для системного табличного пространства mysql доступна начиная с MySQL 8.0.16.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-9.2-en/faqs-tablespace-encryption.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API