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 .

È stato utile?

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.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top