CN102790678B - 一种认证方法及系统 - Google Patents

一种认证方法及系统 Download PDF

Info

Publication number
CN102790678B
CN102790678B CN201210240500.3A CN201210240500A CN102790678B CN 102790678 B CN102790678 B CN 102790678B CN 201210240500 A CN201210240500 A CN 201210240500A CN 102790678 B CN102790678 B CN 102790678B
Authority
CN
China
Prior art keywords
certificate
equipment
cipher key
intelligent cipher
interface equipment
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
CN201210240500.3A
Other languages
English (en)
Other versions
CN102790678A (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.)
CNTIC International Tendering Co.,Ltd.
Original Assignee
Feitian Technologies 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 Feitian Technologies Co Ltd filed Critical Feitian Technologies Co Ltd
Priority to CN201210240500.3A priority Critical patent/CN102790678B/zh
Publication of CN102790678A publication Critical patent/CN102790678A/zh
Application granted granted Critical
Publication of CN102790678B publication Critical patent/CN102790678B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明公开一种认证方法和系统,该方法包括:智能密钥设备接收到验证指令时对保存的接口设备证书进行验证,验证成功则判断保存的接口设备证书签发CA的公钥与信任公钥是否相同,是则进行内部认证,否则智能密钥设备和接口设备分别将接口设备证书签发CA的证书设为当前证书;接口设备根据当前证书检索上级CA证书,如果检索到则将上级CA证书发给智能密钥设备,并将当前证书更新为上级CA证书;智能密钥设备判断上级CA证书是否为当前证书的签发者证书,是则判断上级CA证书中的公钥与信任公钥是否一致,是则进行内部认证,否则用上级CA证书更新当前证书,通知接口设备继续检索当前证书的上级证书。由于证书链的参与提高了认证的安全性。

Description

一种认证方法及系统
技术领域
本发明属于信息安全领域,尤其涉及一种认证方法及系统。
背景技术
在各应用系统中,常常需要完成对主体的身份认证,以确定谁在使用系统,以便可以赋予主体何种操作权限。身份认证技术发展至今已经有了一套成熟的技术体系,其中,利用数字证书完成身份认证是其中最安全有效的一种技术手段。在现有技术中,设备之间的认证并无证书链的参与,不能明确设备是否是可信任的,安全性较低。
发明内容
本发明的目的是为了克服现有技术的不足,提供一种安全性较高的认证方法及系统。
本发明提供了一种认证方法;具体包括:
步骤A:当智能密钥设备接收到接口设备发送的接口设备证书和接口设备证书签发CA的公钥时进行保存,并给所述接口设备返回保存成功响应;
步骤B:所述接口设备接收到所述保存成功响应后,生成验证指令并将其发送给所述智能密钥设备;
步骤C:所述智能密钥设备接收到所述验证指令后,对所述接口设备证书进行验证,如验证成功则执行步骤D,如验证失败则给所述接口设备返回失败响应,结束;
步骤D:所述智能密钥设备判断所述接口设备证书签发CA的公钥与预置的信任公钥是否相同,是执行步骤I,否则将接口设备证书签发CA的证书设为当前证书,给所述接口设备返回失败响应,执行步骤E;
步骤E:所述接口设备接收到失败响应后,将所述接口设备证书签发CA的证书设为当前证书;
步骤F:所述接口设备根据当前证书检索上级CA证书,如果检索到则将所述上级CA证书发给所述智能密钥设备,并将当前证书更新为所述上级CA证书,执行步骤G,否则,给所述智能密钥设备返回失败响应,结束;
步骤G:所述智能密钥设备接收所述接口设备发送的上级CA证书,判断所述上级CA证书是否为当前证书的签发者证书,是则执行步骤H,否则给所述接口设备返回失败响应,结束;
步骤H:所述智能密钥设备判断所述上级CA证书中的公钥与预置的信任公钥是否一致,是则执行步骤I,否则用所述上级CA证书更新当前证书,给所述接口设备返回失败响应,返回步骤F;
步骤I:所述智能密钥设备从所述接口设备中获取第一随机数,根据所述第一随机数、智能密钥设备证书和接口设备证书生成第一加密数据,并将所述第一加密数据发送给所述接口设备进行验证;
步骤J:所述接口设备接收所述第一加密数据并对其进行验证,将验证结果返回给所述智能密钥设备;
步骤K:所述智能密钥设备接收所述接口设备返回的验证结果,并判断所述验证验证结果是否为成功响应,是则与所述接口设备进行通信,否则结束。
其中,所述步骤I-步骤K替换为:
步骤I’:所述智能密钥设备将第三随机数和智能密钥设备证书发送给所述接口设备;
步骤J’:所述接口设备接收所述第三随机数和智能密钥设备证书并生成认证指令,将所述认证指令发送给所述智能密钥设备;
步骤K’:所述智能密钥设备接收所述接口设备发送的认证指令,并对其进行解析,根据所述第三随机数、智能密钥设备证书和接口设备证书对解析结果进行验证,如验证成功则给所述接口设备返回成功响应,与所述接口设备进行通信,如验证失败则给所述接口设备返回失败响应,结束。
其中,所述认证方法还包括:
步骤I’:所述智能密钥设备将第三随机数和智能密钥设备证书发送给所述接口设备;
步骤J’:所述接口设备接收所述第三随机数和智能密钥设备证书并生成认证指令,将所述认证指令发送给所述智能密钥设备;
步骤K’:所述智能密钥设备接收所述接口设备发送的认证指令,并对其进行解析,根据所述第三随机数、智能密钥设备证书和接口设备证书对解析结果进行验证,如验证成功则给所述接口设备返回成功响应,与所述接口设备进行通信,如验证失败则给所述接口设备返回失败响应,结束。
其中,所述步骤C中对接口设备证书进行验证,具体包括:
步骤C1:所述智能密钥设备从所述接口设备证书中获取证书签名原文和证书签名值,使用所述接口设备证书签发CA的公钥对所述证书签名值进行解密,得到第一摘要值,使用预设摘要算法对所述证书签名原文进行计算,得到第二摘要值;
步骤C2:所述智能密钥设备判断所述第一摘要值与所述第二摘要值是否相同,是则验证成功,否则验证失败。
其中,所述接口设备根据当前证书检索上级CA证书,包括:
所述接口设备从当前证书中获取签发者字段,根据所述签发者字段检索上级CA证书。
其中,所述接口设备根据当前证书检索上级CA证书,还包括:
所述接口设备从当前证书中获取主体字段,将所述主体字段与所述签发者字段比对,如一致则停止检索,结束;如不一致,则继续检索,如检索到则获取所述上级CA证书,并将其发给所述智能密钥设备,将所述当前证书更新为所述上级CA证书,如未检索到则给智能密钥设备返回失败响应,结束。
其中,所述步骤G中判断所述上级CA证书是否为当前证书的签发者证书,包括:
步骤G1:所述智能密钥设备从所述上级CA证书中提取公钥,根据所述公钥验证当前证书的合法性,如合法则继续;如不合法则给所述接口设备返回失败响应,结束;和/或
步骤G1’:所述智能密钥设备从所述上级CA证书中提取主体字段,从所述当前证书提取签发者字段,比较二者是否一致,是则继续;否则给所述接口设备返回失败响应,结束。
其中,所述步骤I之前还包括:所述智能密钥设备接收所述接口设备发送的第一指令,将所述智能密钥设备证书发送给所述接口设备进行保存。
其中,所述步骤I中所述智能密钥设备从所述接口设备中获取第一随机数,包括:
所述智能密钥设备接收所述接口设备发送的第二指令,并对所述第二指令进行解析得到智能密钥设备证书标识、接口设备证书标识和所述第一随机数。
其中,所述步骤I中根据所述第一随机数、所述智能密钥设备证书、所述接口设备证书生成第一加密数据,包括:
步骤I21:所述智能密钥设备生成第二随机数,根据智能密钥设备证书公钥、所述第一随机数和第二随机数计算得到第一结果数值;
步骤I22:所述智能密钥设备使用智能密钥设备私钥根据预设的签名算法对所述第一结果数值进行签名计算,得到第一签名值;
步骤I23:所述智能密钥设备按照第一预设方法将所述第一签名值和第二随机数进行组合,得到第一原文数据;
步骤I24:所述智能密钥设备从与所述接口设备证书标识对应的当前证书中获取接口设备公钥,使用所述接口设备公钥根据预设算法对所述第一原文数据进行加密计算,得到第一加密数据。
其中,所述步骤I12和步骤I21之间包括:
所述智能密钥设备根据所述智能密钥设备证书标识和接口设备证书标识在其内部分别检索对应的智能密钥设备证书和接口设备证书,如检索到对应的证书则继续,如果没有检索到对应的证书,则给接口设备返回失败响应,结束。
其中,所述步骤J具体包括:
所述接口设备接收到第一加密数据,使用接口设备私钥对所述第一加密数据进行解密,解密成功得到第一解密数据,根据第一预设方法的逆方法对所述第一解密数据进行拆分,得到第一拆分值和第二拆分随机数;
所述接口设备使用所述第一随机数和智能密钥设备证书验证所述第一拆分值和第二拆分随机数是否正确,如果正确则给所述智能密钥设备返回验证成功响应,则与所述智能密钥设备进行通信;否则,给所述智能密钥设备返回验证失败响应,结束。
其中,所述接口设备使用所述第一随机数和智能密钥设备证书验证所述第一拆分值和第二拆分随机数是否对应,具体包括:
步骤S1:所述接口设备对所述智能密钥设备证书进行解析,得到智能密钥设备证书公钥;
步骤S2:所述接口设备使用所述智能密钥设备证书公钥对所述第一拆分值进行解密,解密成功得到第一解密值,执行步骤S3;解密失败则给所述智能密钥设备返回失败响应,结束;
步骤S3:所述接口设备根据所述智能密钥设备证书公钥、第二拆分随机数和第一随机数生成第一认证数据;
步骤S4:所述接口设备判断所述第一解密值与所述第一认证数据是否相同,是则给所述智能密钥设备返回成功响应,与所述智能密钥设备进行通信;否则,则给所述智能密钥设备返回失败响应,结束。
其中,所述步骤I’包括:
所述智能密钥设备接收所述接口设备发送的第一获取指令,将所述智能密钥设备证书发送给所述接口设备进行保存;
所述智能密钥设备接收所述接口设备发送的第二获取指令,将生成的所述第三随机数发送给所述接口设备进行保存。
其中,所述步骤J’包括:
步骤J’1:所述接口设备生成第四随机数;
步骤J’2:所述接口设备根据接口设备证书公钥、所述第三随机数和第四随机数生成第二结果数值;
步骤J’3:所述接口设备使用接口设备私钥对所述第二结果数值进行加密,生成第二加密值;
步骤J’4:所述接口设备用第一预设方法将所述第二加密值和第四随机数进行组合,得到第二原文数据;
步骤J’5:所述接口设备使用所述智能密钥设备证书中的智能密钥设备公钥对所述第二原文数据进行加密计算,得到第二加密数据;
步骤J’6:所述接口设备根据所述第二加密数据生成认证指令并将其发送给所述智能密钥设备。
其中,所述步骤K’具体包括:
步骤K’1:所述智能密钥设备接收所述认证指令并对其进行解析,得到第二加密数据、智能密钥设备证书标识、接口设备证书标识;
步骤K’2:所述智能密钥设备从与所述智能密钥设备证书中获取智能密钥设备私钥,并使用所述智能密钥设备私钥对所述第二加密数据进行解密,如解密成功,则得到第二解密值,执行步骤K’3,如解密失败,则向所述接口设备返回失败响应,结束;
步骤K’3:所述智能密钥设备根据所述第一预设方法的逆方法将所述第二解密值进行拆分,得到第二拆分值和第四拆分随机数;
步骤K’4:所述智能密钥设备对与所述接口设备证书标识对应的接口设备证书进行解析得到接口设备证书公钥,根据所述接口设备证书公钥、第四拆分随机数和第三随机数生成第二认证数据;
步骤K’5:所述智能密钥设备从所述接口设备证书中获取接口设备公钥,使用所述接口设备公钥对所述第二拆分值进行解密,如解密成功则得到第三解密值,执行步骤K’6,如解密失败则向接口设备返回失败响应,结束;
步骤K’6:所述智能密钥设备判断所述第三解密值与第二认证数据是否相同,是则向所述接口设备返回成功响应,与所述接口设备进行通信,否则给所述接口设备返回失败响应,结束。
其中,所述步骤K’1和步骤K’2之间包括:
所述智能密钥设备根据所述智能密钥设备证书标识和接口设备证书标识在其内部分别检索对应的智能密钥设备证书和接口设备证书,如检索到则继续,如果未检索到则向接口设备返回失败响应,结束。
其中,所述验证失败后还包括:
所述接口设备和智能密钥设备清空内部存储的随机数。
本发明有提供了一种认证系统,包括智能密钥设备和接口设备,所述智能密钥设备包括:
第一接收模块,用于接收所述接口设备发送的接口设备证书和接口设备证书签发CA的公钥、失败响应、成功响应、验证指令、上级CA证书、第一随机数、验证结果;
第一存储模块,用于存储智能密钥设备证书、所述第一接收模块接收到的接口设备证书和接口设备证书签发CA的公钥;
第一验证模块,用于在所述第一接收模块接收到验证指令后,对所述第一存储模块中存储的接口设备证书进行验证;
第一判断模块,包括:
第一判断单元,用于在所述第一验证模块验证成功后,判断所述第一存储模块中的接口设备证书签发CA的公钥与预置的信任公钥是否相同;
第二判断单元,用于判断所述第一接收模块接收到的上级CA证书是否为当前证书的签发者证书;
第三判断单元,用于在所述第二判断单元判断为是时,判断所述第一存储模块存储的上级CA证书中的公钥与预置的信任公钥是否一致;
第四判断单元,用于判断所述第一接收模块接收到的验证结果是否为验证成功响应;
第一设置模块,用于在所述第一判断单元判断为否时,将所述接口设备证书签发CA的证书设为当前证书;
第一更新模块,用于在所述第三判断模块判断为否时,将当前证书更新为所述第一接收模块接收到的上级CA证书;
第一生成模块,用于根据所述第一随机数、智能密钥设备证书和接口设备证书生成第一加密数据;
第一发送模块,用于向所述接口设备发送响应、所述第一加密数据;
所述接口设备包括:
第二接收模块,用于接收所述智能密钥设备发送的响应、所述第一加密数据;
第二生成模块,用于生成所述验证指令、所述第一随机数;
第二设置模块,用于将所述接口设备证书签发CA的证书设为当前证书;
检索模块,用于根据当前证书检索上级CA证书;
第二更新模块,用于将当前证书更新为所述检索模块检索到的上级CA证书;
第二验证模块,用于对所述第二接收模块接收到的第一加密数据进行验证;
第二发送模块,用于向所述第一接收模块发送所述接口设备证书和接口设备证书签发CA的公钥、失败响应、成功响应、验证指令、上级CA证书、所述第一随机数、所述第二验证模块的验证结果。
其中,包括:
所述第一生成模块还用于生成第三随机数;
所述第一发送模块还用于向接口设备发送所述第三随机数和智能密钥设备证书;
所述第二接收模块还用于接收所述第一发送模块发送的所述第三随机数和智能密钥设备证书;
所述第二生成模块还用于生成认证指令;
所述第二发送模块还用于向所述智能密钥设备发送认证指令;
第一接收模块还用接收所述第二发送模块发送的认证指令;
所述智能密钥设备还包括:解析模块,用于对所述第一接收模块接收到的认证指令进行解析;
所述第一验证模块还用于根据所述第三随机数、智能密钥设备证书和接口设备证书对所述解析模块的解析结果进行验证。
本发明的有益效果是:本实施例的技术方案由于证书链的参与,极大的提高了智能密钥设备与接口设备之间认证的安全性;且在智能密钥设备对接口设备验证成功之后或接口设备对智能密钥设备验证成功之后,验证方将产生的随机数安全、正确的传送给了被验证方,被验证方将随机数进行缓存,用于派生会话密钥,实现了安全传送共享秘密的操作。
附图说明
图1为本实施例一提供的一种认证方法流程图;
图2为本实施例二提供的接口设备证书的验证过程流程图;
图3为本实施例二提供的接口设备对智能密钥设备进行验证的方法流程图;
图4为本实施例二提供的智能密钥设备对接口设备进行验证的方法流程图;
图5为本发明实施例三提供的一种认证系统方框示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面通过具体的实施方式阐述本发明的具体实现过程,需要说明的是,以下实例仅是示意性的,并不能限制本发明。
对于进行认证的智能密钥设备和接口设备而言,可以由接口设备对接入的智能密钥设备进行合法性验证,确保进行操作的设备的合法性;也可以由智能密钥设备对接口设备进行验证,确保设备进入了一个可信的操作环境;在某些特定环境下,要求智能密钥设备与接口设备相互进行验证,验证分别合法后才能进行操作;本实施例中的接口设备可以为驱动、进程和必要的硬件等。
一方面,在接口设备使用之前,接口设备使用预设的算法生成一个非对称密钥对,用于身份认证;接口设备生成证书请求(包含有非对称密钥的公钥)并向其CA发起该请求,该CA颁发给接口设备一个合法的设备证书,设备证书中存有接口设备公钥;其中,该CA也有一个相匹配的公钥,如果该CA的公钥为“信任锚”,则该CA将CA证书和CA公钥发送给接口设备,此时,接口设备中存有接口设备证书、CA证书和CA公钥;如果该CA的公钥不是“信任锚”,即该CA还存在上一级的CA,如果该CA的上一级CA的公钥为“信任锚”,则该CA将CA的证书链发送给接口设备;如果上一级CA的公钥也不是“信任锚”,即还存在更上一级的CA,则以此类推直至推到其公钥为“信任锚”的CA,发送证书链的情况与上述相同;最后,接口设备中存有接口设备证书和与之相关的CA证书链,接口设备证书存储在证书文件中。
另一方面,在智能密钥设备使用之前,智能密钥设备使用预设的算法生成一个非对称密钥对,用于身份认证;智能密钥设备生成证书请求(包含有非对称密钥的公钥)并向其CA发起该请求,该CA颁发给智能密钥设备一个合法的设备证书,设备证书中存有智能密钥设备公钥;其中,该CA也有一个相匹配的公钥,如果该CA的公钥为“信任锚”,则该CA将其公钥作为信任公钥发送给智能密钥设备;如果该CA的公钥不是“信任锚”,即该CA还存在上一级的CA,如果该CA的上一级CA的公钥为“信任锚”,则该CA将其公钥作为信任公钥发送给智能密钥设备;在这种情况下,如果上一级CA的公钥也不是“信任锚”,即还存在更上一级的CA,则以此类推直至推到其公钥为“信任锚”的CA,发送信任公钥的情况与上述相同;最后,智能密钥设备中存有设备证书CA的信任公钥;智能密钥设备将设备证书存于证书文件中,将信任公钥存于公钥文件中。
实施例一
本实施例一提供一种认证方法,主要是智能密钥设备对与其连接的接口设备进行认证的具体实现过程;参见图1,包括如下步骤:
步骤A1:当智能密钥设备接收到接口设备发送的接口设备证书和接口设备证书签发CA的公钥时进行保存;
步骤A2:智能密钥设备给接口设备返回保存成功响应;
步骤B:接口设备接收到保存成功响应后,生成验证指令并将其发送给智能密钥设备;
步骤C:智能密钥设备接收到验证指令后,对保存的接口设备证书进行验证,如验证成功则执行步骤D,如验证失败则给接口设备返回失败响应,结束;
步骤D:智能密钥设备判断接口设备证书签发CA的公钥与预置的信任公钥是否相同,是执行步骤I1,否则将接口设备证书签发CA的证书设为当前证书,给接口设备返回失败响应,执行步骤E;
步骤E:接口设备接收到失败响应后,将接口设备证书签发CA的证书设为当前证书;
步骤F:接口设备根据当前证书检索上级CA证书,如果检索到则将上级CA证书发给智能密钥设备,并将当前证书更新为上级CA证书,执行步骤G,否则,给智能密钥设备返回失败响应,结束;
步骤G:智能密钥设备接收接口设备发送的上级CA证书,判断上级CA证书是否为当前证书的签发者证书,是则执行步骤H,否则给接口设备返回失败响应,结束;
步骤H:智能密钥设备判断上级CA证书中的公钥与预置的信任公钥是否一致,是则返回步骤I1,否则用上级CA证书更新当前证书,给接口设备返回失败响应,返回步骤F;
步骤I1:智能密钥设备从接口设备中获取第一随机数,根据第一随机数、智能密钥设备证书和接口设备证书生成第一加密数据;
步骤I2:智能密钥设备将第一加密数据发送给接口设备进行验证;
步骤J:接口设备接收第一加密数据并对其进行验证,将验证结果返回给智能密钥设备;
步骤K:智能密钥设备接收接口设备返回的验证结果,并判断验证验证结果是否为成功响应,是则可与接口设备进行通信,否则结束。
本实施例中的方法还可以包括以下步骤:
步骤I’:所述智能密钥设备将第三随机数和智能密钥设备证书发送给所述接口设备;
步骤J’:所述接口设备接收所述第三随机数和智能密钥设备证书并生成认证指令,将所述认证指令发送给所述智能密钥设备;
步骤K’:所述智能密钥设备接收所述接口设备发送的认证指令,并对其进行解析,根据所述第三随机数、智能密钥设备证书和接口设备证书对解析结果进行验证,如验证成功则给所述接口设备返回成功响应,与所述接口设备进行通信,如验证失败则给所述接口设备返回失败响应,结束。
其中步骤I’-步骤K’可在步骤H与步骤I之间执行,也可在步骤K之后执行。
或者本实施例中的步骤I1-步骤K用上述步骤I’至步骤K’替换。
本实施例中在接口设备与智能密钥设备之间的认证过程中有证书链的参与,提高了设备之间认证的可信任度。
实施例二
本实施例二提供了智能密钥设备与接口设备相互进行验证的实现方法,在智能密钥设备和接口设备相互进行验证之前需先验证接口设备的证书是否合法,本实施例中的证书中包含有证书签名值、证书签名原文和对应的设备公钥等信息。参见图2,为本实施例二中对接口设备的证书合法性进行验证的详细过程,包括:
步骤201:接口设备将接口设备证书和接口设备证书签发CA的公钥发给智能密钥设备;
具体地,在本实施例中,接口设备通过预先约定的指令UpdateBinary将接口设备证书和接口设备证书签发CA的公钥发给智能密钥设备。智能密钥设备保存接口设备证书和接口设备证书签发CA的公钥,向接口设备返回保存成功响应,本实施例中的保存成功响应是预定的表示成功的状态码。
优选地,在本实施例中,接口设备通过两条预定的UpdateBinary指令分别下发接口设备证书和接口设备证书签发CA的公钥。相应地,智能密钥设备依次从指令中提取接口设备证书和接口设备证书签发CA的公钥,分别向接口设备返回保存成功响应。
步骤202:接口设备接收到智能密钥设备返回的保存成功响应后,向智能密钥设备发送验证指令,通知智能密钥设备对接口设备证书进行验证;
步骤203:智能密钥设备接收到验证指令后,验证接口设备证书是否合法,如合法,则执行步骤204;如不合法向接口设备返回失败响应,结束;
具体的,在本实施例中,接口设备通过向智能密钥设备发送预定的VerifySignature指令通知智能密钥设备对接口设备证书进行验证;
本实施例中,验证接口设备证书是否合法的具体方法为:
步骤203-1:智能密钥设备从接口设备证书中获取证书签名原文和证书签名值,使用接口设备证书签发CA的公钥对获取的证书签名值进行解密,得到第一摘要值,使用预设摘要算法对获取的签名原文进行计算,得到第二摘要值;
步骤203-2:智能密钥设备判断第一摘要值与第二摘要值是否相同,是则继续执行步骤204,否则接口设备证书不合法;
步骤204:智能密钥设备判断接口设备证书签发CA的公钥与内置的信任公钥是否相同,如果是,则给接口设备返回成功响应,可继续进行内部认证和外部认证;如不合法,则将接口设备证书签发CA的证书设为当前证书,给接口设备返回失败响应,执行步骤205。
当验证接口设备证书合法时,则智能密钥设备存储的接口设备公钥即为上述的“信任锚”,在接口设备发行之前,发行商将信任CA的信任公钥预置到接口设备中;需要说明的是,信任公钥预置到接口设备的环境必须为离线环境,保证信任公钥的完整性。
步骤205:接口设备将接口设备证书签发CA的证书设为当前证书。
步骤206:接口设备根据当前证书检索上级CA证书,如果检索到,则将上级CA证书发给智能密钥设备,并将当前证书更新为所述上级CA证书,顺序执行步骤207,如未检索到,则给智能密钥设备返回失败响应,结束。
接口设备通过在本地或者联网方式检索上级CA证书。
所述检索上级CA证书具体为:
从当前证书获取签发者字段,根据签发者字段检索上级CA证书。
所述检索上级CA证书还包括:从当前证书获取主体字段,与签发者字段比对,如果二者一致(自签名证书),则停止检索,不能获取上级CA证书,结束,如果二者不一致,则获取上级CA证书,并将其发给智能密钥设备,将当前证书更新为所述上级CA证书。
具体地,在本实施例中,接口设备通过预定的PutData 指令将上级CA证书发给智能密钥设备。
步骤207:智能密钥设备接收接口设备发送的上级CA证书,并验证接收的上级CA证书是否为当前证书的签发者证书,是则执行步骤208,否则给接口设备发送失败响应,并将当前证书更新为本次接收的上级CA证书,返回步骤206;
本实施例中,智能密钥设备验证接收的证书是否为当前证书的签发者证书的过程具体为:
步骤207-1:从接收的上级CA证书中提取公钥,根据所述公钥验证当前证书的合法性,如果验证当前证书完整,继续;否则,接收的证书不是当前证书的签发者证书。
具体过程与步骤203中公开的过程相同,在此不再赘述。
步骤207-2:从接收的证书提取主体字段,从当前证书提取签发者字段,比较二者是否一致,如果是,接收的证书是当前证书的签发者证书,继续;否则,接收的证书不是当前证书的签发者证书。
步骤208:智能密钥设备比较接收的上级CA证书中的公钥与预存的接口设备证书签发CA的信任公钥是否相同,是则给接口设备返回成功响应;否则,给接口设备返回失败响应,并将当前证书更新为本次接收的上级CA证书,返回步骤206。
在对接口设备证书验证合法后,该接口设备可对与其连接的智能密钥设备进行验证,验证其是否为可信设备,如图3所示,接口设备对智能密钥设备的验证过程包括:
步骤301:接口设备从智能密钥设备中获取智能密钥设备证书;
本实施例中,接口设备通过向智能密钥设备发送预定义的ReadBinary指令,从智能密钥设备中获取智能密钥设备证书;
步骤302:接口设备生成第一随机数,保存在接口设备内部,并向智能密钥设备发送包含第一随机数的第二指令;
在本实施例中,接口设备通过预定义的INTERNAL AUTHENTICATION指令将第一随机数发给智能密钥设备,优选的,预定义的指令为:C088 00 00 Lc,其中预定义的指令的数据域(Lc)包括智能密钥设备证书标识、接口设备证书标识和第一随机数;
步骤303:智能密钥设备接收到第二指令后,对该第二指令的数据域进行解析,得到智能密钥设备证书标识、接口设备证书标识和第一随机数;
步骤303还包括,智能密钥设备根据智能密钥设备证书标识及接口设备证书标识在内部分别检索智能密钥设备证书和接口设备证书,如检索到对应的证书则继续,如果没有检索到对应的证书,则向接口设备返回失败响应。
所述证书标识可以是预定的标识,也可以是证书中的特征字段,例如公钥、主体或者签发者,还可以是特征字段的组合或者变换结果。
步骤304:智能密钥设备生成第二随机数,根据智能密钥设备证书公钥(即自身证书公钥)、第一随机数和第二随机数计算得到第一结果数值;
智能密钥设备计算得到第一结果数值的方法具体包括:
1)智能密钥设备将自身证书公钥的横坐标、证书公钥的纵坐标、第二随机数和第一随机数按照预设拼接方法依次进行拼接,得到第一拼接值;
2)智能密钥设备使用第一预设算法对第一拼接值进行计算,得到第一结果数值;
其中,本实施例中的第一预设算法为杂凑算法;
步骤305:智能密钥设备使用其智能密钥设备私钥(即自身私钥)根据预设的签名算法对第一结果数值进行签名计算,得到第一签名值;
步骤306:智能密钥设备按照第一预设方法将第一签名值和第二随机数进行组合,得到第一原文数据;
优选的,本实施例中的组合方式为将第一签名值与第二随机数按照第一预设方法依次进行拼接;
步骤307:智能密钥设备从接口设备证书中获取接口设备公钥,使用接口设备公钥根据第二预设算法对第一原文数据进行加密计算,得到第一加密数据,智能密钥设备将第一加密数据发送给接口设备;
步骤308:接口设备接收到第一加密数据,使用自身私钥对第一加密数据进行解密,解密成功得到第一解密数据,根据第一预设方法的逆方法对第一解密数据进行拆分,得到第一拆分值和第二拆分随机数;
步骤309:接口设备使用当前保存的第一随机数以及智能密钥设备证书验证所述第一拆分值和第二拆分随机数是否正确,如果正确则给智能密钥设备返回成功响应,表示该智能密钥设备是可信的,可与智能密钥设备进行通信;否则,给智能密钥设备返回失败响应,停止与智能密钥设备的通信,结束;
步骤309-1:接口设备对智能密钥设备证书进行解析,得到智能密钥设备证书公钥;
步骤309-2:接口设备使用智能密钥设备证书公钥对第一拆分值进行解密,解密成功得到第一解密值,执行步骤309-3;解密失败则停止与智能密钥设备的通信;
步骤309-3:接口设备根据智能密钥设备证书公钥、第二拆分随机数和第一随机数生成第一认证数据;
接口设备计算得到第一认证数据的方法与步骤304中智能密钥设备的计算方法相同,在此不再赘述;
步骤309-4:接口设备判断第一解密值与第一认证数据是否相同,如果是,该智能密钥设备是可信的,可以与智能密钥设备进行通信;否则,停止与智能密钥设备的通信。
步骤309之后还包括:接口设备清空第一随机数和第二拆分随机数,智能密钥设备在接收到接口设备返回的失败响应后清空存储的第一随机数和第二随机数。
需要说明的是,在接口设备对智能密钥设备的验证过程中,智能密钥设备产生的第二随机数(即第二拆分随机数)也被安全、正确的传送给了智能密钥设备,智能密钥设备将第二随机数进行缓存,用于派生会话密钥,实现了安全传送共享秘密的操作。
本实施例中,智能密钥设备首先验证接口设备发送的设备证书是否合法;当验证接口设备证书合法后,再由接口设备对智能密钥设备中发送的第一加密数据进行验证,当验证合法后,得知智能密钥设备合法,确保了验证的正确性。
为了增加通信的安全性,本实施例在接口设备对智能密钥设备验证合法后,智能密钥设备还可对与其连接的接口设备进行验证;如下步骤提供了智能密钥设备验证接口设备的具体过程,如图4所示,包括:
步骤401:从智能密钥设备中获取智能密钥设备证书和第三随机数;
本实施例中,接口设备通过向智能密钥设备发送ReadBinary指令来获取智能密钥设备证书;智能密钥设备证书中包含有智能密钥设备公钥;接口设备通过给智能密钥设备发送GetChallenge指令获取第三随机数;
接口设备可以在接收到GetChallenge指令时生成第三随机数,也可以在接收到GetChallenge指令之前生成第三随机数,接口设备中也保存有第三随机数;
步骤402:接口设备生成第四随机数,根据自身证书公钥、第三随机数和第四随机数生成第二结果数值;
本实施例中,生成第二结果数值的过程具体为:
1)接口设备将自身证书公钥的横坐标、证书公钥的纵坐标、第三随机数和第四随机数按照预设拼接方法依次进行拼接,得到第三拼接值;
2)接口设备使用预设算法对第三拼接值进行计算,得到第二结果数值;
其中,本实施例中的预设算法为杂凑算法;
步骤403:接口设备使用自身证书私钥对第二结果数值进行加密,生成第二加密值;
步骤404:接口设备按照第一预设方法将第二加密值和第四随机数进行组合,得到第二原文数据;
优选的,组合方式为将第二加密值与第四随机数按照第一预设方法依次进行拼接;
步骤405:接口设备对存储在证书文件的智能密钥设备证书进行解析得到智能密钥设备公钥,并用其对第二原文数据进行加密计算,得到第二加密数据;
步骤406:接口设备根据第二加密数据、智能密钥设备证书标识、接口设备证书标识生成认证指令并将其发送给智能密钥设备;
本实施例中,优选的,认证指令为:C0 82 00 00 Lc;其中,Lc为认证指令的数据域,包括智能密钥设备证书标识、接口设备证书标识和第二加密数据;
步骤407:智能密钥设备接收认证指令,对该认证指令进行解析,得到第二加密数据、智能密钥设备证书标识、接口设备证书标识;
步骤408:智能密钥设备根据智能密钥设备证书标识查找对应的智能密钥设备证书,如找到则执行步骤409,如未找到则向接口设备返回失败响应,停止与接口设备的通信;
步骤409:智能密钥设备从智能密钥设备证书中获取智能密钥设备私钥,并使用智能密钥设备私钥对第二加密数据进行解密,如解密成功,则得到第二解密值,执行步骤410,如解密失败,则向接口设备返回失败响应,停止与接口设备的通信;
步骤410:智能密钥设备根据第一预设方法的逆方法将第二解密值进行拆分,得到第二拆分值和第四拆分随机数;
步骤411:智能密钥设备根据接口设备证书标识在证书文件中查找对应的接口设备证书,如找到则执行步骤412,如未找到,则向接口设备返回失败响应,停止与接口设备的通信;
步骤412:智能密钥设备对接口设备证书进行解析得到接口设备证书公钥,根据接口设备证书公钥、第四拆分随机数和第三随机数生成第二认证数据;
本实施例中,智能密钥设备生成第二认证数据的方法具体包括:
1)智能密钥设备将接口设备证书公钥的横坐标、接口设备证书公钥的纵坐标、第三随机数和第四拆分随机数按照预设拼接方法依次进行拼接,得到第四拼接值;
2)接口设备使用预设算法对第四拼接值进行计算,得到第二认证数据;
其中,本实施例中的预设算法为杂凑算法;
步骤413:智能密钥设备从接口设备证书中获取接口设备公钥,使用接口设备公钥对第二拆分值进行解密,如解密成功则得到第三解密值,执行步骤414,如解密失败则向接口设备返回失败响应,停止与接口设备的通信;
本实施例中,步骤413和步骤412的顺序可调换,调换后在使用接口设备公钥对第二拆分值进行解密成功后,再生成第二认证数据;
步骤414:智能密钥设备判断第三解密值与第二认证数据是否相同,是则向接口设备返回成功响应,表明该接口设备是可信的,否则向接口设备返回失败响应,停止与接口设备的通信,结束;智能密钥设备对接口设备验证失败,表明该接口设备不可信。
本实施例中在步骤414之后,智能密钥设备清空第三随机数和第四拆分随机数,接口设备在接收到智能密钥设备返回的失败响应后清空存储的第三随机数和第四随机数。
需要说明的是,在智能密钥设备验证接口设备成功之后,接口设备产生的第四随机数(即第四拆分随机数)被安全、正确的传送给了智能密钥设备,智能密钥设备将第四随机数进行缓存,用于派生会话密钥,实现了安全传送共享秘密的操作。
本实施例中接口设备对智能密钥设备的验证过程和智能密钥设备对接口设备的验证过程没有先后顺序,也可以在对接口设备证书验证合法后,先执行智能密钥设备对接口设备的验证,再执行接口设备对智能密钥设备的验证。
本发明实施例中,当接口设备或智能密钥设备接收到验证成功后,则表示对方是可信的,可与对方进行通信。
需要说明的是,本发明实施例所提供的认证方法,包括两部分:智能密钥设备验证接口设备的过程,接口设备验证智能密钥设备的过程,该两个过程是相互独立的。在安全情况需求不高的情况下,当接口设备确保接进的智能密钥设备合法时,可只执行对接入的智能密钥设备进行验证的操作;当智能密钥设备确保所接入的环境安全时,可只执行对接口设备进行验证的操作。在安全情况需求高的情况下,接口设备与智能密钥设备相互验证其合法性,但验证顺序并未作出限定,可确保通信环境的安全性。
实施例三
本发明实施例三提供一种认证系统,如图5所示,包括智能密钥设备1和接口设备2,其中,所述智能密钥设备1包括:
第一接收模块10,用于接收接口设备2发送的接口设备证书和接口设备证书签发CA的公钥、失败响应、成功响应、验证指令、上级CA证书、包含第一随机数的第二指令、验证结果;
第一存储模块11,用于存储智能密钥设备证书、第一接收模块10接收到的接口设备证书和接口设备证书签发CA的公钥;
第一验证模块12,用于在第一接收模块10接收到验证指令后,对第一存储模块11中存储的接口设备证书进行验证;
本实施例中,第一验证模块12对接口设备证书进行验证具体为:
智能密钥设备1从接口设备证书中获取证书签名原文和证书签名值,使用接口设备证书签发CA的公钥对证书签名值进行解密,得到第一摘要值,使用预设摘要算法对证书签名原文进行计算,得到第二摘要值;判断第一摘要值与所述第二摘要值是否相同,是则验证成功,否则验证失败;
第一判断模块13,包括:
第一判断单元,用于在第一验证模块12验证成功后,判断第一存储模块11中的接口设备证书签发CA的公钥与预置的信任公钥是否相同;
第二判断单元,用于判断第一接收模块10接收到的上级CA证书是否为当前证书的签发者证书;
本实施例中,第二判断单元具体用于从上级CA证书中提取公钥,根据公钥验证当前证书的合法性;和/或用于从上级CA证书中提取主体字段,从当前证书提取签发者字段,比较二者是否一致;
第三判断单元,用于在第二判断单元判断为是时,判断第一存储模块11存储的上级CA证书中的公钥与预置的信任公钥是否一致;
第四判断单元,用于判断第一接收模块10接收到的验证结果是否为验证成功响应;
第一设置模块14,用于在第一判断单元判断为否时,将接口设备证书签发CA的证书设为当前证书;
第一更新模块15,用于在第三判断模块判断为否时,将当前证书更新为第一接收模块10接收到的上级CA证书;
第一生成模块16,用于根据第一随机数、智能密钥设备证书和接口设备证书生成第一加密数据;
第一发送模块17,用于向接口设备2发送响应、第一加密数据;
其中,接口设备2包括:
第二接收模块20,用于接收智能密钥设备1发送的响应、第一加密数据;
第二生成模块21,用于生成验证指令、第一随机数;
第二设置模块22,用于将接口设备证书签发CA的证书设为当前证书;
检索模块23,用于根据当前证书检索上级CA证书;
本实施例中,检索模块23包括:第一检索单元,用于从当前证书中获取签发者字段,根据签发者字段检索上级CA证书;
检索模块23还可包括:对比单元,用于从当前证书中获取主体字段,将主体字段与签发者字段比对,如一致则第一检索单元停止工作,结束;如不一致,则第一检索单元继续工作;
第二更新模块24,用于将当前证书更新为检索模块23检索到的上级CA证书;
第二验证模块25,用于对第二接收模块20接收到的第一加密数据进行验证;
本实施例中,第二验证模块25对第一加密数据进行验证的过程具体为:使用接口设备私钥对第一加密数据进行解密,解密成功得到第一解密数据,根据第一预设方法的逆方法对第一解密数据进行拆分,得到第一拆分值和第二拆分随机数;使用第一随机数和智能密钥设备证书验证第一拆分值和第二拆分随机数是否正确,如果正确生成验证成功响应;否则验证失败响应,结束;
第二发送模块26,用于向第一接收模块10发送接口设备证书和接口设备证书签发CA的公钥、失败响应、成功响应、验证指令、上级CA证书、包含第一随机数的第二指令、第二验证模块25的验证结果。
在本实施例中,第一生成模块16还用于生成第三随机数;
第一发送模块17还用于向接口设备2发送所述第三随机数和智能密钥设备证书;
第二接收模块20还用于接收第一发送模块17发送的第三随机数和智能密钥设备证书;
第二生成模块21还用于生成认证指令;
第二发送模块26还用于向智能密钥设备1发送认证指令;
第一接收模块10还用接收第二发送模块26发送的认证指令;
所述智能密钥设备还包括:解析模块,用于对第一接收模块10接收到的认证指令进行解析;
第一验证模块12还用于根据第三随机数、智能密钥设备证书和接口设备证书对解析模块的解析结果进行验证。
所述接口设备2还包括第二存储模块,用于存储第二接收模块接收到的第一发送模块发送的智能密钥设备证书。
本实施例中,智能密钥设备中的解析模块还用于对接收到的第二指令进行解析得到智能密钥设备证书标识、接口设备证书标识和第一随机数;
第一生成模块16生成第一加密数据的实现过程具体包括:
①生成第二随机数,根据智能密钥设备证书公钥、第一随机数和第二随机数计算得到第一结果数值;②使用智能密钥设备私钥根据预设的签名算法对第一结果数值进行签名计算,得到第一签名值;③按照第一预设方法将第一签名值和第二随机数进行组合,得到第一原文数据;④从与接口设备证书标识对应的当前证书中获取接口设备公钥,使用接口设备公钥根据预设算法对第一原文数据进行加密计算,得到第一加密数据。
本实施例中的智能密钥设备1还可包括检索模块,用于根据解析模块解析得到的智能密钥设备证书标识和接口设备证书标识在其内部分别检索对应的智能密钥设备证书和接口设备证书。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明公开的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (20)

1.一种认证方法,其特征在于,包括:
步骤A:当智能密钥设备接收到接口设备发送的接口设备证书和接口设备证书签发CA的公钥时进行保存,并给所述接口设备返回保存成功响应;
步骤B:所述接口设备接收到所述保存成功响应后,生成验证指令并将其发送给所述智能密钥设备;
步骤C:所述智能密钥设备接收到所述验证指令后,对所述接口设备证书进行验证,如验证成功则执行步骤D,如验证失败则给所述接口设备返回失败响应,结束;
步骤D:所述智能密钥设备判断所述接口设备证书签发CA的公钥与预置的信任公钥是否相同,是执行步骤I,否则将接口设备证书签发CA的证书设为当前证书,给所述接口设备返回失败响应,执行步骤E;
步骤E:所述接口设备接收到失败响应后,将所述接口设备证书签发CA的证书设为当前证书;
步骤F:所述接口设备根据当前证书检索上级CA证书,如果检索到则将所述上级CA证书发给所述智能密钥设备,并将当前证书更新为所述上级CA证书,执行步骤G,否则,给所述智能密钥设备返回失败响应,结束;
步骤G:所述智能密钥设备接收所述接口设备发送的上级CA证书,判断所述上级CA证书是否为当前证书的签发者证书,是则执行步骤H,否则给所述接口设备返回失败响应,结束;
步骤H:所述智能密钥设备判断所述上级CA证书中的公钥与预置的信任公钥是否一致,是则执行步骤I,否则用所述上级CA证书更新当前证书,给所述接口设备返回失败响应,返回步骤F;
步骤I:所述智能密钥设备从所述接口设备中获取第一随机数,根据所述第一随机数、智能密钥设备证书和接口设备证书生成第一加密数据,并将所述第一加密数据发送给所述接口设备进行验证;
步骤J:所述接口设备接收所述第一加密数据并对其进行验证,将验证结果返回给所述智能密钥设备;
步骤K:所述智能密钥设备接收所述接口设备返回的验证结果,并判断所述验证结果是否为成功响应,是则与所述接口设备进行通信,否则结束。
2.根据权利要求1所述的认证方法,其特征在于,所述步骤I-步骤K替换为:
步骤I’:所述智能密钥设备将第三随机数和智能密钥设备证书发送给所述接口设备;
步骤J’:所述接口设备接收所述第三随机数和智能密钥设备证书并生成认证指令,将所述认证指令发送给所述智能密钥设备;
步骤K’:所述智能密钥设备接收所述接口设备发送的认证指令,并对其进行解析,根据所述第三随机数、智能密钥设备证书和接口设备证书对解析结果进行验证,如验证成功则给所述接口设备返回成功响应,与所述接口设备进行通信,如验证失败则给所述接口设备返回失败响应,结束。
3.根据权利要求1所述的认证方法,其特征在于,还包括:
步骤I’:所述智能密钥设备将第三随机数和智能密钥设备证书发送给所述接口设备;
步骤J’:所述接口设备接收所述第三随机数和智能密钥设备证书并生成认证指令,将所述认证指令发送给所述智能密钥设备;
步骤K’:所述智能密钥设备接收所述接口设备发送的认证指令,并对其进行解析,根据所述第三随机数、智能密钥设备证书和接口设备证书对解析结果进行验证,如验证成功则给所述接口设备返回成功响应,与所述接口设备进行通信,如验证失败则给所述接口设备返回失败响应,结束。
4.根据权利要求1-3任意一项所述的认证方法,其特征在于,所述步骤C中对接口设备证书进行验证,具体包括:
步骤C1:所述智能密钥设备从所述接口设备证书中获取证书签名原文和证书签名值,使用所述接口设备证书签发CA的公钥对所述证书签名值进行解密,得到第一摘要值,使用预设摘要算法对所述证书签名原文进行计算,得到第二摘要值;
步骤C2:所述智能密钥设备判断所述第一摘要值与所述第二摘要值是否相同,是则验证成功,否则验证失败。
5.根据权利要求4所述的认证方法,其特征在于,所述接口设备根据当前证书检索上级CA证书,包括:
所述接口设备从当前证书中获取签发者字段,根据所述签发者字段检索上级CA证书。
6.根据权利要求5所述的认证方法,其特征在于,所述接口设备根据当前证书检索上级CA证书,还包括:
所述接口设备从当前证书中获取主体字段,将所述主体字段与所述签发者字段比对,如一致则停止检索,结束;如不一致,则继续检索,如检索到则获取所述上级CA证书,并将其发给所述智能密钥设备,将所述当前证书更新为所述上级CA证书,如未检索到则给智能密钥设备返回失败响应,结束。
7.根据权利要求4所述的认证方法,其特征在于,所述步骤G中判断所述上级CA证书是否为当前证书的签发者证书,包括:
步骤G1:所述智能密钥设备从所述上级CA证书中提取公钥,根据所述公钥验证当前证书的合法性,如合法则继续;如不合法则给所述接口设备返回失败响应,结束;和/或
步骤G1’:所述智能密钥设备从所述上级CA证书中提取主体字段,从所述当前证书提取签发者字段,比较二者是否一致,是则继续;否则给所述接口设备返回失败响应,结束。
8.根据权利要求7所述的认证方法,其特征在于,所述步骤I之前还包括:所述智能密钥设备接收所述接口设备发送的第一指令,将所述智能密钥设备证书发送给所述接口设备进行保存。
9.根据权利要求8所述的认证方法,其特征在于,所述步骤I中所述智能密钥设备从所述接口设备中获取第一随机数,包括:
所述智能密钥设备接收所述接口设备发送的第二指令,并对所述第二指令进行解析得到智能密钥设备证书标识、接口设备证书标识和所述第一随机数。
10.根据权利要求9所述的认证方法,其特征在于,所述步骤I中根据所述第一随机数、所述智能密钥设备证书、所述接口设备证书生成第一加密数据,包括:
步骤I21:所述智能密钥设备生成第二随机数,根据智能密钥设备证书公钥、所述第一随机数和第二随机数计算得到第一结果数值;
步骤I22:所述智能密钥设备使用智能密钥设备私钥根据预设的签名算法对所述第一结果数值进行签名计算,得到第一签名值;
步骤I23:所述智能密钥设备按照第一预设方法将所述第一签名值和第二随机数进行组合,得到第一原文数据;
步骤I24:所述智能密钥设备从与所述接口设备证书标识对应的当前证书中获取接口设备公钥,使用所述接口设备公钥根据预设算法对所述第一原文数据进行加密计算,得到第一加密数据。
11.根据权利要求10所述的认证方法,其特征在于,所述步骤I21之前包括:
所述智能密钥设备根据所述智能密钥设备证书标识和接口设备证书标识在其内部分别检索对应的智能密钥设备证书和接口设备证书,如检索到对应的证书则继续,如果没有检索到对应的证书,则给接口设备返回失败响应,结束。
12.根据权利要求10所述的认证方法,其特征在于,所述步骤J具体包括:
所述接口设备接收到第一加密数据,使用接口设备私钥对所述第一加密数据进行解密,解密成功得到第一解密数据,根据第一预设方法的逆方法对所述第一解密数据进行拆分,得到第一拆分值和第二拆分随机数;
所述接口设备使用所述第一随机数和智能密钥设备证书验证所述第一拆分值和第二拆分随机数是否正确,如果正确则给所述智能密钥设备返回验证成功响应,与所述智能密钥设备进行通信;否则,给所述智能密钥设备返回验证失败响应,结束。
13.根据权利要求12所述的认证方法,其特征在于,所述接口设备使用所述第一随机数和智能密钥设备证书验证所述第一拆分值和第二拆分随机数是否正确,具体包括:
步骤S1:所述接口设备对所述智能密钥设备证书进行解析,得到智能密钥设备证书公钥;
步骤S2:所述接口设备使用所述智能密钥设备证书公钥对所述第一拆分值进行解密,解密成功得到第一解密值,执行步骤S3;解密失败则给所述智能密钥设备返回失败响应,结束;
步骤S3:所述接口设备根据所述智能密钥设备证书公钥、第二拆分随机数和第一随机数生成第一认证数据;
步骤S4:所述接口设备判断所述第一解密值与所述第一认证数据是否相同,是则给所述智能密钥设备返回成功响应,与所述智能密钥设备进行通信;否则,则给所述智能密钥设备返回失败响应,结束。
14.根据权利要求2或3所述的认证方法,其特征在于,所述步骤I’包括:
所述智能密钥设备接收所述接口设备发送的第一获取指令,将所述智能密钥设备证书发送给所述接口设备进行保存;
所述智能密钥设备接收所述接口设备发送的第二获取指令,将生成的所述第三随机数发送给所述接口设备进行保存。
15.根据权利要求14所述的认证方法,其特征在于,所述步骤J’包括:
步骤J’1:所述接口设备生成第四随机数;
步骤J’2:所述接口设备根据接口设备证书公钥、所述第三随机数和第四随机数生成第二结果数值;
步骤J’3:所述接口设备使用接口设备私钥对所述第二结果数值进行加密,生成第二加密值;
步骤J’4:所述接口设备用第一预设方法将所述第二加密值和第四随机数进行组合,得到第二原文数据;
步骤J’5:所述接口设备使用所述智能密钥设备证书中的智能密钥设备公钥对所述第二原文数据进行加密计算,得到第二加密数据;
步骤J’6:所述接口设备根据所述第二加密数据生成认证指令并将其发送给所述智能密钥设备。
16.根据权利要求15所述的认证方法,其特征在于,所述步骤K’具体包括:
步骤K’1:所述智能密钥设备接收所述认证指令并对其进行解析,得到第二加密数据、智能密钥设备证书标识、接口设备证书标识;
步骤K’2:所述智能密钥设备从与所述智能密钥设备证书中获取智能密钥设备私钥,并使用所述智能密钥设备私钥对所述第二加密数据进行解密,如解密成功,则得到第二解密值,执行步骤K’3,如解密失败,则向所述接口设备返回失败响应,结束;
步骤K’3:所述智能密钥设备根据所述第一预设方法的逆方法将所述第二解密值进行拆分,得到第二拆分值和第四拆分随机数;
步骤K’4:所述智能密钥设备对与所述接口设备证书标识对应的接口设备证书进行解析得到接口设备证书公钥,根据所述接口设备证书公钥、第四拆分随机数和第三随机数生成第二认证数据;
步骤K’5:所述智能密钥设备从所述接口设备证书中获取接口设备公钥,使用所述接口设备公钥对所述第二拆分值进行解密,如解密成功则得到第三解密值,执行步骤K’6,如解密失败则向接口设备返回失败响应,结束;
步骤K’6:所述智能密钥设备判断所述第三解密值与第二认证数据是否相同,是则向所述接口设备返回成功响应,与所述接口设备进行通信,否则给所述接口设备返回失败响应,结束。
17.根据权利要求16所述的认证方法,其特征在于,所述步骤K’1和步骤K’2之间包括:
所述智能密钥设备根据所述智能密钥设备证书标识和接口设备证书标识在其内部分别检索对应的智能密钥设备证书和接口设备证书,如检索到则继续,如果未检索到则向接口设备返回失败响应,结束。
18.根据权利要求1-3任意一项所述的认证方法,其特征在于,所述验证失败后还包括:
所述接口设备和智能密钥设备清空内部存储的随机数。
19.一种认证系统,包括智能密钥设备和接口设备,其特征在于,所述智能密钥设备包括:
第一接收模块,用于接收所述接口设备发送的接口设备证书和接口设备证书签发CA的公钥、失败响应、成功响应、验证指令、上级CA证书、第一随机数、验证结果;
第一存储模块,用于存储智能密钥设备证书、所述第一接收模块接收到的接口设备证书、接口设备证书签发CA的公钥和上级CA证书;
第一验证模块,用于在所述第一接收模块接收到验证指令后,对所述第一存储模块中存储的接口设备证书进行验证;
第一判断模块,包括:
第一判断单元,用于在所述第一验证模块验证成功后,判断所述第一存储模块中的接口设备证书签发CA的公钥与预置的信任公钥是否相同;
第二判断单元,用于判断所述第一接收模块接收到的上级CA证书是否为当前证书的签发者证书;
第三判断单元,用于在所述第二判断单元判断为是时,判断所述第一存储模块存储的上级CA证书中的公钥与预置的信任公钥是否一致;
第四判断单元,用于判断所述第一接收模块接收到的验证结果是否为验证成功响应;
第一设置模块,用于在所述第一判断单元判断为否时,将所述接口设备证书签发CA的证书设为当前证书;
第一更新模块,用于在所述第三判断单元判断为否时,将当前证书更新为所述第一接收模块接收到的上级CA证书;
第一生成模块,用于根据所述第一随机数、智能密钥设备证书和接口设备证书生成第一加密数据;
第一发送模块,用于向所述接口设备发送响应、所述第一加密数据;
所述接口设备包括:
第二接收模块,用于接收所述智能密钥设备发送的响应、所述第一加密数据;
第二生成模块,用于生成所述验证指令、所述第一随机数;
第二设置模块,用于将所述接口设备证书签发CA的证书设为当前证书;
检索模块,用于根据当前证书检索上级CA证书;
第二更新模块,用于将当前证书更新为所述检索模块检索到的上级CA证书;
第二验证模块,用于对所述第二接收模块接收到的第一加密数据进行验证;
第二发送模块,用于向所述第一接收模块发送所述接口设备证书和接口设备证书签发CA的公钥、失败响应、成功响应、验证指令、上级CA证书、所述第一随机数、所述第二验证模块的验证结果。
20.根据权利要求19所述的系统,其特征在于,包括:
所述第一生成模块还用于生成第三随机数;
所述第一发送模块还用于向接口设备发送所述第三随机数和智能密钥设备证书;
所述第二接收模块还用于接收所述第一发送模块发送的所述第三随机数和智能密钥设备证书;
所述第二生成模块还用于生成认证指令;
所述第二发送模块还用于向所述智能密钥设备发送认证指令;
第一接收模块还用接收所述第二发送模块发送的认证指令;
所述智能密钥设备还包括:解析模块,用于对所述第一接收模块接收到的认证指令进行解析;
所述第一验证模块还用于根据所述第三随机数、智能密钥设备证书和接口设备证书对所述解析模块的解析结果进行验证。
CN201210240500.3A 2012-07-11 2012-07-11 一种认证方法及系统 Active CN102790678B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210240500.3A CN102790678B (zh) 2012-07-11 2012-07-11 一种认证方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210240500.3A CN102790678B (zh) 2012-07-11 2012-07-11 一种认证方法及系统

Publications (2)

Publication Number Publication Date
CN102790678A CN102790678A (zh) 2012-11-21
CN102790678B true CN102790678B (zh) 2015-01-14

Family

ID=47155985

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210240500.3A Active CN102790678B (zh) 2012-07-11 2012-07-11 一种认证方法及系统

Country Status (1)

Country Link
CN (1) CN102790678B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103248490B (zh) * 2013-05-23 2016-08-10 天地融科技股份有限公司 一种备份电子签名令牌中信息的方法和系统
DE102014102168A1 (de) 2014-02-20 2015-09-03 Phoenix Contact Gmbh & Co. Kg Verfahren und System zum Erstellen und zur Gültigkeitsprüfung von Gerätezertifikaten
CN106411653B (zh) * 2016-10-26 2019-03-29 飞天诚信科技股份有限公司 一种对智能密钥设备进行测试的方法及装置
CN106657152B (zh) * 2017-02-07 2021-05-28 腾讯科技(深圳)有限公司 一种鉴权方法及服务器、访问控制装置
CN107248075B (zh) * 2017-05-19 2020-07-07 飞天诚信科技股份有限公司 一种实现智能密钥设备双向认证和交易的方法及装置
CN109257332B (zh) * 2018-08-15 2020-06-02 飞天诚信科技股份有限公司 数字货币硬件钱包应用更新的安全通道的创建方法及装置
CN110247884B (zh) * 2018-11-21 2023-05-19 浙江大华技术股份有限公司 一种更新证书的方法、装置、系统及计算机可读存储介质
CN111600860B (zh) * 2020-05-08 2022-05-31 格尔软件股份有限公司 适用于车联网环境的隐式证书计算方法
WO2024138322A1 (zh) * 2022-12-26 2024-07-04 京东方科技集团股份有限公司 一种处理器、信息认证系统和信息认证方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101789934A (zh) * 2009-11-17 2010-07-28 北京飞天诚信科技有限公司 网上安全交易方法和系统
CN101958913A (zh) * 2010-10-29 2011-01-26 四川长虹电器股份有限公司 基于动态口令和数字证书的双向身份认证方法
CN102510333A (zh) * 2011-09-30 2012-06-20 飞天诚信科技股份有限公司 一种授权认证方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101789934A (zh) * 2009-11-17 2010-07-28 北京飞天诚信科技有限公司 网上安全交易方法和系统
CN101958913A (zh) * 2010-10-29 2011-01-26 四川长虹电器股份有限公司 基于动态口令和数字证书的双向身份认证方法
CN102510333A (zh) * 2011-09-30 2012-06-20 飞天诚信科技股份有限公司 一种授权认证方法及系统

Also Published As

Publication number Publication date
CN102790678A (zh) 2012-11-21

Similar Documents

Publication Publication Date Title
CN102790678B (zh) 一种认证方法及系统
CN110519260B (zh) 一种信息处理方法及信息处理装置
CN103067401B (zh) 密钥保护方法和系统
CN103684766B (zh) 一种终端用户的私钥保护方法和系统
US11930103B2 (en) Method, user device, management device, storage medium and computer program product for key management
US20150350196A1 (en) Terminal authentication system, server device, and terminal authentication method
CN104580250A (zh) 一种基于安全芯片进行可信身份认证的系统和方法
CN110784322B (zh) 一种网关设备与云平台连接的方法、系统、设备及介质
EP3001599B1 (en) Method and system for backing up private key of electronic signature token
CN106416123A (zh) 基于密码的认证
EP3001598A1 (en) Method and system for backing up private key in electronic signature token
CN104038486A (zh) 一种基于标识型密码实现用户登录鉴别的系统及方法
CN103312515A (zh) 授权令牌的生成方法、生成装置、认证方法和认证系统
CN103634114A (zh) 智能密码钥匙的验证方法及系统
CN107920081A (zh) 登录认证方法及装置
CN101515319A (zh) 密钥处理方法、密钥密码学服务系统和密钥协商方法
CN112182551B (zh) Plc设备身份认证系统和plc设备身份认证方法
CN102970676A (zh) 一种对原始数据进行处理的方法、物联网系统及终端
CN109302286B (zh) 一种Fido设备密钥索引的生成方法
CN104735064A (zh) 一种标识密码系统中标识安全撤销并更新的方法
CN101667255B (zh) 一种射频识别的安全认证方法、装置及系统
WO2017020669A1 (zh) 分布式系统节点身份认证方法及装置
CN103873257A (zh) 密钥更新、数字签名及签名验证的方法及装置
US20130205374A1 (en) Method and system for network access control
CN105430649A (zh) Wifi接入方法及设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20231117

Address after: No. 101 West Fourth Ring South Road, Fengtai District, Beijing, 100070 (Park)

Patentee after: CNTIC International Tendering Co.,Ltd.

Address before: 100085 17th floor, block B, Huizhi building, No.9 Xueqing Road, Haidian District, Beijing

Patentee before: Feitian Technologies Co.,Ltd.

TR01 Transfer of patent right