CN114745180A - 接入认证方法、装置和计算机设备 - Google Patents

接入认证方法、装置和计算机设备 Download PDF

Info

Publication number
CN114745180A
CN114745180A CN202210373051.3A CN202210373051A CN114745180A CN 114745180 A CN114745180 A CN 114745180A CN 202210373051 A CN202210373051 A CN 202210373051A CN 114745180 A CN114745180 A CN 114745180A
Authority
CN
China
Prior art keywords
digital certificate
authentication
access
data
certificate
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.)
Pending
Application number
CN202210373051.3A
Other languages
English (en)
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.)
China Southern Power Grid Co Ltd
Original Assignee
China Southern Power Grid 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 China Southern Power Grid Co Ltd filed Critical China Southern Power Grid Co Ltd
Priority to CN202210373051.3A priority Critical patent/CN114745180A/zh
Publication of CN114745180A publication Critical patent/CN114745180A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y04INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
    • Y04SSYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
    • Y04S40/00Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them
    • Y04S40/20Information technology specific aspects, e.g. CAD, simulation, modelling, system security

Abstract

本申请涉及一种接入认证方法、装置和计算机设备。首先第一端响应于第二端发送的握手请求,第一端执行数字证书验证操作;若第一数字证书和第二数字证书均合法,则第一端向第二端发送信息认证指令,信息认证指令用于获取第二端的接入报文,第一端对接入报文进行认证,若接入报文认证通过,则第一端向第二端发送认证成功的响应报文,响应报文表示允许在第一端和第二端之间进行数据通信。该方法实现了基于数字证书验证和接入报文认证双重验证机制的接入认证方法,能够保证第二端的安全接入,有效地提升了第一端和第二端之间的通信安全。

Description

接入认证方法、装置和计算机设备
技术领域
本申请涉及通信技术领域,特别是涉及一种接入认证方法、装置和计算机设备。
背景技术
近年来,随着对电力信息安全的重点监督管控,进一步明确了电网信息安全的重要性,对能源、电力等领域的关键信息基础设施的安全防护提出了更高要求。
在电力系统中,为了保证电网信息的安全性,建立的安全防护体系通常采用边界防护装置对电力监控系统中不同安全区进行隔离,不同安全区的业务主机之间进行数据通信时,是将数据报文发送至边界防护装置,由边界防护装置完成不同安全区之间的数据通信的。
然而,上述电力系统中业务主机与边界防护装置进行数据交互时,若业务主机连接上攻击者伪造的边界防护装置,或者攻击者冒名顶替业务主机与边界防护装置进行数据通信,就会造成通信数据的泄露,对电力系统中的通信安全产生严重影响。
发明内容
基于此,有必要针对上述技术问题,提供一种接入认证方法、装置和计算机设备,能够防止通信数据泄露,提高电力系统中的通信安全。
第一方面,本申请提供了一种接入认证方法,该方法包括:
第一端响应于第二端发送的握手请求,第一端执行数字证书验证操作;数字证书验证操作用于验证第一端的第一数字证书和第二端的第二数字证书的合法性;
若第一数字证书和第二数字证书均合法,则第一端向第二端发送信息认证指令,信息认证指令用于获取第二端的接入报文;
第一端对接入报文进行认证;
若接入报文认证通过,则第一端向第二端发送认证成功的响应报文;响应报文表示允许在第一端和第二端之间进行数据通信。
在其中一个实施例中,第一端执行数字证书验证操作,包括:
第一端向第二端发送第一数字证书,以指示第二端验证第一数字证书的合法性;
第一端接收第二端发送的第二数字证书,第二数字证书为第二端确定第一数字证书合法后发送的;
第一端对第二数字证书的合法性进行校验;
若第二数字证书的合法性验证通过,第一端确定第一数字证书和第二数字证书均合法。
在其中一个实施例中,第一端向第二端发送第一数字证书,包括:
第一端根据第二端的公钥,对第一参考数字证书进行加密处理,得到第一数字证书;第一参考数字证书包括第一端的身份信息;
将第一数字证书发送至第二端。
在其中一个实施例中,第一端对第二数字证书的合法性进行校验,包括:
第一端对第二数字证书进行解密处理,得到第二参考数字证书;第二参考数字证书包括第二参考数字证书所属认证中心的标识和数字签名;
检测预存的认证中心信任列表中是否存在认证中心的标识,以及验证数字签名的篡改状态;
若认证中心信任列表中存在认证中心的标识,且数字签名的篡改状态为未篡改,则检测认证中心的撤销列表中是否存在第二参考数字证书;
若认证中心的撤销列表中不存在第二参考数字证书,则确定第二数字证书的合法性验证通过。
在其中一个实施例中,第二参考数字证书还包括第二端的属性信息;验证数字签名的篡改状态,包括:
第一端获取认证中心的公钥,并根据认证中心的公钥对数字签名进行解密,得到第一哈希值;
第一端根据预设的哈希算法对属性信息进行计算,得到第二哈希值;
若第一哈希值和第二哈希值相同,则第一端确定数字签名的篡改状态为未篡改。
在其中一个实施例中,该方法还包括:
若第一数字证书和第二数字证书均合法,则第一端构建与第二端之间的连接通道;连接通道包括第一端与第二端之间的传输协议;
第一端通过连接通道接收第二端的接入报文。
在其中一个实施例中,接入报文包括接入数据和签名数据;第二数字证书包括第二数字证书的公钥;则第一端对接入报文进行认证,包括:
第一端根据第二数字证书的公钥对签名数据进行解密,得到第一摘要信息;
第一端确定签名数据的摘要提取方式,并通过摘要提取方式对接入数据的摘要进行提取,得到第二摘要信息;
对比第一摘要信息和第二摘要信息,若第一摘要信息和第二摘要信息相同,则第一端确定接入报文认证通过。
在其中一个实施例中,接入报文包括接入数据和循环冗余校验数据;第二数字证书包括第二数字证书的公钥;则第一端对接入报文进行认证,包括:
第一端根据第二数字证书的公钥对循环冗余校验数据进行解密,得到第一循环冗余校验值;
第一端根据预设的校验值生成方法对接入数据进行计算,得到第二循环冗余校验值;
对比第一循环冗余校验值和第二循环冗余校验值,若第一循环冗余校验值和第二循环冗余校验值相同,则第一端确定接入报文认证通过。
第二方面,本申请还提供了一种接入认证装置,该装置包括:
验证模块,用于第一端响应于第二端发送的握手请求,第一端执行数字证书验证操作;数字证书验证操作用于验证第一端的第一数字证书和第二端的第二数字证书的合法性;
第一发送模块,用于若第一数字证书和第二数字证书均合法,则第一端向第二端发送信息认证指令,信息认证指令用于获取第二端的接入报文;
认证模块,用于第一端对接入报文进行认证;
第二发送模块,用于若接入报文认证通过,则第一端向第二端发送认证成功的响应报文;响应报文表示允许在第一端和第二端之间进行数据通信。
第三方面,本申请实施例提供一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述第一方面实施例提供的任一项方法的步骤。
第四方面,本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述第一方面实施例提供的任一项方法的步骤。
第五方面,本申请实施例提供计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述第一方面实施例提供的任一项方法的步骤。
本申请实施例提供的一种接入认证方法、装置和计算机设备,首先第一端响应于第二端发送的握手请求,第一端执行数字证书验证操作,若第一数字证书和第二数字证书均合法,则第一端向第二端发送信息认证指令,信息认证指令用于获取第二端的接入报文,第一端对接入报文进行认证,若接入报文认证通过,则第一端向第二端发送认证成功的响应报文,响应报文表示允许在第一端和第二端之间进行数据通信。该方法中,通过数字证书验证操作验证第一端的第一数字证书和第二端的第二数字证书的合法性,如果第一数字证书和第二数字证书均合法,则第一端向第二端发送信息认证指令,以获取第二端的接入报文,然后第一端再对接入报文进行认证,当接入报文认证通过,第一端和第二端之间才可以进行数据通信,该方法实现了基于数字证书验证和接入报文认证双重验证机制的接入认证方法,能够保证第二端的安全接入,有效地提升了第一端和第二端之间的通信安全。
附图说明
图1a为一个实施例中接入认证方法的应用环境图;
图1b为一个实施例中接入认证方法的结构示意图;
图2为一个实施例中接入认证方法的流程示意图;
图3为另一个实施例中接入认证方法的结构示意图;
图4为另一个实施例中接入认证方法的结构示意图;
图5为另一个实施例中接入认证方法的结构示意图;
图6为另一个实施例中接入认证方法的结构示意图;
图7为另一个实施例中接入认证方法的结构示意图;
图8为另一个实施例中接入认证方法的结构示意图;
图9为另一个实施例中接入认证方法的流程示意图;
图10为另一个实施例中接入认证方法的结构示意图;
图11为另一个实施例中接入认证方法的结构示意图;
图12为另一个实施例中接入认证方法的流程示意图;
图13为另一个实施例中接入认证方法的流程示意图;
图14为另一个实施例中接入认证方法的流程示意图;
图15为另一个实施例中接入认证方法的流程示意图;
图16为另一个实施例中接入认证方法的流程示意图;
图17为另一个实施例中接入认证方法的流程示意图;
图18为另一个实施例中接入认证方法的流程示意图;
图19为一个实施例中接入认证装置的结构框图;
图20为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的接入认证方法可如图1a所示的应用环境中。其中,图1a中的第一端以及第二端均包括至少一个设备,或者,至少一种类型的设备;第一端与第二端可以通过有线或无线通信的方式进行直接或间接的连接,本实施例对此不做限定,第一端和第二端可以是任何领域的计算机设备或终端设备,例如,包括但不限于是智能手机、平板电脑、笔记本电脑、台式计算机、数字助理、智能音箱、智能可穿戴设备、车载终端、服务器等类型的实体设备,也可以包括运行于实体设备中的软件,例如应用程序等,但并不局限于此,第一端和第二端上运行的操作系统可以包括但不限于安卓系统、IOS系统、linux系统、windows系统等。本申请实施例对第一端和第二端的类型不作限定。
基于上述图1a,第一端响应于第二端发送的握手请求,那么就是第二端向第一端发送握手请求,即第二端请求与第一端建立通信连接;第一端也可以向第二端发送握手请求,用于请求与第二端建立通信连接。其中,第一端和第二端仅仅是为了区分不同的端,并不用于其他信息的限定。
本申请实施例提供一种接入认证方法、装置和计算机设备,能够防止通信数据泄露,提高电力系统中的通信安全。
下面将通过实施例并结合附图具体地对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。
在对本申请实施例进行具体说明之前,对本申请实施例的第一端和第二端进行说明。请参见图1b所示,第一端和第二端表示的是接入认证过程中两个不同的端,但是,根据接入认证过程中请求接入方向不同,第一端和第二端的具体指代端也是不同的,例如,图1b中请求接入方向为业务主机请求接入安全防护设备时,本申请实施例中的第一端指代的是安全防护设备,第二端指代的是业务主机;反过来,当请求接入方向为安全防护设备请求接入业务主机时,第一端指代的是业务主机,第二端指代的是安全防护设备。
其中,业务主机可以是电力监控系统中各个安全区内的设备,安全防护设备为电力监控系统中的安全网关设备。
还需要说明的是,在第二端申请接入第一端时,涉及到数字证书验证操作和接入报文认证过程,且无论是第一端申请接入第二端,还是第二端申请接入第一端,其数字证书验证过程和接入报文验证过程的方式均相同。具体地,第二端申请接入第一端时,第一端执行数字证书验证操作和接入报文认证过程;二第一端申请接入第二端时,第二端执行数字证书验证操作和接入报文认证过程。
下面对接入认证过程通过具体的实施例进行说明。
在一个实施例中,提供了一种接入认证方法,如图2所示,提供了一种接入认证方法,本实施例涉及的是首先第一端响应于第二端发送的握手请求,并验证第一端的第一数字证书和第二端的第二数字证书的合法性,若第一数字证书和第二数字证书均合法,则第一端向第二端发送信息认证指令,信息认证指令用于获取第二端的接入报文,第一端对接入报文进行认证,若接入报文认证通过,则第一端向第二端发送认证成功的响应报文的具体过程,该实施例包括以下步骤:
S201,第一端响应于第二端发送的握手请求,第一端执行数字证书验证操作;数字证书验证操作用于验证第一端的第一数字证书和第二端的第二数字证书的合法性。
第一端与第二端之间交换信息时,双方采用某个通讯协议来交换数据,他们联络的过程就叫做“握手”,当第二端需要向第一端发送数据时,第二端首先会向第一端发送一个握手请求。
可选地,握手请求中包含版本信息、加密算法候选列表、随机数和扩展字段等信息。
第一端接收到握手请求后,会执行数字证书验证操作,验证第一端的第一数字证书和第二端的第二数字证书的合法性。
其中,数字证书是互联网通讯中标志通讯各方身份信息的一串数字,提供了一种在互联网上验证通信实体身份的方式,其作用类似于司机的驾驶执照或日常生活中的身份证。它是由一个由证书授权(Certificate Authority,CA)中心发行的,可以在网上用数字证书来识别对方的身份。
数字证书可以为公钥基础设施(Public Key Infrastructure,PKI)数字证书、509证书等,数字证书的类型可以根据实际应用需求进行设定。
可选地,数字证书包含一个公开密钥、名称以及证书授权中心的数字签名;具体地,第一端的第一数字证书可以包括第一数字证书的公钥和第一端的身份信息等,第二端的第二数字证书包括第二数字证书的公钥和第二端的身份信息等。
第一端执行数字证书验证操作可以是,第一端验证证书授权中心是否是合法的。
一种实施例,第一端执行数字证书验证操作的方式可以是,将数字证书作为预设的验证算法的输入,通过运行该验证算法,输出该数字证书的合法性。其中,数字证书包括第一端的第一数字证书和第二端的第二数字证书。
前面提及第一端和第二端的请求接入方式不同,具体指代也会不同,那么在图3的场景中,第一端指代的是安全防护设备,第二端指代的是业务主机。基于该场景,业务主机向安全防护设备发送握手请求,并且安全防护设备在接收到握手请求后,执行数字证书验证操作,数字证书验证操作是用来验证安全防护设备的第一数字证书和业务主机的第二数字证书是否合法的操作;在实际应用中,业务主机上可以设置有认证客户端,可以通过认证客户端接入网络,以向安全防护设备发送握手请求以及业务主机的第二数字证书。
在图4的场景中,第一端指代的是业务主机,第二端指代的是安全防护设备。基于该场景,安全防护设备向业务主机发送握手请求,并且业务主机在接收到握手请求后,执行数字证书验证操作,数字证书验证操作是验证业务主机的第一数字证书和安全防护设备的第一数字证书是否合法的操作。
其中,业务主机可以为电力监控系统中各个安全区内的设备,安全防护设备也可以为电力监控系统的安全网关设备,相应地,业务主机可以为业务系统和厂站系统中的设备。其中,业务系统可以包括电力监控系统的调度自动化主站系统和操作票系统等,所述调度自动化主站系统包括主站运行控制系统(Operational Control System,OCS)、自动发电控制(Automatic Gain Control,AGC)系统和自动电压控制(Automatic Voltage Control,AVC)系统等,厂站系统可以包括变电站和发电厂等。
S202,若第一数字证书和第二数字证书均合法,则第一端向第二端发送信息认证指令,信息认证指令用于获取第二端的接入报文。
如果第一数字证书和第二数字证书均合法,则第一端向第二端发送信息认证指令,当第二端接收到信息认证指令后,第二端向第一端发送接入报文。
其中,信息认证指令可以是一个发送信号,是指示第二端向第一端发送接入报文的信号,接入报文可以是连接报文。
可选地,第一端向第二端发送信息认证指令,发送的方式可以是通过post或get方式;第一端获取第二端的接入报文,可以是第一端从第二端中获取,也可以是第二端主动向第一端发送的。
前面提及第一端和第二端的请求接入方式不同,具体指代也会不同,那么在图5的场景中,第一端指代的是安全防护设备,第二端指代的是业务主机。基于该场景,业务主机向安全防护设备发送握手请求,安全防护设备接收握手请求后执行数字证书验证操作,若安全防护设备的第一数字证书和业务主机的二数字证书均合法,则安全防护设备向业务主机发送信息认证指令,业务主机收到信息认证指令后,会向安全防护设备发送接入报文。
在图6的场景中,第一端指代的是业务主机,第二端指代的是安全防护设备。基于该场景,安全防护设备向业务主机发送握手请求,业务主机接收握手请求后执行数字证书验证操作,若业务主机的第一数字证书和安全防护设备的第二数字证书均合法,则业务主机向安全防护设备发送信息认证指令,安全防护设备收到信息认证指令后,会向业务主机发送接入报文。
S203,第一端对接入报文进行认证。
报文(message)是网络中交换与传输的数据单元,即站点一次性要发送的数据块;报文包含了将要发送的完整的数据信息,其长短很不一致,长度不限且可变;报文也是网络传输的单位,传输过程中会不断的封装成分组、包、帧来传输,封装的方式就是添加一些信息段,即报文头以一定格式组织起来的数据。
接入报文是第二端申请向第一端接入时的报文,接入报文的认证方式包括传统加密方式的认证、使用密钥的报文认证码方式、使用单向散列函数的认证和数字签名认证方式;例如,若对接入报文使用单向散列函数进行认证,其中,单向散列函数包括消息认证代码(Message Authentication Code,MAC)、循环冗余校验码、安全散列算法(Secure HashAlgorithm,SHA)等。
可选地,第一端对第二端的接入报文进行认证,可以验证第二端是否可以获得对第一端的访问权。
S204,若接入报文认证通过,则第一端向第二端发送认证成功的响应报文;响应报文表示允许在第一端和第二端之间进行数据通信。
接入报文认证通过可以表示第二端获得了对第一端的访问权,第二端可以与第一端进行正常通信。
若接入报文认证通过,表明第二端为可信的设备,即第二端接入认证成功,则第一端向第二端发送认证成功的响应报文,同时第二端可以与第一端开始正常的通信。
其中,响应报文由状态行、响应头部、空行和响应包体组成,状态行由超文本传输协议(HyperText Transfer Protocol,HTTP)版本字段、状态码和状态码的描述文本3个部分组成,状态码由三位数字组成,若响应报文表示的是认证成功的响应报文,则状态码为200OK。
前面提及第一端和第二端的请求接入方式不同,具体指代也会不同,那么在图7的场景中,第一端指代的是安全防护设备,第二端指代的是业务主机。基于该场景,安全防护设备对业务主机发送的接入报文进行认证,若接入报文认证通过,则安全防护设备向业务主机发送认证成功的响应报文,该响应报文表示业务主机与安全防护设备之间可以正常通信。
在图8的场景中,第一端指代的是,第二端指代的是安全防护设备。基于该场景,业务主机对安全防护设备发送的接入报文进行认证,若接入报文认证通过,则业务主机向安全防护设备发送认证成功的响应报文,该响应报文表示安全防护设备与业务主机之间可以正常通信。
若接入报文认证不通过,表明第二端可能是攻击者伪造的设备,为了保证安全性,第二端可以主动断开自身与第一端之间的连接通道,以阻止第一端的接入,整个接入认证方法的流程结束。同时,第二端还可以向第一端回复拒绝接入的响应报文。
上述接入认证方法中,首先第一端响应于第二端发送的握手请求,第一端执行数字证书验证操作,若第一数字证书和第二数字证书均合法,则第一端向第二端发送信息认证指令,信息认证指令用于获取第二端的接入报文,第一端对接入报文进行认证,若接入报文认证通过,则第一端向第二端发送认证成功的响应报文,响应报文表示允许在第一端和第二端之间进行数据通信。该方法中,通过数字证书验证操作验证第一端的第一数字证书和第二端的第二数字证书的合法性,如果第一数字证书和第二数字证书均合法,则第一端向第二端发送信息认证指令,以获取第二端的接入报文,然后第一端再对接入报文进行认证,当接入报文认证通过,第一端和第二端之间才可以进行数据通信,该方法实现了基于数字证书验证和接入报文认证双重验证机制的接入认证方法,能够保证第二端的安全接入,有效地提升了第一端和第二端之间的通信安全。
在一个实施例中,如图9所示,第一端执行数字证书验证操作,包括以下步骤:
S901,第一端向第二端发送第一数字证书,以指示第二端验证第一数字证书的合法性。
基于上述实施例,当第一端接收到第二端发送的握手请求后,第一端就会向第二端发送第一数字证书,当第二端接收到第一数字证书后,第二端会验证第一数字证书的合法性。
其中,第一数字证书是第一端的数字证书,第一数字证书中包括第一端的身份信息。
数字证书是依赖根证书的信任传递机制的,所以验证数字证书的合法性,需要其上级证书参与进来进行验证;除了根证书,每一张数字证书都包含了其上级证书对其的签名,也就是用上级证书的私钥对证书摘要(简记为H1)进行加密。
因此,验证数字证书合法性的方法可以为:验证根证书是否为受信任的根证书,及其下面证书链上每一张数字证书解密后的证书摘要(H2)是否与证书内容计算得出的摘要(H1)一致;如果H2与H1一致,则表示数字证书合法,否则,确定数字证书不合法;其中,数字证书解密后的证书摘要(H2)是使用上级证书的公钥来进行解密的。
S902,第一端接收第二端发送的第二数字证书,第二数字证书为第二端确定第一数字证书合法后发送的。
当第二端确定第一数字证书合法后,会向第一端发送第二数字证书,第一端接收第二数字证书。
第二数字证书是第二端的数字证书,第二数字证书中包括第二端的身份信息。
S903,第一端对第二数字证书的合法性进行校验。
第一端接收到第二数字证书后,会对第二数字证书的合法性进行校验,其中,校验的方式可以与第一数字证书验证的方式相同,在此不做赘述。
S904,若第二数字证书的合法性验证通过,第一端确定第一数字证书和第二数字证书均合法。
如果第二数字证书的合法性验证通过,因为第二端对第一数字证书的合法性验证通过后,才会向第一端发送第二数字证书,因此,第二数字证书的合法性验证通过,则第一端可以确定第一数字证书和第二数字证书均合法。
前面提及第一端和第二端的请求接入方式不同,具体指代也会不同,那么在图10的场景中,第一端指代的是安全防护设备,第二端指代的是业务主机。基于该场景,业务主机向安全防护设备发送握手请求,并且安全防护设备在接收到握手请求后,执行数字证书验证操作,数字证书验证操作包括:安全防护设备向业务主机发送第一数字证书,业务主机验证第一数字证书的合法性,若第一数字证书合法,则业务主机向安全防护设备发送第二数字证书,安全防护设备验证第二数字证书的合法性,若第二数字证书合法,则确定安全防护设备的第一数字证书和业务主机的第二数字证书均合法。
在图11的场景中,第一端指代的是业务主机,第二端指代的是安全防护设备。基于该场景,安全防护设备向业务主机发送握手请求,并且业务主机在接收到握手请求后,执行数字证书验证操作,数字证书验证操作包括:业务主机向安全防护设备发送第一数字证书,安全防护设备验证第一数字证书的合法性,若第一数字证书合法,则安全防护设备向业务主机发送第二数字证书,业务主机验证第二数字证书的合法性,若第二数字证书合法,则确定业务主机的第一数字证书和安全防护设备的第二数字证书均合法。
上述接入认证方法中,第一端向第二端发送第一数字证书,以指示第二端验证第一数字证书的合法性,第一端接收第二端发送的第二数字证书,第二数字证书为第二端确定第一数字证书合法后发送的,第一端对第二数字证书的合法性进行校验,若第二数字证书的合法性验证通过,第一端确定第一数字证书和第二数字证书均合法。该方法中对第一端的第一数字证书和第二端的第二数字证书进行合法验证,提高了第一端和第二端之间的通信安全。
在一个实施例中,如图12所示,第一端向第二端发送第一数字证书,包括以下步骤:
S1201,第一端根据第二端的公钥,对第一参考数字证书进行加密处理,得到第一数字证书;第一参考数字证书包括第一端的身份信息。
为了避免数字证书泄露,第一端和第二端之间可以通过利用加密算法向对方发送各自的数字证书。
第一端向第二端发送第一数字证书之前,第一端需要根据第二端的公钥,对第一参考数字证书进行加密处理,得到第一数字证书。第一参考证书包括第一端的身份信息,能够唯一标识第一端。
对第一参考数字证书进行加密处理的方法可以是,第一端利用加密算法以及第二端的公钥对第一参数数字证书加密,得到加密后的第一参考数字证书,即第一数字证书。其中,加密算法包括对称算法和非对称算法,需要说明的是,本申请实施例中对加密算法的类型不做限定。
S1202,将第一数字证书发送至第二端。
第一端得到第一数字证书后,将第一数字证书发送至第二端,其中,可选地,发送的方式可以通过get或post方法发送。
请继续参见图10和图11。
在图10的场景中,安全防护设备根据业务主机的公钥,对安全防护设备的第一参考数字证书进行加密处理,得到第一数字证书,然后安全防护设备将第一数字证书发送至业务主机。
在图11的场景中,业务主机根据安全防护设备的公钥,对业务主机的第一参考数字证书进行加密处理,得到第一数字证书,然后业务主机将第一数字证书发送至安全防护设备。
上述接入认证方法中,第一端根据第二端的公钥,对第一参考数字证书进行加密处理,得到第一数字证书;第一参考数字证书包括第一端的身份信息;将第一数字证书发送至第二端。该方法中,第一端通过将第一参考数字证书进行加密处理,将加密处理后得到的第一数字证书发送至第二端,保证了第一端和第二端之间的通信安全性。
在一个实施例中,如图13所示,第一端对第二数字证书的合法性进行校验,包括以下步骤:
S1301,第一端对第二数字证书进行解密处理,得到第二参考数字证书;第二参考数字证书包括第二参考数字证书所属认证中心的标识和数字签名。
第一端对第二数字证书进行解密处理,其中,解密的方式是第一端根据第一端的私钥,以及通过加密第二数字证书时对应的解密算法,对第二数字证书进行解密,得到第二参考数字证书。
其中,第二参考数字证书中包括第二参考数字证书所属认证中心的标识和数字签名,第二参考数字证书所属认证中心的标识表示的是第二参考数字证书的签发机构。
S1302,检测预存的认证中心信任列表中是否存在认证中心的标识,以及验证数字签名的篡改状态。
第一端中会预先存储认证中心信任列表,认证中心信任列表中包括第一端可信任的认证中心的标识,第二参考数字证书中包括第二参考数字证书所属认证中心的标识和数字签名。
因此,对第二参考数字证书进行合法性验证时,首先,检测预存的认证中心信任列表中是否存在第二参考数字证书所属认证中心的标识,以及验证数字签名的篡改状态。
在一个实施例中,如图14所示,第二参考数字证书还包括第二端的属性信息;验证数字签名的篡改状态,包括以下步骤:
S1401,第一端获取认证中心的公钥,并根据认证中心的公钥对数字签名进行解密,得到第一哈希值。
第二参考数字证书中包括第二参考数字证书所属认证中心的标识,因此,第一端根据认证中心的标识,从该认证中心中获取认证中心的公钥。
第一端获取认证中心的公钥后,能够根据认证中心的公钥对数字签名进行解密,解密的方式可以根据认证中心的公钥,采用预设的解密算法对数字签名进行解密,得到一个哈希值,将该哈希值确定为第一哈希值。
S1402,第一端根据预设的哈希算法对属性信息进行计算,得到第二哈希值。
将任意长度的二进制值串映射为固定长度的二进制值串,这个映射的规则就是哈希算法,而通过原始数据映射之后得到的二进制值串就是哈希值。
因此,根据预设的哈希算法对属性信息进行计算,会得到一个哈希值,将该哈希值确定为第二哈希值。
哈希算法包括SHA算法和消息摘要算法等,需要说明的是,本申请实施例对河西算法的类型不做任何限定。
S1403,若第一哈希值和第二哈希值相同,则第一端确定数字签名的篡改状态为未篡改。
上述数字签名是根据第二端的属性信息得到的,对数字签名进行解密,得到第一哈希值;利用预设的哈希算法对属性信息进行计算,得到第二哈希值,因此,若第一哈希值和第二哈希值不相同,则表示数字签名发生了改变,确定数字签名的篡改状态为已篡改;若第一哈希值和第二哈希值相同,则第一端确定数字签名的篡改状态为未篡改。
S1303,若认证中心信任列表中存在认证中心的标识,且数字签名的篡改状态为未篡改,则检测认证中心的撤销列表中是否存在第二参考数字证书。
认证中心是证书的签发机构,认证中心是公钥基础设施(Public KeyInfrastructure,PKI)应用中权威的、可信任的、公正的机构,必须具备权威性的特征,它是PKI系统的核心,也是PKI的信任基础,它管理公钥的整个生命周期。认证中心的主要作用是发放和管理数字证书,涉及到数字证书的整个生命周期,包括发放证书、规定证书的有效期和通过发布证书撤销列表(Certificate Revocation Lists,CRL,又称证书废除列表或者证书黑名单)确保必要的情况下可以废除证书等。
因此,如果第一端的认证中心信任列表中存在第二参考数字证书所属认证中心的标识,并且,数字签名的篡改状态为未篡改,需要继续检测认证中心的撤销列表中是否存在第二参考数字证书。
S1304,若认证中心的撤销列表中不存在第二参考数字证书,则确定第二数字证书的合法性验证通过。
如果第二参考数字证书所属认证中心的撤销列表中不存在第二参考数字证书,则表示第二参考数字证书没有在认证中心的证书黑名单或第二参考数字证书在规定证书的有效期内。
因此,若第二参考数字证书所属认证中心的撤销列表中不存在第二参考数字证书,则确定第二数字证书的合法性验证通过;第二数字证书的合法性验证通过,即表示认证中心信任列表中存在认证中心的标识,且数字签名的篡改状态为未篡改,且认证中心的撤销列表中不存在第二参考数字证书。
上述对第二数字证书的合法性验证通过的情况进行了说明,下面通过一个实施例对第二数字证书的合法性验证不通过的情况进行说明,在一个实施例中,若认证中心信任列表中不存在认证中心的标识,或数字签名的篡改状态为已篡改,或认证中心的撤销列表中存在第二参考数字证书,以上三者满足任意一个,则表示第二数字证书的合法性验证不通过。
若第一端判定第二数字证书的合法性验证不通过,则认为发送第二数字证书的第二端可能是攻击者伪造的端,因此,为了保证安全性,第一端可以主动断开自身与第二端之间的连接通道。
上述接入认证方法中,第一端对第二数字证书进行解密处理,得到第二参考数字证书,第二参考数字证书包括第二参考数字证书所属认证中心的标识和数字签名,检测预存的认证中心信任列表中是否存在认证中心的标识,以及验证数字签名的篡改状态,若认证中心信任列表中存在认证中心的标识,且数字签名的篡改状态为未篡改,则检测认证中心的撤销列表中是否存在第二参考数字证书,若认证中心的撤销列表中不存在第二参考数字证书,则确定第二数字证书的合法性验证通过。该方法中,通过对第二数字证书所属认证中心的标识、数字签名的篡改状态和第二数字证书是否在认证中心的撤销列表中进行检测,提高了第一端和第二端之间的通信安全性。
上述实施例对第二数字证书的合法性进行了验证,可选地,验证第一数字证书的合法性的方式可以与验证第二数字证书合法性的方式相同,在此不做赘述。
若第二端判定第一数字证书的合法性验证不通过,则可以认为发送第一数字证书的第一端可能是攻击者伪造的端,因此,为了保证安全性,第二端可以主动断开自身与第一端之间的连接通道。
在一个实施例中,如图15所示,该实施例包括以下步骤:
S1501,若第一数字证书和第二数字证书均合法,则第一端构建与第二端之间的连接通道;连接通道包括第一端与第二端之间的传输协议。
如果第一数字证书和第二数字证书均合法,则可以认为发送第一数字证书的第一端是可信的,发送第二数字证书的第二端是可信的,即双向数字证书验证通过。
当双向数字证书验证通过时,第一端可以在自身与第二端之间建立安全连接通道,建立连接通道的方式可以是第一端向第二端发送第一端与第二端之间的传输协议。
可选地,连接通道的类型可以根据实际情况确定,例如,连接通道可以为安全传输层协议(Transport Layer Security,TLS)连接通道、传输控制协议(TransmissionControl Protocol,TCP)连接通道和安全套接字协议(Secure Sockets Layer,SSL)连接通道。
第一端构建与第二端之间的安全连接通道,可以确保第一端与第二端之间报文传输的可靠性和安全性。
S1502,第一端通过连接通道接收第二端的接入报文。
基于上述第一端构建与第二端之间的连接通道,第二端收到第一端发送的构建连接通道信息后,第二端会通过连接通道向第一端发送接入报文。
在第一端与第二端之间的连接通道构建完成之后,第二端可以获取接入数据,并且基于接入数据生成接入报文,接入报文可以通过第二端的第二数字证书的私钥,对接入数据进行签名得到;接入数据是第二端向第一端发送的接入认证请求数据。
上述接入认证方法中,若第一数字证书和第二数字证书均合法,则第一端构建与第二端之间的连接通道;连接通道包括第一端与第二端之间的传输协议,第一端通过连接通道接收第二端的接入报文。该方法中,在进行接入认证之前,第一端与第二端之间先交换数字证书并进行双向数字证书验证,在双向验证通过之后,第一端构建与第二端之间的连接通道,以接收第二端的接入报文,可以有效保证双方设备的合法性,从而能够得到有效地保证接入认证过程的安全性。
在一个实施例中,如图16所示,接入报文包括接入数据和签名数据;第二数字证书包括第二数字证书的公钥;则第一端对接入报文进行认证,包括:
S1601,第一端根据第二数字证书的公钥对签名数据进行解密,得到第一摘要信息。
第一端对第二数字证书合法性验证通过后,会保存第二数字证书,并且,在第二数字证书中获取第二数字证书的公钥。
接入报文包括接入数据和签名数据;其中,签名数据是第二端根据接入数据和第二数字证书的私钥进行签名得到的。
签名数据的生成方式可以是,第二端根据与第一端预先约定好的摘要提取方式,对接入报文的摘要进行提取,得到接入报文的摘要信息,同时利用第二数字证书的私钥对接入报文的摘要信息进行加密处理,加密处理的方式是基于第二端与第一端预先预定好的加密算法加密,生成加密摘要信息,即签名数据。
其中,摘要提取方式可以根据实际应用需求进行设定,例如,摘要算法(Digest),摘要算法分为消息摘要算法(Message Digest,MD)、安全散列算法和消息认证码(MessageAuthentication Code,MAC);加密算法也可以根据实际应用需求进行设定,例如,分组密码算法、椭圆曲线公钥密码算法和杂凑算法等;本实施例对摘要提取方式和加密算法的类型不做任何限定。
第二端得到签名数据后,将接入数据和签名数据作为接入报文发送至第一端;第一端接收到接入报文后,首先,会根据第二数字证书的公钥对签名数据进行解密,得到第一摘要信息。
其中,对签名数据进行解密时,采用的解密算法是第一端与第二端事先约定好的解密算法,是与第二端得到签名数据时采用的加密算法对应的解密算法。
如果第一端对签名数据解密成功,则表示接入报文是第二端发出的,如果不能对签名数据解密,则表示接入报文并非是第二端发出的;若确定接入报文并非是第二端发送的,则第一端可以主动断开与第二端的连接通道。
S1602,第一端确定签名数据的摘要提取方式,并通过摘要提取方式对接入数据的摘要进行提取,得到第二摘要信息。
如果第一端根据第二数字证书的公钥对接入报文的签名数据解密成功,得到第一摘要信息,那么第一端会根据与第二端预先约定好的摘要提取方式,对接入报文中的接入数据的摘要进行提取,得到第二摘要信息。
需要说明的是,得到第二摘要信息对应的摘要提取方式与得到签名数据的摘要提取方式是相同的,是第一端与第二端事先约定好的一种摘要提取方式,并且,本申请实施例对摘要提取方式不做任何限定。
S1603,对比第一摘要信息和第二摘要信息,若第一摘要信息和第二摘要信息相同,则第一端确定接入报文认证通过。
将上述得到的第一摘要信息和第二摘要信息进行对比,如果第一摘要信息和第二摘要信息相同,则表示接入数据未被篡改过,第一端确定接入报文认证通过;如果第一摘要信息和第二摘要信息不相同,则表示接入数据被篡改过。
上述接入认证方法中,第一端根据第二数字证书的公钥对签名数据进行解密,得到第一摘要信息,第一端确定签名数据的摘要提取方式,并通过摘要提取方式对接入数据的摘要进行提取,得到第二摘要信息,对比第一摘要信息和第二摘要信息,若第一摘要信息和第二摘要信息相同,则第一端确定接入报文认证通过。该方法中,对接入报文中的接入数据进行认证,保证了第一端和第二端之间的通信安全。
在一个实施例中,如图17所示,接入报文包括接入数据和循环冗余校验数据;第二数字证书包括第二数字证书的公钥;则第一端对接入报文进行认证,包括以下步骤:
S1701,第一端根据第二数字证书的公钥对循环冗余校验数据进行解密,得到第一循环冗余校验值。
第一端对第二数字证书合法性验证通过后,会保存第二数字证书,并且,在第二数字证书中获取第二数字证书的公钥。
接入报文包括接入数据和循环冗余校验数据;其中,循环冗余校验数据是第二端根据接入数据和第二数字证书的私钥生成的。
循环冗余校验(Cyclic Redundancy Check,CRC)是一种根据网络数据包或计算机文件等数据产生简短固定位数校验码的一种信道编码技术,主要用来检测或校验数据传输或者保存后可能出现的错误,它是利用除法及余数的原理来作错误侦测的。
在数据传输过程中,无论传输系统的设计再怎么完美,差错总会存在,这种差错可能会导致在链路上传输的一个或者多个帧被破坏(出现比特差错,0变为1,或者1变为0),从而接受方接收到错误的数据;为尽量提高接受方收到数据的正确率,在接收方接收数据之前需要对数据进行差错检测,当且仅当检测的结果为正确时接收方才真正收下数据。
检测的方式有多种,常见的有奇偶校验、因特网校验和循环冗余校验等。循环冗余校验是一种用于校验通信链路上数字传输准确性的计算方法,通过某种数学运算来建立数据位和校验位的约定关系的;发送方计算机使用某公式计算出被传送数据所含信息的一个值,并将此值附在被传送数据后,接收方计算机则对同一数据进行相同的计算,应该得到相同的结果。如果这两个CRC结果不一致,则说明发送中出现了差错,接收方计算机可要求发送方计算机重新发送该数据。
因此,第二端可以向第一端发送带有循环冗余校验数据的接入报文,通过对循环冗余校验数据进行验证,从而确定第二端发送的接入报文是否被篡改。
第二端向第一端发送的接入报文包括接入数据和循环冗余校验数据,其中,循环冗余校验数据的生成方式可以是,第二端采用与第一端预先约定好的校验值生成方式,计算接入数据的循环冗余校验值,同时利用第二数字证书的私钥对接入数据的循环冗余校验值进行加密处理,加密处理的方式是基于第二端与第一端预先预定好的加密算法加密,生成加密循环冗余校验值,即循环冗余校验数据。
其中,校验值生成方式可以根据实际应用需求进行设定,例如,可以采用CRC方法,加密算法可以与上述实施例的限定内容相同,在此不做赘述。
第二端得到循环冗余校验数据后,将接入数据和循环冗余校验数据作为接入报文发送至第一端;第一端接收到接入报文后,首先,会根据第二数字证书的公钥对循环冗余校验数据进行解密,得到第一循环冗余校验值。
其中,对循环冗余校验数据进行解密时,采用的解密算法是第一端与第二端事先约定好的解密算法,是与第二端得到循环冗余校验数据时采用的加密算法对应的解密算法。
如果第一端对循环冗余校验数据解密成功,则表示接入报文是第二端发出的,如果不能对循环冗余校验数据解密,则表示接入报文并非是第二端发出的;若确定接入报文并非是第二端发送的,则第一端可以主动断开与第二端的连接通道。
S1702,第一端根据预设的校验值生成方法对接入数据进行计算,得到第二循环冗余校验值。
如果第一端根据第二数字证书的公钥对接入报文的循环冗余校验数据解密成功,得到第一循环冗余校验值,那么第一端会根据与第二端预先约定好的校验值生成方法,对接入报文中的接入数据进行计算,得到第二循环冗余校验值。
需要说明的是,得到第二循环冗余校验值对应的校验值生成方法与得到循环冗余校验数据的校验值生成方法是相同的,是第一端与第二端事先约定好的一种校验值生成方法,并且,本申请实施例对校验值生成方法不做任何限定。
S1703,对比第一循环冗余校验值和第二循环冗余校验值,若第一循环冗余校验值和第二循环冗余校验值相同,则第一端确定接入报文认证通过。
将上述得到的第一循环冗余校验值和第二循环冗余校验值进行对比,如果第一循环冗余校验值和第二循环冗余校验值相同,则表示接入数据未被篡改过,第一端确定接入报文认证通过;如果第一循环冗余校验值和第二循环冗余校验值不相同,则表示接入数据被篡改过。
上述接入认证方法中,第一端根据第二数字证书的公钥对循环冗余校验数据进行解密,得到第一循环冗余校验值;第一端根据预设的校验值生成方法对接入数据进行计算,得到第二循环冗余校验值;对比第一循环冗余校验值和第二循环冗余校验值;若第一循环冗余校验值和第二循环冗余校验值相同,则第一端确定接入报文认证通过。该方法中,对接入报文中的接入数据进行认证,保证了第一端和第二端之间的通信安全。
在一个实施例中,第一端对接入报文进行解析,确定接入报文对应的数据传输协议,根据数据传输协议对接入报文的顺序进行检查,纠正顺序不对的报文;在实际应用中,当第一端向第二端发送多个接入报文时,各个接入报文的送达顺序可能会与发送顺序不同,此时可以根据数据传输协议对接入报文的顺序进行检查,纠正顺序不对的报文。
在一个实施例中,当接入报文认证通过时,第一端将第二端添加至白名单中。使用白名单的方式,对通过接入认证的第二端提供网络服务。当第二端下线后从白名单上去除,第二端再次接入时需要重新进行接入认证。
示例地,在第二端与第一端正常通信时,如果第一端获取到第二端发送的报文,可以判断第二端是否位于白名单中,如果是,则正常接收报文并对报文进行相应的安全分析及下发等处理,如果否,则阻断报文的下发。
在一个实施例中,以第一端为安全防护设备、第二端为业务主机为例,通过与业务主机交换数字证书,并进行双向数字证书验证,以及对业务主机发送的接入报文进行验签,允许验签通过的业务主机接入,实现了基于身份验签和指令验签双重验签机制的接入认证方案,能够保证业务主机的安全接入,从而有效提升业务主机和安全防护设备之间的通信安全程度,避免由密钥泄露或缺少身份认证机制为业务主机及安全防护设备带来的通信风险。
在一个实施例中,第一端以安全防护设备、第二端以业务主机、接入报文为接入认证请求报文为例,如图18所示,该实施例包括:
S1801,安全防护设备接收业务主机发送的握手请求后,向业务主机发送安全防护设备的第二数字证书,以使业务主机对第二数字证书进行验证。
其中,第二数字证书包括安全防护设备的身份信息;
安全防护设备向业务主机发送第二数字证书之前,可以先利用业务主机的公钥对第二数字证书进行加密;
业务主机对第二数字证书进行验证前,通过业务主机的私钥对第二数字证书进行解密;
所述业务主机对所述第二数字证书进行验证可以包括:判断所述第二数字证书是否由认证中心签发、是否被篡改以及是否在撤销列表中;如果所述第二数字证书由认证中心签发、未被篡改并且未在撤销列表中,则判定所述第二数字证书验证通过;
验证方式与证书的类型有关,证书的类型包括公钥基础设施(Public KeyInfraStructure,PKI)数字证书、509证书等;
S1802,业务主机对第二数字证书验证通过后,向安全防护设备发送第一数字证书;安全防护设备接收第一数字证书后,对第一数字证书进行验证。
其中,第一数字证书包括业务主机的身份信息。
业务主机向安全防护设备发送第一数字证书前,利用安全防护设备的公钥对第一数字证书进行加密;安全防护设备对第一数字证书进行验证前,先利用安全防护设备的私钥对第一数字证书进行解密;对所述业务主机的第一数字证书进行验证可以包括:判断所述第一数字证书是否由认证中心签发、是否被篡改以及是否在撤销列表中;如果所述第一数字证书由认证中心签发、未被篡改并且未在撤销列表中,则判定所述第一数字证书验证通过。
S1803,如果业务主机判定第二数字证书验证通过,且安全防护设备判定第一数字证书验证通过,则确定双向数字证书验证通过。
并且,安全防护设备保存业务主机的第一数字证书,并获取到第一数字证书的公钥,业务主机保存安全防护设备的第二数字证书,并获取第二数字证书的公钥。
如果业务主机判定第二数字证书验证不通过,则业务主机断开与安全防护设备之间的连接通道;如果安全防护设备判定第一数字证书验证不通过,则安全防护设备断开与业务主机之间的连接通道。
S1804,安全防护设备在自身与业务主机之间构建安全连接通道。
其中,安全连接通道可以为安全传输层协议(TranSport Layer Security,TLS)连接通道或传输控制协议(TCP,TranSmiSSion Control Protocol)连接通道等。
S1805,业务主机基于安全连接通道向安全防护设备发送接入认证请求报文。
S1806,安全防护设备利用第一数字证书的公钥对接入认证请求报文进行认证。
若接入认证请求报文包括所述接入认证数据和签名数据,安全防护设备利用第一数字证书的公钥对接入认证请求报文进行认证。
其中,签名数据是根据业务主机的第一数字证书的私钥对接入认证数据进行签名得到的。
得到签名数据具体的方式:利用HASH算法(摘要提取方式)对接入认证数据的摘要进行提取,得到第一摘要信息,同时利用第一数字证书的私钥对第一摘要信息进行加密,得到加密摘要信息,即签名数据。
具体地,验签方式为:安全防护设备利用第一数字证书的公钥对接入认证请求报文中的签名数据进行解密,得到第一摘要信息;安全防护设备基于签名数据对应的摘要提取方式(预先约定好的方式),对接入认证请求报文中的接入认证数据进行提取,得到第二摘要信息;将第一摘要信息和第二摘要信息进行对比;若第一摘要信息和第二摘要信息相同,表示接入认证数据未被篡改过,则确定接入认证请求报文验签通过;否则验签不通过。
若接入认证请求报文包括接入认证数据和循环冗余校验数据,安全防护设备利用第一数字证书的公钥对接入认证请求报文进行验签。
其中,循环冗余校验数据是业务主机根据预先约定好的校验值生成方式,根据接入认证数据计算第一循环冗余校验值,同时利用第一数字证书的私钥,基于预先约定好的加密算法对第一循环冗余校验值进行加密处理,生成加密循环冗余校验值,即可得到循环冗余校验数据。
验签方式为:安全防护设备利用第一数字证书的公钥和预先约定好的解密算法对循环冗余校验数据进行解密,得到第一循环冗余校验值;安全防护设备根据预先约定好的校验值生成方式和接入认证数据,得到第二循环冗余校验值;第一循环冗余校验值和第二循环冗余校验值相同,表示接入认证数据未被篡改过,确定接入认证请求报文验签通过;否则验签不通过。
S1807,当接入认证请求报文认证通过时,向业务主机发送接入认证成功的响应报文;当接入认证请求报文验签不通过时,向业务主机发送接入认证失败的响应报文。
当接入认证请求报文验签通过时,允许业务主机接入,并向业务主机发送接入认证成功的响应报文,同时安全防护设备可以与业务主机开始正常的通信;当接入认证请求报文验签不通过时,安全防护设备可以主动断开自身与业务主机之间的连接通道,并向业务主机发送接入认证失败的响应报文(回复拒绝接入的报文)。
另外,当接入认证请求报文验签通过时,安全防护设备将业务主机添加至白名单中。
可以使用白名单的方式,对通过接入认证的业务主机提供网络服务。当业务主机下线后从白名单上去除,业务主机再次接入时需要重新进行接入认证。
在业务主机与安全防护设备正常通信时,如果安全防护设备获取到业务主机发送的报文,可以判断业务主机是否位于白名单中,如果是,则正常接收报文并对报文进行相应的安全分析及下发等处理,如果否,则阻断所述报文的下发。
本实施例提供的接入认证方法的具体限定可以参见上文中对于接入认证方法中各实施例的步骤限定,在此不再赘述。
应该理解的是,虽然上述实施例中所附的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,上述实施例中所附的图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图19所示,本申请实施例还提供了一种接入认证装置1900,该装置1900包括:验证模块1901、第一发送模块1902、认证模块1903和第二发送模块1904,其中:
验证模块1901,用于第一端响应于第二端发送的握手请求,第一端执行数字证书验证操作;数字证书验证操作用于验证第一端的第一数字证书和第二端的第二数字证书的合法性;
第一发送模块1902,用于若第一数字证书和第二数字证书均合法,则第一端向第二端发送信息认证指令,信息认证指令用于获取第二端的接入报文;
认证模块1903,用于第一端对接入报文进行认证;
第二发送模块1904,用于若接入报文认证通过,则第一端向第二端发送认证成功的响应报文;响应报文表示允许在第一端和第二端之间进行数据通信。
在一个实施例中,验证模块1901包括:
第一发送单元,用于第一端向第二端发送第一数字证书,以指示第二端验证第一数字证书的合法性;
第二发送单元,用于第一端接收第二端发送的第二数字证书,第二数字证书为第二端确定第一数字证书合法后发送的;
校验单元,用于第一端对第二数字证书的合法性进行校验;
第一确定单元,用于若第二数字证书的合法性验证通过,第一端确定第一数字证书和第二数字证书均合法。
在一个实施例中,第一发送单元包括:
加密子单元,用于第一端根据第二端的公钥,对第一参考数字证书进行加密处理,得到第一数字证书;第一参考数字证书包括第一端的身份信息;
第一发送子单元,用于将第一数字证书发送至第二端。
在一个实施例中,校验单元包括:
第一解密子单元,用于第一端对第二数字证书进行解密处理,得到第二参考数字证书;第二参考数字证书包括第二参考数字证书所属认证中心的标识和数字签名;
第一检测子单元,用于检测预存的认证中心信任列表中是否存在认证中心的标识,以及验证数字签名的篡改状态;
第二检测子单元,用于若认证中心信任列表中存在认证中心的标识,且数字签名的篡改状态为未篡改,则检测认证中心的撤销列表中是否存在第二参考数字证书;
第一确定子单元,用于若认证中心的撤销列表中不存在第二参考数字证书,则确定第二数字证书的合法性验证通过。
在一个实施例中,第一检测子单元包括:
第二解密子单元,用于第一端获取认证中心的公钥,并根据认证中心的公钥对数字签名进行解密,得到第一哈希值;
计算子单元,用于第一端根据预设的哈希算法对属性信息进行计算,得到第二哈希值;
第二确定子单元,用于若第一哈希值和第二哈希值相同,则第一端确定数字签名的篡改状态为未篡改。
在一个实施例中,该装置1900还包括:
构建模块,用于若第一数字证书和第二数字证书均合法,则第一端构建与第二端之间的连接通道;连接通道包括第一端与第二端之间的传输协议;
接收模块,用于第一端通过连接通道接收第二端的接入报文。
在一个实施例中,认证模块1903包括:
第一解密单元,用于第一端根据第二数字证书的公钥对签名数据进行解密,得到第一摘要信息;
提取单元,用于第一端确定签名数据的摘要提取方式,并通过摘要提取方式对接入数据的摘要进行提取,得到第二摘要信息;
第二确定单元,用于对比第一摘要信息和第二摘要信息,若第一摘要信息和第二摘要信息相同,则第一端确定接入报文认证通过。
在一个实施例中,认证模块1903包括:
第二解密单元,用于第一端根据第二数字证书的公钥对循环冗余校验数据进行解密,得到第一循环冗余校验值;
计算单元,用于第一端根据预设的校验值生成方法对接入数据进行计算,得到第二循环冗余校验值;
第三确定单元,用于对比第一循环冗余校验值和第二循环冗余校验值,若第一循环冗余校验值和第二循环冗余校验值相同,则第一端确定接入报文认证通过。
关于接入认证装置的具体限定可以参见上文中对于接入认证方法中各步骤的限定,在此不再赘述。上述接入认证装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以以硬件形式内嵌于或独立于目标设备,也可以以软件形式存储于目标设备中的存储器中,以便于目标设备调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,如图20所示,该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种接入认证方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,上述计算机设备的结构描述仅仅是与本申请方案相关的部分结构,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
本实施例中处理器实现的各步骤,其实现原理和技术效果与上述接入认证方法的原理类似,在此不再赘述。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
本实施例中计算机程序被处理器执行时实现的各步骤,其实现原理和技术效果与上述接入认证方法的原理类似,在此不再赘述。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
本实施例中计算机程序被处理器执行时实现的各步骤,其实现原理和技术效果与上述接入认证方法的原理类似,在此不再赘述。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

Claims (10)

1.一种接入认证方法,其特征在于,所述方法包括:
第一端响应于第二端发送的握手请求,所述第一端执行数字证书验证操作;所述数字证书验证操作用于验证所述第一端的第一数字证书和所述第二端的第二数字证书的合法性;
若所述第一数字证书和所述第二数字证书均合法,则所述第一端向所述第二端发送信息认证指令,所述信息认证指令用于获取所述第二端的接入报文;
所述第一端对所述接入报文进行认证;
若所述接入报文认证通过,则所述第一端向所述第二端发送认证成功的响应报文;所述响应报文表示允许在所述第一端和所述第二端之间进行数据通信。
2.根据权利要求1所述的方法,其特征在于,所述第一端执行数字证书验证操作,包括:
所述第一端向所述第二端发送所述第一数字证书,以指示所述第二端验证所述第一数字证书的合法性;
所述第一端接收所述第二端发送的第二数字证书,所述第二数字证书为所述第二端确定所述第一数字证书合法后发送的;
所述第一端对所述第二数字证书的合法性进行校验;
若第二数字证书的合法性验证通过,所述第一端确定所述第一数字证书和所述第二数字证书均合法。
3.根据权利要求2所述的方法,其特征在于,所述第一端向所述第二端发送第一数字证书,包括:
所述第一端根据所述第二端的公钥,对第一参考数字证书进行加密处理,得到所述第一数字证书;所述第一参考数字证书包括所述第一端的身份信息;
将所述第一数字证书发送至所述第二端。
4.根据权利要求2或3所述的方法,其特征在于,所述第一端对所述第二数字证书的合法性进行校验,包括:
所述第一端对所述第二数字证书进行解密处理,得到第二参考数字证书;所述第二参考数字证书包括所述第二参考数字证书所属认证中心的标识和数字签名;
检测预存的认证中心信任列表中是否存在所述认证中心的标识,以及验证所述数字签名的篡改状态;
若所述认证中心信任列表中存在所述认证中心的标识,且所述数字签名的篡改状态为未篡改,则检测所述认证中心的撤销列表中是否存在所述第二参考数字证书;
若所述认证中心的撤销列表中不存在所述第二参考数字证书,则确定所述第二数字证书的合法性验证通过。
5.根据权利要求4所述的方法,其特征在于,所述第二参考数字证书还包括所述第二端的属性信息;所述验证所述数字签名的篡改状态,包括:
所述第一端获取所述认证中心的公钥,并根据所述认证中心的公钥对所述数字签名进行解密,得到第一哈希值;
所述第一端根据预设的哈希算法对所述属性信息进行计算,得到第二哈希值;
若所述第一哈希值和所述第二哈希值相同,则所述第一端确定所述数字签名的篡改状态为未篡改。
6.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:
若所述第一数字证书和所述第二数字证书均合法,则所述第一端构建与所述第二端之间的连接通道;所述连接通道包括所述第一端与所述第二端之间的传输协议;
所述第一端通过所述连接通道接收所述第二端的接入报文。
7.根据权利要求1-3任一项所述的方法,其特征在于,所述接入报文包括接入数据和签名数据;所述第二数字证书包括所述第二数字证书的公钥;则所述第一端对所述接入报文进行认证,包括:
所述第一端根据所述第二数字证书的公钥对所述签名数据进行解密,得到第一摘要信息;
所述第一端确定所述签名数据的摘要提取方式,并通过所述摘要提取方式对所述接入数据的摘要进行提取,得到第二摘要信息;
对比所述第一摘要信息和所述第二摘要信息,若所述第一摘要信息和所述第二摘要信息相同,则所述第一端确定所述接入报文认证通过。
8.根据权利要求1-3任一项所述的方法,其特征在于,所述接入报文包括接入数据和循环冗余校验数据;所述第二数字证书包括所述第二数字证书的公钥;则所述第一端对所述接入报文进行认证,包括:
所述第一端根据所述第二数字证书的公钥对所述循环冗余校验数据进行解密,得到第一循环冗余校验值;
所述第一端根据预设的校验值生成方法对所述接入数据进行计算,得到第二循环冗余校验值;
对比所述第一循环冗余校验值和所述第二循环冗余校验值,若所述第一循环冗余校验值和所述第二循环冗余校验值相同,则所述第一端确定所述接入报文认证通过。
9.一种接入认证装置,其特征在于,所述装置包括:
验证模块,用于第一端响应于第二端发送的握手请求,所述第一端执行数字证书验证操作;所述数字证书验证操作用于验证所述第一端的第一数字证书和所述第二端的第二数字证书的合法性;
第一发送模块,用于若所述第一数字证书和所述第二数字证书均合法,则所述第一端向所述第二端发送信息认证指令,所述信息认证指令用于获取所述第二端的接入报文;
认证模块,用于所述第一端对所述接入报文进行认证;
第二发送模块,用于若所述接入报文认证通过,则所述第一端向所述第二端发送认证成功的响应报文;所述响应报文表示允许在所述第一端和所述第二端之间进行数据通信。
10.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至8中任一项所述的方法的步骤。
CN202210373051.3A 2022-04-11 2022-04-11 接入认证方法、装置和计算机设备 Pending CN114745180A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210373051.3A CN114745180A (zh) 2022-04-11 2022-04-11 接入认证方法、装置和计算机设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210373051.3A CN114745180A (zh) 2022-04-11 2022-04-11 接入认证方法、装置和计算机设备

Publications (1)

Publication Number Publication Date
CN114745180A true CN114745180A (zh) 2022-07-12

Family

ID=82281357

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210373051.3A Pending CN114745180A (zh) 2022-04-11 2022-04-11 接入认证方法、装置和计算机设备

Country Status (1)

Country Link
CN (1) CN114745180A (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050138351A1 (en) * 2003-12-23 2005-06-23 Lee Sok J. Server authentication verification method on user terminal at the time of extensible authentication protocol authentication for Internet access
CN106487511A (zh) * 2015-08-27 2017-03-08 阿里巴巴集团控股有限公司 身份认证方法及装置
CN107360125A (zh) * 2016-05-10 2017-11-17 普天信息技术有限公司 接入认证方法、无线接入点和用户终端
WO2020186827A1 (zh) * 2019-03-21 2020-09-24 深圳壹账通智能科技有限公司 用户认证方法、装置、计算机设备及计算机可读存储介质
US20210184869A1 (en) * 2019-12-17 2021-06-17 Microchip Technology Incorporated Mutual authentication protocol for systems with low-throughput communication links, and devices for performing the same
CN113242235A (zh) * 2021-05-08 2021-08-10 卡斯柯信号有限公司 一种对铁路信号安全通信协议rssp-i加密认证的系统及其方法
CN113596046A (zh) * 2021-08-03 2021-11-02 中电金信软件有限公司 一种双向认证方法及装置
CN113709109A (zh) * 2021-07-27 2021-11-26 云南昆钢电子信息科技有限公司 一种基于云端与边缘端数据交换的安全系统和方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050138351A1 (en) * 2003-12-23 2005-06-23 Lee Sok J. Server authentication verification method on user terminal at the time of extensible authentication protocol authentication for Internet access
CN106487511A (zh) * 2015-08-27 2017-03-08 阿里巴巴集团控股有限公司 身份认证方法及装置
CN107360125A (zh) * 2016-05-10 2017-11-17 普天信息技术有限公司 接入认证方法、无线接入点和用户终端
WO2020186827A1 (zh) * 2019-03-21 2020-09-24 深圳壹账通智能科技有限公司 用户认证方法、装置、计算机设备及计算机可读存储介质
US20210184869A1 (en) * 2019-12-17 2021-06-17 Microchip Technology Incorporated Mutual authentication protocol for systems with low-throughput communication links, and devices for performing the same
CN113242235A (zh) * 2021-05-08 2021-08-10 卡斯柯信号有限公司 一种对铁路信号安全通信协议rssp-i加密认证的系统及其方法
CN113709109A (zh) * 2021-07-27 2021-11-26 云南昆钢电子信息科技有限公司 一种基于云端与边缘端数据交换的安全系统和方法
CN113596046A (zh) * 2021-08-03 2021-11-02 中电金信软件有限公司 一种双向认证方法及装置

Similar Documents

Publication Publication Date Title
CN111953705B (zh) 物联网身份认证方法、装置及电力物联网身份认证系统
CN103051453B (zh) 一种基于数字证书的移动终端网络安全交易系统与方法
CN111556025A (zh) 基于加密、解密操作的数据传输方法、系统和计算机设备
CN101212293B (zh) 一种身份认证方法及系统
CN111614621B (zh) 物联网通信方法和系统
CN111552270B (zh) 用于车载诊断的安全认证和数据传输方法及装置
CN103107996A (zh) 数字证书在线下载方法及系统、数字证书发放平台
CN103067402A (zh) 数字证书的生成方法和系统
CN104038486A (zh) 一种基于标识型密码实现用户登录鉴别的系统及方法
CN105610773A (zh) 一种电能表远程抄表的通讯加密方法
CN112417494A (zh) 基于可信计算的电力区块链系统
CN112165386B (zh) 一种基于ecdsa的数据加密方法及系统
CN105281910A (zh) 带ca数字证书作为入网身份识别的物联网锁及其入网身份识别方法
CN111147257A (zh) 身份认证和信息保密的方法、监控中心和远程终端单元
WO2022135391A1 (zh) 身份鉴别方法、装置、存储介质、程序、及程序产品
CN110929231A (zh) 数字资产的授权方法、装置和服务器
CN107566393A (zh) 一种基于受信任证书的动态权限验证系统及方法
CN114331456A (zh) 一种通信方法、装置、系统以及可读存储介质
CN111245611B (zh) 基于秘密共享和可穿戴设备的抗量子计算身份认证方法及系统
CN113676330B (zh) 一种基于二级密钥的数字证书申请系统及方法
KR101256114B1 (ko) 다수의 mac검증서버에 의한 메시지인증코드 검증 방법 및 시스템
CN114422266A (zh) 一种基于双重验证机制的IDaaS系统
CN114745180A (zh) 接入认证方法、装置和计算机设备
CN114696999A (zh) 一种身份鉴别方法和装置
CN114760026A (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