2009-12-09 7 views
8

Próbowałem wyszukiwania, a wszystkie pytania są związane z określonych rzeczy, takich jak ", jak wygenerować klucz", i tym podobne. Czy ktoś może wyjaśnić, jak działają różne typy aktywacji oprogramowania?Jak działa aktywacja oprogramowania?

+0

Czy możesz podać dwa przykłady "różnych rodzajów aktywacji oprogramowania"? –

Odpowiedz

1

Podejrzewam, że wielu wykonawców nie poda tych informacji, ponieważ otwiera je na hakowanie. Ale jeśli miałbym to zrobić, to w ten sposób chciałbym to zrobić:

  1. Zdecyduj, czy oprogramowanie jest licencjonowane dla osoby lub komputera.
  2. Znajdź sposób identyfikacji osoby/komputera (konto lub identyfikator logowania ze sprzętu komputerowego).
  3. Na żądanie/płatność: w prywatnej bazie danych utwórz klucz licencyjny i dodaj wpis dla osoby/komputera za pomocą tego klucza.
  4. Dostarcz oprogramowanie klienckie za pomocą klucza.
  5. Twoje oprogramowanie zapisuje klucz lokalnie lub regularnie sprawdza, czy klucz udostępnia usługę twoich informacji identyfikujących, za które twoja usługa dostarcza klucz, jeśli taki istnieje. Jeśli nie zostanie znaleziony, twoje oprogramowanie oferuje im szczegóły dotyczące zakupu licencji. Ta ostatnia pozwala na używanie kluczy swobodnych, aktualizacji komputera i identyfikację duplikatów instalacji.

Czy o to prosiłeś?

+1

Należy pamiętać, że użytkownicy będą chcieli przenosić oprogramowanie na różne komputery i będą chcieli korzystać z większości programów w trybie off-line, gdy nie będą mogli uzyskać dostępu do Internetu. Te dwa wymagania są sprzeczne. –

+0

Prawdopodobnie złych facetów i tak go znajdzie. Również nie wdrażam go obecnie. Jestem po prostu ciekawy – Tanmoy

0

Powszechnie stosowanym sposobem na aktywację/rejestrację oprogramowania jest utworzenie algorytmu licencji. Na przykład, powiedzmy, że mam kilka shareware, które chcę chronić, a kiedy ktoś daje mi pieniądze, wysyłam im 4-bajtowy kod rejestracyjny. Mogę zbudować algorytm w moim shareware, tak aby sprawdzał kod wprowadzany przez użytkowników. Mój algorytm będzie w następujący sposób:

1) Byte0 * Byte1 = 6 
2) Byte2 - Byte3 = 1 
3) Byte0 + Byte2 = 8 

Dwa możliwe prawidłowe kody:

3254 
1676 

Gdy użytkownik wprowadzi poprawny kod, oprogramowanie odblokowuje swój regularny funkcjonalność ustawiając flagę gdzieś. Oczywiście jest to wyjątkowo uproszczony przykład. Algorytmy walidacji rejestracji mogą być tak złożone, jak chcesz.

Tę rejestrację można również przeprowadzić przez Internet, aby chronić algorytm sprawdzania oryginalności przed inżynierią wsteczną i uniemożliwić innym udostępnianie kluczy. Żaden schemat sprawdzania poprawności nie jest jednak doskonały.

+0

To może być łatwo zhackowane. Po prostu poszukaj niepoprawnego kodu i matematyki walidacyjnej? – ccook

+0

Masz całkowitą rację. Nie ma całkowicie bezpiecznego sposobu na rejestrację programu bez umożliwienia komuś złamania algorytmu. Właśnie dlatego możesz znaleźć pęknięcia i keygeny dla ogromnej większości oprogramowania. – Max

+0

Jednak w przypadku niektórych programów (np. Microsoft Windows) samo uzyskanie klucza zazwyczaj nie pozwala na aktywację. Prawdopodobnie z wyjątkiem kluczy licencji zbiorczych. – Tanmoy

15

W najbardziej uproszczonym przypadku opisany jest jako maxwell5555. Kod rejestracyjny ("klucz CD") jest wysyłany do użytkownika, który wprowadza go do programu lub instalatora. Cały proces można zasadniczo przeprowadzić w trybie offline; sam program określa, że ​​kod jest ważny lub nieprawidłowy.

To jest ładne i łatwe, ale bardzo podatne na udostępnianie kluczy - ponieważ nie ma "dzwoniąc do domu", aplikacja nie może wiedzieć, że tysiące różnych osób używa tego samego klucza, który pobrali z Internetu lub biblioteka lub ich przyjaciel. Łatwo też zrobić "keygeny", które generują poprawnie wyglądające klucze, które nigdy nie zostały wydane przez programistów.

Następnie otrzymujemy rejestrację online. Nadal masz jakiś kod, ale program będzie dzwonił do domu z powrotem do serwera, aby ustalić, czy kod jest ważny i zwykle unikalny. To zatrzymuje podstawowe udostępnianie klucza, ponieważ firma wie, że zbyt wiele osób z całego świata korzysta z tego samego klucza.Być może istnieje również pewien rodzaj identyfikacji za pomocą adresu MAC, z rejestracjami infinte dozwolonymi na tym samym sprzęcie, ale może ograniczoną liczbą na czymś, co wydaje się być innym komputerem.

To nadal jest dość łatwe i zatrzymuje proste udostępnianie kluczy. Ludzie będą musieli się włamać do oprogramowania lub sfałszować odpowiedź serwera, aby go pominąć.

Czasami sam program jest częściowo/w większości zaszyfrowany i jest odszyfrowywany tylko w etapie rejestracji online. W zależności od tego, jak dobrze jest to zaciemniane, może być dość trudne i czasochłonne. Bioshock był tego doskonałym przykładem - debiutował z nowym systemem szyfrowania/kopiowania, który trwał około dwóch tygodni od wydania.

Wreszcie szczególnie strzeżona aplikacja może pozostawać w stałym kontakcie z serwerem, odmawiając w ogóle pracy, jeśli połączenie zostanie przerwane. W tym przypadku, aby uzyskać aktywację, należy sfałszować sam serwer. Przykładem tego mogą być emulatory Steam i prywatne serwery WoW.

I na koniec nic nie jest nierozwiązywalne.

+0

Wiem, że był to tylko przykład, ale unikałbym używania adresu MAC jako wskaźnika tego samego sprzętu. Istnieją inne dane, takie jak informacje z płyty głównej, procesora itp., Które są trudniejsze do sfałszowania lub zmiany. – Glenn

+2

+1 dla dobrego ogólnego wybiegu i wspominając, że nic nie jest też niepołączone :). – Glenn

Powiązane problemy