![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 3.06.2013 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Stworzyłem bibliotekę (pojedyncza klasa) zakodowana IonCube online. W konstruktorze mam wlasną procedurę "sprawdzającą licencję użytkownika". Reszta projektu nie jest zakodowana. Aby uniknać ze ktoś poprzez extends nadpisze konstruktor i wyłączy sprawdzanie licencji mam dwa wyjścia: 1. dac final na moim konstruktorze 2. przenieść weryfikację licencji do głównej metody biblioteki. Jakie rozwiazanie jest bardziej eleganckie? Teoretycznie w jednej instancji obiektu główną metodę można wywołać wiele razy więć chyba nie ma sensu, aby za kazdym razem licencję sparwdzać (co troszke trwa) i zrobić to raz w konstruktorze? Czyżby nikt nie wiedział, czy też moje pytanie było mało sensowne? Bardzo proszę o cenne wskazówki (IMG:style_emoticons/default/smile.gif) |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Według mnie tracisz jedynie czas i co gorsza, tworzysz sobie fałszywe poczucie bezpieczeństwa. Wrzucenie zakodowanego fragmentu sprawdzającego licencję oraz ewentualnie wykonującego jakieś inne operacje będzie bardzo łatwe do ominięcia. Wszelkie "modyfikatory" OOP (pola/metody/klasy prywatne, finalne itp.) służą jedynie wygodzie programistów, nie stanowią żadnego zabezpieczenia.
Od lat firmy starają się tworzyć wymyślne zabezpieczenia swoich produktów, a jaki jest rezultat ich zmagań każdy wie. Jeżeli jednak faktycznie chcesz się jakoś zabezpieczyć (czy raczej utrudnić przechwycenie kodu) skorzystaj z rozbudowanych narzędzi firm, które się w tym specjalizują. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.10.2025 - 04:10 |