CN109977662B - 基于组合公钥的应用程序处理方法、装置、终端及存储介质 - Google Patents

基于组合公钥的应用程序处理方法、装置、终端及存储介质 Download PDF

Info

Publication number
CN109977662B
CN109977662B CN201910156946.XA CN201910156946A CN109977662B CN 109977662 B CN109977662 B CN 109977662B CN 201910156946 A CN201910156946 A CN 201910156946A CN 109977662 B CN109977662 B CN 109977662B
Authority
CN
China
Prior art keywords
signature information
developer
application program
application
public key
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
CN201910156946.XA
Other languages
English (en)
Other versions
CN109977662A (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.)
Jinshang Bochuang Beijing Technology Co ltd
Original Assignee
Jinshang Bochuang Beijing 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 Jinshang Bochuang Beijing Technology Co ltd filed Critical Jinshang Bochuang Beijing Technology Co ltd
Priority to CN201910156946.XA priority Critical patent/CN109977662B/zh
Publication of CN109977662A publication Critical patent/CN109977662A/zh
Application granted granted Critical
Publication of CN109977662B publication Critical patent/CN109977662B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability

Abstract

本发明涉及信息安全技术领域,公开了一种应用程序的处理方法、装置、终端及存储介质,解决了现有技术中智能终端安装应用程序时,无法保证应用程序的安全合法性问题。所述方法包括:当接收到应用程序的安装指令时,提取所述应用程序中的数字签名信息,所述数字签名信息是由签名参数对所述应用程序对应的可执行代码文件进行的数字签名;利用验证参数对所述数字签名信息进行验证,所述验证参数与所述签名参数相关联;当所述数字签名信息验证通过时,安装所述应用程序。本发明实施例适用于应用程序的安装过程。

Description

基于组合公钥的应用程序处理方法、装置、终端及存储介质
技术领域
本发明涉及信息安全技术领域,具体地,涉及一种基于组合公钥的应用程序处理方法、装置、终端及存储介质。
背景技术
目前智能终端在安装应用程序的时候,会接收到系统发出的是否授权该应用程序访问用户敏感数据(例如,短消息内容、通讯录内容等)的通知,用户只需要做出是或否的选择。但是由于恶意应用程序层出不穷,不能保证待安装的应用程序的开发者的合法性,若是应用程序遭到恶意攻击被篡改,则会给用户带来安全问题。
发明内容
本发明的目的是提供一种基于组合公钥的应用程序处理方法、装置、终端及存储介质,解决了现有技术中智能终端安装应用程序时,无法保证应用程序的安全合法性问题,通过对应用程序中的可执行代码文件进行数字签名,并在安装该应用程序时进行合法性验证,保证了应用程序的安全性,提高智能终端的安全机制。
为了实现上述目的,本发明提供一种应用程序的处理方法,所述方法包括:当接收到应用程序的安装指令时,提取所述应用程序中的数字签名信息,所述数字签名信息是由签名参数对所述应用程序对应的可执行代码文件进行的数字签名;利用验证参数对所述数字签名信息进行验证,所述验证参数与所述签名参数相关联;当所述数字签名信息验证通过时,安装所述应用程序。
进一步地,在所述当接收到应用程序的安装指令时,提取所述应用程序中的数字签名信息之前,所述方法还包括:发送用于申请验证参数的请求;接收所述验证参数。
进一步地,所述验证参数为公钥矩阵,所述签名参数为标识私钥,所述公钥矩阵与对所述应用程序对应的可执行代码文件进行数字签名所使用的标识私钥相关联。
进一步地,所述利用验证参数对所述数字签名信息进行验证包括:获取所述应用程序中的开发者标识;根据所述公钥矩阵与所述开发者标识,得到开发者标识公钥;利用所述开发者标识公钥对开发者签名信息进行验证,其中,所述开发者签名信息是由开发者标识私钥对所述应用程序对应的可执行代码文件进行的数字签名;当所述开发者签名信息验证通过时,确定所述数字签名信息验证通过;当所述开发者签名信息验证未通过时,确定所述数字签名信息验证未通过。
进一步地,所述利用验证参数对所述数字签名信息进行验证包括:获取所述应用程序中的开发者标识和应用商店标识;根据所述公钥矩阵、开发者标识和应用商店标识,分别得到开发者标识公钥和应用商店标识公钥;利用所述开发者标识公钥对开发者签名信息进行验证,以及利用所述应用商店标识公钥对应用商店签名信息进行验证,其中,所述开发者签名信息是由开发者标识私钥对所述应用程序对应的可执行代码文件进行的数字签名,所述应用商店签名信息是由应用商店标识私钥对所述应用程序对应的可执行代码文件进行的数字签名;当所述开发者签名信息与所述应用商店签名信息验证均通过时,确定所述数字签名信息验证通过;当所述开发者签名信息与所述应用商店签名信息中有任意一者验证未通过时,确定所述数字签名信息验证未通过。
进一步地,所述利用验证参数对所述数字签名信息进行验证包括:获取所述应用程序中的开发者标识和应用商店标识;根据所述公钥矩阵、开发者标识和应用商店标识,分别得到开发者标识公钥和应用商店标识公钥;利用所述应用商店标识公钥对应用商店签名信息进行验证,其中,所述应用商店签名信息包括第一签名信息和第二签名信息,所述第一签名信息是由应用商店标识私钥对所述应用程序对应的可执行代码文件进行的数字签名,所述第二签名信息是由所述应用商店标识私钥对开发者签名信息进行的数字签名,所述开发者签名信息是由开发者标识私钥对所述应用程序对应的可执行代码文件进行的数字签名;当所述应用商店签名信息中的所述第一签名信息和所述第二签名信息验证均通过时,利用所述开发者标识公钥对开发者签名信息进行验证;当所述开发者签名信息验证通过时,确定所述数字签名信息验证通过;当所述开发者签名信息验证未通过时,确定所述数字签名信息验证未通过;当所述应用商店签名信息中的所述第一签名信息和所述第二签名信息中有任意一者验证未通过时,确定所述数字签名信息验证未通过。
进一步地,在所述利用验证参数对所述数字签名信息进行验证之后,所述方法还包括:当所述数字签名信息验证未通过时,禁止安装所述应用程序。
进一步地,在所述安装所述应用程序之后,所述方法还包括:当接收到所述应用程序的运行指令时,提取所述应用程序中的数字签名信息;利用验证参数对所述数字签名信息进行验证;当所述数字签名信息验证通过时,运行所述应用程序;当所述数字签名信息验证未通过时,禁止运行所述应用程序。
相应的,本发明实施例还提供一种应用程序的处理装置,包括:接收单元,用于接收应用程序的安装指令;提取单元,用于当所述接收单元接收到应用程序的安装指令时,提取所述应用程序中的数字签名信息,所述数字签名信息是由签名参数对所述应用程序对应的可执行代码文件进行的数字签名;验证单元,用于利用验证参数对所述数字签名信息进行验证,所述验证参数与所述签名参数相关联;安装单元,用于当所述数字签名信息验证通过时,安装所述应用程序。
进一步地,所述装置还包括:发送单元,用于发送用于申请验证参数的请求;所述接收单元还用于接收所述验证参数。
进一步地,所述验证参数为公钥矩阵,所述签名参数为标识私钥,所述公钥矩阵与对所述应用程序对应的可执行代码文件进行数字签名所使用的标识私钥相关联。
进一步地,所述验证单元还用于获取所述应用程序中的开发者标识;根据所述公钥矩阵与所述开发者标识,得到开发者标识公钥;利用所述开发者标识公钥对开发者签名信息进行验证,其中,所述开发者签名信息是由开发者标识私钥对所述应用程序对应的可执行代码文件进行的数字签名;当所述开发者签名信息验证通过时,确定所述数字签名信息验证通过;当所述开发者签名信息验证未通过时,确定所述数字签名信息验证未通过。
进一步地,所述验证单元还用于获取所述应用程序中的开发者标识和应用商店标识;根据所述公钥矩阵、开发者标识和应用商店标识,分别得到开发者标识公钥和应用商店标识公钥;利用所述开发者标识公钥对开发者签名信息进行验证,以及利用所述应用商店标识公钥对应用商店签名信息进行验证,其中,所述开发者签名信息是由开发者标识私钥对所述应用程序对应的可执行代码文件进行的数字签名,所述应用商店签名信息是由应用商店标识私钥对所述应用程序对应的可执行代码文件进行的数字签名;当所述开发者签名信息与所述应用商店签名信息验证均通过时,确定所述数字签名信息验证通过;当所述开发者签名信息与所述应用商店签名信息中有任意一者验证未通过时,确定所述数字签名信息验证未通过。
进一步地,所述验证单元还用于获取所述应用程序中的开发者标识和应用商店标识;根据所述公钥矩阵、开发者标识和应用商店标识,分别得到开发者标识公钥和应用商店标识公钥;利用所述应用商店标识公钥对应用商店签名信息进行验证,其中,所述应用商店签名信息包括第一签名信息和第二签名信息,所述第一签名信息是由应用商店标识私钥对所述应用程序对应的可执行代码文件进行的数字签名,所述第二签名信息是由所述应用商店标识私钥对开发者签名信息进行的数字签名,所述开发者签名信息是由开发者标识私钥对所述应用程序对应的可执行代码文件进行的数字签名;当所述应用商店签名信息中的所述第一签名信息和所述第二签名信息验证均通过时,利用所述开发者标识公钥对开发者签名信息进行验证;当所述开发者签名信息验证通过时,确定所述数字签名信息验证通过;当所述开发者签名信息验证未通过时,确定所述数字签名信息验证未通过;当所述应用商店签名信息中的所述第一签名信息和所述第二签名信息中有任意一者验证未通过时,确定所述数字签名信息验证未通过。
进一步地,所述装置还包括:运行处理单元,用于当接收到所述应用程序的运行指令时,提取所述应用程序中的数字签名信息;利用验证参数对所述数字签名信息进行验证;当所述数字签名信息验证通过时,运行所述应用程序;当所述数字签名信息验证未通过时,禁止运行所述应用程序。
相应的,本发明实施例还提供一种终端,所述终端用于执行如上所述的应用程序的处理方法。
相应的,本发明实施例还提供一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行如上所述的应用程序的处理方法。
通过上述技术方案,对待安装的应用程序中的数字签名信息进行验证,当所述数字签名信息验证通过时,则安装所述应用程序。本发明实施例解决了现有技术中智能终端安装应用程序时,无法保证应用程序的安全合法性问题,通过对应用程序中的可执行代码文件进行数字签名,并在安装该应用程序时进行合法性验证,保证了应用程序的安全性,提高智能终端的安全机制。
本发明的其它特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本发明的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明,但并不构成对本发明的限制。在附图中:
图1是本发明实施例提供的一种应用程序的处理方法的流程示意图;
图2是本发明实施例提供的应用程序的处理方法的架构图;
图3是本发明实施例提供的密钥的生成与分发的过程示意图;
图4是本发明实施例提供的密钥的生成与分发的流程示意图;
图5是本发明实施例提供的开发者进行数字签名的流程示意图;
图6是本发明实施例提供的应用商店对开发者上传的应用程序处理的流程示意图;
图7是本发明实施例提供的另一种应用商店对开发者上传的应用程序处理的流程示意图;
图8是本发明实施例提供的又一种应用商店对开发者上传的应用程序处理的流程示意图;
图9是本发明实施例提供的智能终端安装应用程序时,对数字签名信息的处理流程示意图;
图10是本发明实施例提供的另一种智能终端安装应用程序时,对数字签名信息的处理流程示意图;
图11是本发明实施例提供的又一种智能终端安装应用程序时,对数字签名信息的处理流程示意图;
图12是本发明实施例提供的一种应用程序的处理装置的结构示意图;
图13是本发明实施例提供的另一种应用程序的处理装置的结构示意图;
图14是本发明实施例提供的又一种应用程序的处理装置的结构示意图。
具体实施方式
以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
图1是本发明实施例提供的一种应用程序的处理方法的流程示意图。如图1所示,所述方法应用于智能终端,包括如下步骤:
步骤101,当接收到应用程序的安装指令时,提取所述应用程序中的数字签名信息,所述数字签名信息是由签名参数对所述应用程序对应的可执行代码文件进行的数字签名;
步骤102,利用验证参数对所述数字签名信息进行验证,所述验证参数与所述签名参数相关联;
步骤103,当所述数字签名信息验证通过时,安装所述应用程序。
当智能终端从应用商店下载应用程序之后,安装该应用程序时需要进行验证,即当接收到该应用程序的安装指令时,提取所述应用程序中的数字签名信息。其中,所述数字签名信息是由签名参数对所述应用程序对应的可执行代码文件进行的数字签名。所述应用程序中至少包括可执行代码文件、数字签名信息以及与签名参数相关联的标识。
智能终端在安装所述应用程序之前,利用与所述签名参数相关联的验证参数对所述数字签名进行验证,当验证通过之后,则安装所述应用程序。通过本发明实施例解决了现有技术中在智能终端安装应用程序时,无法保证应用程序的安全合法性问题,通过对应用程序中的可执行代码文件进行数字签名,并在安装该应用程序时可离线进行合法性验证,保证了应用程序的安全性,提高智能终端的安全机制,消除网络环境下病毒、恶意代码和Rootkit等带来的安全问题以及管理问题。
在本发明实施例中,数字签名信息是由CPK组合公钥体制提供的。CPK是基于标识的公钥体制,公钥由标识通过Hash变换和矩阵的组合运算而得到。其中,在椭圆曲线上,G是基点,如果任意整数a是私钥,那么aG=A,A是对应于a的公钥。设:标识是Alice,那么Alice的公私钥分别是:标识通过Hash变换,变为一串随机数序列,将随机数序列当作矩阵的坐标,将32个坐标上的变量分别累加得公、私钥。如:
Figure GDA0002726392640000081
(大写,斜体,表示公钥)
Figure GDA0002726392640000082
(小写,斜体,表示私钥)
密钥管理服务器首先根据上述的CPK组合公钥体制生产私钥矩阵和公钥矩阵。所以在实体设备获取到与私钥矩阵对应的公钥矩阵,以及某一标识之后,就可以计算出该标识的公钥。而标识私钥,则由密钥管理服务器通过私钥矩阵以及标识得到。
在本发明实施例中,即将安装于智能终端的应用程序需要经过开发者、或开发者与应用商店的数字签名,从而在智能终端从应用商店下载应用程序之后,安装所述应用程序时进行数字签名信息的验证。在开发者、或开发者与应用商店对应用程序进行数字签名时,分别使用各自的标识私钥对应用程序进行签名,即开发者标识私钥和应用商店标识私钥。所述开发者标识私钥和应用商店标识私钥分别是通过其对应的标识与私钥矩阵得到,因此,当智能终端通过与所述私钥矩阵对应的公钥矩阵以及开发者标识、应用商店标识,即可得到开发者标识公钥和应用商店标识公钥。
在本发明的一种实施方式中,所述智能终端在安装应用程序之前,需要向密钥管理服务器申请公钥矩阵,从而在获取到标识之后,可以通过公钥矩阵与标识得到该标识的标识公钥,并进行数字签名信息的验证。因此,在接收到应用程序的安装指令,提取所述应用程序中的数字签名信息之前,所述智能终端需要向密钥管理服务器申请验证参数的请求,即申请公钥矩阵的请求。当密钥管理服务器接收到智能终端的公钥矩阵的请求后,将公钥矩阵发送给所述智能终端。
在利用公钥矩阵对所述数字签名信息进行验证时,由于不同的私钥对所述应用程序对应的可执行代码文件进行数字签名,从而得到的数字签名信息就会有所不同,因此在对所述数字签名信息进行验证时,就会存在以下情况:
一种是当利用开发者标识私钥对所述应用程序对应的可执行代码文件进行数字签名得到的开发者签名信息之后,所述智能终端从应用商店将带有经过开发者标识私钥签名的开发者签名信息的应用程序下载时,则所述智能终端将利用开发者标识公钥对开发者签名信息进行验证。
第二种是当利用开发者标识私钥对所述应用程序对应的可执行代码文件进行数字签名之后,将带有经过开发者标识私钥签名的开发者签名信息的应用程序上传至应用商店,应用商店利用应用商店标识私钥对所述应用程序对应的可执行代码文件进行数字签名,从而得到利用开发者标识私钥以及应用商店标识私钥对所述可执行代码文件进行数字签名得到的开发者签名信息以及应用商店签名信息,智能终端从应用商店下载所述应用程序后,则需要利用开发者标识公钥对开发者签名信息进行验证,以及利用应用商店标识公钥对应用商店签名信息进行验证。
第三种是当利用开发者标识私钥对所述应用程序对应的可执行代码文件进行数字签名得到开发者签名信息之后,将带有开发者签名信息的应用程序上传至应用商店,应用商店利用应用商店标识私钥对所述应用程序对应的可执行代码文件以及开发者签名信息进行数字签名,从而得到开发者签名信息以及应用商店签名信息。智能终端从应用商店下载所述应用程序后,则需要利用应用商店标识公钥对应用商店签名信息进行验证,验证通过后,再利用所述开发者标识公钥对开发者签名信息进行验证。
具体的,下面将详细描述上述三种情况。
首先,针对于第一种情况,仅有开发者标识私钥对可执行代码文件进行数字签名的时候,智能终端从所述应用程序中获取开发者标识,然后利用所述公钥矩阵与所述开发者标识,得到开发者标识公钥。之后,利用所述开发者标识公钥对开发者签名信息进行验证。
其中,所述开发者签名信息是由开发者标识私钥对所述应用程序对应的可执行代码文件进行的数字签名,例如,当开发者标识私钥为alice,开发者签名信息为开发者标识私钥对可执行代码文件h的数字签名,即SIGalice(h)=(s1,c1)=sign1,其中,SIG为签名函数,开发者签名信息sign1用于标记(s1,c1),且表示可执行代码文件的真实性证明,s1为签名码,c1为验证码。则所述应用程序在上传至应用商店的时候,所述应用程序中至少包括可执行代码文件、开发者标识以及开发者签名信息。
当智能终端从所述应用程序中获取到开发者标识Alice之后,利用公钥矩阵与所述开发者标识Alice,得到开发者标识公钥ALICE。然后利用所述开发者标识公钥ALICE对开发者签名信息进行验证,例如,VERALICE(h,s1)=c1’,得到可执行代码文件的真实性证明的验证码c1’,其中,VER为验证函数。当c1=c1’时,表明所述开发者签名信息验证通过,则确定所述数字签名信息验证通过,即可安装所述应用程序。而若c1≠c1’时,表明所述开发者签名信息验证未通过,则确定所述数字签名信息验证未通过,禁止安装所述应用程序。
针对于第二种情况,首先开发者在将其开发的应用程序上传应用商店之前,利用开发者标识私钥对所述应用程序中的可执行代码文件进行数字签名,例如,当开发者标识私钥为alice,开发者签名信息为开发者标识私钥对可执行代码文件h的数字签名,即SIGalice(h)=(s2,c2)=sign2,其中,SIG为签名函数,开发者签名信息sign2用于标记(s2,c2),且表示可执行代码文件的真实性证明,s2为签名码,c2为验证码。在开发者对可执行代码文件进行数字签名后,将其上传至应用商店。应用商店接收到该应用程序后,利用应用商店标识私钥对所述应用程序中的可执行代码文件进行数字签名,例如,当应用商店标识私钥为app,则应用商店签名信息为SIGapp(h)=(s3,c3)=sign3,应用商店签名信息sign3用于标记(s3,c3),且表示可执行代码文件的真实性证明,s3为签名码,c3为验证码。结合开发者签名信息与应用商店签名信息,则所述应用程序在应用商店展现的时候,其应用程序中至少包括可执行代码文件、开发者标识、开发者签名信息、应用商店标识以及应用商店签名信息。
当智能终端从应用商店下载所述应用程序之后,从所述应用程序中获取开发者标识和应用商店标识。由于所述智能终端预先申请了公钥矩阵,因此,通过所述公钥矩阵、开发者标识和应用商店标识,分别得到开发者标识公钥和应用商店标识公钥。即,利用公钥矩阵与所述开发者标识Alice,得到开发者标识公钥ALICE,利用公钥矩阵与应用商店标识App,得到应用商店标识公钥APP。然后,利用所述开发者标识公钥ALICE对开发者签名信息进行验证,以及利用所述应用商店标识公钥APP对应用商店签名信息进行验证。例如,VERALICE(h,s2)=c2’,得到可执行代码文件的真实性证明的验证码c2’,VERAPP(h,s3)=c3’,得到可执行代码文件的真实性证明的验证码c3’,其中,VER为验证函数。当c2=c2’且c3=c3’时,表明所述开发者签名信息验证通过,所述应用商店签名信息验证通过,则确定所述数字签名信息验证通过,即可安装所述应用程序。而若是c2≠c2’和/或c3≠c3’时,即所述开发者签名信息与所述应用商店签名信息中有任意一者验证未通过时,确定所述数字签名信息验证未通过,禁止安装所述应用程序。
针对于第三种情况,首先开发者在将其开发的应用程序上传应用商店之前,利用开发者标识私钥对所述应用程序中的可执行代码文件进行数字签名,例如,当开发者标识私钥为alice,开发者签名信息为开发者标识私钥对可执行代码文件h的数字签名,即SIGalice(h)=(s4,c4)=sign4,其中,SIG为签名函数,开发者签名信息sign4用于标记(s4,c4),且表示可执行代码文件的真实性证明,s4为签名码,c4为验证码。在开发者对可执行代码文件进行数字签名后,将其上传至应用商店。应用商店接收到该应用程序后,利用应用商店标识私钥对所述应用程序中的可执行代码文件进行数字签名,得到第一签名信息,例如,当应用商店标识私钥为app,则第一签名信息为SIGapp(h)=(s5,c5)=sign5,第一签名信息sign5用于标记(s5,c5),且表示可执行代码文件的真实性证明,s5为签名码,c5为验证码。然后,应用商店利用应用商店标识私钥对开发者签名信息sign4进行数字签名,得到第二签名信息,例如,第二签名信息为SIGapp(sign4)=(s6,c6)=sign6,第二签名信息sign6用于标记(s6,c6),且表示开发者签名信息的真实性证明,s6为签名码,c6为验证码。结合开发者签名信息、应用商店的第一签名信息和第二签名信息,则所述应用程序在应用商店展现的时候,其应用程序中至少包括可执行代码文件、开发者标识、开发者签名信息、应用商店标识以及第一签名信息和第二签名信息。
当智能终端从应用商店下载所述应用程序之后,从所述应用程序中获取开发者标识和应用商店标识。由于所述智能终端预先申请了公钥矩阵,因此,通过所述公钥矩阵、开发者标识和应用商店标识,分别得到开发者标识公钥和应用商店标识公钥。即,利用公钥矩阵与所述开发者标识Alice,得到开发者标识公钥ALICE,利用公钥矩阵与应用商店标识App,得到应用商店标识公钥APP。然后,利用所述应用商店标识公钥APP对应用商店的第一签名信息与第二签名信息进行验证。例如,VERAPP(sign4,s6)=c6’,得到开发者签名信息的真实性证明的验证码c6’,VERAPP(h,s5)=c5’,得到可执行代码文件的真实性证明的验证码c5’,其中,VER为验证函数。若是c5≠c5’和/或c6≠c6’时,即所述应用商店签名信息中的所述第一签名信息和所述第二签名信息中有任意一者验证未通过时,确定所述数字签名信息验证未通过,直接拒绝安装所述应用程序。当c5=c5’且c6=c6’时,表明所述应用商店签名信息中的所述第一签名信息和所述第二签名信息验证均通过,则可利用所述开发者标识公钥对开发者签名信息进行验证。例如,VERALICE(h,s4)=c4’,得到可执行代码文件的真实性证明的验证码c4’,当c4=c4’时,表明所述开发者签名信息验证通过,则确定所述数字签名信息验证通过,即可安装所述应用程序。而当c4≠c4’时,表明所述开发者签名信息验证未通过,确定所述数字签名信息验证未通过,禁止安装所述应用程序。
另外,在本发明的一种实施方式中,为了保证已安装于智能终端中的应用程序不被篡改,还可以在运行该应用程序时,进行数字签名的验证。具体验证过程,可参考上述安装应用程序的验证过程。
为了便于理解本发明实施例,如图2所示,下面从密钥的生成与分发、应用程序的数字签名以及应用程序的验签三个阶段描述本发明实施例。
如图3所示,密钥的生成与分发包括密钥管理服务器的密钥生成、开发者的密钥生成及分发、应用商店的密钥生成及分发,智能终端的密钥分发。如图4所示,密钥管理服务器根据CPK组合公钥体制生成本发明实施例所需的私钥矩阵和公钥矩阵。若开发者、应用商店需要申请密钥,则其需要填写密钥申请,包括标识(开发者标识、应用商店标识)、申请单位、申请理由等等,提交到密钥管理服务器。密钥管理服务器对密钥申请进行审核,审核通过后,利用标识和私钥矩阵生成对应的标识私钥,并使用密钥文件的软件形式或者U盾等硬件形式将开发者所需的开发者标识私钥发送给开发者,将应用商店所需的应用商店标识私钥和公钥矩阵发送给应用商店。若是审核未通过,则拒绝其申请,并继续接收其他申请人的密钥申请。另外,开发者、应用商店和智能终端还可以向密钥管理服务器申请下载公钥矩阵的申请,从而密钥管理服务器下发公钥矩阵。
对于应用程序的数字签名包括开发者标识私钥的数字签名以及应用商店标识私钥的数字签名。
如图5所示,开发者进行数字签名时包括如下步骤:
步骤501,开发者(公司或个人)进行应用程序开发,开发完成后生成应用程序的可执行代码文件,;
步骤502,开发者使用开发者的开发者标识私钥对应用程序中的可执行代码文件进行数字签名,例如,当开发者标识私钥为alice,开发者签名信息为开发者标识私钥对可执行代码文件classes.dex的数字签名,即SIGalice(classes.dex)=(s1,c1)=sign1,其中,SIG为签名函数,开发者签名信息sign1用于标记(s1,c1),且表示可执行代码文件的真实性证明,s1为签名码,c1为验证码。
步骤503,将开发者签名信息sign1存放在应用程序中的文件名为DEV.SIG的文件中,开发者标识Alice存放在文件名为DEV.ID的文件中,然后将添加了开发者签名信息和开发者标识的应用程序上传至应用商店。
当应用商店接收到开发者上传的应用程序之后,如图6所示,可执行下述步骤:
步骤601,应用商店从应用程序中的文件DEV.SIG获取开发者签名信息,从文件名为DEV.ID的文件获取开发者标识Alice;
步骤602,利用公钥矩阵和开发者标识Alice,得到开发者标识公钥;
步骤603,利用开发者标识公钥对开发者签名信息进行验证,例如,VERALICE(classes.dex,s1)=c1’,得到可执行代码文件的真实性证明的验证码c1’,其中,VER为验证函数;
步骤604,判断所述开发者签名信息是否验证通过,当c1=c1’时,表明所述开发者签名信息验证通过,执行步骤606,若c1≠c1’时,表明所述开发者签名信息验证未通过,执行步骤605;
步骤605,拒绝发布所述应用程序;
步骤606,应用商店使用安全检测工具验证所述应用程序中的可执行代码文件是否安全,例如,使用现有技术中的沙箱来验证可执行代码文件的安全性,当验证通过时,执行步骤607,验证未通过执行步骤605;
步骤607,在应用商店发布所述应用程序。
在本发明的一种实施方式中,当上述步骤606中验证通过时,还可利用应用商店标识私钥对所述应用程序中的可执行代码文件进行数字签名,如图7所示,包括下述步骤:
步骤608,利用应用商店标识私钥对所述应用程序中的可执行代码文件进行数字签名,例如,当应用商店标识私钥为app,则应用商店签名信息为SIGapp(classes.dex)=(s3,c3)=sign3,应用商店签名信息sign3用于标记(s3,c3),且表示可执行代码文件的真实性证明,s3为签名码,c3为验证码;
步骤609,将应用商店签名信息sign3存储在所述应用程序中的文件名为STORE.SIG的文件中,应用商店标识存放在所述应用程序中的文件名为SRORE.ID的文件中;
步骤610,将包括开发者签名信息和应用商店签名信息的应用程序发布在应用商店。
在本发明的另一种实施方式中,在执行步骤608利用应用商店标识私钥对所述应用程序中的可执行代码文件进行数字签名,得到第一签名信息之后,还可利用应用商店标识私钥对开发者签名信息分别进行数字签名,如图8所示,包括下述步骤:
步骤611,利用应用商店标识私钥对开发者签名信息进行数字签名,得到第二签名信息,例如,第二签名信息为SIGapp(sign1)=(s6,c6)=sign6,第二签名信息sign6用于标记(s6,c6),且表示开发者签名信息的真实性证明,s6为签名码,c6为验证码;
步骤612,将第一签名信息sign3与第二签名信息sign6存储在所述应用程序中的文件名为STORE.SIG的文件中,应用商店标识存放在所述应用程序中的文件名为SRORE.ID的文件中;
步骤613,将包括开发者签名信息和应用商店签名信息(包括第一签名信息和第二签名信息)的应用程序发布在应用商店。
在智能终端从应用商店下载所述应用程序之后,需要进行应用程序验签,包括安装时验签和运行时验签。
首先描述安装时的验签,如图9所示,对应于图6所示的所述应用程序中的数字签名信息仅包括开发者签名信息时,执行下述步骤:
步骤901,接收所述应用程序的安装指令;
步骤902,从所述应用程序中的文件DEV.SIG获取开发者签名信息,从文件名为DEV.ID的文件获取开发者标识Alice;
步骤903,利用公钥矩阵和开发者标识Alice,得到开发者标识公钥;
步骤904,利用开发者标识公钥对开发者签名信息进行验证,例如,VERALICE(classes.dex,s1)=c1’,得到可执行代码文件的真实性证明的验证码c1’,其中,VER为验证函数;
步骤905,判断所述开发者签名信息是否验证通过,当c1=c1’时,表明所述开发者签名信息验证通过,执行步骤906,若c1≠c1’时,表明所述开发者签名信息验证未通过,执行步骤907;
步骤906,安装所述应用程序;
步骤907,禁止安装所述应用程序。
为了保证已安装于智能终端中的应用程序不被篡改,用户可以选择是否每次运行所述应用程序时进行验签,当接收到运行所述应用程序的指令时,查找所述应用程序,并执行上述图9所示的步骤902-904,当验证通过时,则运行所述应用程序,当验证未通过时,则禁止运行所述应用程序。
另外,如图10所示,对应于图7所示的所述应用程序中的数字签名信息仅包括开发者签名信息和应用商店签名信息时,执行下述步骤:
步骤1001,接收所述应用程序的安装指令;
步骤1002,从所述应用程序中的文件DEV.SIG获取开发者签名信息,从文件名为DEV.ID的文件获取开发者标识Alice,从文件STORE.SIG获取应用商店签名信息,从文件名为SRORE.ID的文件中获取应用商店标识App;
步骤1003,利用公钥矩阵和开发者标识Alice,得到开发者标识公钥,利用公钥矩阵和应用商店标识App,得到应用商店标识公钥;
步骤1004,分别利用开发者标识公钥和应用商店标识公钥对开发者签名信息进行验证,例如,VERALICE(classes.dex,s1)=c1’,VERAPP(classes.dex,s3)=c3’,得到可执行代码文件的真实性证明的验证码c1’以及c3’;
步骤1005,判断所述开发者签名信息与所述应用商店签名信息是否均验证通过,当c1=c1’且c3=c3’时,表明所述开发者签名信息验证通过,所述应用商店签名信息验证通过,则执行步骤1006,若c1≠c1’和/或c3≠c3’时,即所述开发者签名信息与所述应用商店签名信息中有任意一者验证未通过时,执行步骤1007;
步骤1006,安装所述应用程序;
步骤1007,禁止安装所述应用程序。
同样的,为了保证已安装于智能终端中的应用程序不被篡改,用户可以选择是否每次运行所述应用程序时进行验签,当接收到运行所述应用程序的指令时,查找所述应用程序,并执行上述图10所示的步骤1002-1004,当验证通过时,则运行所述应用程序,当验证未通过时,则禁止运行所述应用程序。
另外,如图11所示,对应于图8所示的所述应用程序中的数字签名信息仅包括开发者签名信息和应用商店签名信息(包括第一签名信息和第二签名信息)时,执行下述步骤:
步骤1101,接收所述应用程序的安装指令;
步骤1102,从所述应用程序中的文件DEV.SIG获取开发者签名信息,从文件名为DEV.ID的文件获取开发者标识Alice,从文件STORE.SIG获取应用商店签名信息(包括第一签名信息sign3与第二签名信息sign6),从文件名为SRORE.ID的文件中获取应用商店标识App;
步骤1103,利用公钥矩阵和开发者标识Alice,得到开发者标识公钥,利用公钥矩阵和应用商店标识App,得到应用商店标识公钥;
步骤1104,利用应用商店标识公钥对第一签名信息和第二签名信息进行验签,例如,VERAPP(classes.dex,s3)=c3’,得到可执行代码文件的真实性证明的验证码c3’,VERAPP(sign1,s6)=c6’,得到开发者签名信息的真实性证明的验证码c6’;
步骤1105,判断所述第一签名信息与所述第二签名信息是否均验证通过,当c3=c3’且c6=c6’时,表明所述应用商店签名信息验证均通过,则执行步骤1107,若c3≠c3’和/或c6≠c6’时,表明所述应用商店签名信息验证未通过,执行步骤1106;
步骤1106,禁止安装所述应用程序;
步骤1107,利用开发者标识公钥对开发者签名信息进行验证,例如,VERALICE(classes.dex,s1)=c1’,得到可执行代码文件的真实性证明的验证码c1’;
步骤1108,判断所述开发者签名信息是否验证通过,当c1=c1’时,表明所述开发者签名信息验证通过,执行步骤1109,若c1≠c1’时,表明所述开发者签名信息验证未通过,执行步骤1106;
步骤1109,安装所述应用程序。
同样的,为了保证已安装于智能终端中的应用程序不被篡改,用户可以选择是否每次运行所述应用程序时进行验签,当接收到运行所述应用程序的指令时,查找所述应用程序,并执行上述图11所示的步骤1102-1104,当验证所述第一签名信息与所述第二签名信息均通过时,则继续执行步骤1107,当验证所述开发者签名信息通过时,则运行所述应用程序,当验证所述第一签名信息与所述第二签名信息均未通过时,或者所述开发者签名信息未通过时,则禁止运行所述应用程序。
通过本发明实施例,即可保证安装应用程序时,智能终端的安全性,而且在验证应用程序中的可执行代码文件的真实性时,由于智能终端已经预先获取了公钥矩阵,因此可离线进行数字签名信息的验证,消除网络环境下病毒、恶意代码和Rootkit等带来的安全问题以及管理问题。另外,在应用程序运行时,也可进行安全性验证,更进一步提高了智能终端的安全性。
相应的,图12是本发明实施例提供的一种应用程序的处理装置的结构示意图。如图12所示,所述装置包括:接收单元121,用于接收应用程序的安装指令;提取单元122,用于当所述接收单元接收到应用程序的安装指令时,提取所述应用程序中的数字签名信息,所述数字签名信息是由签名参数对所述应用程序对应的可执行代码文件进行的数字签名;验证单元123,用于利用验证参数对所述数字签名信息进行验证,所述验证参数与所述签名参数相关联;安装单元124,用于当所述数字签名信息验证通过时,安装所述应用程序。
进一步地,如图13所示,所述装置还包括:发送单元131,用于发送用于申请验证参数的请求;所述接收单元还用于接收所述验证参数。
进一步地,所述验证参数为公钥矩阵,所述公钥矩阵与对所述应用程序对应的可执行代码文件进行数字签名所使用的标识私钥相关联。
进一步地,所述验证单元还用于获取所述应用程序中的开发者标识;根据所述公钥矩阵与所述开发者标识,得到开发者标识公钥;利用所述开发者标识公钥对开发者签名信息进行验证,其中,所述开发者签名信息是由开发者标识私钥对所述应用程序对应的可执行代码文件进行的数字签名;当所述开发者签名信息验证通过时,确定所述数字签名信息验证通过;当所述开发者签名信息验证未通过时,确定所述数字签名信息验证未通过。
进一步地,所述验证单元还用于获取所述应用程序中的开发者标识和应用商店标识;根据所述公钥矩阵、开发者标识和应用商店标识,分别得到开发者标识公钥和应用商店标识公钥;利用所述开发者标识公钥对开发者签名信息进行验证,以及利用所述应用商店标识公钥对应用商店签名信息进行验证,其中,所述开发者签名信息是由开发者标识私钥对所述应用程序对应的可执行代码文件进行的数字签名,所述应用商店签名信息是由应用商店标识私钥对所述应用程序对应的可执行代码文件进行的数字签名;当所述开发者签名信息与所述应用商店签名信息验证均通过时,确定所述数字签名信息验证通过;当所述开发者签名信息与所述应用商店签名信息中有任意一者验证未通过时,确定所述数字签名信息验证未通过。
进一步地,所述验证单元还用于获取所述应用程序中的开发者标识和应用商店标识;根据所述公钥矩阵、开发者标识和应用商店标识,分别得到开发者标识公钥和应用商店标识公钥;利用所述应用商店标识公钥对应用商店签名信息进行验证,其中,所述应用商店签名信息包括第一签名信息和第二签名信息,所述第一签名信息是由应用商店标识私钥对所述应用程序对应的可执行代码文件进行的数字签名,所述第二签名信息是由所述应用商店标识私钥对开发者签名信息进行的数字签名,所述开发者签名信息是由开发者标识私钥对所述应用程序对应的可执行代码文件进行的数字签名;当所述应用商店签名信息中的所述第一签名信息和所述第二签名信息验证均通过时,利用所述开发者标识公钥对开发者签名信息进行验证;当所述开发者签名信息验证通过时,确定所述数字签名信息验证通过;当所述开发者签名信息验证未通过时,确定所述数字签名信息验证未通过;当所述应用商店签名信息中的所述第一签名信息和所述第二签名信息中有任意一者验证未通过时,确定所述数字签名信息验证未通过。
进一步地,如图14所示,所述装置还包括:运行处理单元141,用于当接收到所述应用程序的启动指令时,提取所述应用程序中的数字签名信息;利用验证参数对所述数字签名信息进行验证;当所述数字签名信息验证通过时,启动所述应用程序;当所述数字签名信息验证未通过时,禁止启动所述应用程序。
相应的,本发明实施例还提供一种终端,所述终端用于执行上述实施例述的应用程序的处理方法。
相应的,本发明实施例还提供一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行上述实施例所述的应用程序的处理方法。
以上结合附图详细描述了本发明实施例的可选实施方式,但是,本发明实施例并不限于上述实施方式中的具体细节,在本发明实施例的技术构思范围内,可以对本发明实施例的技术方案进行多种简单变型,这些简单变型均属于本发明实施例的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本发明实施例对各种可能的组合方式不再另行说明。
本领域技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得单片机、芯片或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
此外,本发明实施例的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明实施例的思想,其同样应当视为本发明实施例所公开的内容。

Claims (9)

1.一种基于组合公钥的应用程序处理方法,其特征在于,包括:
当接收到应用程序的安装指令时,提取所述应用程序中的数字签名信息,所述数字签名信息是由签名参数对所述应用程序对应的可执行代码文件进行的数字签名,所述签名参数为标识私钥,所述标识私钥包括开发者标识私钥和应用商店标识私钥;
利用验证参数对所述数字签名信息进行验证,所述验证参数与所述签名参数相关联;
当所述数字签名信息验证通过时,安装所述应用程序,
其中,在所述当接收到应用程序的安装指令时,提取所述应用程序中的数字签名信息之前,所述方法还包括:
发送用于申请所述验证参数的请求,所述验证参数为公钥矩阵,所述公钥矩阵与对所述应用程序对应的可执行代码文件进行数字签名所使用的标识私钥相关联;
接收所述验证参数;
其中,所述利用所述验证参数对所述数字签名信息进行验证包括:
利用所述应用商店标识公钥对应用商店签名信息进行验证,验证通过后,再利用所述开发者标识公钥对开发者签名信息进行验证,其中,所述应用商店签名信息包括第一签名信息和第二签名信息,所述第一签名信息是由应用商店标识私钥对所述应用程序对应的可执行代码文件进行的数字签名,所述第二签名信息是由所述应用商店标识私钥对开发者签名信息进行的数字签名,所述开发者签名信息是由开发者标识私钥对所述应用程序对应的可执行代码文件进行的数字签名。
2.根据权利要求1所述的方法,其特征在于,所述利用所述应用商店标识公钥对应用商店签名信息进行验证,验证通过后,再利用所述开发者标识公钥对开发者签名信息进行验证包括:
获取所述应用程序中的开发者标识和应用商店标识;
根据所述公钥矩阵、开发者标识和应用商店标识,分别得到开发者标识公钥和应用商店标识公钥;
利用所述应用商店标识公钥对应用商店签名信息进行验证;
当所述应用商店签名信息中的所述第一签名信息和所述第二签名信息验证均通过时,利用所述开发者标识公钥对开发者签名信息进行验证;
当所述开发者签名信息验证通过时,确定所述数字签名信息验证通过;
当所述开发者签名信息验证未通过时,确定所述数字签名信息验证未通过;
当所述应用商店签名信息中的所述第一签名信息和所述第二签名信息中有任意一者验证未通过时,确定所述数字签名信息验证未通过。
3.根据权利要求1所述的方法,其特征在于,在所述利用验证参数对所述数字签名信息进行验证之后,所述方法还包括:
当所述数字签名信息验证未通过时,禁止安装所述应用程序。
4.根据权利要求1所述的方法,其特征在于,在所述安装所述应用程序之后,所述方法还包括:
当接收到所述应用程序的运行指令时,提取所述应用程序中的数字签名信息;
利用验证参数对所述数字签名信息进行验证;
当所述数字签名信息验证通过时,运行所述应用程序;
当所述数字签名信息验证未通过时,禁止运行所述应用程序。
5.一种基于组合公钥的应用程序处理装置,其特征在于,包括:
接收单元,用于接收应用程序的安装指令;
提取单元,用于当所述接收单元接收到应用程序的安装指令时,提取所述应用程序中的数字签名信息,所述数字签名信息是由签名参数对所述应用程序对应的可执行代码文件进行的数字签名,所述签名参数为标识私钥,所述标识私钥包括开发者标识私钥和应用商店标识私钥;
验证单元,用于利用验证参数对所述数字签名信息进行验证,所述验证参数与所述签名参数相关联;
安装单元,用于当所述数字签名信息验证通过时,安装所述应用程序,
其中,所述装置还包括:
发送单元,用于发送用于申请所述验证参数的请求,所述验证参数为公钥矩阵,所述公钥矩阵与对所述应用程序对应的可执行代码文件进行数字签名所使用的标识私钥相关联;
所述接收单元还用于接收所述验证参数;
其中,所述验证单元还用于,
利用所述应用商店标识公钥对应用商店签名信息进行验证,验证通过后,再利用所述开发者标识公钥对开发者签名信息进行验证,其中,所述应用商店签名信息包括第一签名信息和第二签名信息,所述第一签名信息是由应用商店标识私钥对所述应用程序对应的可执行代码文件进行的数字签名,所述第二签名信息是由所述应用商店标识私钥对开发者签名信息进行的数字签名,所述开发者签名信息是由开发者标识私钥对所述应用程序对应的可执行代码文件进行的数字签名。
6.根据权利要求5所述的装置,其特征在于,所述验证单元还用于获取所述应用程序中的开发者标识和应用商店标识;根据所述公钥矩阵、开发者标识和应用商店标识,分别得到开发者标识公钥和应用商店标识公钥;利用所述应用商店标识公钥对应用商店签名信息进行验证;当所述应用商店签名信息中的所述第一签名信息和所述第二签名信息验证均通过时,利用所述开发者标识公钥对开发者签名信息进行验证;当所述开发者签名信息验证通过时,确定所述数字签名信息验证通过;当所述开发者签名信息验证未通过时,确定所述数字签名信息验证未通过;当所述应用商店签名信息中的所述第一签名信息和所述第二签名信息中有任意一者验证未通过时,确定所述数字签名信息验证未通过。
7.根据权利要求5所述的装置,其特征在于,所述装置还包括:
运行处理单元,用于当接收到所述应用程序的运行指令时,提取所述应用程序中的数字签名信息;利用验证参数对所述数字签名信息进行验证;当所述数字签名信息验证通过时,运行所述应用程序;当所述数字签名信息验证未通过时,禁止运行所述应用程序。
8.一种终端,其特征在于,所述终端用于执行所述权利要求1-4任一项所述的基于组合公钥的应用程序处理方法。
9.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行所述权利要求1-4中任一项所述的基于组合公钥的应用程序处理方法。
CN201910156946.XA 2019-03-01 2019-03-01 基于组合公钥的应用程序处理方法、装置、终端及存储介质 Active CN109977662B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910156946.XA CN109977662B (zh) 2019-03-01 2019-03-01 基于组合公钥的应用程序处理方法、装置、终端及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910156946.XA CN109977662B (zh) 2019-03-01 2019-03-01 基于组合公钥的应用程序处理方法、装置、终端及存储介质

Publications (2)

Publication Number Publication Date
CN109977662A CN109977662A (zh) 2019-07-05
CN109977662B true CN109977662B (zh) 2021-04-02

Family

ID=67077732

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910156946.XA Active CN109977662B (zh) 2019-03-01 2019-03-01 基于组合公钥的应用程序处理方法、装置、终端及存储介质

Country Status (1)

Country Link
CN (1) CN109977662B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113139197A (zh) * 2021-04-27 2021-07-20 上海淇玥信息技术有限公司 一种项目验签方法、装置和电子设备
CN113114705B (zh) * 2021-06-15 2021-09-21 杭州海康威视数字技术股份有限公司 可信可编排的视频物联网终端内生安全检测方法及装置
CN113259939B (zh) * 2021-07-07 2021-10-29 杭州天谷信息科技有限公司 一种基于电子签名的终端可信认证方法及其系统
CN113810198A (zh) * 2021-09-18 2021-12-17 深圳忆联信息系统有限公司 Ssd固件数字签名的方法、装置、计算机设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102024127A (zh) * 2010-11-17 2011-04-20 中国联合网络通信集团有限公司 应用软件控制平台、使用者终端、分发系统及方法
CN108777619A (zh) * 2018-05-08 2018-11-09 晋商博创(北京)科技有限公司 基于标识的cpk体制和密钥管理方法、装置、服务器及终端

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102546604B (zh) * 2011-12-22 2014-12-24 四川长虹电器股份有限公司 智能电视应用程序安全控制方法
KR20130100032A (ko) * 2012-02-27 2013-09-09 한국인터넷진흥원 코드 서명 기법을 이용한 스마트폰 어플리케이션 배포 방법
KR101740256B1 (ko) * 2012-11-26 2017-06-09 한국전자통신연구원 모바일 앱 무결성 보증 장치 및 방법
CN104331658A (zh) * 2014-11-14 2015-02-04 北京视博数字电视科技有限公司 一种智能终端应用程序的安装验证方法及系统
US10694330B2 (en) * 2016-12-22 2020-06-23 Metadata Solutions, Inc. Validating mobile applications for accessing regulated content
CN108881243B (zh) * 2018-06-26 2021-02-23 晋商博创(北京)科技有限公司 基于CPK的Linux操作系统登录认证方法、设备、终端及服务器

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102024127A (zh) * 2010-11-17 2011-04-20 中国联合网络通信集团有限公司 应用软件控制平台、使用者终端、分发系统及方法
CN108777619A (zh) * 2018-05-08 2018-11-09 晋商博创(北京)科技有限公司 基于标识的cpk体制和密钥管理方法、装置、服务器及终端

Also Published As

Publication number Publication date
CN109977662A (zh) 2019-07-05

Similar Documents

Publication Publication Date Title
CN109977662B (zh) 基于组合公钥的应用程序处理方法、装置、终端及存储介质
CN107615292B (zh) 用于管理需要高风险权限访问的应用程序包的安装的系统和方法
CN107743115B (zh) 一种终端应用的身份认证方法、装置和系统
CN110018840B (zh) 一种智能合约升级方法、装置、区块链节点设备及介质
CN110784466B (zh) 信息认证方法、装置和设备
CN103679005A (zh) 启用安全电子控制单元的开发模式的方法
EP3862899A1 (en) Information communication apparatus, authentication program for information communication apparatus, and authentication method
CN103677892A (zh) 在安全电子控制单元中启用特殊优先模式的授权方案
CN112165382B (zh) 软件授权方法、装置、授权服务端及终端设备
CN104751049A (zh) 一种应用程序安装方法及移动终端
KR102063033B1 (ko) 클라우드 서비스를 사용하는 사용자 단말기, 단말기의 보안 통합 관리 서버 및 단말기의 보안 통합 관리 방법
CN107682376B (zh) 风控数据交互方法及装置
CN109196507A (zh) 用于为设备的运行提供密码安全函数的方法和装置
CN113572619B (zh) 一种基于notary的容器云镜像可信实现方法及系统
CN112000933B (zh) 应用软件的激活方法、装置、电子设备及存储介质
KR101436404B1 (ko) 사용자 인증 장치 및 방법
CN116707758A (zh) 可信计算设备的认证方法、设备和服务器
CN115118504B (zh) 知识库更新方法、装置、电子设备及存储介质
CN113079023B (zh) 一种文件分发管理方法、装置以及相关设备
CN111953477A (zh) 终端设备及其标识令牌的生成方法和客户端的交互方法
CN112732676A (zh) 基于区块链的数据迁移方法、装置、设备及存储介质
CN110597557A (zh) 一种系统信息获取方法、终端及介质
CN117411644B (zh) 一种数字签名验证方法、装置、电子设备及存储介质
CN115329294B (zh) 电子合同的生成方法、装置、设备及存储介质
CN116691415B (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