Drukowana wersja tematu

Kliknij tu, aby zobaczyć temat w orginalnym formacie

Forum PHP.pl _ PHP _ Szyfrowanie danych wrażliwych w bazie.

Napisany przez: LowiczakPL 21.03.2019, 10:54:20

Zastanawiam się nad taką kwestią, chcę zaszyfrować kilka danych wrażliwych aby nie były jawnie dostępne w bazie danych.

Do szyfrowania i deszyfrowania zastosuję 2 klucze, klucz licencji oraz hasło użytkownika, klucz licencji przechowywany jest w storage na komputerze użytkownika, klucze pobieram podczas logowania i trzymam w sesji.

Co sądzicie o takim zabezpieczeniu wrażliwych danych czy będzie w miarę bezpieczne?

Napisany przez: Pyton_000 21.03.2019, 14:52:36

A po co ?

Napisany przez: LowiczakPL 21.03.2019, 16:24:13

RODO wymaga aby dane osobowe pacjentów, dane choroby nie były w jawny sposób dostępne w bazie danych dlatego wymyśliłem sobie szyfrowanie.

A dokładnie chodzi o wyłączenie dostępu do jawnych danych Administratorowi serwera.

Napisany przez: Pyton_000 21.03.2019, 18:22:24

A możesz jakąś podstawę prawną tego sanu przytoczyć? Bo pierwszy raz słyszę.

Napisany przez: LowiczakPL 21.03.2019, 19:31:01

https://lexdigital.pl/ochrona-danych-osobowych-nowe-zasady-rodo mowa w artykule o szyfrowaniu danych wrażliwych
kolejny artykuł mówiący o szyfrowaniu baz danych https://www.pcworld.pl/news/RODO-czyli-rewolucja-w-ochronie-danych-osobowych,409928.html

Napisany przez: Tomplus 21.03.2019, 20:30:18

Szyfrowanie powinno być, ale nie jest wymogiem że powinno być w bazie danych. To dostęp do bazy danych, przesyłanie informacji powinno być w kanale szyfrowanym, aby żadna osoba trzecia nie mogła ich odczytać, oraz aby aplikacja która umożliwia odczytywanie informacji z bazy nie może w sposób prosty uzyskać dostępu do danych innych osób.

Jako ADO masz do tego dostęp, bo nawet mają klucze, masz do nich dostęp, więc na jedno wychodzi. Jako specjalista IT, te dane Cię nie obchodzą jako wartość merytoryczna.

Napisany przez: Pyton_000 21.03.2019, 20:43:41

Hehe widzisz, podałeś 2 artykuły które nijak się mają do tego co chcesz osiągnąć smile.gif

Podsawową zasadą jest ograniczenie dostępu do danych oraz prowadzenie rejestru udostępnienia danych. Czyli jako ADO jesteś odpowiedzialny komu i co udostępniasz. Czyli np. dostę do bazy danych jest jedynie poprzez login oraz hasło. Środki bezpieczeństwa typu firewall czy szyfrowanie ruchu (a nie samych danych) powinno być standardem bezpieczeństwa.

Nikt nigdzie w żadnym miejscu ani RODO ani GIODO nie narzuca obowiązku przechowywania danych w postaci zaszyfrowanej pod groźbą kary. Są to jedynie zalecenia które w zanczący sposób podnoszą bezpieczeństwo danych i minimalizują ryzyko wycieku.

Napisany przez: LowiczakPL 22.03.2019, 07:46:31

Faktycznie chodzi mi o podniesienie bezpieczeństwa wycieku danych wrażliwych, jak sądzicie czy to co wymyśliłem podniesie bezpieczeństwo wycieku danych.

Napisany przez: markonix 22.03.2019, 09:20:59

Ja stosuje czasem szyfrowanie po stronie aplikacji, np. masz kolumnę w której przechowuje jakieś hasło użytkownika do innego serwisu, do API (muszę, bo nie mam innej opcji poza wpisywaniem za każdym razem przez użytkownika).
No i po ludzku nie chce tych haseł widzieć, ale oczywiście nie mogę ich zmienić w hasha więc je koduje, żeby było łatwo i przyjemnie napisałem mniej więcej coś takiego, jak ktoś tutaj:
https://stackoverflow.com/questions/48785932/encrypt-decrypt-db-fields-in-laravel

Czy daje to jakieś bezpieczeństwo? Wg mnie tak, np. dump bazy nie pozwoli Ci na odkodowanie, przeglądając bazę wzrokowo nie widzisz tych haseł, musisz znać klucz aplikacji, czyli mieć dostęp do plików z zmiennymi środowiskowymi, dopiero hash z bazy z połączeniu z ftp/ssh pozwoli Ci te hasło ujawnić no, ale jak ktoś ma nieuprawniony dostęp do tego i tego to już możesz się pakować.

Napisany przez: sabat24 22.03.2019, 20:22:32

Ja stosuję podejście https://www.blancco.com/resources/article-what-is-cryptograhic-erasure/. To też rozwiązuje problem z wszelkimi kopiami baz danych, jakie trzymamy.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)