Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Zabezpieczanie php przed rozpowszechnianiem
Forum PHP.pl > Forum > Przedszkole
stanisław
Czy macie jakiś pomysł na to aby zabezpieczyć swój skrypt przed rozpowszechnianiem?
-chodzi o formę abonamentu
-instalowanie z kluczem

mi do głowy przychodzi pomysł skrzypu który w bazie sprawdza poprawność klucza i domeny. Może jest jakiś gotowiec?
dr_NO
Jakiegokolwiek zabezpieczenia nie dodasz, a udostępnisz pliki źródłowe do swojego skryptu osobom trzecim, automatycznie jesteś skazany na porażkę, bo usunięcie takiego zabezpieczenia to będzie pestka.
Możesz szyfrować pliki, a ionCube ma też możliwość licencjonowania - możesz sprawdzić na https://www.ioncube.com/php_encoder.php.
stanisław
a co myślicie o formie <?php include('example.com/test.html'); ?>
tak żeby część kodu musiał pobrać z zewnętrznego serwera?
dr_NO
Usuń z kodu tą linijkę i co wtedy się stanie?
vokiel
Cytat(stanisław @ 2.03.2020, 21:33:03 ) *
a co myślicie o formie <?php include('example.com/test.html'); ?>
tak żeby część kodu musiał pobrać z zewnętrznego serwera?


No to sobie pobierze ten plik i już będzie miał.
miccom
A gdyby zrobić tak że kod skryptu trzymasz na swoim serwerze, a dopiero jak klient skonfiguruje połączenie z twoją stroną ( wyśle zapytanie ) to ty sprawdzasz czy gośc ma wykupiona licencję, jesli ma
wysyłasz mu jsonem kod a jeśli nie ma to informujesz go- że nie ma aktywnej licencji...
Zadziała?
vokiel
Cytat(miccom @ 7.03.2020, 09:44:20 ) *
A gdyby zrobić tak że kod skryptu trzymasz na swoim serwerze, a dopiero jak klient skonfiguruje połączenie z twoją stroną ( wyśle zapytanie ) to ty sprawdzasz czy gośc ma wykupiona licencję, jesli ma
wysyłasz mu jsonem kod a jeśli nie ma to informujesz go- że nie ma aktywnej licencji...
Zadziała?


Takie coś, jak i poprzednie propozycje chronią tylko przed kradzieżą kodu pierwszego użytkownika. On dostanie kod, wrzuci na jakiś forum i reszta już będzie korzystała.

Co więcej, jeśli kod nie będzie zabezpieczony, to po prostu usunie fragment odpowiedzialny za wysłanie zapytania do Twojego serwera i sprawdzenie odpowiedzi.

Rozwiązania są generalnie dwa:
1. Chmura (SaaS): usługa na swoim serwerze, wszystko - klient wykupuje dostęp, płaci to korzysta, przestaje płacić - traci dostęp.
2. ionCube lub coś podobnego, z czego jest dużo trudniej wykraść kod. Ewentualnie napisanie swojej biblioteki skompilowanej jako rozszerzenie do PHP.
Tomplus
Spójrz na historię oprogramowania.

Zobaczysz, że wielkie korporacje łamały sobie zęby na zabezpieczaniu swoich produktów, a ty chcesz zabezpieczać kod napisany w PHP, który nie jest stworzony do tego.

Więc Stanisławie, odpowiedz na pytanie dlaczego uważasz że Twój kod jest lepszy od kodu innych osób, że boisz się piracenia?

Ja osobiście mam inne rozwiązanie. Sprzedając produkt klientowi, podpisujecie przecież umowę, gdzie klient nie może udostępniać innym kodu produktu.
Zmień nazwy jakiś znaczących zmiennych, stałych, metod. Przypisz je do konkretnego klienta. Jeżeli kod wypłynie, to będziesz wiedział od którego klienta wypłynął kod.

Oczywiście zmiana nazw nie powinna być głupia np. $yjs3da2shu = true; , a zawierać jakąś logikę, aby osoba szukająca takich wytrychów nie zorientowała się że może to być kod kontrolny.
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.