Compila mysql per AES 256 bit
-
10-07-2019 - |
Domanda
Secondo documento mysql
" Viene utilizzata la codifica con una lunghezza della chiave di 128 bit, ma puoi estenderla fino a 256 bit modificando la sorgente. "
Ma non sembravano fornire istruzioni su dove cambiare. Qualcuno ha esperienza con questa situazione? quale file sorgente dovrebbe cambiare?
Nota: utilizzo questi passaggi per compilare .
Soluzione
Ho trovato poco aiuto dalla mysql mailing list
il file include / my_aes.h
#define AES_KEY_LENGTH 128 /* must be 128 192 or 256 */
poiché utilizzo OpenSuSe 11.1 è necessario disporre dei seguenti strumenti
sudo zypper install gcc gcc-c++ ncurses-devel
quindi compilarlo semplicemente con queste istruzioni - qui
Ringraziamo LenZ e tripanel.net
Altri suggerimenti
Probabilmente sarà una soluzione più gestibile per eseguire la crittografia nell'applicazione client.
Inoltre, avrai anche il vantaggio di avere i dati trasferiti sulla rete crittografati e di non inviare la chiave sulla rete (ovviamente puoi usare SSL per connetterti a mysql per mitigarlo comunque).
Se questo non sembra un buon approccio, pubblica i tuoi requisiti.
Probabilmente non vuoi compilare i tuoi binari mysql; ci sono cose più utili da fare per gli sviluppatori che costruire i propri binari mysql. Quelli di MySQL / Sun sono ampiamente testati e non contengono regressioni delle prestazioni (speriamo).
Le funzioni mysql AES_ENCRYPT () sono potenzialmente non sicure perché non hanno documentato
- Come hanno inserito la password nella chiave
- Quale modalità di crittografia usano
Se vengono eseguiti in modo vulnerabile, la crittografia potrebbe essere molto debole. Dipende dal tuo caso d'uso se questo è importante.