On Sat, 2010-11-13 at 01:04 +0100, Daniele Varrazzo wrote:
> Basta che distribuisci solo i file .pyc invece dei .py: quelli sono
> sufficienti ad eseguire il programma e vengono trovati dall'import. Questo
> non è criptare, ma sembra quello che ti serve: è una protezione sufficiente
> per evitare tampering da parte di chi non è *veramente* motivato e che
> sappia leggere il bytecode.

Direi che basta motivazione sufficiente a spendere 5 minuti per una
ricerchina:

http://sourceforge.net/projects/unpyc/

Se le pretese sono minori invece basta il modulo "dis":

>>> def test(a):
...     print a
... 
>>> test(23)
23
>>> import dis
>>> dis.dis(test)
  2           0 LOAD_FAST                0 (a)
              3 PRINT_ITEM          
              4 PRINT_NEWLINE       
              5 LOAD_CONST               0 (None)
              8 RETURN_VALUE        

Quest'ultimo però in sola lettura, mentre con unpyc si può fare un
intero ciclo decompila->modifica->ricompila.

Paolo

Attachment: signature.asc
Description: This is a digitally signed message part

_______________________________________________
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python

Rispondere a