2009-02-02 5 views

Odpowiedz

17

Modyfikatory dostępu, takie jak internal i sealed nie mają nic wspólnego z zaciemnianiem kodu lub zabezpieczeniem kodu, po prostu informują inne klasy o interakcji (lub braku interakcji) z nimi.

Pod koniec dnia nic nie możesz zrobić, aby zapobiec piractwu. Wszystko stworzone przez jednego człowieka może zostać złamane przez inne. Istnieje wiele pytań na temat SO, które dotyczą kluczy produktu, zabezpieczenia oprogramowania itp., Które można znaleźć, jeśli użyjesz mechanizmu wyszukiwania w prawym górnym rogu. Wszystkie odpowiedzi obejmować kilka podstawowych idei, że każdy z odrobiną rozsądku powie:

  1. umieścić Tylko tyle wysiłku w swoim antypirackich działań, aby pękanie oprogramowanie trochę mniej wygodny niż wyłamaniu karty kredytowej. Jeśli jest to naprawdę trudne, za dużo płacisz za bazę klientów.
  2. Jeśli koncentrujesz się na budowaniu pozytywnych relacji z klientami zamiast zakładać, że są przestępcami, będą bardziej skłonni dać ci pieniądze.
  3. Większość klientów - osób indywidualnych, a zwłaszcza firm - nie ma żadnego interesu w łamaniu twoich zgromadzeń i próbowaniu dowiedzieć się, jak uciec, nie płacąc ci. Dla osób fizycznych i tak nie zapłaciliby za to, więc nie tracicie sprzedaży; a firmy nie ryzykowałyby górami gotówki w problemach prawnych kosztem niektórych licencji na oprogramowanie.

Badania publiczne/prywatne i eliptycznych kryptografii klucza i będziesz szukać sposobów, aby zabezpieczyć algorytmu klucza, ale pozwoli uniknąć pękania kluczową tylko, nie omijając go.

+0

To, co mówi Rex M, jest prawdą. Użyj schematu klucza publicznego/prywatnego do wygenerowania kluczy. Zredukuj kod za pomocą czegoś takiego jak Dotfuscator. Ale ostatecznie, ludzie mogą nadal je łamać, jeśli chcą, modyfikując niektóre skoki warunkowe w pliku wykonywalnym. – mmcdole

+1

Zgadzam się na 3 punkt, ale co z jedną osobą/firmą kupującą tylko jedną licencję i korzystającą z niej na wielu komputerach, w tym celu konieczna jest pewna ochrona? –

0

Rex jest poprawny, internal sealed class nic nie ukryje. Użyj hashowania szyfrowania jednokierunkowego (np. MD5CryptoServiceProvider) do ochrony haseł i kluczy.

2

Zgadzam się z Rex M, należy rozważyć użycie asymetrycznego algorytmu szyfrowania, takiego jak kryptografia krzywych eliptycznych, aby uniknąć keygenów. A jeśli interesuje Cię komercyjne rozwiązanie, spróbuj Ellipter - używa krzywych eliptycznych i ma kilka użytecznych funkcji, takich jak informacje o produkcie i dane wygasania, osadzone w generowanych kluczach szeregowych.

+0

Albo jakikolwiek system PGP, naprawdę. Umieść klucz publiczny w aplikacji i pozwól programistce (lub firmie) trzymać klucz prywatny. – Arafangion

Powiązane problemy