[发明专利]代码保护方法、装置、电子设备及可读存储介质在审
申请号: | 202110248627.9 | 申请日: | 2021-03-05 |
公开(公告)号: | CN112966228A | 公开(公告)日: | 2021-06-15 |
发明(设计)人: | 郑鹏;梁建顺 | 申请(专利权)人: | 天冕信息技术(深圳)有限公司 |
主分类号: | G06F21/12 | 分类号: | G06F21/12;G06F21/60;G06F21/62;G06F8/30;G06F8/41 |
代理公司: | 深圳市沃德知识产权代理事务所(普通合伙) 44347 | 代理人: | 高杰;郭梦霞 |
地址: | 518000 广东省深圳市前海深港合作区前*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 代码 保护 方法 装置 电子设备 可读 存储 介质 | ||
本发明涉及数据处理,揭露一种代码保护方法,包括:根据代码保护请求携带的存储地址生成代码文件选择界面;接收用户基于代码文件选择界面选择的需要保护的代码文件,判断需要保护的代码文件是否可加密;将存储地址对应的存储空间中判断为可加密的代码文件存储至第一文件夹,将存储地址对应的存储空间中剩余的代码文件存储至第二文件夹;将第一文件夹中每个代码文件中的代码转换为静态类型的代码,将转换后的代码文件编译为第一类型的文件,将第二文件夹中每个代码文件编译为第二类型的文件,汇总第一类型及第二类型的文件,得到目标文件。本发明还提供一种代码保护装置、电子设备及可读存储介质。本发明全面提高了代码安全性。
技术领域
本发明涉及数据处理领域,尤其涉及一种代码保护方法、装置、电子设备及可读存储介质。
背景技术
随着科技的发展,代码已融入人们的生活中,例如,利用Python代码开发游戏、控制机器人、执行云计算等。Python属于解释性语言,其代码文件类似于文本文件,可使用文本编辑器打开其代码文件查看源代码,从而导致Python代码被泄露。
为了提高Python代码的安全性,通常采用以下两种代码保护方案:
1、采用加密工具对Python代码文件进行加密处理;
2、使用打包工具将Python代码文件打包成exe可执行文件。
对于方案1,现有的Python加密工具通常可破解,或仅能对部分文件加密;对于方案2,通过阅读打包工具源码了解打包的过程,再按照相反的流程即可解包。因此,亟需一种代码保护方法,以全面提高代码安全性。
发明内容
鉴于以上内容,有必要提供一种代码保护方法,旨在全面提高代码安全性。
本发明提供的代码保护方法,应用于电子设备,该方法包括:
解析用户基于客户端发出的代码保护请求,获取所述请求携带的代码文件的存储地址,获取所述存储地址对应的存储空间中存储的所有代码文件的名称,基于所述名称生成代码文件选择界面;
将所述代码文件选择界面展示到所述客户端界面,接收用户基于所述代码文件选择界面选择的需要保护的代码文件,判断所述需要保护的代码文件是否可加密;
将所述存储地址对应的存储空间中判断为可加密的代码文件存储至第一文件夹,将所述存储地址对应的存储空间中剩余的代码文件存储至第二文件夹;
将所述第一文件夹中每个代码文件中的代码转换为静态类型的代码,将转换后的代码文件编译为第一类型的文件,将所述第二文件夹中每个代码文件编译为第二类型的文件,汇总所述第一类型及第二类型的文件,得到目标文件。
可选的,所述判断所述需要保护的代码文件是否可加密包括:
从预设数据库中获取加密判断规则,判断所述需要保护的代码文件中的代码是否符合所述加密判断规则;
当判断某一指定代码文件中的代码符合所述加密判断规则时,认为所述指定代码文件可加密。
可选的,在判断所述需要保护的代码文件中的代码是否符合所述加密判断规则之后,所述方法还包括:
若判断某一指定代码文件中的代码不符合所述加密判断规则,则生成错误信息,将所述错误信息及所述指定代码文件发送到所述客户端;
接收所述客户端反馈的修正后的指定代码文件,判断所述修正后的指定代码文件是否符合所述加密判断规则。
可选的,所述将所述第一文件夹中每个代码文件中的代码转换为静态类型的代码,将转换后的代码文件编译为第一类型的文件包括:
将动态类型的代码转换为静态类型的代码的操作及将代码文件编译为第一类型的文件的操作封装为一个操作包;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天冕信息技术(深圳)有限公司,未经天冕信息技术(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110248627.9/2.html,转载请声明来源钻瓜专利网。