Chinaunix

标题: python写的代码怎么保密阿 [打印本页]

作者: bleem1998    时间: 2008-10-25 17:29
标题: python写的代码怎么保密阿
RT
又不能编译
请问怎么搞?
作者: zerocq    时间: 2008-10-25 17:48
生成pyc文件被调用

或打包生成可执行文件
作者: jiangpeng311    时间: 2008-10-25 18:19
你可以申请知识产权,啥保密手段都可能被破解
作者: flw    时间: 2008-10-25 23:44
楼主都学了三四五六年了,还在问这种问题。
作者: bleem1998    时间: 2008-10-27 09:55
原帖由 flw 于 2008-10-25 23:44 发表
楼主都学了三四五六年了,还在问这种问题。


作者: bleem1998    时间: 2008-10-27 10:02
原帖由 zerocq 于 2008-10-25 17:48 发表
生成pyc文件被调用

或打包生成可执行文件


会不会被反编译或者破掉?
听说Java是很容易被反编译的

有些重要的zip解压缩密码要写在程序里
其实代码开源都无所谓
关键是这些密码不可以被破
有什么好办法没?
作者: ^-^    时间: 2008-10-27 11:41
服务器load模式啊.
作者: bleem1998    时间: 2008-10-27 11:51
原帖由 ^-^ 于 2008-10-27 11:41 发表
服务器load模式啊.


你是说密码保存在服务器
用的时候再拿下来?
是个很好的办法!
作者: 下流砥柱    时间: 2008-10-27 15:07
原帖由 bleem1998 于 2008-10-27 11:51 发表


你是说密码保存在服务器
用的时候再拿下来?
是个很好的办法!



人家看了你的代码,知道了如何从服务器load下来,如何保证人家不会自己写代码搞到密码?
作者: bleem1998    时间: 2008-10-27 15:54

看来只要是将解压缩动作放到客户端那就不安全
密码至少会出现在内存里

作者: pcyes    时间: 2008-10-27 17:12
提示: 作者被禁止或删除 内容自动屏蔽
作者: ^-^    时间: 2008-10-28 08:51
用c写个decode()就可以吧.
你也可以把核心代码保存到服务器,客户端下载解密.
作者: bleem1998    时间: 2008-10-28 09:56
保密的问题看来没有什么绝对的办法
只有努力提高自己的保密手段
代码里多搞点怪

网上的搜索了一下pyc反编译
老版本python的pyc有反编译器
新版本的貌似还没出现
作者: ecloud    时间: 2008-10-28 13:38
用非对称密钥
作者: 许木木    时间: 2008-10-28 14:15
把关键部分或密码处理部分用c写,编译成动态库,然后用python调用
作者: bleem1998    时间: 2008-10-28 15:20
原帖由 许木木 于 2008-10-28 14:15 发表
把关键部分或密码处理部分用c写,编译成动态库,然后用python调用



编译成DLL应该会相对安全一点
但是主python程序都不安全了DLL又有什么安全性可言?
如果我反编译了主python程序然后模拟一个程序调用你的DLL
那DLL还不是傻乎乎的把密码又说出来了
呵呵


python2.5的pyc是可以反编译的
看这里
http://www.crazy-compilers.com/decompyle/
这可如何是好呢

作者: bleem1998    时间: 2008-10-28 15:26
python又有种pyd文件
不知道是不是也会被反编译
暂时没有研究
作者: 许木木    时间: 2008-10-28 17:31
原帖由 bleem1998 于 2008-10-28 15:20 发表



编译成DLL应该会相对安全一点
但是主python程序都不安全了DLL又有什么安全性可言?
如果我反编译了主python程序然后模拟一个程序调用你的DLL
那DLL还不是傻乎乎的把密码又说出来了
呵呵


pytho ...

不会说出来的,打死也不说。
库函数只是把python传进来的用户名,密码在内部比对,不返回密码,只返回比对的结果
作者: bleem1998    时间: 2008-10-28 17:46
原帖由 许木木 于 2008-10-28 17:31 发表

不会说出来的,打死也不说。
库函数只是把python传进来的用户名,密码在内部比对,不返回密码,只返回比对的结果



确实是个办法
我可以把解压加密文件的动作放到DLL里
然后Python只是使用DLL的劳动成果就可以了

DLL应该是相对安全的吧。。。
作者: chrisyan    时间: 2008-10-29 09:23
原帖由 许木木 于 2008-10-28 17:31 发表

不会说出来的,打死也不说。
库函数只是把python传进来的用户名,密码在内部比对,不返回密码,只返回比对的结果


可以暴力破解,建议加一个延时
作者: bohemia    时间: 2008-10-29 11:57
看来后续,Py会出现类似的Java的混淆工具了.




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2