Python微服务的防护方法、装置、计算机设备和存储介质制造方法及图纸

技术编号:37346792 阅读:17 留言:0更新日期:2023-04-22 21:41
本申请涉及一种Python微服务的防护方法、装置、计算机设备和存储介质。其中,方法包括:获取待处理的Python微服务的源文件;将源文件中的Python源码转化成目标语言源码,获取第一中间文件;对第一中间文件中的目标语言源码进行编译,获取第二中间文件;利用加密算法对第二中间文件进行加密处理,获取第三中间文件;利用预订的打包规则将所有第三中间文件进行打包处理,生成目标应用文件后,执行发布流程。采用本方法能够避免Python源码泄露,提高Python微服务的破解难度,提高Python微服务的安全性。安全性。安全性。

【技术实现步骤摘要】
Python微服务的防护方法、装置、计算机设备和存储介质


[0001]本申请涉及数据安全
,特别是涉及一种Python微服务的防护方法、装置、计算机设备和存储介质。

技术介绍

[0002]随着软件开发技术的发展,python语言的应用越来越广泛,但是由于python语言是脚本解释语言,不需要编译即可直接以源码的形式运行,导致目前基于python语言开发的应用中,软件非常容易被破解和篡改,甚至不少黑客利用此机制对发布的软件进行病毒注入,造成基于python开发的微服务存在极大的安全性问题。
[0003]因此,目前基于python语言开发的应用中,由于python应用的发布以近乎源码的形式发布,因此应用包易被破解后泄露源码,从而侵害技术人员的相关权利。另外,软件病毒几乎没有任何阻碍即可破坏python应用,导致python应用发布后处于不可知、不可控状态,没有安全可言。

技术实现思路

[0004]基于此,有必要针对上述技术问题,提供一种Python微服务的防护方法、装置、计算机设备和存储介质,通过将发布的文件不包含Python源码,以避免Python源码泄露,通过加密处理提高破解难度和安全性
[0005]本申请提供一种Python微服务的防护方法,方法包括:
[0006]获取待处理的Python微服务的源文件;
[0007]将源文件中的Python源码转化成目标语言源码,获取第一中间文件;
[0008]对第一中间文件中的目标语言源码进行编译,获取第二中间文件;
[0009]利用加密算法对第二中间文件进行加密处理,获取第三中间文件;
[0010]利用预订的打包规则将所有第三中间文件进行打包处理,生成目标应用文件后,执行发布流程。
[0011]在其中一个实施例中,目标语言采用C语言;
[0012]将源文件中的Python源码转化成目标语言源码,获取第一中间文件的步骤,包括:
[0013]利用Python语言与其他程序语言之间的相互调用原则,对Python源码进行C语言源码转化,将每一个Python源文件转化为C语言源文件,以作为第一中间文件。
[0014]在其中一个实施例中,对第一中间文件中的目标语言源码进行编译,获取第二中间文件的步骤,包括:
[0015]利用C语言的编译规则,对第一中间文件中的C语言源码进行编译处理,生成.so结尾的二进制格式的第二中间文件。
[0016]在其中一个实施例中,加密算法包括国密SM4对称加密算法。
[0017]利用加密算法对第二中间文件进行加密处理,获取第三中间文件的步骤,包括:
[0018]利用国密SM4对称加密算法对第二中间文件进行加密处理,生成.som4结尾的第三
中间文件。
[0019]在其中一个实施例中,方法还包括:
[0020]利用预设的启动脚本对目标应用文件进行解密处理,以将目标应用文件中的.som4结尾的第三中间文件全部解密为.so结尾的第二中间文件;
[0021]利用预设的python解释器加载第二中间文件,以启动目标应用文件。
[0022]在其中一个实施例中,启动脚本中配置有国密SM4对称解密算法;
[0023]利用预设的启动脚本对目标应用文件进行解密加载处理的步骤,包括:
[0024]获取目标应用文件的启动加载指令;
[0025]根据启动加载指令,利用国密SM4对称解密算法,对目标应用文件进行解密加载处理,以得到so结尾的第二中间文件;
[0026]利用预设的python解释器加载第二中间文件,以启动目标应用文件。
[0027]本申请提供一种Python微服务的防护装置,装置包括:获取模块、转化模块、编译模块、加密模块以及打包模块;
[0028]获取模块,用于获取待处理的Python微服务的源文件;
[0029]转化模块,用于将源文件中的Python源码转化成目标语言源码,获取第一中间文件;
[0030]编译模块,用于对第一中间文件中的目标语言源码进行编译,获取第二中间文件;
[0031]加密模块,用于利用加密算法对第二中间文件进行加密处理,获取第三中间文件;
[0032]打包模块,用于利用预订的打包规则将所有第三中间文件进行打包处理,生成目标应用文件后,执行发布流程。
[0033]本申请提供一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现以下步骤:
[0034]获取待处理的Python微服务的源文件;
[0035]将源文件中的Python源码转化成目标语言源码,获取第一中间文件;
[0036]对第一中间文件中的目标语言源码进行编译,获取第二中间文件;
[0037]利用加密算法对第二中间文件进行加密处理,获取第三中间文件;
[0038]利用预订的打包规则将所有第三中间文件进行打包处理,生成目标应用文件后,执行发布流程。
[0039]本申请提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
[0040]获取待处理的Python微服务的源文件;
[0041]将源文件中的Python源码转化成目标语言源码,获取第一中间文件;
[0042]对第一中间文件中的目标语言源码进行编译,获取第二中间文件;
[0043]利用加密算法对第二中间文件进行加密处理,获取第三中间文件;
[0044]利用预订的打包规则将所有第三中间文件进行打包处理,生成目标应用文件后,执行发布流程。
[0045]上述Python微服务的防护方法、装置、计算机设备和存储介质,通过将待处理的Python微服务的源文件中的Python源码转换成目标语言源码后,按照目标语言的编译规则编译处理,然后对编译后的文件进行加密打包处理,得到目标应用文件后,执行发布流程。
目标应用文件中不含Python源码,使得Python源码的软件版权得以保护,Python源码不会泄露,通过对编译后的文件进行加密处理,以提高目标应用文件的破解难度,并且打包生成的目标应用文件难以被篡改和或软件病毒注入,极大地提高了安全性。
附图说明
[0046]图1为一个实施例中Python微服务的防护方法的流程示意图;
[0047]图2为一个实施例中Python微服务的防护装置的结构框图;
[0048]图3为一个实施例中计算机设备的内部结构图。
具体实施方式
[0049]为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
[0050]现有基于Python语言开发的应用目前有三种应用发布形式,分别是源码发布、pyc发布、整包发布。三种应用发布形式体现在文件展示不同,pyc发布方式加本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种Python微服务的防护方法,其特征在于,所述方法包括:获取待处理的Python微服务的源文件;将所述源文件中的Python源码转化成目标语言源码,获取第一中间文件;对所述第一中间文件中的目标语言源码进行编译,获取第二中间文件;利用加密算法对所述第二中间文件进行加密处理,获取第三中间文件;利用预订的打包规则将所有所述第三中间文件进行打包处理,生成目标应用文件后,执行发布流程。2.根据权利要求1所述的Python微服务的防护方法,其特征在于,所述目标语言采用C语言;所述将源文件中的Python源码转化成目标语言源码,获取第一中间文件的步骤,包括:利用Python语言与其他程序语言之间的相互调用原则,对所述Python源码进行C语言源码转化,将每一个所述Python源文件转化为C语言源文件,以作为所述第一中间文件。3.根据权利要求2所述的Python微服务的防护方法,其特征在于,所述对第一中间文件中的目标语言源码进行编译,获取第二中间文件的步骤,包括:利用C语言的编译规则,对所述第一中间文件中的C语言源码进行编译处理,生成.so结尾的二进制格式的所述第二中间文件。4.根据权利要求3所述的Python微服务的防护方法,其特征在于,所述加密算法包括国密SM4对称加密算法。所述利用加密算法对第二中间文件进行加密处理,获取第三中间文件的步骤,包括:利用国密SM4对称加密算法对所述第二中间文件进行加密处理,生成.som4结尾的所述第三中间文件。5.根据权利要求4所述的Python微服务的防护方法,其特征在于,所述方法还包括:利用预设的启动脚本对所述目...

【专利技术属性】
技术研发人员:傅东生王连民石挺星
申请(专利权)人:深圳奇迹智慧网络有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1