[发明专利]一种代码加密、解密方法及装置有效
申请号: | 201711470278.5 | 申请日: | 2017-12-29 |
公开(公告)号: | CN107992725B | 公开(公告)日: | 2020-08-07 |
发明(设计)人: | 梁鑫;牛宇斌;张鹏飞;王佳 | 申请(专利权)人: | 北京星河星云信息技术有限公司;北京星河世界集团有限公司 |
主分类号: | G06F21/14 | 分类号: | G06F21/14 |
代理公司: | 北京弘权知识产权代理事务所(普通合伙) 11363 | 代理人: | 逯长明;许伟群 |
地址: | 100084 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 代码 加密 解密 方法 装置 | ||
本发明实施例实公开了一种代码加密、解密方法及装置,该代码加密方法包括:确定待加密的源代码的代码块信息;基于所述代码块信息生成代码块混淆数据库,所述代码块混淆数据库包括代码块名称变换指示以及代码块位置变换指示;基于所述代码块名称变换指示对所述源代码中的各个代码块的名称进行变换;基于所述代码块位置变换指示对至少一个所述代码块的位置进行变换,生成第一加密源代码。利用本发明生成的加密源代码可以保存到公有代码数据库服务中,并且只有查看权限的人员才能够使用解密认证信息进行解密,从而同时满足源代码的安全性以及开放性。
技术领域
本发明实施例涉及数据加密处理技术领域,尤其涉及一种代码加密方法、装置及一种代码解密方法、装置。
背景技术
程序软件源代码(以下简称“源代码”)属于软件公司重要的知识资产。源代码的泄露和流失,会给软件公司带来直接的经济损失,也会给产品用户的数据安全带来很大风险。随着软件规模的扩大,一个软件产品会有越来越多的人员参与开发。如果源代码完全分离会增加调试的难度,以及增大交流成本。而开放源代码可以大大降低交流成本,以及提高开发人员的生产效率。由于对源代码的安全性以及开放性的同时需求,所以加大了保护源代码的难度。
目前,源代码有着各种各样的防泄密方法。例如,对服务器端目录进行加密,对开发人员电脑进行物理隔离、加密,或者在开发人员电脑中安装加密软件。但是这些方法在源代码交付中,项目交付人员,例如销售人员依然可以获取企业内部的源代码,这些源代码的防泄密方法安全性较差。
发明内容
本发明实施例提供了一种代码加密、解密方法及装置,以解决现有源代码的防泄密方法安全性较差的问题。
第一方面,本发明实施例提供了一种代码加密方法,所述方法包括:
确定待加密的源代码的代码块信息;
基于所述代码块信息生成代码块混淆数据库,所述代码块混淆数据库包括代码块名称变换指示以及代码块位置变换指示;
基于所述代码块名称变换指示对所述源代码中的各个代码块的名称进行变换;
基于所述代码块位置变换指示对至少一个所述代码块的位置进行变换,生成第一加密源代码。
进一步地,所述代码块名称变换指示包括各个所述代码块对应的UUID;基于所述代码块名称变换指示对所述源代码中的各个代码块的名称进行变换的步骤,包括:
基于所述代码块名称变换指示将所述源代码中的各个代码块的名称变换为相应的UUID。
进一步地,所述代码块位置变换指示包括至少一个需要进行位置变换的代码块的名称以及相应的位置变换后的第二位置信息,所述第二位置信息为文件名称信息或代码块名称信息;
基于所述代码块位置变换指示对至少一个所述代码块的位置进行变换的步骤,包括:
基于所述代码块位置变换指示将需要进行位置变换的代码块移动到所述文件名称信息对应的文件下或移动到所述代码块名称信息对应的代码块所在的位置上。
进一步地,所述方法还包括:
生成所述代码块加密数据库对应的代码块解密数据库,所述代码块解密数据库包括每一个所述代码块的名称、加密前的第一位置信息以及对应的UUID;
当所述代码块需要进行位置变换时,所述代码块解密数据库还包括所述代码块经过位置变换后所在的第二位置信息。
进一步地,所述方法还包括:
确定待加密源代码的文件信息以及目录信息;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京星河星云信息技术有限公司;北京星河世界集团有限公司,未经北京星河星云信息技术有限公司;北京星河世界集团有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711470278.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种门铃控制装置
- 下一篇:一种智能搜救指示装置