Схема шифрования Python, которая поддерживает несколько ключей дешифрования - PullRequest
3 голосов
/ 13 февраля 2012

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

У меня есть (конфиденциальные) пользовательские данные, которые должны храниться в зашифрованном виде в базе данных, но для нескольких третьих лиц должна быть возможность доступа к данным без предоставления им одного и того же секрета.

Это может быть реализовано путем генерации случайного ключа K, шифрования исходных данных D для получения D_K. Затем я шифрую K с помощью стольких ключей доступа (от ak_1 до ak_n), сколько нужно, сохраняю их для последующего использования и уничтожаю K. Всякий раз, когда третья сторона пытается получить доступ к D, отправьте ak_i, и я использую его для расшифровки K, а затем для расшифровки D_K. чтобы получить D.

Тем не менее, было бы неплохо внедрить его, так как а) я не люблю изобретать велосипед и б) это безопасность, и вы, вероятно, не получите 100% правильности.

1 Ответ

0 голосов
/ 13 февраля 2012

Из-за путаницы и проблем, связанных с контролем экспорта жесткого шифрования, не так много сторонних библиотек, которые напрямую предоставляют такого рода схему явного шифрования более высокого уровня.

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

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