Вращающиеся ключи и данные реактивного повторного шифрования - PullRequest
0 голосов
/ 20 марта 2019

Я хочу ввести чередование ключей в моей системе, но для этого необходимо повторное шифрование.Было бы неплохо сделать это реактивно для какого-то события, триггера и т. Д., Но я не могу найти ничего подобного в документации Google.

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

Есть идеи, как достичь этой цели?

Ответы [ 2 ]

3 голосов
/ 20 марта 2019

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

Мыопределенно понимаю стремление к событиям, основанное на ключевых изменениях жизненного цикла, и мы думаем о том, как это сделать в будущем.У нас пока нет планов делиться.

2 голосов
/ 20 марта 2019

Когда вы поворачиваете ключ шифрования (или когда вы включаете запланированное вращение для ключа), Cloud KMS не удаляет автоматически материал версии старого ключа. Вы все еще можете расшифровать данные, ранее зашифрованные старым ключом, если вы не отключите / не уничтожите версию ключа вручную. Подробнее об этом вы можете прочитать в документации по .

ротации ключей *1001* Cloud.

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

  • Новые данные будут зашифрованы новым ключом
  • Старые данные будут расшифрованы старым ключом

На момент написания этой статьи Cloud KMS не публиковала событие при повороте ключа. Если у вас есть бизнес-требование перешифровать все существующие данные с новым ключом, вы можете выполнить одно из следующих действий:

Использовать Cloud Scheduler

Запишите Облачная функция , подключенная к Облачный планировщик , который вызывается на периодической основе. Например, если ваши ключи вращаются каждые 72 часа, вы можете запланировать запуск облачной функции каждые 24 часа. Рад предоставить пример кода, если это поможет, но ОП специально не запрашивал код.

Long-опрос

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...