CN111049897B - 小程序包的加密上传和解密部署方法、装置、设备和介质 - Google Patents

小程序包的加密上传和解密部署方法、装置、设备和介质 Download PDF

Info

Publication number
CN111049897B
CN111049897B CN201911257866.XA CN201911257866A CN111049897B CN 111049897 B CN111049897 B CN 111049897B CN 201911257866 A CN201911257866 A CN 201911257866A CN 111049897 B CN111049897 B CN 111049897B
Authority
CN
China
Prior art keywords
data
applet
encrypted
length
encryption
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911257866.XA
Other languages
English (en)
Other versions
CN111049897A (zh
Inventor
张洪涛
谢马林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201911257866.XA priority Critical patent/CN111049897B/zh
Publication of CN111049897A publication Critical patent/CN111049897A/zh
Application granted granted Critical
Publication of CN111049897B publication Critical patent/CN111049897B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

本申请公开了小程序包的加密上传和解密部署方法、装置、设备和介质,涉及数据安全领域。具体实现方案为:获取待上传的小程序包体数据;通过与小程序服务器约定的至少一个秘钥以及加密处理算法,生成头部混淆数据;将所述头部混淆数据加入至所述小程序包体数据的头部,生成小程序加密包;将所述小程序加密包上传至所述小程序服务器。本发明实施例通过在小程序包体数据的头部***头部混淆数据,混淆了小程序的包体数据在整个小程序包中的位置,实现为小程序数据包加密的目的,可有效防止小程序包在上传服务器过程中被篡改。

Description

小程序包的加密上传和解密部署方法、装置、设备和介质
技术领域
本申请实施例涉及计算机技术领域,尤其涉及数据安全领域,具体涉及了一种小程序包的加密上传和解密部署方法、装置、设备和介质。
背景技术
随着应用程序的应用越来越广泛,小程序开始得到越来越多的应用和使用。现有小程序开发流程包括几个环节,首先要在小程序的开发工具上进行源码的开发、调试、编译,然后编译通过的代码可以在模拟器中预览小程序,最后把编译好的代码包上传到服务端,然后由服务端进行小程序包的部署、管理等后续流程。目前在小程序包从工具端到服务端的上传流程中缺少对小程序包的数据保护措施,容易被第三方工具模拟接口上传非法小程序包。
发明内容
本申请实施例公开一种小程序包的加密上传和解密部署方法、装置、设备和介质,以避免通过小程序开发工具端上传小程序包流程被篡改,并有效防止第三方小程序开发工具模拟上传接口,提交非法的小程序包到服务端。
第一方面,本申请实施例公开了一种小程序包的加密上传方法,包括:
获取待上传的小程序包体数据;
通过与小程序服务器约定的至少一个秘钥以及加密处理算法,生成头部混淆数据;
将所述头部混淆数据加入至所述小程序包体数据的头部,生成小程序加密包;
将所述小程序加密包上传至所述小程序服务器。
上述申请中的一个实施例具有如下优点或有益效果:通过在小程序包体数据的头部***头部混淆数据,混淆了包体数据在整个小程序包中的位置,实现为小程序数据包加密的目的,可有效防止小程序包在上传服务器过程中被篡改。
另外,根据本申请上述实施例的小程序包的加密上传方法,还可以具有如下附加的技术特征:
可选的,通过与小程序服务器约定的至少一个秘钥,生成头部混淆数据,包括:
生成第一随机字符串,并根据所述第一随机字符串的长度、小程序包体数据的数据长度以及数据加密秘钥,生成加密数据;
将所述第一随机字符串、所述加密数据以及所述加密数据的数据长度,作为所述头部混淆数据。
可选的,在生成第一随机字符串之前,还包括:
获取至少一项目标参数,并根据所述至少一项目标参数以及签名加密秘钥,生成标准签名串;
根据所述第一随机字符串的长度、小程序包体数据的数据长度、以及数据加密秘钥,生成加密数据,包括:
根据所述标准签名串,所述字符串长度、小程序包体数据的数据长度,以及数据加密秘钥,生成所述加密数据。
上述申请中的一个实施例具有如下优点或有益效果:采用约定密钥和目标参数相结合的方式来签名小程序包,并将签名串、第一随机字符串的长度以及小程序包体数据的长度生成加密数据,由此可以保证加密后小程序包安全上传的服务器进行部署,同时可免第三方编写一个类似的开发工具,上传非法小程序包。
可选的,根据所述至少一项目标参数以及签名加密秘钥,生成标准签名串,包括:
将各所述目标参数进行排序后,得到第一字符串;
将所述第一字符串与所述签名加密秘钥进行拼接,得到第二字符串;
对所述第二字符串进行数字签名计算,生成所述标准签名串。
可选的,将所述头部混淆数据加入至所述小程序包体数据的头部,生成小程序加密包,包括:
将第一随机字符串添加于所述小程序包体数据的头部,得到第一中间数据;
将所述加密数据添加于所述第一中间数据的头部,得到第二中间数据;
将所述加密数据的数据长度填充于定长字段内,并将所述定长字段添加于所述第一中间数据的头部,生成所述小程序加密包。
上述申请中的一个实施例具有如下优点或有益效果:将混淆数据***小程序包的头部,混淆了包体数据在整个小程序包中的位置,保证了小程序包数据的安全性。
可选的,根据所述标准签名串,所述字符串长度、小程序包体数据的数据长度,以及数据加密秘钥,生成加密数据,包括:
将所述标准签名串、所述字符串长度以及小程序包体数据的数据长度进行拼接,得到原始数据;
使用所述数据加密秘钥对所述原始数据进行加密,得到所述加密数据。
可选的,在获取待上传的小程序包体数据之后,还包括:
生成第二随机字符串,作为尾部混淆数据;
将所述头部混淆数据加入至所述小程序包体数据的头部,生成小程序加密包,具体包括:
将所述头部混淆数据加入至所述小程序包体数据的头部,并将所述尾部混淆数据加入至所述小程序包体数据的尾部,生成所述小程序加密包。
上述申请中的一个实施例具有如下优点或有益效果:通过在小程序包体数据的头部和尾部均加入混淆数据,进一步混淆包体数据在整个小程序包中的位置,保证了小程序包数据的安全性。
可选的,所述方法由客户端工具执行,所述客户端工具由小程序服务器预先分配;
获取至少一项目标参数,包括:
获取与所述客户端工具匹配的小程序上传接口的至少一项接口参数作为所述目标参数;
将所述小程序加密包上传至所述小程序服务器,包括:
通过所述小程序上传接口,将所述小程序加密包上传至所述小程序服务器。
第二方面,本申请实施例公开了一种小程序包的解密部署方法,包括:
获取客户端工具上传的小程序加密包,所述小程序加密包中包括:小程序包体数据和位于小程序包体数据头部的头部混淆数据;
通过与所述客户端工具约定的至少一个秘钥以及解密处理算法,从所述小程序加密包中提取所述小程序包体数据;
根据所述小程序包体数据,进行小程序部署。
上述申请中的一个实施例具有如下优点或有益效果:服务端接收到小程序加密包后,通过解密验证处理后在进行小程序部署,避免将非法程序部署到服务端。
可选的,通过与所述客户端工具约定的至少一个秘钥以及解密处理算法,从所述小程序加密包中提取所述小程序包体数据,包括:
对所述小程序包进行解包处理,从解包结果数据的头部获取定长字段,并根据所述定长字段,获取加密数据的数据长度;
根据加密数据的数据长度,从解包结果数据中读取加密数据,并使用数据解密秘钥对所述加密数据进行解密处理,得到原始数据;
从所述原始数据中提取出标准签名串、第一随机字符串的字符串长度,以及小程序包体数据的数据长度;
在通过签名解密秘钥验证所述标准签名串为合法签名时,根据所述字符串长度和所述小程序包体数据的数据长度,从解包结果数据中提取小程序包体数据。
上述申请中的一个实施例具有如下优点或有益效果:在对小程序加密包进行解密后,验证签名串以确定该小程序包是否合法,实现了对非法上传的小程序的筛选,避免部署非法小程序。
可选的,通过签名解密秘钥验证所述标准签名串为合法签名,包括:
获取所述小程序上传接口的至少一项接口参数,并将各所述接口参数进行排序后,得到第一字符串;
将所述第一字符串签名解密秘钥进行拼接,得到第二字符串;
对所述第二字符串进行数据签名计算,得到验证签名串;
如果所述验证签名串所述标准签名串相同,则确定所述标准签名串为合法签名。
上述申请中的一个实施例具有如下优点或有益效果:通过验证签名串可确定该小程序包是否合法。
可选的,在从所述原始数据中提取出标准签名串、第一随机字符串的字符串长度,以及小程序包体数据的数据长度之后,还包括:
如果通过签名解密秘钥验证所述标准签名串为非法签名,则将所述小程序加密包进行丢弃。
上述申请中的一个实施例具有如下优点或有益效果:将确定标准签名串为非法签名的小程序加密包丢弃,不进行部署,避免因部署非法小程序而破坏应用程序生态。
第三方面,本申请实施例公开了一种小程序包的加密上传装置,包括:
获取模块,用于获取待上传的小程序包体数据;
数据生成模块,用于通过与小程序服务器约定的至少一个秘钥以及加密处理算法,生成头部混淆数据;
加密模块,用于将所述头部混淆数据加入至所述小程序包体数据的头部,生成小程序加密包;
上传模块,用于将所述小程序加密包上传至所述小程序服务器。
第四方面,本申请实施例公开了一种小程序包的解密部署装置,包括:
加密包获取模块,用于获取客户端工具上传的小程序加密包,所述小程序加密包中包括:小程序包体数据和位于小程序包体数据头部的头部混淆数据;
解密模块,用于通过与所述客户端工具约定的至少一个秘钥以及解密处理算法,从所述小程序加密包中提取所述小程序包体数据;
部署模块,用于根据所述小程序包体数据,进行小程序部署。
第五方面,本申请实施例还提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本申请任意实施例所述的小程序包的加密上传方法。
第六方面,本申请实施例还提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本申请任意实施例所述的小程序包的解密部署方法。
第七方面,本本申请实施例还提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行本申请任意实施例所述的小程序包的加密上传方法。
第八方面,本本申请实施例还提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行本申请任意实施例所述的小程序包的解密部署方法。
上述可选方式所具有的其他效果将在下文中结合具体实施例加以说明。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1是根据本申请第一实施例的小程序包的加密上传方法的流程示意图;
图2是根据本申请第二实施例的小程序包的加密上传方法的流程示意图;
图3是根据本申请第三实施例的小程序包的加密上传方法的流程示意图;
图4是根据本申请第四实施例的小程序包的解密部署方法的流程示意图;
图5是根据本申请第五实施例的小程序包的加密上传装置的结构示意图;
图6是根据本申请第六实施例的小程序包的解密部署装置的结构示意图;
图7是用来实现本申请实施例的小程序包的加密上传方法的电子设备的框图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1是本申请实施例的小程序包加密上传方法的流程示意图,本实施例可适用于通过小程序开发工具上传编译好的小程序安装包的情况。该方法可由一种小程序包加密上传装置来执行,该装置采用软件和/或硬件的方式实现,优选是配置于电子设备中,例如服务器或计算机设备。如图1所示,该方法具体包括如下:
S101、获取待上传的小程序包体数据。
其中,小程序包体数据是指在小程序开发工具已经调试编译好的小程序的代码包。为了保证小程序包体数据在上传过程中不被篡改,本申请实施例通过对小程序包体数据进行加密的方式,确保小程序包体数据安全。要进行加密,首先要在上传前,获取编译好的小程序包体数据。
S102、通过与小程序服务器约定的至少一个秘钥以及加密处理算法,生成头部混淆数据。
其中,头部混淆数据是指需要添加到小程序包的头部的数据,用于混淆小程序的包体数据在小程序包中位置,使得非法人员无法准确定位到包体数据,进而避免了非法人员对小程序包的包体数据的篡改,保证小程序安装包的安全。而在生成头部混淆数据时,可依据与小程序服务器约定的至少一个秘钥以及加密处理算法来实现,其中所述至少一个密钥可以为公有密钥或私有密钥,在此不做具体限定,示例性的,密钥可以为一个约定的字符串,而加密算法可选的利用不可逆的MD5加密算法。
S103、将所述头部混淆数据加入至所述小程序包体数据的头部,生成小程序加密包。
将头部混淆数据加入至所述小程序包体数据的头部后,生成小程序加密包,使得在小程序加密包中,头部混淆数据混淆了包体数据在小程序包中的位置,也即实现了对小程序包体数据的加密。
S104、将所述小程序加密包上传至所述小程序服务器。
在S103的基础上,只需将小程序加密包上传至所述小程序服务器即可,由于小程序加密包中混淆了小程序包体数据的位置,可有效防止在上传过程中包体数据被非法篡改。进一步的,在小程序加密包上传到小程序应用服务器后,小程序应用服务器可基于预先预定好的密钥对小程序加密包进行解密,得到小程序包体数据,进而根据小程序包体数据完成小程序部署工作。
本申请实施例中,通过在小程序包体数据的头部***头部混淆数据,混淆了包体数据在整个小程序包中的位置,实现为小程序数据包加密的目的,可有效防止小程序包在上传服务器过程中被篡改。
在上述各实施例的基础上,通过与小程序服务器约定的至少一个秘钥,生成头部混淆数据,可以包括:
生成第一随机字符串,并根据所述第一随机字符串的长度、小程序包体数据的数据长度以及数据加密秘钥,生成加密数据;
将所述第一随机字符串、所述加密数据以及所述加密数据的数据长度,作为所述头部混淆数据。
具体的,可以首先随机生成一个字符串长度随机的第一随机字符串,并将该第一随机字符串的长度以及小程序包体数据的数据长度使用数据加密秘钥进行加密,得到该加密数据;之后将所述第一随机字符串、所述加密数据以及所述加密数据的数据长度,作为所述头部混淆数据加入至小程序包体数据的头部后,可以混淆小程序包体数据的起始位置。
在小程序服务器根据所述加密数据的数据长度,成功获取该加密数据后,如果成功对该加密数据进行解密,可以获取该第一随机字符串的长度以及小程序包体数据的数据长度,进而可以成功获取小程序包体数据的起始位置以及结束位置。
图2是本申请实施例提供的小程序包的加密上传方法的流程示意图,参见图2,该方法具体包括:
S201、获取待上传的小程序包体数据。
S202获取至少一项目标参数,并根据所述至少一项目标参数以及签名加密秘钥,生成标准签名串。
本申请实施例中,小程序包的加密上传方法由客户端工具(如小程序开发工具)执行,所述客户端工具由小程序服务器预先分配的。因此,获取至少一项目标参数,也即是获取与客户端工具匹配的小程序上传接口 (例如http协议的端口)的至少一项接口参数作为目标参数,其中接口参数可选的为各种用于标识小程序以及小程序开发者的相关信息,例如,小程序标识以及开发者标识等。
在本申请实施例中,为了避免第三方编写类似小程序开发工具,上传非法小程序破坏应用程序生态,在签名小程序时,可选的,根据至少一个接口参数和签名加密秘钥生成标准签名串。由于标准签名串包括至少一个接口参数,后续在小程序服务器验证签名时,即可确定小程序是否为非法的第三方工具上传的。
而根据所述至少一项目标参数以及签名加密秘钥,生成标准签名串的操作如下:
S1.将各所述目标参数进行排序后,得到第一字符串。
S2.将所述第一字符串与所述签名加密秘钥进行拼接,得到第二字符串。
S3.对所述第二字符串进行数字签名计算,生成所述标准签名串。
可选的,对第二字符串进行MD5计算,得到标准签名串。
S203、生成第一随机字符串,并计算所述第一随机字符串的字符串长度。
可选的,利用随机数生成算法,生成第一随机字符串,计算第一随机字符串的字符串长度,以便后续解密时参考第一随机字符串的字符串长度定位小程序包体数据。
S204、根据所述标准签名串,所述字符串长度、小程序包体数据的数据长度,以及数据加密秘钥,生成加密数据。
可选的,将所述标准签名串、所述字符串长度以及小程序包体数据的数据长度进行拼接,得到原始数据,进而使用所述数据加密秘钥对所述原始数据进行加密,例如基于与小程序服务端约定的加密数据加密秘钥对原始数据进行加密得到加密数据,并计算所述加密数据的长度。
S205、将所述第一随机字符串、所述加密数据以及所述加密数据的数据长度,作为所述头部混淆数据。
S206、将所述头部混淆数据加入至所述小程序包体数据的头部,生成小程序加密包。
可选的,将第一随机字符串添加于所述小程序包体数据的头部,得到第一中间数据;将加密数据添加于第一中间数据的头部,得到第二中间数据;将加密数据的数据长度填充于定长字段内,并将所述定长字段添加于所述第一中间数据的头部,生成所述小程序加密包。在此需要说明的是,将加密数据的长度填充于定长字段内,可确保解密时直接根据定长字段内的数据以定位加密数据。
S207、将所述小程序加密包上传至所述小程序服务器。
可选的,通过所述小程序上传接口,将所述小程序加密包上传至所述小程序服务器,其中上传接口可选的为http协议的端口。
本发明实施例,通过对小程序包加密,防止在传输过程中被篡改,而且采用约定的签名加密密钥和接口参数相结合的方式来签名小程序包,并将签名串、第一随机字符串的长度以及小程序包体数据的长度生成加密数据,由此可以保证加密后小程序包安全上传的服务器进行部署,同时可免第三方编写一个类似的开发工具,上传非法小程序包。
图3是本申请实施例提供的一种小程序包的加密上传方法的流程示意图,参见图3,该方法具体包括:
S301、获取待上传的小程序包体数据。
S302、通过与小程序服务器约定的至少一个秘钥以及加密处理算法,生成头部混淆数据。
S303、生成第二随机字符串,作为尾部混淆数据。
本申请实施例中,为了提升加密的等级,也即是进一步混淆小程序包体数据在小程序加密包中的位置,还可基于随机数生成算法生成第二随机字符串,作为尾部混淆数据。
S304、将所述头部混淆数据加入至所述小程序包体数据的头部,并将所述尾部混淆数据加入至所述小程序包体数据的尾部,生成所述小程序加密包。
在小程序包体数据的头部和尾部分别加入头部混淆数据、尾部混淆数据,得到小程序加密包,由此使得定位小程序包体数据变得更加困难,保证小程序包体数据不易在上传过程中被篡改,确保了包体数据的安全。
S305、将所述小程序加密包上传至所述小程序服务器。
具体的,所述小程序服务器在获取小程序加密包后,所述小程序服务器可以根据所述至少一个秘钥解密得到所述小程序包体数据进行部署。
本申请实施例中,在小程序包体数据上传前,在包体数据的头部和尾部添加对应的头部混淆数据和尾部混淆数据,增加定位包体数据的难度,进而保证包体数据在上传过程中不易被篡改。
图4是本申请实施例提供的一种小程序包的解密部署方法的流程示意图,该方法应用于在小程序服务端对接收的小程序加密包进行解码并部署小程序的情况,该方法可由一种小程序包加密上传装置来执行,该装置采用软件和/或硬件的方式实现,优选是配置于电子设备中,例如服务器或计算机设备。如图4所示,该方法具体包括如下:
S401、获取客户端工具上传的小程序加密包。
其中,所述小程序加密包中包括:小程序包体数据和位于小程序包体数据头部的头部混淆数据以及位于小程序包体数据尾部的尾部混淆数据。
S402、通过与所述客户端工具约定的至少一个秘钥以及解密处理算法,从所述小程序加密包中提取所述小程序包体数据。
示例性的,参见上述实施例,在加密小程序的过程中,需要维护两个密钥,分别为数据加密密钥和签名加密密钥。因此,可通过与数据加密密钥和签名加密密钥分别对应的数据解密密钥、签名解密密钥以及相应的解密处理算法,从小程序加密包中提取所述小程序包体数据,具体的操作可以包括:
S1.对所述小程序包进行解包处理,从解包结果数据的头部获取定长字段,并根据所述定长字段,获取加密数据的数据长度。
示例性的,根据预先约定的解密算法,对小程序加密包进行解包处理,有上述实施例的加密过程可知,接包后的结构数据从头部到尾部依次为:定长字段、加密数据、第一随机字符串、包体数据、第二随机字符串。因此在解包后,首先根据定长字段中记载的数据确定加密数据的数据长度。
S2.根据加密数据的数据长度,从解包结果数据中读取加密数据,并使用数据解密秘钥对所述加密数据进行解密处理,得到原始数据。
根据加密数据的数据长度,从解包结果数据中读取加密数据,并基于预先约定的数据解密密钥和解密算法对读取到的加密数据进行解密处理,得到原始数据。
S3.从所述原始数据中提取出标准签名串、第一随机字符串的字符串长度,以及小程序包体数据的数据长度。
S4.在通过签名解密秘钥验证所述标准签名串为合法签名时,根据所述字符串长度和所述小程序包体数据的数据长度,从解包结果数据中提取小程序包体数据。
可选的,通过签名解密秘钥验证标准签名串为合法签名的过程如下:
获取小程序上传接口的至少一项接口参数,并将各所述接口参数进行排序后,得到第一字符串;将所述第一字符串和签名解密秘钥进行拼接,得到第二字符串;对所述第二字符串进行数据签名计算,得到验证签名串;如果所述验证签名串所述标准签名串相同,则确定所述标准签名串为合法签名。
在验证标准签名串为合法签名后,根据第一随机字符串的字符串长度读取第一字符串,进而根据,小程序包体数据的数据长度读取小程序包体数据。
S403、根据所述小程序包体数据,进行小程序部署。
由于已经验证小程序加密包的签名合法,因此只需将提取的小程序包体数据直接在小程序服务器上安装部署即可。
本申请实施例中,在接收到小程序加密包后,通过解密密钥和相应的解密算法进行解密操作,同时验证解密获得的标准签名串是否合法,并在合法的情况下部署小程序,由此避免了因安装部署非法小程序而破坏小程序生态。
进一步的,如果通过签名解密秘钥验证所述标准签名串为非法签名,则将所述小程序加密包进行丢弃,由此避免了非法小程序的部署。
图5是本申请实施例的小程序包的加密上传装置的结构示意图,该装置可实现本申请任意实施例所述的小程序包的加密上传方法。该装置500 具体包括如下:
获取模块501,用于获取待上传的小程序包体数据;
数据生成模块502,用于通过与小程序服务器约定的至少一个秘钥以及加密处理算法,生成头部混淆数据;
加密模块503,用于将所述头部混淆数据加入至所述小程序包体数据的头部,生成小程序加密包;
上传模块504,用于将所述小程序加密包上传至所述小程序服务器。
可选的,数据生成模块包括:
加密数据生成单元,用于生成第一随机字符串,并根据所述第一随机字符串的长度、小程序包体数据的数据长度以及数据加密秘钥,生成加密数据;
混淆数据生成单元,用于将所述第一随机字符串、所述加密数据以及所述加密数据的数据长度,作为所述头部混淆数据。
可选的,所述装置还包括:
签名串生成模块,用于获取至少一项目标参数,并根据所述至少一项目标参数以及签名加密秘钥,生成标准签名串;
相应的,所述加密数据生成单元具体用于:
根据所述标准签名串,所述字符串长度、小程序包体数据的数据长度,以及数据加密秘钥,生成加密数据。
可选的,所述签名串生成模块具体用于:
将各所述目标参数进行排序后,得到第一字符串;
将所述第一字符串与所述签名加密秘钥进行拼接,得到第二字符串;
对所述第二字符串进行数字签名计算,生成所述标准签名串。
可选的,所述加密模块包括:
第一添加单元,用于将第一随机字符串添加于所述小程序包体数据的头部,得到第一中间数据;
第二添加单元,用于将所述加密数据添加于所述第一中间数据的头部,得到第二中间数据;
加密单元,将所述加密数据的数据长度填充于定长字段内,并将所述定长字段添加于所述第一中间数据的头部,生成所述小程序加密包。
可选的,所述加密数据生成单元具体用于:
将所述标准签名串、所述字符串长度以及小程序包体数据的数据长度进行拼接,得到原始数据;
使用所述数据加密秘钥对所述原始数据进行加密,得到所述加密数据。
可选的,所述装置还包括:
随机数生成模块,用于生成第二随机字符串,作为尾部混淆数据;
所述加密数据生成单元具体用于:
将所述头部混淆数据加入至所述小程序包体数据的头部,并将所述尾部混淆数据加入至所述小程序包体数据的尾部,生成所述小程序加密包。
可选的,所述装置配置由客户端工具,所述客户端工具由小程序服务器预先分配;
签名串生成单元包括:
获取子单元,用于获取与所述客户端工具匹配的小程序上传接口的至少一项接口参数作为所述目标参数;
上传模块具体用于:
通过所述小程序上传接口,将所述小程序加密包上传至所述小程序服务器。
本申请实施例所提供的小程序包的加密上传装置可执行本申请任意实施例所提供的小程序包的加密上传方法,具备执行方法相应的功能模块和有益效果。本实施例中未详尽描述的内容可以参考本申请任意方法实施例中的描述。
图6是本申请实施例的小程序包的解密部署装置的结构示意图,该装置可实现本申请任意实施例所述的小程序包的解密部署方法。该装置600 具体包括如下:
加密包获取模块601,用于获取客户端工具上传的小程序加密包,所述小程序加密包中包括:小程序包体数据和位于小程序包体数据头部的头部混淆数据;
解密模块602,用于通过与所述客户端工具约定的至少一个秘钥以及解密处理算法,从所述小程序加密包中提取所述小程序包体数据;
部署模块603,用于根据所述小程序包体数据,进行小程序部署。
可选的,所述解密模块包括:
解包单元,用于对所述小程序包进行解包处理,从解包结果数据的头部获取定长字段,并根据所述定长字段,获取加密数据的数据长度;
读取单元,用于根据加密数据的数据长度,从解包结果数据中读取加密数据,并使用数据解密秘钥对所述加密数据进行解密处理,得到原始数据;
提取单元,用于从所述原始数据中提取出标准签名串、第一随机字符串的字符串长度,以及小程序包体数据的数据长度;
验证单元,用于在通过签名解密秘钥验证所述标准签名串为合法签名时,根据所述字符串长度和所述小程序包体数据的数据长度,从解包结果数据中提取小程序包体数据。
可选的,所述验证单元具体用于:
获取所述小程序上传接口的至少一项接口参数,并将各所述接口参数进行排序后,得到第一字符串;
将所述第一字符串签名解密秘钥进行拼接,得到第二字符串;
对所述第二字符串进行数据签名计算,得到验证签名串;
如果所述验证签名串所述标准签名串相同,则确定所述标准签名串为合法签名。
可选的,所述装置还包括:
丢弃模块,用于如果通过签名解密秘钥验证所述标准签名串为非法签名,则将所述小程序加密包进行丢弃。
本申请实施例所提供的小程序包的解密部署装置可执行本申请任意实施例所提供的小程序包的解密部署方法,具备执行方法相应的功能模块和有益效果。本实施例中未详尽描述的内容可以参考本申请任意方法实施例中的描述。
根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。
如图7所示,是根据本申请实施例的小程序包的加密上传方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图7所示,该电子设备包括:一个或多个处理器701、存储器702,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器***)。图7中以一个处理器701 为例。
存储器702即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的小程序包的加密上传方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的小程序包的加密上传方法。
存储器702作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的小程序包的加密上传方法对应的程序指令/模块(例如,附图5所示的获取模块 501、数据生成模块502和加密模块503)。处理器701通过运行存储在存储器702中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的小程序包的加密上传方法。
存储器702可以包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需要的应用程序;存储数据区可存储根据实现小程序包的加密上传方法的电子设备的使用所创建的数据等。此外,存储器702可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器702可选包括相对于处理器701远程设置的存储器,这些远程存储器可以通过网络连接至实现小程序包的加密上传方法的电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
实现小程序包的加密上传方法的电子设备还可以包括:输入装置703 和输出装置704。处理器701、存储器702、输入装置703和输出装置704 可以通过总线或者其他方式连接,图7中以通过总线连接为例。
输入装置703可接收输入的数字或字符信息,以及产生与实现小程序包的加密上传方法的电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置704可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED) 显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的***和技术的各种实施方式可以在数字电子电路***、集成电路***、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程***上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储***、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储***、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和 /或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的***和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入) 来接收来自用户的输入。
可以将此处描述的***和技术实施在包括后台部件的计算***(例如,作为数据服务器)、或者包括中间件部件的计算***(例如,应用服务器)、或者包括前端部件的计算***(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的***和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算***中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将***的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机***可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
根据本申请实施例的技术方案,通过在小程序包体数据的头部***头部混淆数据,混淆了包体数据在整个小程序包中的位置,实现为小程序数据包加密的目的,可有效防止小程序包在上传服务器过程中被篡改。
在此需要说明的是,实现小程序包的解密部署的电子设备(例如小程序应用服务器)的硬件结构和实现小程序包的加密上传的电子设备类似,在此关于实现小程序包的解密部署的电子设备不再赘述。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。

Claims (17)

1.一种小程序包的加密上传方法,其特征在于,包括:
获取待上传的小程序包体数据;
通过与小程序服务器约定的至少一个秘钥以及加密处理算法,生成头部混淆数据;其中,所述秘钥包括数据加密秘钥和签名加密秘钥;
将所述头部混淆数据加入至所述小程序包体数据的头部,生成小程序加密包;
将所述小程序加密包上传至所述小程序服务器;
其中,通过与小程序服务器约定的至少一个秘钥,生成头部混淆数据,包括:
生成第一随机字符串,并根据所述第一随机字符串的长度、小程序包体数据的数据长度以及数据加密秘钥,生成加密数据;
将所述第一随机字符串、所述加密数据以及所述加密数据的数据长度,作为所述头部混淆数据;
将所述头部混淆数据加入至所述小程序包体数据的头部,生成小程序加密包,包括:
将第一随机字符串添加于所述小程序包体数据的头部,得到第一中间数据;
将所述加密数据添加于所述第一中间数据的头部,得到第二中间数据;
将所述加密数据的数据长度填充于定长字段内,并将所述定长字段添加于所述第一中间数据的头部,生成所述小程序加密包。
2.根据权利要求1所述的方法,其特征在于,在生成第一随机字符串之前,还包括:
获取至少一项目标参数,并根据所述至少一项目标参数以及签名加密秘钥,生成标准签名串;
根据所述第一随机字符串的长度、小程序包体数据的数据长度、以及数据加密秘钥,生成加密数据,包括:
根据所述标准签名串,所述字符串长度、小程序包体数据的数据长度,以及数据加密秘钥,生成所述加密数据。
3.根据权利要求2所述的方法,其特征在于,根据所述至少一项目标参数以及签名加密秘钥,生成标准签名串,包括:
将各所述目标参数进行排序后,得到第一字符串;
将所述第一字符串与所述签名加密秘钥进行拼接,得到第二字符串;
对所述第二字符串进行数字签名计算,生成所述标准签名串。
4.根据权利要求2所述的方法,其特征在于,根据所述标准签名串,所述字符串长度、小程序包体数据的数据长度,以及数据加密秘钥,生成加密数据,包括:
将所述标准签名串、所述字符串长度以及小程序包体数据的数据长度进行拼接,得到原始数据;
使用所述数据加密秘钥对所述原始数据进行加密,得到所述加密数据。
5.根据权利要求1-4任一项所述的方法,其特征在于,在获取待上传的小程序包体数据之后,还包括:
生成第二随机字符串,作为尾部混淆数据;
将所述头部混淆数据加入至所述小程序包体数据的头部,生成小程序加密包,具体包括:
将所述头部混淆数据加入至所述小程序包体数据的头部,并将所述尾部混淆数据加入至所述小程序包体数据的尾部,生成所述小程序加密包。
6.根据权利要求2-4任一项所述的方法,其特征在于,所述方法由客户端工具执行,所述客户端工具由小程序服务器预先分配;
获取至少一项目标参数,包括:
获取与所述客户端工具匹配的小程序上传接口的至少一项接口参数作为所述目标参数;
将所述小程序加密包上传至所述小程序服务器,包括:
通过所述小程序上传接口,将所述小程序加密包上传至所述小程序服务器。
7.一种小程序包的解密部署方法,其特征在于,包括:
获取客户端工具上传的小程序加密包,所述小程序加密包中包括:小程序包体数据和位于小程序包体数据头部的头部混淆数据;
通过与所述客户端工具约定的至少一个秘钥以及解密处理算法,从所述小程序加密包中提取所述小程序包体数据;其中,所述秘钥包括数据加密秘钥和签名加密秘钥;
根据所述小程序包体数据,进行小程序部署;
其中,头部混淆数据的生成过程,包括:
生成第一随机字符串,并根据所述第一随机字符串的长度、小程序包体数据的数据长度以及数据加密秘钥,生成加密数据;
将所述第一随机字符串、所述加密数据以及所述加密数据的数据长度,作为所述头部混淆数据;
所述小程序加密包的生成过程,包括:
将第一随机字符串添加于所述小程序包体数据的头部,得到第一中间数据;
将所述加密数据添加于所述第一中间数据的头部,得到第二中间数据;
将所述加密数据的数据长度填充于定长字段内,并将所述定长字段添加于所述第一中间数据的头部,生成所述小程序加密包。
8.根据权利要求7所述的方法,其特征在于,通过与所述客户端工具约定的至少一个秘钥以及解密处理算法,从所述小程序加密包中提取所述小程序包体数据,包括:
对所述小程序包进行解包处理,从解包结果数据的头部获取定长字段,并根据所述定长字段,获取加密数据的数据长度;
根据加密数据的数据长度,从解包结果数据中读取加密数据,并使用数据解密秘钥对所述加密数据进行解密处理,得到原始数据;
从所述原始数据中提取出标准签名串、第一随机字符串的字符串长度,以及小程序包体数据的数据长度;
在通过签名解密秘钥验证所述标准签名串为合法签名时,根据所述字符串长度和所述小程序包体数据的数据长度,从解包结果数据中提取小程序包体数据。
9.根据权利要求8所述的方法,其特征在于,通过签名解密秘钥验证所述标准签名串为合法签名,包括:
获取所述小程序上传接口的至少一项接口参数,并将各所述接口参数进行排序后,得到第一字符串;
将所述第一字符串签名解密秘钥进行拼接,得到第二字符串;
对所述第二字符串进行数据签名计算,得到验证签名串;
如果所述验证签名串所述标准签名串相同,则确定所述标准签名串为合法签名。
10.根据权利要求8所述的方法,其特征在于,在从所述原始数据中提取出标准签名串、第一随机字符串的字符串长度,以及小程序包体数据的数据长度之后,还包括:
如果通过签名解密秘钥验证所述标准签名串为非法签名,则将所述小程序加密包进行丢弃。
11.一种小程序包的加密上传装置,其特征在于,包括:
获取模块,用于获取待上传的小程序包体数据;
数据生成模块,用于通过与小程序服务器约定的至少一个秘钥以及加密处理算法,生成头部混淆数据;
加密模块,用于将所述头部混淆数据加入至所述小程序包体数据的头部,生成小程序加密包;其中,所述秘钥包括数据加密秘钥和签名加密秘钥;
上传模块,用于将所述小程序加密包上传至所述小程序服务器;
其中,数据生成模块包括:
加密数据生成单元,用于生成第一随机字符串,并根据所述第一随机字符串的长度、小程序包体数据的数据长度以及数据加密秘钥,生成加密数据;
混淆数据生成单元,用于将所述第一随机字符串、所述加密数据以及所述加密数据的数据长度,作为所述头部混淆数据;
所述加密模块包括:
第一添加单元,用于将第一随机字符串添加于所述小程序包体数据的头部,得到第一中间数据;
第二添加单元,用于将所述加密数据添加于所述第一中间数据的头部,得到第二中间数据;
加密单元,将所述加密数据的数据长度填充于定长字段内,并将所述定长字段添加于所述第一中间数据的头部,生成所述小程序加密包。
12.一种小程序包的解密部署装置,其特征在于,包括:
加密包获取模块,用于获取客户端工具上传的小程序加密包,所述小程序加密包中包括:小程序包体数据和位于小程序包体数据头部的头部混淆数据;
解密模块,用于通过与所述客户端工具约定的至少一个秘钥以及解密处理算法,从所述小程序加密包中提取所述小程序包体数据;其中,所述秘钥包括数据加密秘钥和签名加密秘钥;
部署模块,用于根据所述小程序包体数据,进行小程序部署;
其中,头部混淆数据的生成过程,包括:
生成第一随机字符串,并根据所述第一随机字符串的长度、小程序包体数据的数据长度以及数据加密秘钥,生成加密数据;
将所述第一随机字符串、所述加密数据以及所述加密数据的数据长度,作为所述头部混淆数据;
所述小程序加密包的生成过程,包括:
将第一随机字符串添加于所述小程序包体数据的头部,得到第一中间数据;
将所述加密数据添加于所述第一中间数据的头部,得到第二中间数据;
将所述加密数据的数据长度填充于定长字段内,并将所述定长字段添加于所述第一中间数据的头部,生成所述小程序加密包。
13.根据权利要求12所述的装置,其特征在于,所述解密模块包括:
解包单元,用于对所述小程序包进行解包处理,从解包结果数据的头部获取定长字段,并根据所述定长字段,获取加密数据的数据长度;
读取单元,用于根据加密数据的数据长度,从解包结果数据中读取加密数据,并使用数据解密秘钥对所述加密数据进行解密处理,得到原始数据;
提取单元,用于从所述原始数据中提取出标准签名串、第一随机字符串的字符串长度,以及小程序包体数据的数据长度;
验证单元,用于在通过签名解密秘钥验证所述标准签名串为合法签名时,根据所述字符串长度和所述小程序包体数据的数据长度,从解包结果数据中提取小程序包体数据。
14.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-6中任一项所述的小程序包的加密上传方法。
15.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求7-10中任一项所述的小程序包的解密部署方法。
16.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1-6中任一项所述的小程序包的加密上传方法。
17.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求7-10中任一项所述的小程序包的解密部署方法。
CN201911257866.XA 2019-12-10 2019-12-10 小程序包的加密上传和解密部署方法、装置、设备和介质 Active CN111049897B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911257866.XA CN111049897B (zh) 2019-12-10 2019-12-10 小程序包的加密上传和解密部署方法、装置、设备和介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911257866.XA CN111049897B (zh) 2019-12-10 2019-12-10 小程序包的加密上传和解密部署方法、装置、设备和介质

Publications (2)

Publication Number Publication Date
CN111049897A CN111049897A (zh) 2020-04-21
CN111049897B true CN111049897B (zh) 2023-02-17

Family

ID=70235414

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911257866.XA Active CN111049897B (zh) 2019-12-10 2019-12-10 小程序包的加密上传和解密部署方法、装置、设备和介质

Country Status (1)

Country Link
CN (1) CN111049897B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111708990A (zh) * 2020-05-15 2020-09-25 支付宝(杭州)信息技术有限公司 小程序启动方法、签名方法、装置、服务器及介质
CN112016104B (zh) * 2020-07-14 2024-04-23 北京淇瑀信息科技有限公司 一种金融敏感数据的加密方法、装置和***
CN112559980B (zh) * 2020-11-24 2023-05-05 深圳凡泰极客科技有限责任公司 一种可内嵌众多任意app的小程序运行时
CN112764801A (zh) * 2021-01-19 2021-05-07 浪潮金融信息技术有限公司 一种自助终端的软件部署与版本管控的***、方法及介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103544414B (zh) * 2013-10-25 2015-08-19 江苏通付盾信息科技有限公司 一种Android***应用的深度代码混淆方法
CN105701410A (zh) * 2015-12-31 2016-06-22 华为技术有限公司 一种获得源代码中信息的方法、装置及***
CN106034119A (zh) * 2015-03-16 2016-10-19 阿里巴巴集团控股有限公司 应用安装包的加密混淆方法及装置
CN106326693A (zh) * 2016-08-18 2017-01-11 广州优视网络科技有限公司 应用程序的代码混淆方法及装置
CN107122629A (zh) * 2017-04-19 2017-09-01 山东省计算中心(国家超级计算济南中心) 一种基于随机混淆的Android软件协同加固方法
CN108769027A (zh) * 2018-05-31 2018-11-06 深圳壹账通智能科技有限公司 安全通信方法、装置、移动终端和存储介质
CN109241707A (zh) * 2018-08-09 2019-01-18 北京邮电大学 应用程序的混淆方法、装置和服务器
CN109858203A (zh) * 2018-12-21 2019-06-07 厦门市美亚柏科信息股份有限公司 一种Android平台应用的安全防护方法、装置及存储介质

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070217603A1 (en) * 2006-03-15 2007-09-20 Terayon Communication Systems, Inc. Decryption key reuse in encrypted digital data stream distribution systems
CN106161179B (zh) * 2015-03-26 2019-12-20 中兴通讯股份有限公司 一种基于网页的实时通信的媒体处理方法与装置
CN108259479B (zh) * 2017-12-28 2021-05-11 广州启生信息技术有限公司 业务数据处理方法、客户端与计算机可读存储介质
CN108197439B (zh) * 2018-01-04 2020-05-08 武汉斗鱼网络科技有限公司 一种文件加密方法、装置及服务器
CN108989325A (zh) * 2018-08-03 2018-12-11 华数传媒网络有限公司 加密通信方法、装置及***
CN109992935B (zh) * 2019-03-15 2021-05-25 同盾控股有限公司 一种源代码保护方法及装置
CN110225059A (zh) * 2019-06-26 2019-09-10 南京奥拓电子科技有限公司 一种基于ZigBee的银行机器人安全传输方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103544414B (zh) * 2013-10-25 2015-08-19 江苏通付盾信息科技有限公司 一种Android***应用的深度代码混淆方法
CN106034119A (zh) * 2015-03-16 2016-10-19 阿里巴巴集团控股有限公司 应用安装包的加密混淆方法及装置
CN105701410A (zh) * 2015-12-31 2016-06-22 华为技术有限公司 一种获得源代码中信息的方法、装置及***
CN106326693A (zh) * 2016-08-18 2017-01-11 广州优视网络科技有限公司 应用程序的代码混淆方法及装置
CN107122629A (zh) * 2017-04-19 2017-09-01 山东省计算中心(国家超级计算济南中心) 一种基于随机混淆的Android软件协同加固方法
CN108769027A (zh) * 2018-05-31 2018-11-06 深圳壹账通智能科技有限公司 安全通信方法、装置、移动终端和存储介质
CN109241707A (zh) * 2018-08-09 2019-01-18 北京邮电大学 应用程序的混淆方法、装置和服务器
CN109858203A (zh) * 2018-12-21 2019-06-07 厦门市美亚柏科信息股份有限公司 一种Android平台应用的安全防护方法、装置及存储介质

Also Published As

Publication number Publication date
CN111049897A (zh) 2020-04-21

Similar Documents

Publication Publication Date Title
CN111049897B (zh) 小程序包的加密上传和解密部署方法、装置、设备和介质
JP6616471B2 (ja) 確率的処理
US11102182B2 (en) Systems and methods for dynamically and randomly encrypting and decrypting data
CN109429222B (zh) 一种对无线网络设备升级程序及通讯数据加密的方法
CN106687980B (zh) 管理程序和虚拟机保护
CN103136458B (zh) 一种Linux操作***动态库代码保护方法及其装置
CN109284585B (zh) 一种脚本加密方法、脚本解密运行方法和相关装置
CN105320535A (zh) 一种安装包的校验方法、客户端、服务器及***
KR101695639B1 (ko) 클라우드 기반의 애플리케이션 보안 서비스 제공 방법 및 시스템
WO2023029447A1 (zh) 模型保护方法、装置、设备、***以及存储介质
CN112564887A (zh) 密钥保护处理方法、装置、设备和存储介质
CN103853943A (zh) 程序保护方法及装置
CN115795513A (zh) 文件加密和文件解密方法、装置以及设备
US8918653B2 (en) Protection of interpreted source code in virtual appliances
CN114363088B (zh) 用于请求数据的方法和装置
CN105404470B (zh) 数据存储方法及安全装置、数据存储***
Graf et al. Checking applications using security APIs with JOANA
CN110932853B (zh) 一种基于可信模块的密钥管理装置和密钥管理方法
CN117201120A (zh) 一种信息加密方法、装置、计算机设备及存储介质
CN111400771A (zh) 目标分区的校验方法及装置、存储介质、计算机设备
CN115828228A (zh) 一种验证内存马检测能力的方法、装置及电子设备
CN115883078A (zh) 文件加密方法、文件解密方法、装置、设备及存储介质
CN105653953B (zh) 一种病毒查杀方法及装置
CN112654986A (zh) 启用软件分布
CN113591040B (zh) 加密方法及其装置、解密方法及其装置、电子设备和介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant