Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: zakodowanie danych w bazie danych
Forum PHP.pl > Forum > Przedszkole
hostcom
Witam
Swojego czasu stworzyłem prosta funcję do zakodowania rekordów w bazie danych tak aby w przypadku kradzieży były one trudne do odczytania.
Dlatego podziele się tymi funcjami z wami. Zaznaczam iż wzór tych funcji został przerobiony wiec różnią się od oryginału ze wględu bezpieczestwa.
Nie ma za to problemu aby dowolnie ją dostosować do swoich potrzeb

  1. $config['mask']='1234567890!@#$%^&*QWE'; // dowolny 32 znakowy klucz
  2. // _e($a, $b); // $a - string do zakodowania $b - dodatkowy klucz np uzytkownika
  3. // _d($a, $b); // $a - string do zakodowania $b - dodatkowy klucz np uzytkownika
  4. function _e($text,$a=null)
  5. {global $config;
  6. if(!$text) return $text;
  7.  
  8. return trim(base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_256, md5($config['mask'].$_SERVER[SERVER_ADDR].$a), $text, MCRYPT_MODE_ECB, mcrypt_create_iv(mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB), MCRYPT_RAND))));
  9. }
  10.  
  11. function _d($text,$a=null)
  12. {global $config;
  13. if(!$text) return $text;
  14.  
  15.  
  16. return (trim(mcrypt_decrypt(MCRYPT_RIJNDAEL_256, md5($config['mask'].$_SERVER[SERVER_ADDR].$a), base64_decode($text), MCRYPT_MODE_ECB, mcrypt_create_iv(mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB), MCRYPT_RAND))));
  17. }
nospor
wow, uzyles mcrypt i sie z dzielisz z nami tym kodem..... jak poznasz empty lub isset to tez nam sie tym pochwalisz? wink.gif

A juz calkiem powaznie: przenosze na przedszkole, bo dzial ALgorytmy nie jest miejscem na takie rzeczy.

ps:jak kiedys sam z jakis przyczyn bedziesz musial emigrowac na inny serwer, to danych tyz juz nie odczytasz, no chyba ze bedziesz pamietal dane starego serwera
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.