Wpis z mikrobloga

Robię apkę do pewnej gry internetowej, którą planowałem spakować pyinstallerem do EXE i dystrybuować wśród zespołu w grze. Znajomość formuł do liczenia różnych rzeczy w tej grze jest kluczowa i nie chciałbym się dzielić samymi formułami. Czy jest jakiś sposób żeby taki EXE zabezpieczyć przed narzędziami typu pyinsxtractor?
#python #programowanie
  • 6
  • Odpowiedz
@Drmscape2: Tego nie wiem, ale zawsze mozesz stworzyc proces tak, zeby eksportowac dane do jakiejs zewnetrznej chmury, tam zrobic obliczenia, i przeslac z powrotem gotowe wyniki do apki. Wtedy caly kod ktorego nie chcesz ujawniac nie jest w ogole trzymany w kodzie apki.

Najprosciej i najtaniej to pewnie jakies Azure Functions w Free Tier
  • Odpowiedz
  • 0
@morsik: Trochę jeszcze pogooglowałem. A co z rozwiązaniami typu Nuitka, która pierwsze transpiluje kod do C i dopiero go kompiluje jak C? Wtedy rozwiązania typu pyinstxtractor nie zadziałają bo tam nie ma plików pyc, która można wprost podejrzeć. Na pewno mnie to zabezpieczy przed kimś, komu wpadnie exe w łape i będzie wiedział, że "napisał to w pythonie" i umie googlować. Natomiast na ile trudne/czasochłonne byłoby dekompilowanie C? Czy C dałoby
  • Odpowiedz
@Drmscape2: dekompilacja C to instalacja Ghirdy, wrzucenie tam .exe i przeczytanie algorytmu... to samo co przy Pythonie.

W Pythonie amator też się do tego nie dobierze, bo możesz dostarczyć tylko skompilowane pliki .pyc, bez kodu źródłowego i też będzie trzeba używać dekompilatora żeby odczytać algorytm.

Ale skoro to "gra przeglądarkowa" to w ogóle nie rozumiem problemu - przecież algorytm powinien być wyliczony i tak po stronie serwera.
  • Odpowiedz
@Drmscape2: Szyfrowanie asymetryczne kodu, a najpierw jego zaciemnienie np pyobfuscate, nie zabezpieczysz w 100% ale utrudnisz, ewentualnie dopisz te 15 lini kodu i wystaw to jako apke we flasku XD
  • Odpowiedz