Na początku sprostuję, że nie mam Was gdzieś. Nie wiem skąd ten pomysł.
Tak jakoś nie odzywałeś się, nie komentowałeś, jak widać myliłem się.
fragment sprawdzający klucz można z aplikacji usunąć
Skoro teraz ta aplikacja działa, bez sprawdzania, to ciężko żeby było to niemożliwe. Ale niemożliwe, nie znaczy że łatwe. Można to mocno utrudnić.
Klucz na podstawie sprzętu - ok ale user może zmienić sprzęt
No, ale wtedy napisze Ci na meila i mu wyślesz nowy serial. I Hint: To też można ominąć.
chyba, że każda funkcja i procedura będzie się odwoływała do sekcji określającej klienta, ale to na upartego też się da wyciąć i byłby problem bo przecież te sekcje muszą się różnić, kurde.
To już rozumiesz dlaczego nie ma gry offlajn której nie da się scrackować?
a jak się podpisuje np audiobooki? z tego chyba jeszcze łatwiej info o właścicielu usunąć? ;>
Jeśli uda ci się cokolwiek odczytać, bo tego typu dane są szyfrowane z kluczem który znają tylko aplikacje do ich odczytania. Ale, jeśli np. jesteś dobrym crackerem to uda ci się odczytać z takiej aplikacji algorytm szyfrowania i zrobisz własną aplikację do konwersji do txt... Nothing is impossible. To, że wystarczy znać algorytm odczytu/zapisu nie znaczy że ten algorytm jest łatwy.
Sumując: Nie ma idealnego, niezłamanego systemu zabezpieczeń. Można zrobić ekstremalnie trudny system do złamania, ale koszty jego stworzenia i obsługi byłyby większe niż samej aplikacji (a i tak ktoś by złamał). Grunt to zrobić system zabezpieczeń o odpowiednim poziomie, żeby nie irytował użyszkodników, ale również nie był banalny do złamania.