Titolo:
Patria est ubicumque est bene.

Presentazione:
L'incremento della sicurezza è la motivazione di questa versione e della prossima. In particolare adesso convivono insieme la trasmissione della password dal browser al server sia in chiaro che con hash sha256. Infatti subito dopo l'aggiornamento noterete che pur immettendo le credenziali giuste non riuscirete ad accedere, cosa che vi sarà consentita al secondo tentativo, questo escamotage si è reso necessario per consentire al server di avere la password in chiaro come avveniva sulle precedenti versioni e quindi procedere con l'hash anche lato server. Dalla prossima 9.01, invece, dal browser verrà inviato il solo hash sha256 e non più in chiaro, in ogni caso (password in chiaro o criptata) l'hash presente sul database sarà diverso da quello passato in rete.
Ma la parte più interessante per gli sviluppatori che volessero creare dei moduli per GAzie in cui mettere dei dati sensibili è l'introduzione di un meccanismo di creazione al volo della chiave di criptazione in $_SESSION['aes_key'] dipendente dal valore inserito sulla colonna "aes_key" della tabella gaz_admin e dalla password dell'utente, ma sempre la stessa indipendentemente dall'utente loggato. Per chiarire il funzionamento oltre ad aver creato la nuova tabella gaz_anagraes troverete sulla root il file passhash.php che se richiamato da browser vi consentirà di visualizzare i valori con cui valorizzare le citate colonne di "gaz_admin".
Ricapitolando: in $_SESSION['aes_key'] troverete la chiave per fare encrypt/decrypt di qualsiasi dato, e sarà sempre la stessa indipendentemente dall'utente pur avendo, gli stessi, valori diversi sulla relativa colonna della tabella gaz_admin. Pertanto se nessun utente è loggato nessuno riuscirà a leggere i dati criptati, nemmeno un amministratore di sistema. Per quanto detto si capisce che la perdita delle credenziali da parte di tutti gli utenti farebbe perdere tutti i dati contenuti nella tabella gaz_anagraes o sulle nuove colonne BLOB delle tabelle gaz_001company_data e gaz_001files, e nemmeno il sopra citato file passhas.php potrà esservi di aiuto in quanto al momento dell'aggiornamento la chiave sarà creata casualmente e non è la stessa di esempio.
Come al solito abbiamo fatto pure delle correzioni di errori, pertanto esorto chiunque ad aggiornare a questa versione.
Cito il lavoro fatto da Antonio Germani sul suo modulo "Vacation rental" oramai completo, anche su di esso è stata incrementata la sicurezza di alcuni script, chi è interessato può provarlo attivandolo dalla configurazione utente (amministratore).

Antonio de Vincentiis, Montesilvano, 02 ottobre 2022
