Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Kryptografia
noche
post 17.08.2015, 11:29:38
Post #1





Grupa: Zarejestrowani
Postów: 46
Pomógł: 0
Dołączył: 20.02.2015

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



....?nr=123
chodzi o to aby użytkownik nie widział '123' a później żeby można było odczytać 123
testowałem crypt( $string, $klucz ) ale nie mogę wrócić do pierwotnego stringa
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 16)
Pyton_000
post 17.08.2015, 11:41:41
Post #2





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

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


Bo niby czemu miałbyś móc odwrócić hashowanie? czytałeś dokumentacje do funkcji której chciałeś użyć?

Tu masz sposób
http://stackoverflow.com/questions/9262109...-way-encryption

albo jak chcesz prymityw to base64...
Go to the top of the page
+Quote Post
by_ikar
post 17.08.2015, 12:34:24
Post #3





Grupa: Zarejestrowani
Postów: 1 798
Pomógł: 307
Dołączył: 13.05.2009
Skąd: Gubin/Wrocław

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


http://hashids.org/php/
Go to the top of the page
+Quote Post
noche
post 18.08.2015, 08:35:27
Post #4





Grupa: Zarejestrowani
Postów: 46
Pomógł: 0
Dołączył: 20.02.2015

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


dzięki za podpowiedzi
na moje potrzeby wystarczyło to

function f_base64_encode($data) {
return str_replace( '=', '-', base64_encode($data));
}

function f_base64_decode($data) {
return str_replace( '-', '=', base64_decode($data)) ;
}
Go to the top of the page
+Quote Post
bobek358
post 18.08.2015, 10:08:55
Post #5





Grupa: Zarejestrowani
Postów: 143
Pomógł: 22
Dołączył: 17.11.2007

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


A może bezpieczniej przekazać to w sesji skoro użytkownik nie może tego zobaczyć?
Go to the top of the page
+Quote Post
Pyton_000
post 18.08.2015, 10:20:47
Post #6





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

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


Tak o ile to jesr wew. aplikacji, jeśli przychodzi z zew. to nie da rady smile.gif
Go to the top of the page
+Quote Post
bobek358
post 18.08.2015, 11:51:34
Post #7





Grupa: Zarejestrowani
Postów: 143
Pomógł: 22
Dołączył: 17.11.2007

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


Mhm jednak autor nie stwierdził dokładnie co i jak smile.gif
Go to the top of the page
+Quote Post
nospor
post 18.08.2015, 11:55:11
Post #8





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Ostatnio jest jakas dziwna moda na "tajenie" rzeczy przekazywanych w url. Wczoraj ktos chcial to zrobic przez mod_rewrite.... Odnosze wrazenie, ze tutaj rowniez, jak we wczorajszym temacie, autor totalnie zle podszedl do zagadnienia. Pewnie problemem wcale nie jest "jawnosc" informacji w przegladarce ale zle rozplanowanie aplikacji i ogolne zabezpieczenie dostepu do danych sekcji przez danyc uzytkownikow.

No ale mozna tylko gdybac jak to robią Pyton i bobek wink.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
noche
post 19.08.2015, 07:19:21
Post #9





Grupa: Zarejestrowani
Postów: 46
Pomógł: 0
Dołączył: 20.02.2015

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


smile.gif
faktycznie brak kontekstu, jest to stronka wew. gdzie jedna osoba wprowadza dane do bazy i jest zalogowana, korzystam tutaj z sesji i POSTa
druga osoba nie ma możliwości logowania, może tylko zobaczyć wcześniej wprowadzone dane o ile dostanie link ( GET ) mailem
ten link miał na końcu numer, wystarczyło wiec zmienić numer i mamy kolejne informacje
to tak na szybko smile.gif
dzięki jeszcze raz na podpowiedzi bardzo się przydały
Go to the top of the page
+Quote Post
nospor
post 19.08.2015, 07:24:50
Post #10





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Dane, ktore moga byc widoczne dla osob niezalogowanych przez link, powinny zawierac jakis dluuuugi iddentyfikator, tak zeby nikt sobie nie mogl zgadnac jaki moze byc inny wazny identyfikator. Dodatkowo taki identyfikator powinien miec waznosc czasowa, np. przez 8 godzin od wyslania maila.


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
noche
post 19.08.2015, 08:56:36
Post #11





Grupa: Zarejestrowani
Postów: 46
Pomógł: 0
Dołączył: 20.02.2015

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


wiem o co Ci chodzi i masz racje dlatego nie chciałem się rozpisywać bo to ciężko w paru zdaniach przedstawić smile.gif
tutaj to bardziej przypomina taki mini obieg dokumentów są osoby które generują wpisy do bazy i są osoby które tylko odczytują te dane
chodzi tez o to aby po roku mając link można było odczytać dane wpisy
gdy jest coś takiego w linku ....?nr=123 to po prostu kusi żeby zmienić na 122 tongue.gif
gdy natomiast z 123 zrobi sie 'MTIz' to już nic nie mówi smile.gif

takie dodatkowe pytanie jakich znaków specjalnych ta funkcja ( base64_encode ) używa a których nie ?

Ten post edytował noche 19.08.2015, 08:59:53
Go to the top of the page
+Quote Post
viking
post 19.08.2015, 09:09:15
Post #12





Grupa: Zarejestrowani
Postów: 6 380
Pomógł: 1116
Dołączył: 30.08.2006

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


Tylko a-z0-9=_
Inna sprawa że base64_decode i ktoś ma twój super link. Szybciej tu md5 pasuje z jakimś hashem ekstra.


--------------------
Go to the top of the page
+Quote Post
nospor
post 19.08.2015, 09:20:06
Post #13





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




@viking tylko ze jak on tu hash wstawi, to nie odczyta juz numeru, a on chce odczytac numer i dopiero wtedy leciec do bazy na podstawie numeru.
To co ty proponujesz to na dobra sprawe to co ja juz podalem wczesniej


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
noche
post 20.08.2015, 07:48:53
Post #14





Grupa: Zarejestrowani
Postów: 46
Pomógł: 0
Dołączył: 20.02.2015

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


chodzi o prostą zmianę numeru
myślę o zmianie jakiegoś znaku na inny żeby jeszcze trochę utrudnić odczytanie tego numeru ale to może zaczekać smile.gif
md5 to pierwsze z czym się męczyłem gdy chciałem rozwiązać ten temat ale nie udało mi się tego zmienić do formy pierwotnej
poczytałem o crypt później Mcrypt ale u mnie najlepiej sprawdzi się proste rozwiązanie
Go to the top of the page
+Quote Post
Pyton_000
post 20.08.2015, 07:56:26
Post #15





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

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


A może po prostu w BD do ID doklej sobie pole UUID (Generowane przez UUID() - '6ccd780c-baba-1026-9564-0040f4311e29')
Wtedy generujesz linki z tym czymś, a podczas wchodzenia w link szukasz po prostu rekordu z tym UUID zamiast ID.

zamiast UUID możesz wstawić cokolwiek, nawet sha1 czy nawet md5, bez znaczenia.
Go to the top of the page
+Quote Post
by_ikar
post 20.08.2015, 18:25:30
Post #16





Grupa: Zarejestrowani
Postów: 1 798
Pomógł: 307
Dołączył: 13.05.2009
Skąd: Gubin/Wrocław

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


Zerknąłeś w ogóle na to co podesłałem? http://hashids.org/php/
Go to the top of the page
+Quote Post
noche
post 21.08.2015, 09:54:49
Post #17





Grupa: Zarejestrowani
Postów: 46
Pomógł: 0
Dołączył: 20.02.2015

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


@by_ikar tak, dzięki a ten link

nie potrzebuje aż tak teraz kombinować ale pomysły super smile.gif

dla zainteresowanych w przyszłości poza wcześniejszymi linkami:
http://php.net/manual/en/function.uniqid.php
https://msdn.microsoft.com/en-us/library/ms187942.aspx
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 Wersja Lo-Fi Aktualny czas: 14.08.2025 - 04:11