本发明涉及计算机技术领域,尤其涉及一种安全认证方法及系统。
背景技术:
身份认证过程是认证主体对被认证主体进行认证以确认身份、拥有权以及所属权利等,其中认证主体通常是服务提供方如安全交换机,被认证主体通常是用户终端。从最基础的层次上讲,是认证主体对被认证主体提交的信息进行确认的过程。从原理上讲,认证主体和被认证主体需要建立共有信息,并且通过共有信息进行辨认来达成认证,这种共有信息是建立信任和认证的基础。
目前,企业的入网终端设备的标识和认证工作无法做到唯一性,比如在基于client/server的访问控制和认证协议802.1x中,就存在多用户通过一台或多台设备的多个ip认证,或一个用户通过一台或多台设备的多个ip认证等方式,无法满足认证用户与认证主体(设备)唯一对应的严格性要求,无法保障认证的安全性。
技术实现要素:
针对现有技术存在的问题,本发明实施例提供一种安全认证方法及系统。
第一方面,本发明提供一种安全认证方法,包括:
根据目标终端发送的报文获取所述目标终端的唯一身份标识;
利用所述唯一身份标识和公钥矩阵生成目标终端公钥,并利用所述目标终端公钥对一随机数进行加密后生成加密随机数;
将所述加密随机数发送给所述目标终端;
接收由所述目标终端返回的解密随机数,以利用所述随机数对所述解密随机数进行认证;所述解密随机数是由所述终端利用目标终端私钥对所述加密随机数进行解密后生成的。
根据本发明提供的一种安全认证方法,所述根据目标终端发送的报文获取所述目标终端的唯一身份标识,包括:
接收由所述终端发送的报文,所述报文包含所述目标终端的网卡物理地址信息;
根据所述网卡物理地址信息,以调取所目标终端的唯一身份标识。
根据本发明提供的一种安全认证方法,所述目标终端的网卡物理地址信息是基于唯一身份标识生成工具读取所述目标设备的硬件信息后获取的。
第二方面,本发明提供一种安全认证方法,包括:
发送报文至认证设备;
接收由所述认证设备发送的加密随机数;所述加密随机数是由所述认证设备根据目标终端公钥对一随机数进行加密后生成;所述目标终端公钥是由唯一身份标识和公钥矩阵生成的;所述唯一身份标识是根据所述报文获取的;
利用目标终端私钥对所述加密随机数进行解密,获取解密随机数;
将所述解密随机数发送给所述认证设备,以供所述认证设备利用所述随机数对所述解密随机数进行认证。
根据本发明提供的一种安全认证方法,在发送报文至认证设备之前,还包括:
生成所述目标终端的唯一身份标识,以供所述认证设备根据所述报文获取所述唯一身份标识。
根据本发明提供的一种安全认证方法,所述生成所述目标终端的唯一身份标识,包括:
获取所述目标终端的所有网卡物理地址信息;
将每个所述网卡物理地址信息按首字节ascii码顺序拼接,获取初始标识码;
在所述初始标识码的总字节长度大于第一预设字节长度的情况下,获取所述第一预设字节长度的部分初始标识码作为所述唯一身份标识的第一部分;
在所述初始标识码的总字节长度等于第一预设字节长度的情况下,将所述初始标识码作为所述唯一身份标识的第一部分;
在所述初始标识码的总字节长度小于第一预设字节长度的情况下,将所述初始标识码作为所述唯一身份标识的第一子部分,并在所述第一子部分后增加第二子部分构成所述唯一身份标识的第一部分;所述第一子部分和第二子部分的总字节长度等于第一预设字节长度;所述第二子部分是基于随机生成的全局唯一标识符截取的;
在所述第一部分的前面设置第二部分,所述第二部分是由第二预设字节长度的用户编号和第三预设字节长度的网卡物理地址数组成;
所述第一部分和所述第二部分构成所述唯一身份标识。
根据本发明提供的一种安全认证方法,所述目标终端公钥与所述目标终端私钥相匹配,所述目标终端私钥是基于ipk标识技术,根据所述目标终端的唯一身份标识与私钥矩阵生成的。
第三方面,本发明还提供一种安全认证系统,包括:
第一处理模块,用于根据目标终端发送的报文获取所述目标终端的唯一身份标识;
第二处理模块,用于利用所述唯一身份标识和公钥矩阵生成目标终端公钥,并利用所述目标终端公钥对一随机数进行加密后生成加密随机数;
第三处理模块,用于将所述加密随机数发送给所述目标终端;
第四处理模块,用于接收由所述目标终端返回的解密随机数,以利用所述随机数对所述解密随机数进行认证;所述解密随机数是由所述终端利用目标终端私钥对所述加密随机数进行解密后生成的。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述安全认证方法的步骤。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述安全认证方法的步骤。
本发明提供的安全认证方法及系统,利用入网的终端的唯一物理特征生成终端的唯一身份标识,通过密钥矩阵与唯一身份标识生成设备对应的公钥和私钥,以实现终端的唯一认证,确保了安全认证时终端的身份唯一性,提高了安全认证的可靠性。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的安全认证方法的流程示意图之一;
图2是本发明提供的安全认证方法的信令交互图;
图3是本发明提供的安全认证方法的流程示意图之二;
图4是本发明提供的安全认证系统的结构示意图;
图5是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合图1-图5描述本发明实施例所提供的安全认证方法和系统。
图1是本发明提供的安全认证方法的流程示意图之一,如图1所示,提供了一种以认证设备(如安全交换机)作为执行主体的安全认证方法,包括但不限于以下步骤:
步骤s11:根据目标终端发送的报文获取所述目标终端的唯一身份标识;
步骤s12:利用所述唯一身份标识和公钥矩阵生成目标终端公钥,并利用所述目标终端公钥对一随机数进行加密后生成加密随机数;
步骤s13:将所述加密随机数发送给所述目标终端;
步骤s14:接收由所述目标终端返回的解密随机数,以利用所述随机数对所述解密随机数进行认证;所述解密随机数是由所述终端利用目标终端私钥对所述加密随机数进行解密后生成的。
图2是本发明提供的安全认证方法的信令交互图,如图2所示,整个安全认证的过程可以描述如下:
报文(message)是网络中交换与传输的数据单元,即站点一次性要发送的数据块。报文包含了目标终端在依次信息交互中,将要发送的完整的数据信息。在本发明中由目标终端向安全交换机发送的报文可以是明文方式发送的报文,也可以是常用的密钥报文或者数字签名报文等,以使得安全交换机可以根据所述报文,确定具体所有终端中的目标终端。
在所述安全交换机中被预先导入了公钥矩阵(又称公钥种子),并且预先导入了所有终端(包括目标终端)的唯一身份标识(connectionidentifier,cid)。
其中,每个终端的cid的获取方法包括但不限于以下步骤:
先在终端上安装cid生成工具软件,以读取终端的硬件信息,包括终端pc的网卡的物理地址(mediaaccesscontrol,mac)信息。
其中,mac地址一般由48位二进制数表示,其中前面24位表示网络厂商标识符,而后24位用于表示系列号。由于每个不同的网络厂商会有不同的厂商标识符,而每个厂商所生产出来的网卡的系列号也是不断变化的,所以每块网卡的mac地址是世界上独一无二的。
本发明基于每个终端的mac信息的独一无二性,在获取每个终端的mac信息后,可以将所述mac信息作为所述终端的cid,也可以将mac信息作为终端的cid的一部分,因此可以获取每个终端的第一无二的cid信息。
将每个所述cid信息生成key.ini格式文件,存储在本地。同时将所述key.ini格式文件导出为cid后缀名文件,并预先导入至所述安全交换机中。
在安全交换机接收到由目标终端发送的报文,则可以根据所述报文的发送地址,从存储单元调取预先存储的所述目标终端的cid后缀名文件,即可以获取到所述目标终端的cid。
进一步地,在所述安全交换机中,可以利用标识密钥技术,根据目标终端的cid,以及预先存储的公钥矩阵,生成一个目标终端公钥。然后利用生成的目标终端公钥生成加密随机数发送给目标终端。
进一步地,目标终端在接收到所述加密随机数后,首先利用标识密钥技术,通过与所述公钥矩阵对应的私钥矩阵与所述目标终端的cid,生成与所述目标终端公钥对应的目标终端私钥;然后,利用所述目标终端私钥对接收到的加密随机数进行解密后,生成对应的解密随机数。目标终端将生成的解密随机数再次发送回安全交换机,以请求认证。安全交换机根据接收到的解密随机数与发送给目标终端的加密随机数进行验证;若两者相同,则说明所述目标终端可以通过验证;若两者不同,则说明目标终端不能通过验证。
本发明提供的安全认证方法,利用入网的终端的唯一物理特征生成终端的唯一身份标识,通过密钥矩阵与唯一身份标识生成设备对应的公钥和私钥,以实现终端的唯一认证,确保了安全认证时终端的身份唯一性,提高了安全认证的可靠性。
基于上述实施例的内容,作为一种可选实施例,上述步骤s11中所述的根据目标终端发送的报文获取所述目标终端的唯一身份标识,具体包括:
接收由所述终端发送的报文,所述报文包含所述目标终端的网卡物理地址信息;
根据所述网卡物理地址信息,以调取所目标终端的唯一身份标识。
在本发明中,目标终端通过向安全交换机发送首个报文,其中报文中包含有目标终端的mac信息。安全交换机内嵌的认证模块在接收到该报文后,根据报文所携带的目标终端的mac信息,可以查找到该目标终端的cid。然后,利用内嵌的公钥矩阵结合终端设备的cid生成目标终端公钥,进而基于目标终端公钥则可以生成一个加密随机数发送给目标终端,以供目标终端利用与所述目标终端公钥相对应的目标终端私钥对所述加密随机数进行解密,并根据解密后的结果,完成认证。
本发明提供的安全认证方法,通过目标终端的mac信息这一唯一物理特征对目标终端进行标识,在结合设备唯一身份标识技术,可实现目标设备安全认证时的身份唯一对应,有效的提高了认证的可靠性。
基于上述实施例的内容,作为一种可选实施例,所述目标终端的网卡物理地址信息(mac信息)是基于唯一身份标识生成工具读取所述目标设备的硬件信息后获取的。
在本发明中所提供的cid生成方法中,主要是依据目标终端的唯一物理特征mac信息生成设备唯一标识cid。具体生成步骤主要包括以下内容:
1)在终端pc安装用于cid生成的工具软件;
2)工具软件读取终端设备的硬件mac信息,生成key.ini格式文件,存储在本地;
3)从工具软件导出该文件,导出为cid后缀名文件。
图3是本发明提供的安全认证方法的流程示意图之二,如图3所示,提供了一种以目标终端作为执行主体的安全认证方法,包括但不限于以下步骤:
步骤21:发送报文至认证设备;
步骤22:接收由所述认证设备发送的加密随机数;所述加密随机数是由所述认证设备根据目标终端公钥对一随机数进行加密后生成;所述目标终端公钥是由唯一身份标识和公钥矩阵生成的;所述唯一身份标识是根据所述报文获取的;
步骤23:利用目标终端私钥对所述加密随机数进行解密,获取解密随机数;
步骤24:将所述解密随机数发送给所述认证设备,以供所述认证设备利用所述随机数对所述解密随机数进行认证。
图2是本发明提供的安全认证方法的信令交互图,如图2所示,整个安全认证的过程可以描述如下:
在需要对目标终端进行认证时,首先通过目标终端向安全交换机发送首个报文,该报文中可以包括目标终端的mac信息。安全交换机在接收到由目标终端所发送的首个报文后,获取与所述目标终端mac信息相对应的该目标终端的cid。
进一步地,所述安全交换机中可以利用标识密钥技术,根据获取的目标终端的cid,利用通用的公钥矩阵,生成一个目标终端公钥。然后利用生成的目标终端公钥生成加密随机数发送给目标终端。
目标终端在接收到加密随机数后,则可以利用目标终端中预先加载的私钥矩阵对其进行解密,以生成解密后的随机数,并将解密后的随机数再次返还至安全交换机,以供其认证。
安全交换机根据接收到的解密随机数与发送给目标终端的加密随机数进行验证;若两者相同,则说明所述目标终端可以通过验证;若两者不同,则说明目标终端不能通过验证。
需要说明的是,在本发明中,提供的标识密钥技术,包括两个方面,即在目标终端中,利用私钥矩阵(又称私钥种子)与目标终端的cid,生成目标终端私钥;而在认证设备中,则是利用预先存储在认证设备(如安全交换机)的公钥矩阵(公钥种子)与目标终端的cid,生成目标终端公钥,形成了以目标设备公钥加密随机数,以目标设备私钥解密随机数的方式显现认证的方法,
本发明提供的安全认证方法,利用入网的终端的唯一物理特征生成终端的唯一身份标识,通过密钥矩阵与唯一身份标识生成设备对应的公钥和私钥,以实现终端的唯一认证,确保了安全认证时终端的身份唯一性,提高了安全认证的可靠性。
基于上述实施例的内容,作为一种可选实施例,在发送报文至认证设备之前,还包括:生成所述目标终端的唯一身份标识,以供所述认证设备根据所述报文获取所述唯一身份标识。
具体地,在本发明提供的安全认证方法,目标终端在向认证设备极性认证之前,首先获取通过读取自身的设备硬件信息如mac信息后,利用cid生成工具软件生成代表其身份的唯一标识,即根据其具有唯一性的mac信息,生成该目标设备的cid。
本发明提供的安全认证方法,在cid生成过程中,利用每个终端上具有唯一性的终端设备信息,并基于cid生成工具软件生成每个终端的cid,确保了安全认证时终端的身份唯一性,提高了安全认证的可靠性。
基于上述实施例的内容,作为一种可选实施例,所述生成所述目标终端的唯一身份标识,包括:
获取所述目标终端的所有网卡物理地址信息;
将每个所述网卡物理地址信息按首字节ascii码顺序拼接,获取初始标识码;
在所述初始标识码的总字节长度大于第一预设字节长度的情况下,获取所述第一预设字节长度的部分初始标识码作为所述唯一身份标识的第一部分;
在所述初始标识码的总字节长度等于第一预设字节长度的情况下,将所述初始标识码作为所述唯一身份标识的第一部分;
在所述初始标识码的总字节长度小于第一预设字节长度的情况下,将所述初始标识码作为所述唯一身份标识的第一子部分,并在所述第一子部分后增加第二子部分构成所述唯一身份标识的第一部分;所述第一子部分和第二子部分的总字节长度等于第一预设字节长度;所述第二子部分是基于随机生成的全局唯一标识符截取的;
在所述第一部分的前面设置第二部分,所述第二部分是由第二预设字节长度的用户编号和第三预设字节长度的网卡物理地址数组成;
所述第一部分和所述第二部分构成所述唯一身份标识。
cid生成工具软件能够根据读取的目标终端的mac信息,生成该与之对应的cid。由于每一个终端pc上可能存在对网卡的情况,即一个终端对应有多个mac地址。故本发明提供的安全认证方法,在进行cid编码的时候,充分考虑到这一实际情况,提供了一种针对目标终端存在不同个数mac地址的编码方式。
表1终端cid的结构列表
表1是本发明提供的一种终端cid的结构列表,如表1所示,作为一种可选的实施例,本发明提供了一种cid的编码方式,包括:
定义cid的总长度39byte,由于每个mac地址的长度为6个字节,即每个cid上最多可以容纳6个mac地址。组合标识中的mac地址来源于目标设备的物理mac,采集到的多个mac地址按首字节ascii码顺序拼接,组成cid的第一部分,如果mac地址数大于6,则可以随机的选取其中的6个;如果mac地址数是6,则组成完整的cid,如果mac数少于6个,剩余部分用随机数补齐。随机数采用guid函数产生,从后向前按需长度截取。cid以key.ini格式文件保存在接入设备本地,key.ini可导出为cid后缀名文件,用于制作公私钥对,数据格式可以是:在cid前面冠以3b,其中1b用于表示cid中的mac地址数,2b用于存放用户编号。
如表1中的mac地址数是2为例,其中,第一部分包括第一子部分和第二子部分,第一子部分为3-14b所示的部分,第二子部分为15-38b所示的部分;第二部分则是由第二预设字节长度的用户编号(1-2b)和第三预设字节长度的网卡物理地址数(0b)组成。
本发明提供了一种目标终端的cid编码方法,有效的解决了通过目标终端的唯一物理特征对其进行标识的问题,且区分性的考虑了一个终端内部同时存在多个mac地址的情况,进一步提高了标识的唯一性,可实现目标设备安全认证时的身份唯一对应,有效的提高了认证的可靠性。
基于上述实施例的内容,作为一种可选实施例,所述目标终端公钥与所述目标终端私钥相匹配,所述目标终端私钥是基于ipk标识技术,根据所述目标终端的唯一身份标识与私钥矩阵生成的。
其中,ipk(identitypublickey)标识技术又称ipk标识公钥,是一种轻量级密钥体系,具有两个特征:一是密钥数据短,二是认证不依赖中心,认证效率简单、高效。
本发明提供的ipk标识密钥技术包括两个方便的内容,即在目标终端由私钥种子文件(即私钥矩阵)和目标终端的cid,生成目标终端私钥;在认证设备中,则是根据公钥种子文件(即公钥矩阵)和目标终端的cid,生成目标终端公钥。由于私钥矩阵和公钥矩阵的对称性,所以目标终端私钥和目标终端公钥的对称性是本发明实现认证的基础。
本发明提供的轻量级密钥技术,能基于标识本身,使得密钥的生产、管理与签发相对简单,安全应用无须与密钥系统相连接,实现了去中心化的点对点认证。同时,轻量级密钥体系的去中心化特性与区块链应用形成最佳匹配,大大提升区块链应用的安全效率。
图4是本发明提供的一种安全认证系统的结构示意图,如图3所示,该安全认证系统可以是装载在认证设备上的内嵌认证系统,主要包括:
第一处理模块1主要用于根据目标终端发送的报文获取所述目标终端的唯一身份标识;
第二处理模块2主要用于利用所述唯一身份标识和公钥矩阵生成目标终端公钥,并利用所述目标终端公钥对一随机数进行加密后生成加密随机数;
第三处理模块3主要用于将所述加密随机数发送给所述目标终端;
第四处理模块4主要用于接收由所述目标终端返回的解密随机数,以利用所述随机数对所述解密随机数进行认证;所述解密随机数是由所述终端利用目标终端私钥对所述加密随机数进行解密后生成的。
具体地,第一处理模块1接收到目标终端发送的首个报文,该报文中可以包括目标终端的mac信息。在接收到由目标终端所发送的首个报文后,获取与所述目标终端mac信息相对应的该目标终端的cid。
进一步地,第二处理模块2可以利用标识密钥技术,根据获取的目标终端的cid,利用通用的公钥矩阵,生成一个目标终端公钥。然后利用生成的目标终端公钥生成加密随机数并利用第三处理模块3将其发送给目标终端。
目标终端在接收到加密随机数后,则可以利用目标终端中预先加载的私钥矩阵对其进行解密,以生成解密后的随机数,并将解密后的随机数再次返还至第四处理模块4,以供其认证。
第四处理模块4根据接收到的解密随机数与发送给目标终端的加密随机数进行验证;若两者相同,则说明所述目标终端可以通过验证;若两者不同,则说明目标终端不能通过验证。
本发明提供的安全认证系统,利用入网的终端的唯一物理特征生成终端的唯一身份标识,通过密钥矩阵与唯一身份标识生成设备对应的公钥和私钥,以实现终端的唯一认证,确保了安全认证时终端的身份唯一性,提高了安全认证的可靠性。
需要说明的是,本发明实施例提供的安全认证系统,在具体执行时,可以基于上述任一实施例所述的安全认证方法来实现,对此本实施例不作赘述。
图5是本发明提供的电子设备的结构示意图,如图5所示,该电子设备可以包括:处理器(processor)510、通信接口(communicationsinterface)520、存储器(memory)530和通信总线540,其中,处理器510,通信接口520,存储器530通过通信总线640完成相互间的通信。处理器510可以调用存储器530中的逻辑指令,以执行安全认证方法,该方法包括:根据目标终端发送的报文获取所述目标终端的唯一身份标识;利用所述唯一身份标识和公钥矩阵生成目标终端公钥,并利用所述目标终端公钥对一随机数进行加密后生成加密随机数;将所述加密随机数发送给所述目标终端;接收由所述目标终端返回的解密随机数,以利用所述随机数对所述解密随机数进行认证;所述解密随机数是由所述终端利用目标终端私钥对所述加密随机数进行解密后生成的。
此外,上述的存储器530中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的安全认证方法,该方法包括:根据目标终端发送的报文获取所述目标终端的唯一身份标识;利用所述唯一身份标识和公钥矩阵生成目标终端公钥,并利用所述目标终端公钥对一随机数进行加密后生成加密随机数;将所述加密随机数发送给所述目标终端;接收由所述目标终端返回的解密随机数,以利用所述随机数对所述解密随机数进行认证;所述解密随机数是由所述终端利用目标终端私钥对所述加密随机数进行解密后生成的。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的安全认证方法,该方法包括:根据目标终端发送的报文获取所述目标终端的唯一身份标识;利用所述唯一身份标识和公钥矩阵生成目标终端公钥,并利用所述目标终端公钥对一随机数进行加密后生成加密随机数;将所述加密随机数发送给所述目标终端;接收由所述目标终端返回的解密随机数,以利用所述随机数对所述解密随机数进行认证;所述解密随机数是由所述终端利用目标终端私钥对所述加密随机数进行解密后生成的。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
1.一种安全认证方法,其特征在于,包括:
根据目标终端发送的报文获取所述目标终端的唯一身份标识;
利用所述唯一身份标识和公钥矩阵生成目标终端公钥,并利用所述目标终端公钥对一随机数进行加密后生成加密随机数;
将所述加密随机数发送给所述目标终端;
接收由所述目标终端返回的解密随机数,以利用所述随机数对所述解密随机数进行认证;所述解密随机数是由所述终端利用目标终端私钥对所述加密随机数进行解密后生成的。
2.根据权利要求1所述的安全认证方法,其特征在于,所述根据目标终端发送的报文获取所述目标终端的唯一身份标识,包括:
接收由所述终端发送的报文,所述报文包含所述目标终端的网卡物理地址信息;
根据所述网卡物理地址信息,以调取所目标终端的唯一身份标识。
3.根据权利要求2所述的安全认证方法,其特征在于,所述目标终端的网卡物理地址信息是基于唯一身份标识生成工具读取所述目标设备的硬件信息后获取的。
4.一种安全认证方法,其特征在于,包括:
发送报文至认证设备;
接收由所述认证设备发送的加密随机数;所述加密随机数是由所述认证设备根据目标终端公钥对一随机数进行加密后生成;所述目标终端公钥是由唯一身份标识和公钥矩阵生成的;所述唯一身份标识是根据所述报文获取的;
利用目标终端私钥对所述加密随机数进行解密,获取解密随机数;
将所述解密随机数发送给所述认证设备,以供所述认证设备利用所述随机数对所述解密随机数进行认证。
5.根据权利要求4所述的安全认证方法,其特征在于,在发送报文至认证设备之前,还包括:
生成所述目标终端的唯一身份标识,以供所述认证设备根据所述报文获取所述唯一身份标识。
6.根据权利要求5所述的安全认证方法,其特征在于,所述生成所述目标终端的唯一身份标识,包括:
获取所述目标终端的所有网卡物理地址信息;
将每个所述网卡物理地址信息按首字节ascii码顺序拼接,获取初始标识码;
在所述初始标识码的总字节长度大于第一预设字节长度的情况下,获取所述第一预设字节长度的部分初始标识码作为所述唯一身份标识的第一部分;
在所述初始标识码的总字节长度等于第一预设字节长度的情况下,将所述初始标识码作为所述唯一身份标识的第一部分;
在所述初始标识码的总字节长度小于第一预设字节长度的情况下,将所述初始标识码作为所述唯一身份标识的第一子部分,并在所述第一子部分后增加第二子部分构成所述唯一身份标识的第一部分;所述第一子部分和第二子部分的总字节长度等于第一预设字节长度;所述第二子部分是基于随机生成的全局唯一标识符截取的;
在所述第一部分的前面设置第二部分,所述第二部分是由第二预设字节长度的用户编号和第三预设字节长度的网卡物理地址数组成;
所述第一部分和所述第二部分构成所述唯一身份标识。
7.根据权利要求4所述的安全认证方法,其特征在于,
所述目标终端公钥与所述目标终端私钥相匹配,所述目标终端私钥是基于ipk标识技术,根据所述目标终端的唯一身份标识与私钥矩阵生成的。
8.一种安全认证系统,其特征在于,包括:
第一处理模块,用于根据目标终端发送的报文获取所述目标终端的唯一身份标识;
第二处理模块,用于利用所述唯一身份标识和公钥矩阵生成目标终端公钥,并利用所述目标终端公钥对一随机数进行加密后生成加密随机数;
第三处理模块,用于将所述加密随机数发送给所述目标终端;
第四处理模块,用于接收由所述目标终端返回的解密随机数,以利用所述随机数对所述解密随机数进行认证;所述解密随机数是由所述终端利用目标终端私钥对所述加密随机数进行解密后生成的。
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至3任一项所述安全认证方法步骤或权利要求4至7任一项所述安全认证方法步骤。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至3任一项所述安全认证方法步骤或权利要求4至7任一项所述安全认证方法步骤。
技术总结