准备写一个简单的翻译工具给别人用,但是不想让别人看到我的 appid 和 keys ,想问一下大家有什么好的方法能够隐藏这些敏感信息??
1
xujif 2016 年 1 月 28 日
两个方案,一个是放在服务端请求,客户端直接看不到。
第二个就是写个加密算法加密下。一般情况下甚至不需要加密算法, base64 什么糊弄下就好,能研究的人你加密了也看得到,不研究的人糊弄下就行 |
2
jakes 2016 年 1 月 28 日
弄成网页或将 AppID 放在后台,以 API 提供服务。服务器通过环境变量设置这些敏感信息。
--- 楼下补充更好的,学习下~ |
3
smartdie 2016 年 1 月 28 日
写二进制文件,程序解析。但是人家一看你源码就什么都知道了。没啥办法。
|
4
pimin 2016 年 1 月 28 日 via iPhone
加密存放在文本文件里,读取解密。
因为是自欺欺人,所以随便搞个加密就行 |
5
incompatible 2016 年 1 月 28 日
如果是工具,你不应该内置 appId 和 appKey ,应该给个配置界面或者配置接口让用户配置自己的 appId/appKey 。
如果一定要用你自己的 appId/appKey ,那就只能做成服务了。 |
6
oott123 2016 年 1 月 28 日
* 面向开发者:丢环境变量
* 面向最终用户:做个反代 |
7
cxl008 2016 年 1 月 28 日
写 c , python 去调?
|
8
cosven 2016 年 1 月 28 日
个人认为:你现在的根本问题是:用户可以得到源码。用户一旦拿到源码,你无论怎样加密都没用了把。
所以真想保密的话,就需要打包成二进制的包。 pyinstaller, py2exe 之类的打包程序可能会用得到。 |
9
typcn 2016 年 1 月 28 日
你的服务器与翻译服务器通讯
客户端与你的服务器通讯 |
10
dapang1221 2016 年 1 月 28 日
还是没辙,不管你怎么加密,人家一抓包,就知道你 post 出去了什么东西。。所以如果需要保密的话,一部分逻辑最好用服务器做
|
11
leavic 2016 年 1 月 29 日
我所知的 python 几乎是无法加密的,解释性的语言最终都会被还原成可执行脚本。
放在服务器上,用公私密钥加密,但问题回到 python 上,公钥要公开,私钥放源码里还是可以被查看,最终还是完蛋。 楼上说的打包 EXE 也不靠谱,这些打包其实就是给你打包了 python 解析器和相应的包而已,运行时解压到临时目录运行。根本没有实际的编译可言,不信你随便触发一个 exception 看看,哪个文件哪行出问题都清清楚楚。 |
13
fy 2016 年 1 月 29 日
写 C 就靠谱吗?想看不还是能看,直接打开模块搜一下字符串就出来了。而且不还有抓包大法吗?
实在想要藏一下的话弄个 pyc 进去,但也只是略好一些。这些手段只能说防君子不防小人。 |