Questa è una vecchia versione del documento!
prova
Criptare dati di un database MySQL
MySQL dà la possibilità di criptare i dati inseriti in un campo MySQL tramite le funzioni AES_ENCRYPT() e AES_DECRYPT(). Vediamo più nel dettaglio cosa fanno queste funzioni:
- AES_ENCRYPT() cripta una string a e restituisce una stringa binaria
- AES_DECRYPT() decripta la stringa binaria criptata e restituisce la stringa originale
Gli argomenti in input possono essere di qualunque lunghezza. Se un argomento è NULL, il risultato della funzione è NULL.
La lunghezza della stringa criptata può essere calcolata con la formula
16 X ( trunc ( string_length / 16 ) + 1 )
Un esempio
Supponiamo di voler creare una tabella in cui dobbiamo registrare i campi criptati name e address. Senza crittografia i due campi sarebbero il primo del tipo VARCHAR(50) ed il secondo del tipo VARCHAR(100).
Useremo come chiave la stringa 'IL_key'.
Creiamo la tabella con il comando
CREATE TABLE IF NOT EXISTS `user` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, `name` varbinary(100) DEFAULT NULL, `address` VARBINARY(200) NOT NULL , PRIMARY KEY (`id`) ) ENGINE=MyISAM AUTO_INCREMENT=1;
Passiamo ora ad inserire i dati, mediante la funzione
INSERT into user (name, address) VALUES (AES_ENCRYPT('Michele', 'IL_key'),AES_ENCRYPT('via dei Gladioli', 'IL_key'));
Per leggere i campi usiamo invece il comando
SELECT AES_DECRYPT(name, 'IL_key'), AES_DECRYPT(address, 'IL_key') from user;
Problemi di zbuffer con la classe QVTKWidget
E' necessario creare una sottoclasse di QVTKWidget aggiungendo nel costruttore:
QSurfaceFormat surfaceFormat = windowHandle()->format(); surfaceFormat.setStencilBufferSize(8); windowHandle()->setFormat(surfaceFormat);
Compilare VTK su windows
Scarica la versione prescelta dalla pagina di download ufficiale e lancia cmake con le opzioni
cmake \ -DCMAKE_INSTALL_PREFIX="<INSTALL_LOCATION>" \ -G"MinGW Makefiles" \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_C_FLAGS_RELEASE="-O2 -DNDEBUG" \ -DCMAKE_CXX_FLAGS_RELEASE="-O2 -DNDEBUG" \ -DCMAKE_CXX_FLAGS="-Wa,-mbig-obj" \ -DModule_vtkGUISupportQt=ON \ -DModule_vtkGUISupportQtOpenGL=ON \ -DModule_vtkRenderingQt=ON \ -DModule_vtkViewsQt=ON \ ../VTK-8.2.0
in cui <INSTALL_LOCATION> è il percorso in cui vogliamo installare le librerie.
Per installare le VTK su debian vi rimando al link https://github.com/metux/vtk8.
Compilare ed installare zlib su windows
Il codice sorgente è disponibile sul sito ufficiale di zlib.
Compilazione
Innanzi tutto c'è bisogno di un ambiente msys2 funzionante.
Dalla riga di comando di msys dà il comando
$ make -f win32/Makefile.gcc BINARY_PATH=<INST_DIR>/bin INCLUDE_PATH=<INST_DIR>/include LIBRARY_PATH=<INST_DIR>/lib SHARED_MODE=1 install
in cui <INST_DIR> è la directory di installazione in cui vogliamo siano copiati header e libreria.