Custodire dati cifrati con PHP

23
ott
2

Sto realizzando il mio CRM personale basandomi sul mio framework STOOPHP, e mi sono trovato nella necessità di memorizzare le password degli FTP dei clienti. Per una politica di correttezza non ho mai conservato le password in chiaro all’interno di un database, e mi sono sempre avvalso di hashing. Ma l’hashing è a senso unico e quando si dimentica la password bisogna per forza impostarne una nuova (diffidate dei siti che custodiscono la vostra password e sono pronti a rispedirvela quando desiderate). La mia esigenza è quella di poter visualizzare quali sono le password facendo in modo che nel database però siano criptate. Pertanto avevo bisogno di un algoritmo che permettesse anche il ritorno, per mezzo di una chiave di codifica (crittazione a due vie). La classe Crypt faceva al caso mio e ho implementato il meccanismo in questo modo:

  • Al login viene salvata in sessione la password del mio CRM da usare come chiave di codifica
  • Nella funzione che viene invocata ad ogni inserimento e modifica in una entry della tabella dei clienti (che corrisponde ad una classe nel mio framework STOOPHP) eseguo la cifratura della password
  • Nella funzione che viene invocata al momento di visualizzare un’entry della tabella eseguo la decrittazione

I dati sono al sicuro ma dal punto di vista dell’utente del CRM non è cambiato nulla. Mi ci è voluto tanto per scriverlo quanto per farlo, grazie alla programmazione orientata agli oggetti.

Alcuni suggerimenti per chi vuole la sicurezza estrema in base a ciò che al momento so:

  • Usare HTTPS
  • Visualizzare la password in un’immagine stile captcha

La carica dei 101 e pensieri di riorganizzazione

1
ott
0

Questo è il post numero 101, e sono stato fermo a 100 un po’ troppo. Colpa del lavoro e di Facebook. Ora che ho terminato la realizzazione di una serie di home page amministrabili per gli alberghi dell’Altamarea Beach Village di Cattolica volevo inserire la notizia nel sito della mia ditta individuale, ma mi sono accorto che usando Twitter per le news brevi e il flusso RSS per la pubblicazione nel sito potrei essere più veloce e spargere meglio la voce, tuttavia il mio account di Twitter è personale, quindi dovrei aprire un altro account su Twitter per l’azienda, ma così non potrei aggiornarlo su Ping.fm perché lì ho già l’account personale configurato, così mi sono iscritto a Plurk (una specie di Twitter riveduto e corretto), e usando i trigger di Ping.fm potrò scegliere se aggiornare le pubblicazioni personali e quelle di lavoro, quindi non mi resta altro che importare qualche contatto su Plurk. Delirio da saturazione di social network!

Mi piacerebbe quindi riorganizzare il sito aziendale e dedicare un’home page ad ogni cliente. Soprattutto vorrei revisionare tutto il mio framework, STOOPHP, ma avrei bisogno di un sistema di controllo delle versioni.

Il lavoro preme. Ma bisogna sempre dedicare un occhio alla ricerca per potersi garantire un futuro nell’informatica.

Ceramiche e dipinti a Palazzo Ciacchi

16
lug
0

Dall’inizio di luglio mi sono dedicato completamente alla realizzazione del sito dedicato a Palazzo Ciacchi come sede museale e oggi ho terminato in tempo per la consegna. Realizzare in così pochi giorni questo sito per conto di Rosso Zingone è stato per me un traguardo importante, anche perché la richiesta veniva dalla Confindustria di Pesaro e Urbino. Man mano che il mio framework (STOOPHP) migliora riesco ad essere sempre più veloce: in questo caso vengono gestiti i testi e le sezioni delle opere (dipinti e ceramiche).

Punto Accessori si sposta su Netservice

18
giu
0

Logo di Punto AccessoriIl sito di Punto Accessori, azienda leader nel settore degli accessori moda, ora ha l’hosting presso la Netservice. E’ stato il mio primo grande progetto in PHP e MySQL, e mi ha dato l’occasione di sviluppare un framework (STOOPHP) su cui basare tutte le mie applicazioni web.

Ho curato la fase di migrazione, verificando la compatibilità in relazione all’invio di email e all’upload di file, che sono le prime cose che saltano quando cambiano le configurazioni del server web.