CN115549929A - 基于零信任网络隐身的spa单包认证方法及装置 - Google Patents
基于零信任网络隐身的spa单包认证方法及装置 Download PDFInfo
- Publication number
- CN115549929A CN115549929A CN202211520757.4A CN202211520757A CN115549929A CN 115549929 A CN115549929 A CN 115549929A CN 202211520757 A CN202211520757 A CN 202211520757A CN 115549929 A CN115549929 A CN 115549929A
- Authority
- CN
- China
- Prior art keywords
- signature
- server side
- certificate
- control center
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3247—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3263—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3297—Cryptographic 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 time stamps, e.g. generation of time stamps
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种基于零信任网络隐身的SPA单包认证方法及装置。其中,该方法包括:客户端设备获取第一算法的签名证书,其中,签名证书中存储有签名公钥,签名公钥对应的签名私钥包括:由客户端设备生成的第一签名私钥以及由服务端侧的控制中心设备生成的第二签名私钥;客户端设备通过签名证书对应的签名私钥封装认证报文,并将认证报文发送至服务端侧的网关设备,其中,认证报文由服务端侧的网关设备转发至服务端侧的控制中心设备;在接收到服务端侧的控制中心设备基于认证报文对客户端设备成功认证的消息的情况下,客户端设备与服务端侧的网关设备建立安全隧道,其中,安全隧道用于实现客户端设备和服务端侧的网关设备之间的业务数据传输。
Description
技术领域
本申请涉及设备认证领域,具体而言,涉及一种基于零信任网络隐身的SPA单包认证方法及装置。
背景技术
现有的设备认证方案一般仅通过对称算法或基于HMAC的一次性密码算法(AnHMAC-Based One-Time Password,HOTP)等算法,利用零信任单包授权SPA认证报文进行认证,均是基于软件进行认证,容易被破解或伪造,存在安全性漏洞,容易被黑客攻击。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种基于零信任网络隐身的SPA单包认证方法及装置,以至少解决现有的设备认证方案容易被破解或伪造,存在安全漏洞,安全性较低的技术问题。
根据本申请实施例的一个方面,提供了一种基于零信任网络隐身的SPA单包认证方法,包括:客户端设备获取第一算法的签名证书,其中,签名证书中存储有签名公钥,签名公钥对应的签名私钥包括:由客户端设备生成的第一签名私钥以及由服务端侧的控制中心设备生成的第二签名私钥;客户端设备通过签名证书对应的签名私钥封装认证报文,并将认证报文发送至服务端侧的网关设备,其中,认证报文由服务端侧的网关设备转发至服务端侧的控制中心设备;在接收到服务端侧的控制中心设备基于认证报文对客户端设备成功认证的消息的情况下,客户端设备与服务端侧的网关设备建立安全隧道,其中,安全隧道用于实现客户端设备和服务端侧的网关设备之间的业务数据传输。
可选地,客户端设备通过签名证书对应的签名私钥封装认证报文,包括:客户端设备从服务端侧的控制中心设备获取第一时间戳,并生成第一随机数,其中,第一时间戳是服务端侧的控制中心设备从时间戳服务器获取的;客户端设备对第一时间戳和第一随机数进行预处理,得到第一签名值;客户端设备将签名证书对应的证书序列号和第一签名值发送至服务端侧的控制中心设备,其中,证书序列号是客户端设备解析签名证书得到的;客户端设备接收服务端侧的控制中心设备返回的第二签名值,其中,第二签名值通过以下方式生成:服务端侧的控制中心设备利用证书序列号查找第二签名私钥,并通过第二签名私钥,采用协同签名算法对拼接后的第一签名值和第二随机数进行计算,得到第二签名值,其中,第二随机数由服务端侧的控制中心设备生成;客户端设备通过第一签名私钥,采用协同签名算法对拼接后的第一时间戳、第一随机数以及第二签名值进行计算,得到最终签名值;客户端设备通过设备密钥,采用第二算法对拼接后的第一时间戳和第一随机数进行计算,得到密文,其中,设备密钥是客户端设备向服务端侧的控制中心设备注册得到的;客户端设备将最终签名值、密文以及证书序列号封装为认证报文。
可选地,客户端设备对第一时间戳和第一随机数进行预处理,得到第一签名值,包括:客户端设备对第一时间戳和第一随机数进行预处理,得到第一预处理值;客户端设备将证书序列号和第一预处理值发送至服务端侧的控制中心设备;客户端设备接收服务端侧的控制中心设备返回的第二预处理值,并对第二预处理值进行校验,其中,第二预处理值通过以下方式生成:服务端侧的控制中心设备利用证书序列号查找签名公钥和第二签名私钥,并利用签名公钥和第二签名私钥对第一预处理值进行校验,校验成功后生成第二随机数,对第二随机数进行预处理,生成第二预处理值;客户端设备对第二预处理值校验成功后,通过第一签名私钥,采用协同签名算法对拼接后的第一时间戳及第一随机数进行计算,得到第一签名值。
可选地,服务端侧的控制中心设备通过以下第一方法对客户端设备进行认证:通过证书序列号在证书存储目录中查找签名证书;在证书吊销列表中查询签名证书是否被吊销;通过在线证书状态协议查询签名证书是否处于有效状态;如果签名证书被吊销,或者未处于有效状态,确定客户端设备认证失败。
可选地,服务端侧的控制中心设备还通过以下第二方法对客户端设备进行认证:通过证书序列号查找设备密钥,利用设备密钥对密文进行解密,得到拼接后的第一时间戳和第一随机数;从时间戳服务器获取第二时间戳,如果第二时间戳与第一时间戳的时间差没有位于预设范围内,确定客户端设备由于认证超时导致认证失败;在服务端侧的控制中心设备的缓存中查找第一随机数,如果服务端侧的控制中心设备的缓存中存在第一随机数,确定由于在预设时长内重复发起认证请求导致客户端设备认证失败。
可选地,服务端侧的控制中心设备还通过以下第三方法对客户端设备进行认证:通过根证书验签签名证书是否处于有效状态;若签名证书未处于有效状态,确定客户端设备认证失败;若签名证书处于有效状态,利用签名证书对最终签名值进行验签;若最终签名值验签失败,确定客户端设备认证失败。
可选地,如果服务端侧的控制中心设备通过第一方法,第二方法及第三方法对客户端设备进行认证均认证成功,确定客户端设备认证成功。
可选地,客户端设备将认证报文发送至服务端侧的网关设备,包括:与服务端侧的网关设备建立连接;通过传输控制协议向服务端侧的网关设备发送认证报文。
根据本申请实施例的另一方面,还提供了另一种基于零信任网络隐身的SPA单包认证方法,包括:服务端侧的控制中心设备接收由服务端侧的网关设备转发的认证报文,其中,认证报文是客户端设备通过第一算法的签名证书对应的签名私钥封装得到的,签名证书中存储有签名公钥,签名公钥对应的签名私钥包括:由客户端设备生成的第一签名私钥以及由服务端侧的控制中心设备生成的第二签名私钥;服务端侧的控制中心设备通过认证报文对客户端设备进行认证。
根据本申请实施例的另一方面,还提供了一种基于零信任网络隐身的SPA单包认证装置,包括:获取模块,用于获取第一算法的签名证书,其中,签名证书中存储有签名公钥,签名公钥对应的签名私钥包括:由客户端设备生成的第一签名私钥以及由服务端侧的控制中心设备生成的第二签名私钥;处理模块,用于通过签名证书对应的签名私钥封装认证报文,并将认证报文发送至服务端侧的网关设备,其中,认证报文由服务端侧的网关设备转发至服务端侧的控制中心设备;建立模块,用于在接收到服务端侧的控制中心设备基于认证报文对客户端设备成功认证的消息的情况下,客户端设备与服务端侧的网关设备建立安全隧道,其中,安全隧道用于实现客户端设备和服务端侧的网关设备之间的业务数据传输。
根据本申请实施例的再一方面,还提供了一种非易失性存储介质,非易失性存储介质中存储有程序,其中,在程序运行时控制非易失性存储介质所在设备执行以上的基于零信任网络隐身的SPA单包认证方法。
根据本申请实施例的再一方面,还提供了一种电子设备,包括:存储器和处理器,处理器用于运行存储在存储器中的程序,其中,程序运行时执行以上的基于零信任网络隐身的SPA单包认证方法。
在本申请实施例中,采用客户端设备获取第一算法的签名证书,其中,签名证书中存储有签名公钥,签名公钥对应的签名私钥包括:由客户端设备生成的第一签名私钥以及由服务端侧的控制中心设备生成的第二签名私钥;客户端设备通过签名证书对应的签名私钥封装认证报文,并将认证报文发送至服务端侧的网关设备,其中,认证报文由服务端侧的网关设备转发至服务端侧的控制中心设备;在接收到服务端侧的控制中心设备基于认证报文对客户端设备成功认证的消息的情况下,客户端设备与服务端侧的网关设备建立安全隧道,其中,安全隧道用于实现客户端设备和服务端侧的网关设备之间的业务数据传输的方式,通过采用协同签名算法为核心技术,采用PKI体系,结合CA数字证书,通过数字签名、签名验签的手段,产生单包认证请求,并验证合法性,达到了SPA认证报文身份的唯一性,密码算法的安全性和不可伪造性的目的,从而实现了提高设备认证的安全性的技术效果,进而解决了现有的设备认证方案容易被破解或伪造,存在安全漏洞,安全性较低技术问题。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1示出了一种用于实现基于零信任网络隐身的SPA单包认证方法的计算机终端(或移动设备)的硬件结构框图;
图2是根据本申请实施例的一种基于零信任网络隐身的SPA单包认证方法的流程图;
图3是根据本申请实施例的一种封装认证报文的方法的流程图;
图4是根据本申请实施例的客户端设备对第一时间戳和第一随机数进行预处理的流程图;
图5是根据本申请实施例的另一种基于零信任网络隐身的SPA单包认证方法的流程图;
图6是根据本申请实施例的一种基于零信任网络隐身的SPA单包认证装置的结构框图;
图7是本申请实施例的一种电子设备的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
为了更好地理解本申请实施例,以下将本申请实施例中涉及的技术术语解释如下:
零信任:一种安全理念,不相信任何人,除非明确接入者身份,否则将无法通过验证,进行下一步操作。
SPA单包:Single Packet Authorization,是一种轻量级的安全协议。
PKI:Public Key Infrastructure,公共基础设施,是一个包括硬件、软件、人员、策略和规程的集合,用来实现基于公钥密码体制的密钥和证书的产生、管理、存储、分发和撤销等功能。
CA:是证书的签发机构,负责签发证书、认证证书、管理已颁发证书。证书的内容包括:电子签证机关的信息、公钥用户信息、公钥、权威机构的签字和有效期等。证书的格式和验证方法普遍遵循X.509国际标准。
在相关技术中,设备认证方案一般仅通过对称算法或基于HOTP等算法,利用零信任单包授权SPA认证报文进行认证,均是基于软件进行认证,容易被破解或伪造,存在安全性漏洞,容易被黑客攻击,因此,存在设备认证安全性低的问题。为了解决该问题,本申请实施例中提供了技术方案通过SPA单包认证技术进行网络隐身后,通过TCP协议握手建立连接之后,先进行SPA报文的设备认证,再进行SSL握手进行用户身份认证,最后建立安全隧道。解决了允许建立TCP连接之后,网络安全性的问题。以下详细说明。
根据本申请实施例,提供了一种基于零信任网络隐身的SPA单包认证方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机***中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请实施例所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。图1示出了一种用于实现基于零信任网络隐身的SPA单包认证方法的计算机终端(或移动设备)的硬件结构框图。如图1所示,计算机终端10(或移动设备10)可以包括一个或多个(图中采用102a、102b,……,102n来示出)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输装置106。除此以外,还可以包括:显示器、输入/输出接口(I/O接口)、通用串行总线(USB)端口(可以作为BUS总线的端口中的一个端口被包括)、网络接口、电源和/或相机。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
应当注意到的是上述一个或多个处理器102和/或其他数据处理电路在本文中通常可以被称为“数据处理电路”。该数据处理电路可以全部或部分的体现为软件、硬件、固件或其他任意组合。此外,数据处理电路可为单个独立的处理模块,或全部或部分的结合到计算机终端10(或移动设备)中的其他元件中的任意一个内。如本申请实施例中所涉及到的,该数据处理电路作为一种处理器控制(例如与接口连接的可变电阻终端路径的选择)。
存储器104可用于存储应用软件的软件程序以及模块,如本申请实施例中的基于零信任网络隐身的SPA单包认证方法对应的程序指令/数据存储装置,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的应用程序的基于零信任网络隐身的SPA单包认证方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
显示器可以例如触摸屏式的液晶显示器(LCD),该液晶显示器可使得用户能够与计算机终端10(或移动设备)的用户界面进行交互。
在上述运行环境下,本申请实施例提供了一种基于零信任网络隐身的SPA单包认证方法,如图2所示,该方法包括如下步骤:
步骤S202,客户端设备获取第一算法的签名证书,其中,签名证书中存储有签名公钥,签名公钥对应的签名私钥包括:由客户端设备生成的第一签名私钥以及由服务端侧的控制中心设备生成的第二签名私钥。
本申请中的客户端设备为基于SDP技术的客户端,即零信任客户端。上述第一算法为SM2算法,SM2算法是国家密码管理局于2010年12月17日发布的椭圆曲线公钥密码算法。在本步骤中,SDP客户端向CA证书颁发***,申请SM2算法签名证书。
在本申请的实施例中,签名密钥对的私钥包括两部分,一部分由SDP客户端产生并加密存储在本地硬盘,一部分由服务端侧的控制中心设备产生并存储在密码设备中。签名密钥对的公钥由SDP客户端产生的公钥部分和服务端侧的控制中心设备产生的公钥部分计算得出最终的签名公钥,并存储在本地签名证书中。
步骤S204,客户端设备通过签名证书对应的签名私钥封装认证报文,并将认证报文发送至服务端侧的网关设备,其中,认证报文由服务端侧的网关设备转发至服务端侧的控制中心设备。
在执行步骤S204时,客户端设备访问服务端侧的网关设备,建立TCP连接之后,将认证报文发送至服务端侧的网关设备,由服务端侧的网关设备将认证报文转发到服务端侧的控制中心设备。
步骤S206,在接收到服务端侧的控制中心设备基于认证报文对客户端设备成功认证的消息的情况下,客户端设备与服务端侧的网关设备建立安全隧道,其中,安全隧道用于实现客户端设备和服务端侧的网关设备之间的业务数据传输。
服务端侧的控制中心设备将SPA认证结果返回至服务端侧的网关设备;SDP客户端再与服务端侧的网关设备进行GMTLS协议双向认证,建立安全隧道,确保SDP客户端和服务端侧的网关设备之间进行数据加密传输,保证网络安全。
通过上述步骤,通过采用协同签名算法为核心技术,采用PKI体系,结合CA数字证书,通过数字签名、签名验签的手段,产生单包认证请求,并验证合法性,达到了SPA认证报文身份的唯一性,密码算法的安全性和不可伪造性的目的,从而实现了提高设备认证的安全性的技术效果。
图3是根据本申请实施例的一种封装认证报文的方法的流程图,如图3所示,执行步骤S204客户端设备通过签名证书对应的签名私钥封装认证报文,通过以下方法实现:
步骤S301,客户端设备从服务端侧的控制中心设备获取第一时间戳,并生成第一随机数,其中,第一时间戳是服务端侧的控制中心设备从时间戳服务器获取的;
SDP客户端首先校验用户输入的PIN码,获取私钥访问权限,PIN码全称PersonalIdentification Number,是指SIM卡的个人识别密码。然后,SDP客户端从服务端侧的控制中心设备请求获取时间戳T1(即上文中的第一时间戳),该时间戳由服务端侧的控制中心设备从时间戳服务器获取。SDP客户端生成随机数R1(即上述第一随机数)。
步骤S302,客户端设备对第一时间戳和第一随机数进行预处理,得到第一签名值;
图4是根据本申请实施例的客户端设备对第一时间戳和第一随机数进行预处理的流程图,如图4所示,包括以下步骤:
步骤S401,客户端设备对第一时间戳和第一随机数进行预处理,得到第一预处理值;
SDP客户端对待签名原数据(R1+T1)进行预处理,得到预处理值Q1和P2。
步骤S402,客户端设备将证书序列号和第一预处理值发送至服务端侧的控制中心设备;
SDP客户端解析设备上的签名证书对应的证书序列号SN,并将证书序列号SN、预处理值Q1和P2发送至服务端侧的控制中心设备。
步骤S403,客户端设备接收服务端侧的控制中心设备返回的第二预处理值,并对第二预处理值进行校验,其中,第二预处理值通过以下方式生成:服务端侧的控制中心设备利用证书序列号查找签名公钥和第二签名私钥,并利用签名公钥和第二签名私钥对第一预处理值进行校验,校验成功后生成第二随机数,对第二随机数进行预处理,生成第二预处理值;
服务端侧的控制中心设备通过证书序列号SN查找服务端则存储的签名公钥和第二签名私钥,利用签名公钥和第二签名私钥校验处理值Q1和P2的有效性;校验成功后生成随机数R2(即第二随机数);对随机数R2进行预处理,得到预处理值Q2和P1。
服务端侧的控制中心设备将处理值Q2和P1返回SDP客户端。
步骤S404,客户端设备对第二预处理值校验成功后,通过第一签名私钥,采用协同签名算法对拼接后的第一时间戳及第一随机数进行计算,得到第一签名值。
SDP客户端校验处理值Q2和P1的有效性,校验成功后,利用第一签名私钥对拼接后的第一时间戳及第一随机数(R1+T1)进行协同签名计算,得到签名值S1(即第一签名值)。
协调签名算法是基于SM2算的一种改进算法,具体是基于SM2算法做了密钥分割处理。
步骤S303,客户端设备将签名证书对应的证书序列号和第一签名值发送至服务端侧的控制中心设备,其中,证书序列号是客户端设备解析签名证书得到的;
SDP客户端将证书序列号SN和第一签名值S1发送至服务端侧的控制中心设备。
步骤S304,客户端设备接收服务端侧的控制中心设备返回的第二签名值,其中,第二签名值通过以下方式生成:服务端侧的控制中心设备利用证书序列号查找第二签名私钥,并通过第二签名私钥,采用协同签名算法对拼接后的第一签名值和第二随机数进行计算,得到第二签名值,其中,第二随机数由服务端侧的控制中心设备生成;
服务端侧的控制中心设备通过证书序列号SN查找第二签名私钥,并利用第二签名私钥对拼接后的第一签名值和第二随机数(S1+R2)进行协同签名计算,得到第二签名值S2。
服务端侧的控制中心设备将第二签名值S2返回SDP客户端。
步骤S305,客户端设备通过第一签名私钥,采用协同签名算法对拼接后的第一时间戳、第一随机数以及第二签名值进行计算,得到最终签名值;
SDP客户端通过第一签名私钥对拼接后的(R1+T1+S2)进行协同签名计算,得到最终签名值S。
步骤S306,客户端设备通过设备密钥,采用第二算法对拼接后的第一时间戳和第一随机数进行计算,得到密文,其中,设备密钥是客户端设备向服务端侧的控制中心设备注册得到的;
SDP客户端利用设备密钥(SDP客户端向服务端注册得到),将T1+R1采用SM4算法进行加密计算,得到密文C。
步骤S307,客户端设备将最终签名值、密文以及证书序列号封装为认证报文。
SDP客户端将最终签名值S、密文C、签名证书序列号SN封装为SPA报文(即上述认证报文)。
根据本申请的一个可选的实施例,服务端侧的控制中心设备通过以下第一方法对客户端设备进行认证:通过证书序列号在证书存储目录中查找签名证书;在证书吊销列表中查询签名证书是否被吊销;通过在线证书状态协议查询签名证书是否处于有效状态;如果签名证书被吊销,或者未处于有效状态,确定客户端设备认证失败。
在本步骤中,服务端接收到SDP客户端发送的认证报文后,利用签名证书的证书序列号SN在LDAP中查询签名证书,然后在CRL中查询签名证书是否被吊销,在OCSP查询证书是否为有效状态。
LDAP是轻量目录访问协议,英文全称是Lightweight Directory AccessProtocol,一般简称为LDAP。
CRL是证书吊销列表,英文全称是Certificate Revocation List,是在网络中使用公钥结构存取服务器的两种常用方法中的一个。
OCSP是指在线证书状态协议,是维护服务器和其它网络资源安全性的两种普遍模式之一。
在本步骤中,如果查询到签名证书被吊销或者签名证书处于无效状态,确定客户端设备认证失败。
根据本申请的另一个可选的实施例,服务端侧的控制中心设备还通过以下第二方法对客户端设备进行认证:通过证书序列号查找设备密钥,利用设备密钥对密文进行解密,得到拼接后的第一时间戳和第一随机数;从时间戳服务器获取第二时间戳,如果第二时间戳与第一时间戳的时间差没有位于预设范围内,确定客户端设备由于认证超时导致认证失败;在服务端侧的控制中心设备的缓存中查找第一随机数,如果服务端侧的控制中心设备的缓存中存在第一随机数,确定由于在预设时长内重复发起认证请求导致客户端设备认证失败。
服务端侧的控制中心设备利用签名证书的证书序列号SN查找设备密钥K,然后利用设备密钥K对密文C进行解密,得到第一时间戳T1和第一随机数R1;连接时间戳服务器,获取第二时间戳T2,计算T2-T1的时间差,判断是否超时,若超时,则认证失败。
此外,服务端侧的控制中心设备在缓存中查找第一随机数R1是否存在,若存在则代表重放。SDP客户端向服务端侧的控制中心设备发起认证请求,如果服务端侧的控制中心设备对SDP客户端认证成功,则将SDP客户端的随机数R1在服务端侧本地缓存预设时长,如果在该预设时长内SDP客户端再次发起认证请求,服务端侧的控制中心设备接收到SDP客户端的随机数R1,并且查询到本地缓存有相同的随机数R1,则确定存在重放,说明SDP客户端发送的数据包可能是被修改或者替换过的数据包,在这种情况下,认证不通过。
在一个可选的技术方案中,服务端侧的控制中心设备还通过以下第三方法对客户端设备进行认证:通过根证书验签签名证书是否处于有效状态;若签名证书未处于有效状态,确定客户端设备认证失败;若签名证书处于有效状态,利用签名证书对最终签名值进行验签;若最终签名值验签失败,确定客户端设备认证失败。
在本步骤中,服务端侧的控制中心设备利用根证书验签签名证书的有效性,若签名证书验签通过,利用签名证书对最终签名值S3进验签。
作为本申请的一个可选的实施例,如果服务端侧的控制中心设备通过第一方法,第二方法及第三方法对客户端设备进行认证均认证成功,确定客户端设备认证成功。
在上文提到了三种对SDP客户端进行认证的方法,需要说明的是,在这三种认证方法中存在任何一种认证方法对SDP客户端认证失败的情况下,SDP客户端均认证不通过。也就是说,在上述三种方法对SDP客户端均认证成功的情况下,才确定SDP客户端认证通过。
作为本申请的一个可选的实施例,客户端设备将认证报文发送至服务端侧的网关设备,通过以下方法实现:与服务端侧的网关设备建立连接;通过传输控制协议向服务端侧的网关设备发送认证报文。
SDP客户端访问服务端侧的网关设备,建立TCP连接之后,发送上述SPA认证报文。
TCP协议为传输控制协议,英文全称为Transmission Control Protocol,是一种面向连接的、可靠的、基于字节流的传输层通信协议。通过TCP协议传输认证报文,可以保护服务器资源。
本申请实施例提供的设备认证方法,可以避免服务器资源在开放业务端口之前和之后的网络攻击。基于协同签名技术,运用CA数字证书,签名验签技术,时间戳技术,验证逻辑复杂,并通过密码计算得出认证结果。安全性高,抗破解,抗身份伪造,防身份抵赖,防重放。
图5是根据本申请实施例的另一种基于零信任网络隐身的SPA单包认证方法的流程图,如图5所示,该方法包括以下步骤:
步骤S502,服务端侧的控制中心设备接收由服务端侧的网关设备转发的认证报文,其中,认证报文是客户端设备通过第一算法的签名证书对应的签名私钥封装得到的,签名证书中存储有签名公钥,签名公钥对应的签名私钥包括:由客户端设备生成的第一签名私钥以及由服务端侧的控制中心设备生成的第二签名私钥。
步骤S504,服务端侧的控制中心设备通过认证报文对客户端设备进行认证。
需要说明的是,图5所示实施例的优选实施方式可以参见图2所示实施例的相关描述,此处不再赘述。
图6是根据本申请实施例的一种基于零信任网络隐身的SPA单包认证装置的结构框图,如图6所示,该装置包括:
获取模块60,用于获取第一算法的签名证书,其中,签名证书中存储有签名公钥,签名公钥对应的签名私钥包括:由客户端设备生成的第一签名私钥以及由服务端侧的控制中心设备生成的第二签名私钥;
处理模块62,用于通过签名证书对应的签名私钥封装认证报文,并将认证报文发送至服务端侧的网关设备,其中,认证报文由服务端侧的网关设备转发至服务端侧的控制中心设备;
建立模块64,用于在接收到服务端侧的控制中心设备基于认证报文对客户端设备成功认证的消息的情况下,客户端设备与服务端侧的网关设备建立安全隧道,其中,安全隧道用于实现客户端设备和服务端侧的网关设备之间的业务数据传输。
需要说明的是,图6所示实施例的优选实施方式可以参见图2所示实施例的相关描述,此处不再赘述。
需要说明的是,上述设备的认证装置中的各个模块可以是程序模块(例如是实现某种特定功能的程序指令集合),也可以是硬件模块,对于后者,其可以表现为以下形式,但不限于此:上述各个模块的表现形式均为一个处理器,或者,上述各个模块的功能通过一个处理器实现。
本申请实施例还提供了一种非易失性存储介质,非易失性存储介质中存储有程序,其中,在程序运行时控制非易失性存储介质所在设备执行以上的基于零信任网络隐身的SPA单包认证方法。
上述非易失性存储介质用于存储执行以下功能的程序:客户端设备获取第一算法的签名证书,其中,签名证书中存储有签名公钥,签名公钥对应的签名私钥包括:由客户端设备生成的第一签名私钥以及由服务端侧的控制中心设备生成的第二签名私钥;客户端设备通过签名证书对应的签名私钥封装认证报文,并将认证报文发送至服务端侧的网关设备,其中,认证报文由服务端侧的网关设备转发至服务端侧的控制中心设备;在接收到服务端侧的控制中心设备基于认证报文对客户端设备成功认证的消息的情况下,客户端设备与服务端侧的网关设备建立安全隧道,其中,安全隧道用于实现客户端设备和服务端侧的网关设备之间的业务数据传输。以及
服务端侧的控制中心设备接收由服务端侧的网关设备转发的认证报文,其中,认证报文是客户端设备通过第一算法的签名证书对应的签名私钥封装得到的,签名证书中存储有签名公钥,签名公钥对应的签名私钥包括:由客户端设备生成的第一签名私钥以及由服务端侧的控制中心设备生成的第二签名私钥;服务端侧的控制中心设备通过认证报文对客户端设备进行认证。
图7是本申请实施例的一种电子设备的结构框图,如图7所示,该电子设备包括:存储器70和处理器72,处理器72用于运行存储在存储器70中的程序,其中,程序运行时执行以上的基于零信任网络隐身的SPA单包认证方法。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对相关技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (12)
1.一种基于零信任网络隐身的SPA单包认证方法,其特征在于,包括:
客户端设备获取第一算法的签名证书,其中,所述签名证书中存储有签名公钥,所述签名公钥对应的签名私钥包括:由所述客户端设备生成的第一签名私钥以及由服务端侧的控制中心设备生成的第二签名私钥;
所述客户端设备通过所述签名证书对应的签名私钥封装认证报文,并将所述认证报文发送至所述服务端侧的网关设备,其中,所述认证报文由所述服务端侧的网关设备转发至所述服务端侧的控制中心设备;
在接收到所述服务端侧的控制中心设备基于所述认证报文对所述客户端设备成功认证的消息的情况下,所述客户端设备与所述服务端侧的网关设备建立安全隧道,其中,所述安全隧道用于实现所述客户端设备和所述服务端侧的网关设备之间的业务数据传输。
2.根据权利要求1所述的方法,其特征在于,所述客户端设备通过所述签名证书对应的签名私钥封装认证报文,包括:
所述客户端设备从所述服务端侧的控制中心设备获取第一时间戳,并生成第一随机数,其中,所述第一时间戳是所述服务端侧的控制中心设备从时间戳服务器获取的;
所述客户端设备对所述第一时间戳和所述第一随机数进行预处理,得到第一签名值;
所述客户端设备将所述签名证书对应的证书序列号和所述第一签名值发送至所述服务端侧的控制中心设备,其中,所述证书序列号是所述客户端设备解析所述签名证书得到的;
所述客户端设备接收所述服务端侧的控制中心设备返回的第二签名值,其中,所述第二签名值通过以下方式生成:所述服务端侧的控制中心设备利用所述证书序列号查找所述第二签名私钥,并通过所述第二签名私钥,采用协同签名算法对拼接后的所述第一签名值和第二随机数进行计算,得到所述第二签名值,其中,所述第二随机数由所述服务端侧的控制中心设备生成;
所述客户端设备通过所述第一签名私钥,采用协同签名算法对拼接后的所述第一时间戳、所述第一随机数以及所述第二签名值进行计算,得到最终签名值;
所述客户端设备通过设备密钥,采用第二算法对拼接后的所述第一时间戳和所述第一随机数进行计算,得到密文,其中,所述设备密钥是所述客户端设备向所述服务端侧的控制中心设备注册得到的;
所述客户端设备将所述最终签名值、所述密文以及所述证书序列号封装为所述认证报文。
3.根据权利要求2所述的方法,其特征在于,所述客户端设备对所述第一时间戳和所述第一随机数进行预处理,得到第一签名值,包括:
所述客户端设备对所述第一时间戳和所述第一随机数进行预处理,得到第一预处理值;
所述客户端设备将所述证书序列号和所述第一预处理值发送至所述服务端侧的控制中心设备;
所述客户端设备接收所述服务端侧的控制中心设备返回的第二预处理值,并对所述第二预处理值进行校验,其中,所述第二预处理值通过以下方式生成:所述服务端侧的控制中心设备利用所述证书序列号查找所述签名公钥和所述第二签名私钥,并利用所述签名公钥和所述第二签名私钥对所述第一预处理值进行校验,校验成功后生成所述第二随机数,对所述第二随机数进行预处理,生成所述第二预处理值;
所述客户端设备对所述第二预处理值校验成功后,通过所述第一签名私钥,采用所述协同签名算法对拼接后的所述第一时间戳及所述第一随机数进行计算,得到所述第一签名值。
4.根据权利要求2所述的方法,其特征在于,所述服务端侧的控制中心设备通过以下第一方法对所述客户端设备进行认证:
通过所述证书序列号在证书存储目录中查找所述签名证书;
在证书吊销列表中查询所述签名证书是否被吊销;
通过在线证书状态协议查询所述签名证书是否处于有效状态;
如果所述签名证书被吊销,或者未处于有效状态,确定所述客户端设备认证失败。
5.根据权利要求4所述的方法,其特征在于,所述服务端侧的控制中心设备还通过以下第二方法对所述客户端设备进行认证:
通过所述证书序列号查找所述设备密钥,利用所述设备密钥对所述密文进行解密,得到拼接后的所述第一时间戳和所述第一随机数;
从所述时间戳服务器获取第二时间戳,如果所述第二时间戳与所述第一时间戳的时间差没有位于预设范围内,确定所述客户端设备由于认证超时导致认证失败;
在所述服务端侧的控制中心设备的缓存中查找所述第一随机数,如果所述服务端侧的控制中心设备的缓存中存在所述第一随机数,确定由于在预设时长内重复发起认证请求导致所述客户端设备认证失败。
6.根据权利要求5所述的方法,其特征在于,所述服务端侧的控制中心设备还通过以下第三方法对所述客户端设备进行认证:
通过根证书验签所述签名证书是否处于有效状态;
若所述签名证书未处于所述有效状态,确定所述客户端设备认证失败;
若所述签名证书处于所述有效状态,利用所述签名证书对所述最终签名值进行验签;
若所述最终签名值验签失败,确定所述客户端设备认证失败。
7.根据权利要求6所述的方法,其特征在于,如果所述服务端侧的控制中心设备通过所述第一方法,所述第二方法及所述第三方法对所述客户端设备进行认证均认证成功,确定所述客户端设备认证成功。
8.根据权利要求1所述的方法,其特征在于,所述客户端设备将所述认证报文发送至所述服务端侧的网关设备,包括:
与所述服务端侧的网关设备建立连接;
通过传输控制协议向所述服务端侧的网关设备发送所述认证报文。
9.一种基于零信任网络隐身的SPA单包认证方法,其特征在于,包括:
服务端侧的控制中心设备接收由所述服务端侧的网关设备转发的认证报文,其中,所述认证报文是客户端设备通过第一算法的签名证书对应的签名私钥封装得到的,所述签名证书中存储有签名公钥,所述签名公钥对应的签名私钥包括:由所述客户端设备生成的第一签名私钥以及由所述服务端侧的控制中心设备生成的第二签名私钥;
所述服务端侧的控制中心设备通过所述认证报文对所述客户端设备进行认证。
10.一种基于零信任网络隐身的SPA单包认证装置,其特征在于,包括:
获取模块,用于获取第一算法的签名证书,其中,所述签名证书中存储有签名公钥,所述签名公钥对应的签名私钥包括:由客户端设备生成的第一签名私钥以及由服务端侧的控制中心设备生成的第二签名私钥;
处理模块,用于通过所述签名证书对应的签名私钥封装认证报文,并将所述认证报文发送至所述服务端侧的网关设备,其中,所述认证报文由所述服务端侧的网关设备转发至所述服务端侧的控制中心设备;
建立模块,用于在接收到所述服务端侧的控制中心设备基于所述认证报文对所述客户端设备成功认证的消息的情况下,所述客户端设备与所述服务端侧的网关设备建立安全隧道,其中,所述安全隧道用于实现所述客户端设备和所述服务端侧的网关设备之间的业务数据传输。
11.一种非易失性存储介质,其特征在于,所述非易失性存储介质中存储有程序,其中,在所述程序运行时控制所述非易失性存储介质所在设备执行权利要求1至9中任意一项所述的基于零信任网络隐身的SPA单包认证方法。
12.一种电子设备,其特征在于,包括:存储器和处理器,所述处理器用于运行存储在所述存储器中的程序,其中,所述程序运行时执行权利要求1至9中任意一项所述的基于零信任网络隐身的SPA单包认证方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211520757.4A CN115549929B (zh) | 2022-11-30 | 2022-11-30 | 基于零信任网络隐身的spa单包认证方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211520757.4A CN115549929B (zh) | 2022-11-30 | 2022-11-30 | 基于零信任网络隐身的spa单包认证方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115549929A true CN115549929A (zh) | 2022-12-30 |
CN115549929B CN115549929B (zh) | 2023-03-10 |
Family
ID=84722135
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211520757.4A Active CN115549929B (zh) | 2022-11-30 | 2022-11-30 | 基于零信任网络隐身的spa单包认证方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115549929B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111404696A (zh) * | 2020-03-31 | 2020-07-10 | 中国建设银行股份有限公司 | 协同签名方法、安全服务中间件、相关平台及*** |
CN111614637A (zh) * | 2020-05-08 | 2020-09-01 | 郑州信大捷安信息技术股份有限公司 | 一种基于软件密码模块的安全通信方法及*** |
CN112651036A (zh) * | 2020-12-31 | 2021-04-13 | 厦门亿力吉奥信息科技有限公司 | 基于协同签名的身份认证方法及计算机可读存储介质 |
US20210306162A1 (en) * | 2018-07-11 | 2021-09-30 | Ledger, Sas | Security Governance of the Processing of a Digital Request |
CN114553568A (zh) * | 2022-02-25 | 2022-05-27 | 重庆邮电大学 | 一种基于零信任单包认证与授权的资源访问控制方法 |
-
2022
- 2022-11-30 CN CN202211520757.4A patent/CN115549929B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210306162A1 (en) * | 2018-07-11 | 2021-09-30 | Ledger, Sas | Security Governance of the Processing of a Digital Request |
CN111404696A (zh) * | 2020-03-31 | 2020-07-10 | 中国建设银行股份有限公司 | 协同签名方法、安全服务中间件、相关平台及*** |
CN111614637A (zh) * | 2020-05-08 | 2020-09-01 | 郑州信大捷安信息技术股份有限公司 | 一种基于软件密码模块的安全通信方法及*** |
CN112651036A (zh) * | 2020-12-31 | 2021-04-13 | 厦门亿力吉奥信息科技有限公司 | 基于协同签名的身份认证方法及计算机可读存储介质 |
CN114553568A (zh) * | 2022-02-25 | 2022-05-27 | 重庆邮电大学 | 一种基于零信任单包认证与授权的资源访问控制方法 |
Also Published As
Publication number | Publication date |
---|---|
CN115549929B (zh) | 2023-03-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9055107B2 (en) | Authentication delegation based on re-verification of cryptographic evidence | |
US9313033B2 (en) | Derived certificate based on changing identity | |
CN111416807B (zh) | 数据获取方法、装置及存储介质 | |
US7975139B2 (en) | Use and generation of a session key in a secure socket layer connection | |
US20060190723A1 (en) | Payload layer security for file transfer | |
CN110020524B (zh) | 一种基于智能卡的双向认证方法 | |
CN111756529B (zh) | 一种量子会话密钥分发方法及*** | |
CN114520976B (zh) | 用户身份识别卡的认证方法及装置、非易失性存储介质 | |
CN113411187B (zh) | 身份认证方法和***、存储介质及处理器 | |
WO2014069985A1 (en) | System and method for identity-based entity authentication for client-server communications | |
CN110912686A (zh) | 一种安全通道的密钥的协商方法及*** | |
CN111756528A (zh) | 一种量子会话密钥分发方法、装置及通信架构 | |
CN115549929B (zh) | 基于零信任网络隐身的spa单包认证方法及装置 | |
CN113438650B (zh) | 基于区块链的网络设备认证方法及*** | |
CN115333779A (zh) | 一种验证数据的方法、装置及电子设备 | |
CN114329426A (zh) | 一种客户端认证方法、装置、设备以及存储介质 | |
CN114707158A (zh) | 基于tee的网络通信认证方法以及网络通信认证*** | |
CA2795420C (en) | Derived certificate based on changing identity | |
CN115883104B (zh) | 终端设备的安全登录方法及装置、非易失性存储介质 | |
Garzon et al. | DID Connect: Authentication in TLS with Decentralized Identifiers and Verifiable Credentials | |
CN117354032A (zh) | 一种基于代码服务器的多重认证方法 | |
AU2002259074B2 (en) | Use and generation of a session key in a secure socket layer connection | |
CN117676580A (zh) | 一种基于车载网关的安全认证方法 | |
WO2005055516A1 (en) | Method and apparatus for data certification by a plurality of users using a single key pair | |
Dong et al. | Security Analysis of Real World Protocols |
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 |