Скомпилируйте mysql для AES 256bit - PullRequest
2 голосов
/ 29 октября 2009

Согласно MySQL документ

"Используется кодирование с длиной ключа 128 бит, но вы можете расширить его до 256 бит, изменив источник."

Но, похоже, они не давали инструкции, где можно измениться. Кто-нибудь сталкивался с этой ситуацией? какой исходный файл должен измениться?

Примечание: я использую эти шаги для компиляции .

Ответы [ 2 ]

3 голосов
/ 29 октября 2009

Я нашел небольшую помощь от mysql список рассылки

файл включает / my_aes.h

#define AES_KEY_LENGTH 128 /* must be 128 192 or 256 */

, поскольку я использую OpenSuSe 11.1, необходимо иметь следующие инструменты

sudo zypper install gcc gcc-c++ ncurses-devel

затем просто скомпилируйте его по этой инструкции - здесь

Кредит LenZ и tripanel.net

0 голосов
/ 29 октября 2009

Вероятно, это будет более приемлемое решение для выполнения шифрования в клиентском приложении.

Более того, вы также получите преимущество, заключающееся в том, что данные будут передаваться по сети в зашифрованном виде и не будут отправлять ключ по сети (конечно, вы можете использовать SSL для подключения к mysql, чтобы в любом случае это смягчить). *

Если это не похоже на хороший подход, пожалуйста, опубликуйте ваши требования.

Вы, вероятно, не хотите компилировать свои собственные двоичные файлы mysql; разработчики могут сделать более полезные вещи, чем создание собственных двоичных файлов mysql. MySQL / Sun тщательно протестированы и не будут содержать снижения производительности (мы надеемся).


Функции mysql AES_ENCRYPT () также потенциально небезопасны, поскольку не документированы

  • Как они хешируют пароль в ключе
  • Какой режим шифрования они используют

Если они сделаны уязвимым образом, шифрование может быть очень слабым. Имеет ли это значение в зависимости от вашего варианта использования.

...