Aby zaszyfrować i odszyfrować lokalnie, będziesz musiał przechowywać klucz w swoim programie, aby ludzie mogli złamać szyfrowanie, jeśli rozłożą twój kod. Istnieją sztuczki, aby zaciemnić klucze, ale nawet w przypadku tych oddanych atakujący znajdzie klucz, a następnie opublikuje go online dla wszystkich, którzy są mniej oddani do zobaczenia. Jedyne, co uniemożliwia szyfrowanie, to osoby korzystające z edytora szesnastkowego - można to łatwo skompresować za pomocą kompresji i wszystkiego, co czyni plik nieczytelnym przez program do rozpakowywania. Np. Dodaj jeden bajt przed danymi.
Alternatywnie możesz dołączyć md5 pliku zapisu na końcu pliku, abyś zauważył, że plik został sfałszowany. Następnie możesz użyć tego do odmowy załadowania zapisanej gry lub do odpowiedniego zgłoszenia zgłoszeń do pomocy technicznej, abyś nie tracił czasu na problemy spowodowane ręcznie modyfikowanymi zapisami. Znów jest to łatwe do obejścia przez każdego, kto potrafi odczytać twój kod.
Jeśli chcesz czegoś, czego nie może obejść ktoś, kto ma dostęp do plików binarnych na swoim urządzeniu, musisz uruchomić część programu na serwerze, który jest pod twoją kontrolą.
Aby odpowiedzieć na twoje ostatnie pytanie, klucz plus typ szyfrowania po prostu określa dokładny algorytm, który należy zastosować do szyfrowania / deszyfrowania. Nie można szyfrować / deszyfrować danych bez algorytmu, który określa, jak to zrobić.