展开全部
无法防止2113反编译,但可以混淆,让你即使5261反编译了,也看不懂语法
下面一段源码4102sd=1
def seed(s):
global sd
sd=s
def randn(n):
global sd
sd=(sd*1103515245 + 12345) & 0x7fffffff
return sd%n
def main():
seed(11)
for i in xrange(4) :
1653print randn(313)
if __name__=='__main__':
main()
混淆后oo000 = 1
if 9 - 9: Ii . o0o00Oo0O - iI11I1II1I1I
def oooo ( s ) :
global oo000
oo000 = s
if 11 - 11: ii1I - ooO0OO000o
def ii11i ( n ) :
global oo000
oo000 = ( oo000 * 1103515245 + 12345 ) & 0x7fffffff
return oo000 % n
if 66 - 66: iIiI * iIiiiI1IiI1I1 * o0OoOoOO00
def I11i ( ) :
oooo ( 11 )
for O0O in xrange ( 4 ) :
print ii11i ( 313 )
if 78 - 78: i11ii11iIi11i . oOoO0oo0OOOo + IiiI / Iii1ii1II11i
if __name__ == '__main__' :
I11i ( ) # dd678faae9ac167bc83abf78e5cb2f3f0688d3a3