Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Codificare i dati per questione di sicurezza

    Salve, posseggo un database sql con all'interno dei dati riservati come indirizzo mail e messaggi.
    Non sò quanto questo database possa essere sicuro dalle intrusioni da parte di altre persone ed è per questo che volevo codificare i dati presenti al suo interno.
    Ho creato un po di codice php ma mi è diventato molto laborioso.
    Poi ho scoperto il comando base64_encode che mi permette di codificare la stringa e di decodificarla con base64_decode.
    Mi chiedo quanto possa essere sicuro questo sistema?
    Una persona in possesso della stringa codificata può benissimo decodificarla creando due righe di php così come di seguito:
    codice:
    $stringa = "U3RyaW5nYSBkYSBjb2RpZmljYXJl";
    $stringa_decodificata = base64_decode($stringa);
    echo $stringa_decodificata;
    Conoscete del codice di codifica/decodifica decente?
    Grazie mille.
    Mariastella

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    La materia riguardante la codifica dei dati è un po' complessa.
    Fondamentalmente però, se usi un algoritmo di codifica reversibile, una persona realmente intenzionata a recuperare i dati in chiaro prima o poi ci riesce.
    Tutto dipende da quanto per il malintenzionato sia importante recuperare i dati e quanto tempo sia disposto a spenderci.

    Secondo me non vale la pena di stare a sbattersi a codificare dati come indirizzi email.

  3. #3
    Ciao Alhazred.
    Grazie per la risposta.
    In effetti non voglio creare una codifica a prova di hacker ma non mi va neanche di lasciare i dati in chiaro sul database di Altervista soprattutto perchè non sò Altervista che grado di sicurezza offre.
    Al momento mi interesserebbe una cosa semplice, con il tempo deciderò se aumentare la protezione o rimettere i dati in chiaro.
    Da internet mi sono scaricato un pò di codice che mi permette di codificare e decodificare i dati tramite una chiave.
    Posto il codice di decodifica che è quello che mi da problemi.
    codice:
    <?php
    
    $key="kòsdlfajldndsfsiejfsalkjasd"; //chiave di decodifica usata per codificare $cdata in basso
    function str_decrypt($cdata, $key)
    {
      if(strlen($key)<32) $key = md5($key);
      $ld  = strlen($cdata);
      $lk  = strlen($key);
      for($i=0, $data=""; $i<$ld; $i+=2){
        $data .= chr((hexdec(substr($cdata, $i, 2)))^(ord($key[($i>>1)%$lk])));
      }
      return $data;
    }
    $cdata="0C5211575E5A5D5658090C03020200075724585055551756195D11"; //risultato che ho ottenuto codificando una parola con la chiave $key
    	$usernamedecodificato = str_decrypt($cdata, $key);
    	echo $usernamedecodificato; die();
    
    ?>
    Il mio problema è che il codice che ho postato funziona benissimo su un file salvato con codifica Western European mentre io ho la necessità di utilizzare UTF-8.
    Purtroppo quando utilizzo UTF-8 la decodifica non avviene più, mi esce un valore sballato edincomprensibile.
    Qualcuno mi sa dare qualche consiglio?
    Grazie.
    Ms.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.