C# System licencji

0

Witam.

Ma ktoś pomysł jak zrobić system licencji do programu?
Zrobiłbym proste logowanie od sql, ale chciałbym mieć jakąś możliwość sprawdzenia czy licencja używana jest też na innym komputerze i jeśli tak, to możliwość "zbanowania" jej.
Licencja byłaby dożywotnia, tylko że na 1 komputer.
Myślałem żeby przy pierwszym uruchomieniu pobrać coś unikalnego z systemu (np. adres mac) i jeśli np. przy 2 uruchomieniu będzie inny to program się nie uruchomi. Tylko zbytnio nie wiem jak to zrobić.
Jeśli macie jakieś poradniki (mogą być po angielsku) to możecie podawać, tylko żeby nie były to jakieś logowania do sql, bo nie o to mi tu chodzi.

1

Ta, na pewno jako pierwszy na świecie borykasz się z tym problemem i w internecie nic na ten temat nie ma...
Poszukaj pod kątem hardware id.

PS adres MAC to zły pomysł, lepiej już serial dysku pobrać.

0

No dobra, pobieram np. serial dysku i co dalej?

0

Serial zamieniasz na tablicę, i żeby nikt się nie kapnął dodajesz do każdego chara 1, delikwent wysyła ci serial, ty masz programik co odejmuje 2, wysyłasz mu, on wklepuje, sprawdza czy odjęte od głównego 1 i działa :D
A jak chcesz móc blokować kogoś, to robisz pobieranie danych z serwera przy uruchomieniu, np ajax'em, porównujesz seriale, jeżeli nie jest zablokowany to się ma włączyć.
Według mnie będzie trudniej to zaprogramować niż wymyślić :D

0

Należy sobie zadać kilka pytań odnośnie licencjonowania:

  1. Co w sytuacji kiedy klient będzie chciał uruchamiać oprogramowanie bez dostępu do sieci ? (np. jeżeli to będzie specjalistyczne oprogramowanie instalowane na różnych urządzeniach przykład - oprogramowanie diagnostyczne do diagnozy samochodowej instalowane na specjalnym sprzęcie)
  2. Co w sytuacji kiedy klient będzie chciał wymienić sprzęt, a my do licencji pobierać będziemy jakieś dane sprzętowe ? Jeżeli klientów będzie dużo to taka operacja nadawania licencji może być problematyczna.
0

Zacznijmy od tego kto jest targetem, jest to oprogramowanie dla firm czy dla zwykłych użytkowników? Następna sprawa co to za głupota sprzedawać licencje per komputer jak już coś to powinna być per użytkownik bo jak jestem pracownikiem firmy X i pracuje zwykle na stacjonarce w oddziale w Krakowie a jak jadę w delegację do oddziału w Warszawie i zabieram laptopa to już nie użyje oprogramowania używanego w firmie?
Kolejna sprawa jak licencja ma być dożywotnia a co z supportem też jest dożywotni? Zgaduje że nie więc trzeba jakoś to weryfikować. Więc widzę tutaj dwa rodzaje weryfikacji. Pierwsza to postawienie serwisu do którego każda aplikacja będzie wysyłać info "hej działam, moje id to XYZ z kompa o id ABC", jeżeli jednocześnie będą nadawać dwie aplikacje o tym samym id z dwóch różnych komputerów to aplikacja uruchomiona jako ostatnia nie powinna się uruchomić.
A co do sprawy aktualizowania do najnowszej wersji. Do aplikacji dołączył bym XML Digital Signature na podstawie której można by weryfikować czy dany użytkownik może używać aplikacji w wersji Y czy ostatnia dostępna wersja dla niego to X.

Można wymyślać kolejne rzeczy jak utrudnić komuś życie ale to gra nie warta świeczki, kto nie chce płacić i tak znajdzie obejście.

1 użytkowników online, w tym zalogowanych: 0, gości: 1