Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Szyfrowanie danych przed dodaniem ich do bazy
Forum PHP.pl > Forum > PHP
The Night Shadow
Niedawno przeglądałem sklep SOTE. Chwalą się tam szyfrowaniem danych przechowywanych w bazie. Udało mi się dowiedzieć, że system SOTE ma skrypt, który przed dodaniem danych do bazy, szyfruje je, natomiast przed ich pobraniem tworzy tymczasową tabelę z zdeszyfrowanymi danymi i dopiero w oparciu o tymczasową tabelę następuje pobieranie danych docelowych (np. wraz z sortowaniem).

Czy znacie jakieś możliwości wykonania podobnego rozwiązania? Szyfrowanie miałoby odbywać się w oparciu o klucz dostępny wyłącznie dla administratora. W takim układzie, by dostać się np. do danych osobowych klientów potencjalny włamywacz musiałby mieć jednocześnie skrypty PHP i bazę danych, a w najlepszym wypadku również klucz, gdyby był podawany z zewnątrz.

Zastanawia mnie kwestia wydajności takiego rozwiązania. SOTE śmiga w miarę szybko, więc nie powinno być tragicznie. Zwłaszcza, że szyfrowaniu miałyby podlegać jedynie naistotniejsze dane takie jak dane osobowe, dane transakcji itp.

Zdaję sobie sprawę z tego, że trochę dyskusji na temat szyfrowania było, ale większość w zasadzie nie traktowała strikte o szyfrowaniu tylko hashowaniu.

Pozdrawiam... :- )
michal74
Szyfrowanie to temat rzeka. Nie znam algorytmu SOTE, na ktory sie powolujesz ale z tego co mi wiadomo jakiekolwiek proby [czyt. algorytmy domowe] sa skazane na porazke juz na starcie. Najlepsza metoda wg mnie to szyfrowanie za pomoca roznicy symetrycznej korzystajac z dwoch jednakowo dlugich ciagow bajtow np:

to jest tekst do szyfrowania
XOR
kjhJHfdyKJNdHUIORaafchjZybe

...i gotowe. Zeby odczytac zakodowany ciag wystarczy go jeszcze raz potraktowac XOR'em drugim ciagiem. Problemem zasadniczym jest trudnosc w wygenerowaniu odpowiednio dlugiego ciagu random [naprawde przypadkowego], oraz jego zapamietanie do pozniejszego uzycia. Powodzenia w eksperymentach!

pozdrawiam
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.