Вас может заинтересовать CipherSweet , который обеспечивает безопасное аутентифицированное шифрование , разделение ключей и зашифрованный поиск в PHP (для использования с базами данных SQL).
CipherSweet не использует функцию MySQL AES_ENCRYPT()
.На самом деле, вы никогда не захотите полагаться на функцию AES_ENCRYPT()
MySQL, если целью шифрования данных является скрытие их от сервера базы данных в качестве стратегии глубокой защиты.
Вместо этого CipherSweet поддерживаетдва внутренних интерфейса:
- FIPSCrypto , который использует только алгоритмы, одобренные для использования в сертифицированных FIPS 140-2 приложениях (AES, SHA2, PBKDF2, HMAC и т. д..)
- ModernCrypto , использующий libsodium (который быстрее и безопаснее, но менее совместим с действующими системами, которые имеют только OpenSSL).
С CipherSweet вы не получаете LIKE
или поддержку регулярных выражений.Вместо этого он использует стратегию под названием слепое индексирование (что аналогично тому, как часто используется оператор LIKE
).