Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

2 Stron V   1 2 >  
Reply to this topicStart new topic
> [PHP]Hashowanie kodu
HasH1
post
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 30.05.2010

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


Witam serdecznie,

Mój problem polega na kodzie php, który muszę ukryć/zahashować przed edycją, a jednocześnie udostępnić użytkownikom.
Jak mógłbym tego dokonać ?

Pozdrawiam.
Hash / Cookiedesign

Ten post edytował HasH1 30.05.2010, 14:47:21
Go to the top of the page
+Quote Post
erix
post
Post #2





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




To ukryć, czy zahashować?
Go to the top of the page
+Quote Post
Robert1985
post
Post #3





Grupa: Zarejestrowani
Postów: 84
Pomógł: 7
Dołączył: 5.08.2009
Skąd: Tychy

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


Też nie rozumiem nie wiem czy wiesz ,ale forum rządzi się kilkoma zasadami i jedną z ważniejszych jest konkretne zadawanie pytań.
Ukryć kod PHP? Ale przed kim? Przed użytkownikiem? A jak rozumiesz użytkownika? Użytkownik strony nie widzi kodu PHP. Ukryć przed programistą? Do tego służą modyfikatory dostępu. Opisz proszę konkretniej co chcesz osiągnąć.
Go to the top of the page
+Quote Post
dudi1261
post
Post #4





Grupa: Zarejestrowani
Postów: 58
Pomógł: 0
Dołączył: 25.07.2008

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


Jesli ukryc/zahashowac przed edycja, a jednoczesnie udostepnic uzytkownikowi to znaczy wyslac komus swoj skrypt, ale taki ktory nie mozna w zaden sposob zmienic. Dołączam sie do pytania. Widzialem ioncube, ale licencja kosztuje 800zl. Jest cos tanszego, a zarazem bezpieczniejszego?
Go to the top of the page
+Quote Post
kipero
post
Post #5





Grupa: Zarejestrowani
Postów: 233
Pomógł: 50
Dołączył: 28.10.2006
Skąd: Radom

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


Ciężko będzie coś zrobić, żeby zabezpieczyć całkowicie kod przed edycją. Ja spróbowałbym pozamieniać nazwy zmiennych z ich hashami, tzn. wyrażeniami regularnymi pozamieniać $zmienna na $6d259a17912852827ba75e7d114194d78a475292, itd. Dodatkowo można zrobić to samo z nazwami klas/interfejsów/funkcji. Na koniec możesz jeszcze usunąć wszystkie białe znaki(spacje, tabulatory, znaki nowego wiersza). Kod stanie się nieczytelny, choć nadal nie będzie w stu procentach zabezpieczony. Jeśli ktoś będzie bardzo zdesperowany to i tak zdoła przy dużym wysiłku go edytować.
Pozdrawiam.

Ten post edytował kipero 31.05.2010, 09:59:00
Go to the top of the page
+Quote Post
erix
post
Post #6





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




To jest tylko obfuskacja.

Albo wybulisz, się nie zabezpieczysz.

A jeśli chodzi o ionCube'a, to jest również usługa kodowania online; płacisz wówczas per plik.
Go to the top of the page
+Quote Post
dudi1261
post
Post #7





Grupa: Zarejestrowani
Postów: 58
Pomógł: 0
Dołączył: 25.07.2008

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


Znajomy powiedzial, ze nie ma takiego encryptera php, ktorego nie da sie zlamac. ionCube kosztuje 800zl, a nie chcialbym abym wylozyl ta kase na niego, a on zostal zlamany przez jakiego hackera..

obfuskator nic nie da, gdyz ja musze zabezpieczyc haslo do mojej bazy danych ktore jest w kazdym pliku.
Go to the top of the page
+Quote Post
thek
post
Post #8





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Hasło do bazy w każdym pliku? Pogięło Cię? Tak się nie robi. Hasło do bazy i konfigurację połączenia zapisujesz w osobnym pliku w postaci zmiennej/tablicy, by nawet po jawnym wywołaniu pliku interpreter przetworzył dane (zwróci wtedy pustą stronę), a nie je wyświetlił w postaci tekstu. A najlepiej by było jeszcze, żebyś sam plik zabezpieczył pod kątem możliwości wywołania go tylko z serwera.
Go to the top of the page
+Quote Post
dudi1261
post
Post #9





Grupa: Zarejestrowani
Postów: 58
Pomógł: 0
Dołączył: 25.07.2008

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


Witam.
Wykorzystywalbym to do skryptow ktore moglby kupic kazdy uzytkownik za np. smsa na miesiac. przy kupowaniu podawaloby sie adres domeny na ktorej ma skrypt dzialac. Wtedy zostalby aktywowany skrypt tylko na podana domene. Aby blokada dzialala musialby skrypt laczyc sie z moja baza danych w ktorej bedzie zapisane jaki skrypt i gdzie ma dzialac. Jest jakis inny sposob aby to dzialalo?
Go to the top of the page
+Quote Post
pedro84
post
Post #10





Grupa: Nieautoryzowani
Postów: 2 249
Pomógł: 305
Dołączył: 2.10.2006

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


Cytat(dudi1261 @ 1.06.2010, 09:58:14 ) *
Witam.
Wykorzystywalbym to do skryptow ktore moglby kupic kazdy uzytkownik za np. smsa na miesiac. przy kupowaniu podawaloby sie adres domeny na ktorej ma skrypt dzialac. Wtedy zostalby aktywowany skrypt tylko na podana domene. Aby blokada dzialala musialby skrypt laczyc sie z moja baza danych w ktorej bedzie zapisane jaki skrypt i gdzie ma dzialac. Jest jakis inny sposob aby to dzialalo?

Tak, tak. W Przypadku gdy serwer MySQL Ci padnie ktoś ma nieużyteczny skrypt. Poza tym, co za problem usunąć (zlokalizować i wywalić) te fragmenty z kodu? Żaden.
Go to the top of the page
+Quote Post
erix
post
Post #11





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Cytat
ionCube kosztuje 800zl, a nie chcialbym abym wylozyl ta kase na niego, a on zostal zlamany przez jakiego hackera..

Nie ma takiego zabezpieczenia, którego nie da się złamać. Skoro szukasz takiego, który nie zostanie złamany, to życzę szerokości.

Tak nawiasem, jeszcze nie słyszałem o przypadku odkodowania skryptu zabezpieczonego ionCubem bez klucza. Ale i tak jest to do złamania, wystarczy że ktoś ma pojęcie o deasemblacji oprogramowania, wtedy ŻADNE zabezpieczenie nie będzie miało przed nim tajemnic.

Cytat
Aby blokada dzialala musialby skrypt laczyc sie z moja baza danych w ktorej bedzie zapisane jaki skrypt i gdzie ma dzialac. Jest jakis inny sposob aby to dzialalo?

Głupie rozwiązanie. Choćby dlatego, że wystarczy zostawić sniffer na port, na którym działa MySQL, a Twoje zabezpieczenia na nic się nie zdadzą. MySQL domyślnie przesyła dane przez połączenie nieszyfrowane; nawet jeśli to hash, to jest kwestią czasu, aby ktoś znalazł kolizję, ew. wstrzyknął go do własnego programu i robił Tobie cyrki z bazą. Rozwiązanie nigdzie nie stosowane i stwarzające za duże ryzyko.

Jeśli chodzi o bardziej sensowne, to poczytaj o XML-RPC albo SOAP. Przeprowadzasz handshaking kluczy i zapisujesz, co trzeba; zależy od tego, co chcesz osiągnąć.

Tak BTW, każdorazowe sprawdzanie czegoś takiego jest złe. Twój serwer pada = padają wszystkie aplikacje zależne.
Go to the top of the page
+Quote Post
dudi1261
post
Post #12





Grupa: Zarejestrowani
Postów: 58
Pomógł: 0
Dołączył: 25.07.2008

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


Czytalem, ze ionCube moze tak kodowac pliki ze przestaja one dzialac po okreslonym czasie. To takze, by mnie satysfakcjonowalo, ale wtedy musialbym inaczej rozwiazac kupowanie skryptu. uzytkownicy musieliby co miesiac sciagac na nowo modyfikacje..

Ma ktos inna propozycje?
Go to the top of the page
+Quote Post
erix
post
Post #13





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




No ściągać, ale w czym problem zrobić skrypt, który automatycznie by sprawdzał i pobierał pliki licencji? Naprawdę szukasz problemu, gdzie go nie ma. (IMG:style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
dudi1261
post
Post #14





Grupa: Zarejestrowani
Postów: 58
Pomógł: 0
Dołączył: 25.07.2008

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


Automatyczne pobieranie plikow licencji? Jakby to mialo dzialac? Nie rozumie Twojego zamyslu..
Go to the top of the page
+Quote Post
marcio
post
Post #15





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


Laczysz sie socketami z twoja strona ewentualnie mozesz zastosowac cos ala "rss" zeby bylo latwiej spradzasz co masz sprawdzic i jesli jest ok dajesz mozliwosc user'owi sciagnac licencje (IMG:style_emoticons/default/snitch.gif)
Go to the top of the page
+Quote Post
dudi1261
post
Post #16





Grupa: Zarejestrowani
Postów: 58
Pomógł: 0
Dołączył: 25.07.2008

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


czyli mialbym to polaczyc z premium smsami. Ale skrypt sam pobieralby licencje czy musialby to manualnie zrobic wlasciciel strony?
Myslalem, aby zapisywac domeny na ktorych ma dzialac skrypt i skrypt laczy sie z tymi moimi danymi, sprawdza czy domena na ktorej sie znajduje jest dozwolona i jesli tak to wtedy zaczyna dzialac. Dobrze mysle? ;>
Go to the top of the page
+Quote Post
erix
post
Post #17





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




A jaki problem z cronem to połączyć?
Go to the top of the page
+Quote Post
dudi1261
post
Post #18





Grupa: Zarejestrowani
Postów: 58
Pomógł: 0
Dołączył: 25.07.2008

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


Zadania Cron na moim serwerze. Tu mam dwa pytania. Jakie funkcje mialby wykonywac cron? W jakim odstepie czasowym?

Znam wylacznie php i wiekszosc rzeczy o ktorych mi tu mowicie tylko slyszalem. Nigdy nie uzywalem, ani nie czytalem o tym wiecej. Prosilbym o konkretniejszy opis.

Z gory dzieki (IMG:style_emoticons/default/snitch.gif)
Go to the top of the page
+Quote Post
erix
post
Post #19





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Cron ma działać na serwerze, na którym działa konkretna instancja aplikacji.

Jakie konkrety? Mamy Ci całą aplikację opisać? Dostałeś naprawdę sporo podpowiedzi.
Go to the top of the page
+Quote Post
zend
post
Post #20





Grupa: Zarejestrowani
Postów: 580
Pomógł: 85
Dołączył: 25.03.2010
Skąd: Skrzyszów :)

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


@dudi - a nie lepiej było by Ci to trzymać na własnym serwerze i udostępniać w chmurze jako saas?
Go to the top of the page
+Quote Post
dudi1261
post
Post #21





Grupa: Zarejestrowani
Postów: 58
Pomógł: 0
Dołączył: 25.07.2008

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


Cytat(zend @ 2.06.2010, 10:40:49 ) *
@dudi - a nie lepiej było by Ci to trzymać na własnym serwerze i udostępniać w chmurze jako saas?


Mialbym trzymac na wlasnym serwerze skrypty. Ale jak kontrolowac kto pobiera (ma na stronie moj skrypt)? Jak mialby go tam osadzic? wiekszosc skryptow bedzie musiala laczyc sie z baza danych u uzytkownika, wiec watpie ze na to jest jakies rozwiazanie.


Oczekuje konkretniejszych odpowiedzi nie tylko o sposobie, ale jak on dziala i gdzie moge o nim poczytac (po polsku) i go zastosowac. Google niewiele mowi na te tematy.
Go to the top of the page
+Quote Post
zend
post
Post #22





Grupa: Zarejestrowani
Postów: 580
Pomógł: 85
Dołączył: 25.03.2010
Skąd: Skrzyszów :)

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


Jeżeli nie jest to coś co będzie wymagało czestych odwołań do bazy, to dla każdego klienta tworzysz osobną instancję z jedo danymi dostępowymi do bazy. Choć nawet dużo odwołań do bazy nie jest problemem bo dane można cache'ować.
Go to the top of the page
+Quote Post
tehaha
post
Post #23





Grupa: Zarejestrowani
Postów: 1 748
Pomógł: 388
Dołączył: 21.08.2009
Skąd: Gdynia

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


zależy jak dużego zabezpieczenia oczekujesz, może zrób tak, żeby skrypt pobierał plik z Twojego serwera i sprawdzał czy domena na której jest zainstalowany znajduje się na liście, dodatkowo jeżeli pliku nie można pobrać lub odczytać to zezwalasz na działanie, tak żeby skrypt nie był bezużyteczny w sytuacji kiedy Twój serwer padnie, potem w prosty sposób możesz zrobić obfuskację tak jak radził @kipero - pozamieniać nazwy zmiennych z haszami i pousuwać spacje i \n, a na końcu walniesz sobie ion cube kodowanie online za kilka $ i wystarczy, przeciętny stefan z podstawami php nic na to nie poradzi, a i tak nie znajdziesz 100% zabezpieczenia więc po co za dużo kombinować
Go to the top of the page
+Quote Post
Wykrywacz
post
Post #24





Grupa: Zarejestrowani
Postów: 726
Pomógł: 20
Dołączył: 8.12.2005
Skąd: Wrocław

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


@dudi a nie masz wrażenia że powinieneś się najpierw jednak trochę douczyć? Bo wyskakujesz z mega poronionymi pomysłami na jakieś pseudo zabezpieczenia, nie czając co rozmówcy w ogóle próbują ci przekazać.
Go to the top of the page
+Quote Post
erix
post
Post #25





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Cytat
Oczekuje konkretniejszych odpowiedzi nie tylko o sposobie, ale jak on dziala i gdzie moge o nim poczytac (po polsku) i go zastosowac. Google niewiele mowi na te tematy.

Ciężko zaimplementować to, o czym napisaliśmy? Poza tym, po polsku raczej nie za wiele się nauczysz...

Jak google mało mówi, to sprawdź pod takimi frazami:
  • SOAP
  • XML-RPC
  • handshaking
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 4.10.2025 - 11:36