[发明专利]一种脚本加密方法、脚本解密运行方法和相关装置有效
申请号: | 201810941501.8 | 申请日: | 2018-08-17 |
公开(公告)号: | CN109284585B | 公开(公告)日: | 2020-12-22 |
发明(设计)人: | 沈舒莉;王海涵;施纯毅 | 申请(专利权)人: | 网宿科技股份有限公司 |
主分类号: | G06F21/12 | 分类号: | G06F21/12 |
代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 黄志华 |
地址: | 200030 上海市徐汇区*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 脚本 加密 方法 解密 运行 相关 装置 | ||
1.一种脚本加密方法,其特征在于,包括:
获取待加密脚本;
利用选择出的密钥生成算法生成的密钥信息加密所述待加密脚本,得到加密的脚本;
将运行权限控制代码保存在数组中,并将所述数组嵌入到所述加密的脚本中,得到加密脚本文件,所述运行权限控制代码用于指示是否允许解密所述加密的脚本;
将所述加密脚本文件执行编译处理得到可执行文件,以使得脚本解密解析引擎能自动运行并解密所述加密脚本文件加密的脚本。
2.如权利要求1所述的方法,其特征在于,利用选择出的密钥生成算法生成的密钥信息加密所述待加密脚本,具体包括:
将所述待加密脚本划分成若干个脚本片段;并
针对每一个脚本片段,均执行以下过程:
利用该脚本片段和基于上一个脚本片段的密钥信息生成用于加密该脚本片段的密钥信息;并
利用所述用于加密该脚本片段的密钥信息加密该脚本片段;
基于各个加密的脚本片段,得到加密的脚本;
其中,第一个脚本片段的密钥信息为基于产生的随机数和/或所述第一个脚本片段生成的。
3.如权利要求1所述的方法,其特征在于,利用选择出的密钥生成算法生成的密钥信息加密所述待加密脚本,具体包括:
对用户设置的密码和随机产生的盐值salt执行迭代次数的迭代处理,生成用于加密所述待加密脚本的密钥信息;并
利用所述密钥信息对所述待加密脚本进行加密处理,得到加密的脚本。
4.如权利要求1~3任一所述的方法,其特征在于,所述加密脚本文件包括加密的时间信息,和/或加密的允许运行所述加密脚本文件的硬件设备的硬件信息,所述时间信息用于指示所述加密脚本文件的有效期限。
5.如权利要求4所述的方法,其特征在于,所述加密脚本文件还包括以下至少一项:随机数、迭代次数、盐值salt、基于用户设置的密码生成的密钥信息和加密算法。
6.如权利要求1所述的方法,其特征在于,所述运行权限控制代码包括以下至少一项:用于监测所述加密的脚本是否被追溯的代码、用于指示加密的脚本是否在有效期限内的代码、加壳代码和license认证逻辑代码。
7.一种脚本解密运行方法,其特征在于,包括:
运行可执行文件,所述可执行文件为对权利要求1~6任一所述的方法得到的加密脚本文件执行编译处理得到的;
从所述加密脚本文件的数组中读取所述运行权限控制代码,根据所述运行权限控制代码确定允许解密所述加密脚本文件中加密的脚本,并调用脚本解密解析引擎解密所述加密的脚本;并
运行解密后的脚本。
8.如权利要求7所述的方法,其特征在于,所述运行权限控制代码包括用于监测所述加密的脚本是否被追溯的代码;以及根据运行权限控制代码确定允许解密所述加密脚本文件中加密的脚本,具体包括:
接收到派生子进程附着成功的确认消息。
9.如权利要求7或8所述的方法,其特征在于,所述加密脚本文件包含加密的时间信息,所述运行权限控制代码包括用于指示加密的脚本是否在有效期限内的代码;以及根据运行权限控制代码确定允许解密所述加密脚本文件中加密的脚本,具体包括:
从所述加密脚本文件中解密出时间信息;
确定所述时间信息在有效期限内。
10.如权利要求9所述的方法,其特征在于,所述加密脚本文件还包括允许所述加密脚本文件的硬件设备的硬件信息;以及根据运行权限控制代码确定允许解密所述加密脚本文件中加密的脚本,具体包括:
读取当前运行所述加密脚本文件的硬件设备的硬件信息;并
确定读取的硬件信息与所述加密脚本文件包含的硬件信息一致。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于网宿科技股份有限公司,未经网宿科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810941501.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:验证方法和装置
- 下一篇:一种软件授权许可实现方法和装置