Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Zaszyfrowane rekordy i SELECT, Jak to zrobić?
Blackhole
post
Post #1





Grupa: Zarejestrowani
Postów: 283
Pomógł: 1
Dołączył: 15.11.2004
Skąd: Mikołów

Ostrzeżenie: (0%)
-----


Witam.

Otóz mam duży (jak dla mnie) problem do rozwiązania. Szyfruję sobie dane do bazy funkcją php. I teraz jest problem, jak wykonać szukanie w takiej bazie, skoro dane są zaszyfrowane. Wnioskuję, że przed wykonaniem SELECT-a powinna wykonać się funkcja rozszyfrowująca dane, by ten SELECT działał już na danych odkodowanych. Nie wiem jednak, jak się do tego zabrać i czego szukać.

Czy można jakoś łatwo zamienić to szyfrowanie w php jakąś funkcją, która będzie zapisana w bazie i wywoływana w trakcie wpisywania danych?

Proszę o pomoc.

Ten post edytował Blackhole 7.01.2006, 10:42:16


--------------------
Ściskam prawicę...
Jacek

http://doscniewoli.pl/ - wszyscy jesteśmy niewolnikami bankierów!
http://jezusimarlena.ovh.org/
YouTube - Egzorcyzmy Anneliese Michel
Go to the top of the page
+Quote Post
dr_bonzo
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

Ostrzeżenie: (0%)
-----


Cytat
Czy można jakoś łatwo zamienić to szyfrowanie w php jakąś funkcją, która będzie zapisana w bazie i wywoływana w trakcie wpisywania danych?

Raczej tak, ale na pisaniu funkcji w DB sie nie znam.

Cytat
Szyfruję sobie dane do bazy funkcją php. I teraz jest problem, jak wykonać szukanie w takiej bazie, skoro dane są zaszyfrowane.

  1. SELECT *
  2. FROM tabela WHERE DATA = funkcja_szyfrujaca_w_php( $dane )
i nie musisz odszyfrowywac danych przed selectem, dopiero dekodujesz dane zwrocone przez SQLa.


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
Blackhole
post
Post #3





Grupa: Zarejestrowani
Postów: 283
Pomógł: 1
Dołączył: 15.11.2004
Skąd: Mikołów

Ostrzeżenie: (0%)
-----


Ok. Wiem już, jak tworzyć funkcje w pl/pgsql. Chciałbym teraz się dowiedzieć, czy w tym języku można wykonywać działania arytmetyczne lub działania na łańcuchach znaków podobnie, jak to jest w php? W manualu jeszcze tego nie znalazłem sad.gif


--------------------
Ściskam prawicę...
Jacek

http://doscniewoli.pl/ - wszyscy jesteśmy niewolnikami bankierów!
http://jezusimarlena.ovh.org/
YouTube - Egzorcyzmy Anneliese Michel
Go to the top of the page
+Quote Post
dr_bonzo
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

Ostrzeżenie: (0%)
-----


Latwiej i szybciej bedzie zaszyfrowac dane do SELECTa niz odszyfrowac cala tabele i w niej wyszukiwac.

Cytat
czy w tym języku można wykonywać działania arytmetyczne lub działania na łańcuchach znaków podobnie, jak to jest w php?

Jak pisalem nie znam sie na tym, ale jezyk programowania bez takich mozliwosci jest nieprzydatny - wnioskuje wiec ze jest to mozliwe.


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
SongoQ
post
Post #5





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

Ostrzeżenie: (0%)
-----


Napisz sobie funkcyjke w pg i wtedy wszystko zostanie po stronie DB


--------------------
Go to the top of the page
+Quote Post
Blackhole
post
Post #6





Grupa: Zarejestrowani
Postów: 283
Pomógł: 1
Dołączył: 15.11.2004
Skąd: Mikołów

Ostrzeżenie: (0%)
-----


Ja myślę, by zrobić tak.

szyfrowanie:
  1. INSERT
  2. INTO tabela (kolumna) VALUES (plpgsql_crypt(wartosc,klucz));
gdzie plpgsql_crypt to napisana przeze mnie w plpgsql funkcja szyfrująca.

wybór rekordu:
  1. SELECT kolumna
  2. FROM tabela WHERE kolumna LIKE '%' || plpgsql_decrypt(kolumna,klucz) || '%';
Muszę się "tylko" jeszcze dowiedzieć, jak napisać te funkcje.

Co o tym myślicie?

Ten post edytował Blackhole 7.01.2006, 13:28:12


--------------------
Ściskam prawicę...
Jacek

http://doscniewoli.pl/ - wszyscy jesteśmy niewolnikami bankierów!
http://jezusimarlena.ovh.org/
YouTube - Egzorcyzmy Anneliese Michel
Go to the top of the page
+Quote Post
SongoQ
post
Post #7





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

Ostrzeżenie: (0%)
-----


dokladnie tak, teraz tylko wymysl jakis algorytm kodujacy i dekodujacy i bedzie ok.


--------------------
Go to the top of the page
+Quote Post
Blackhole
post
Post #8





Grupa: Zarejestrowani
Postów: 283
Pomógł: 1
Dołączył: 15.11.2004
Skąd: Mikołów

Ostrzeżenie: (0%)
-----


Tak mi się nasunęło...
Wybieranie odpowiedniego wiersza z bazy powinno mieć chyba postać:
  1. SELECT plpgsql_decrypt(kolumna,klucz)
  2. FROM tabela WHERE plpgsql_decrypt(kolumna,klucz) LIKE '%szukane_slowo%';
bo inaczej dostawałbym w wyniki zaszyfrowane dane, a przecież do wyświetlenia potrzebne są dane możliwe do odczytania.

Ten post edytował Blackhole 8.01.2006, 10:12:20


--------------------
Ściskam prawicę...
Jacek

http://doscniewoli.pl/ - wszyscy jesteśmy niewolnikami bankierów!
http://jezusimarlena.ovh.org/
YouTube - Egzorcyzmy Anneliese Michel
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 20:56