Hali!
Irtam pythonben egy nagyobbacska programot. A dolog sajnos tartalmaz olyan dolgokat, melyet nem szeretnek egy mezei user szaramara egybol olvashatova tenni. A kerdesem az volna, hogy ha a .pyc filet adom csak kozre, azt mekkora erofeszites visszafejteni? Esetleg van e valami modja a py/pyc kodolasanak, hogy csak macerasan lehessen visszafejteni?
Elore is koszi a segitseget.
- 1292 megtekintés
Hozzászólások
A forráskódot kb nulla erőfeszítéssel vissza lehet kapni a .pyc fájlból, ld. http://packages.debian.org/unstable/python/decompyle . A Debian unstable-ben lévő változata elvileg csak Python 2.3-ig bezárólag működik, de van egy fizetős webes service ugyanilyen néven, ami a Python 2.5 által gyártott .pyc-t is megérti.
Kérdés persze, hogy mit szeretnél elérni. Ha azt, hogy a forráskódot egy ember nehezen érthesse meg, akkor a pyobfuscate esetleg segíthet kellőképpen elrondítani a kódot.
- A hozzászóláshoz be kell jelentkezni
Koszi a valaszt, ez kicsit elszomoritott. Ez a pyobfuscate elso korben jonak tunik, de szerintem nekem is kicsit meg kell kavarni a kodot, a megnehezebben olvashatosagert, hogy ne legyen erdemes a belefeccolt munka :) Persze, kitarto munkaval megertheto ez is...
- A hozzászóláshoz be kell jelentkezni
bőven elég lesz az obfuscate...
- A hozzászóláshoz be kell jelentkezni
probalgatom ezt az obfuscatert, de nem szereti amit irtam:
$ python2.4 pyobfuscate.py PI_xfse.py
Traceback (most recent call last):
File "pyobfuscate.py", line 8, in ?
execfile(root)
File "pyobfuscate", line 1101, in ?
main()
File "pyobfuscate", line 1069, in main
pae = PubApiExtractor(source_no_encoding)
File "pyobfuscate", line 716, in __init__
ast = compiler.parse(source_no_encoding)
File "/usr/lib/python2.4/compiler/transformer.py", line 52, in parse
return Transformer().parsesuite(buf)
File "/usr/lib/python2.4/compiler/transformer.py", line 129, in parsesuite
return self.transform(parser.suite(text))
File "<string>", line 1
from XPLMMenus import *
^
SyntaxError: invalid syntax
nemigazan szeretnek mindent egyenkent kideriteni es beimportalgatni.. vagy az en hozzallasom a rossz? :)
- A hozzászóláshoz be kell jelentkezni
Ha csak mezei felhasználók szemei elől akarod elrejteni a dolgokat, akkor használd a py2app/py2exe/cx_Freeze csomagok valamelyikét.
- A hozzászóláshoz be kell jelentkezni
koszi, de sajnos ez nem jo megoldas. tulkepp a progi amit irtam egy beepulo modul egy nala sokkal nagyobba, muszaj lenne .py-nak maradnia, raadasul forraskent (ez most derult ki szamomra is), mert win, mac, linux-os kornyezete is van, es a nagyobb progi forditja le, platformtol fuggoen a scriptet :)
a pyobfuscate jo megoldasnak tunik, csak nem birom mukodesre birni :)
- A hozzászóláshoz be kell jelentkezni