CN112115461A - 设备认证方法、装置、计算机设备和存储介质 - Google Patents
设备认证方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN112115461A CN112115461A CN202011311625.1A CN202011311625A CN112115461A CN 112115461 A CN112115461 A CN 112115461A CN 202011311625 A CN202011311625 A CN 202011311625A CN 112115461 A CN112115461 A CN 112115461A
- Authority
- CN
- China
- Prior art keywords
- matrix
- authentication
- equipment
- key
- encryption
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/45—Structures or tools for the administration of authentication
- G06F21/46—Structures or tools for the administration of authentication by designing passwords or checking the strength of passwords
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Storage Device Security (AREA)
Abstract
本申请涉及一种设备认证方法、装置、计算机设备和存储介质。所述方法包括:获取待认证设备对应的混淆密钥;将混淆密钥发送至待认证设备,以使待认证设备获取设备待加密信息,基于混淆密钥对设备待加密信息进行加密认证处理,得到待认证设备对应的设备认证码;接收待认证设备发送的设备认证码,从设备认证码中提取待认证设备对应的目标认证数据和目标加密数据;基于混淆密钥对目标加密数据进行解密处理,得到设备解密信息;基于混淆密钥对设备解密信息进行认证处理,得到待认证设备对应的参考认证数据;基于参考认证数据和目标认证数据确定待认证设备的设备认证结果。采用本方法能够提高设备认证的安全性。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种设备认证方法、装置、计算机设备和存储介质。
背景技术
随着计算机技术的发展,物联网产业规模不断扩大,物联网终端设备和业务应用发展迅速。对物联网设备进行认证是物联网服务的关键环节,可以避免发生设备伪造、仿冒以及恶意控制等安全风险。
传统技术中,设备的认证都是基于同一个通用密钥对多个设备进行认证。然而这种认证方式下,黑客通过破解一个设备就可以获取到通用密钥,进而批量破解其他设备,存在安全性较低的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高设备认证安全性的设备认证方法、装置、计算机设备和存储介质。
一种设备认证方法,所述方法包括:
获取待认证设备对应的混淆密钥;
将混淆密钥发送至待认证设备,以使待认证设备获取设备待加密信息,基于混淆密钥对设备待加密信息进行加密认证处理,得到待认证设备对应的设备认证码;
接收待认证设备发送的设备认证码,从设备认证码中提取待认证设备对应的目标认证数据和目标加密数据;
基于混淆密钥对目标加密数据进行解密处理,得到设备解密信息;
基于混淆密钥对设备解密信息进行认证处理,得到待认证设备对应的参考认证数据;
基于参考认证数据和目标认证数据确定待认证设备的设备认证结果。
在一个实施例中,将混淆密钥发送至待认证设备,以使待认证设备获取设备待加密信息,基于混淆密钥对设备待加密信息进行加密认证处理,得到待认证设备对应的设备认证码,包括:
基于混淆密钥对设备待加密信息进行认证处理,得到待认证设备对应的目标认证数据;
获取加密辅助信息,基于混淆密钥对加密辅助信息进行加密处理,得到初始加密数据;
将初始加密数据和设备待加密信息进行融合处理,得到待认证设备对应的目标加密数据;
基于目标加密数据和目标认证数据得到设备认证码。
在一个实施例中,将混淆密钥发送至待认证设备之前,所述方法还包括:
获取待认证设备的设备信息,根据设备信息生成待认证设备对应的设备标识;
将设备标识发送至待认证设备;
基于目标加密数据和目标认证数据得到设备认证码,包括:
基于设备标识对目标加密数据进行加密,得到更新加密数据;
基于目标认证数据和更新加密数据得到设备认证码。
在一个实施例中,设备认证码携带对应的生成时间,所述方法还包括:
当生成时间和设备认证码的接收时间的时间差超过预设时间阈值时,确定设备认证结果为认证失败。
在一个实施例中,设备待加密信息包括设备公钥和设备随机数,服务器待加密信息包括服务器公钥和服务器随机数,所述方法还包括:
当设备认证结果为认证通过时,获取服务器私钥,基于服务器私钥和设备公钥生成服务器初始会话密钥;
基于设备随机数、服务器随机数和服务器初始会话密钥得到服务器目标会话密钥;
将服务器目标会话密钥发送至待认证设备对应的设备服务器;服务器目标会话密钥用于对设备服务器与待认证设备的通话数据进行加密和解密。
在一个实施例中,所述方法还包括:
当服务器认证结果为认证通过时,待认证设备获取设备私钥,基于设备私钥和服务器公钥生成设备初始会话密钥;
基于设备随机数、服务器随机数和设备初始会话密钥得到设备目标会话密钥;设备目标会话密钥用于对待认证设备与设备服务器的通话数据进行加密和解密。
一种设备认证装置,所述装置包括:
密钥获取模块,用于获取待认证设备对应的混淆密钥;
密钥发送模块,用于将混淆密钥发送至待认证设备,以使待认证设备获取设备待加密信息,基于混淆密钥对设备待加密信息进行加密认证处理,得到待认证设备对应的设备认证码;
数据提取模块,用于接收待认证设备发送的设备认证码,从设备认证码中提取待认证设备对应的目标认证数据和目标加密数据;
数据解密模块,用于基于混淆密钥对目标加密数据进行解密处理,得到设备解密信息;
数据认证模块,用于基于混淆密钥对设备解密信息进行认证处理,得到待认证设备对应的参考认证数据;
认证结果确定模块,用于基于参考认证数据和目标认证数据确定待认证设备的设备认证结果。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取待认证设备对应的混淆密钥;
将混淆密钥发送至待认证设备,以使待认证设备获取设备待加密信息,基于混淆密钥对设备待加密信息进行加密认证处理,得到待认证设备对应的设备认证码;
接收待认证设备发送的设备认证码,从设备认证码中提取待认证设备对应的目标认证数据和目标加密数据;
基于混淆密钥对目标加密数据进行解密处理,得到设备解密信息;
基于混淆密钥对设备解密信息进行认证处理,得到待认证设备对应的参考认证数据;
基于参考认证数据和目标认证数据确定待认证设备的设备认证结果。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取待认证设备对应的混淆密钥;
将混淆密钥发送至待认证设备,以使待认证设备获取设备待加密信息,基于混淆密钥对设备待加密信息进行加密认证处理,得到待认证设备对应的设备认证码;
接收待认证设备发送的设备认证码,从设备认证码中提取待认证设备对应的目标认证数据和目标加密数据;
基于混淆密钥对目标加密数据进行解密处理,得到设备解密信息;
基于混淆密钥对设备解密信息进行认证处理,得到待认证设备对应的参考认证数据;
基于参考认证数据和目标认证数据确定待认证设备的设备认证结果。
上述设备认证方法、装置、计算机设备和存储介质,通过获取待认证设备对应的混淆密钥;将混淆密钥发送至待认证设备,以使待认证设备获取设备待加密信息,基于混淆密钥对设备待加密信息进行加密认证处理,得到待认证设备对应的设备认证码;接收待认证设备发送的设备认证码,从设备认证码中提取待认证设备对应的目标认证数据和目标加密数据;基于混淆密钥对目标加密数据进行解密处理,得到设备解密信息;基于混淆密钥对设备解密信息进行认证处理,得到待认证设备对应的参考认证数据;基于参考认证数据和目标认证数据确定待认证设备的设备认证结果。这样,相对于普通密钥,混淆密钥的数据结构更复杂,基于复杂度更高的混淆密钥对设备进行认证可以提高设备认证的安全性。并且,不同的设备对应不同的混淆密钥,基于设备对应的专用混淆密钥对设备进行认证可以进一步提高设备认证的安全性。
一种设备认证方法,所述方法包括:
接收认证服务器发送的混淆密钥;
获取设备待加密信息,基于混淆密钥对设备待加密信息进行加密认证处理,得到设备认证码;
将设备认证码发送至认证服务器,以使认证服务器从设备认证码中提取目标认证数据和目标加密数据,基于混淆密钥对目标加密数据进行解密处理,得到设备解密信息,基于混淆密钥对设备解密信息进行认证处理,得到参考认证数据,基于参考认证数据和目标认证数据确定设备认证结果。
一种设备认证装置,所述装置包括:
密钥接收模块,用于接收认证服务器发送的混淆密钥;
信息加密认证模块,用于获取设备待加密信息,基于混淆密钥对设备待加密信息进行加密认证处理,得到设备认证码;
认证结果确定模块,用于将设备认证码发送至认证服务器,以使认证服务器从设备认证码中提取目标认证数据和目标加密数据,基于混淆密钥对目标加密数据进行解密处理,得到设备解密信息,基于混淆密钥对设备解密信息进行认证处理,得到参考认证数据,基于参考认证数据和目标认证数据确定设备认证结果。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
接收认证服务器发送的混淆密钥;
获取设备待加密信息,基于混淆密钥对设备待加密信息进行加密认证处理,得到设备认证码;
将设备认证码发送至认证服务器,以使认证服务器从设备认证码中提取目标认证数据和目标加密数据,基于混淆密钥对目标加密数据进行解密处理,得到设备解密信息,基于混淆密钥对设备解密信息进行认证处理,得到参考认证数据,基于参考认证数据和目标认证数据确定设备认证结果。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
接收认证服务器发送的混淆密钥;
获取设备待加密信息,基于混淆密钥对设备待加密信息进行加密认证处理,得到设备认证码;
将设备认证码发送至认证服务器,以使认证服务器从设备认证码中提取目标认证数据和目标加密数据,基于混淆密钥对目标加密数据进行解密处理,得到设备解密信息,基于混淆密钥对设备解密信息进行认证处理,得到参考认证数据,基于参考认证数据和目标认证数据确定设备认证结果。
上述设备认证方法、装置、计算机设备和存储介质,通过接收认证服务器发送的混淆密钥;获取设备待加密信息,基于混淆密钥对设备待加密信息进行加密认证处理,得到设备认证码;将设备认证码发送至认证服务器,以使认证服务器从设备认证码中提取目标认证数据和目标加密数据,基于混淆密钥对目标加密数据进行解密处理,得到设备解密信息,基于混淆密钥对设备解密信息进行认证处理,得到参考认证数据,基于参考认证数据和目标认证数据确定设备认证结果。这样,相对于普通密钥,混淆密钥的数据结构更复杂,基于复杂度更高的混淆密钥对设备进行认证可以提高设备认证的安全性。并且,不同的设备对应不同的混淆密钥,基于设备对应的专用混淆密钥对设备进行认证可以进一步提高设备认证的安全性。
附图说明
图1为一个实施例中设备认证方法的应用环境图;
图2为一个实施例中设备认证方法的流程示意图;
图3为一个实施例中设备获取混淆密钥的时序图;
图4为一个实施例中设备获取设备认证SDK的时序图;
图5为另一个实施例中设备获取混淆密钥的时序图;
图6为一个实施例中对初始密钥进行密钥拓展的流程示意图;
图7为一个实施例中生成混沌密钥的流程示意图;
图8为一个实施例中生成设备认证码的流程示意图;
图9为一个实施例中生成目标认证数据的流程示意图;
图10为一个实施例中生成初始加密数据的流程示意图;
图11为一个实施例中生成目标加密数据的流程示意图;
图12为一个实施例中基于混沌密钥进行加密处理的流程示意图;
图13为一个实施例中基于初始密钥进行加密处理的流程示意图;
图14为另一个实施例中设备认证方法的流程示意图;
图15为一个实施例中设备认证方法的时序图;
图16为一个实施例中生成设备认证码的流程示意图;
图17为一个实施例中设备认证装置的结构框图;
图18为另一个实施例中设备认证装置的结构框图;
图19为又一个实施例中设备认证装置的结构框图;
图20为一个实施例中计算机设备的内部结构图;
图21为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的设备认证方法,可以应用于如图1所示的应用环境中。其中,待认证设备102通过网络与认证服务器104进行通信。认证服务器104获取待认证设备102对应的混淆密钥,将混淆密钥发送至待认证设备102。待认证设备102获取设备待加密信息,基于混淆密钥对设备待加密信息进行加密认证处理,得到对应的设备认证码,并将设备认证码发送至认证服务器104。认证服务器104从设备认证码中提取待认证设备对应的目标认证数据和目标加密数据,基于混淆密钥对目标加密数据进行解密处理,得到设备解密信息,基于混淆密钥对设备解密信息进行认证处理,得到待认证设备对应的参考认证数据,基于参考认证数据和目标认证数据确定待认证设备的设备认证结果。
其中,认证服务器104可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。待认证设备102可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
云技术(Cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。
云安全(Cloud Security) 是指基于云计算商业模式应用的安全软件、硬件、用户、机构、安全云平台的总称。云安全融合了并行处理、网格计算、未知病毒行为判断等新兴技术和概念,通过网状的大量客户端对网络中软件行为的异常监测,获取互联网中木马、恶意程序的最新信息,并发送到服务端进行自动分析和处理,再把病毒和木马的解决方案分发到每一个客户端。
云安全主要研究方向包括:1. 云计算安全,主要研究如何保障云自身及云上各种应用的安全,包括云计算机系统安全、用户数据的安全存储与隔离、用户接入认证、信息传输安全、网络攻击防护、合规审计等;2. 安全基础设施的云化,主要研究如何采用云计算新建与整合安全基础设施资源,优化安全防护机制,包括通过云计算技术构建超大规模安全事件、信息采集与处理平台,实现对海量信息的采集与关联分析,提升全网安全事件把控能力及风险控制能力;3. 云安全服务,主要研究各种基于云计算平台为用户提供的安全服务,如防病毒服务等。
在一个实施例中,如图2所示,提供了一种设备认证方法,以该方法应用于图1中的认证服务器104为例进行说明,包括以下步骤:
步骤S202,获取待认证设备对应的混淆密钥。
其中,认证服务器是用于提供设备认证服务的服务器。混沌密钥是对初始密钥进行混淆后得到的密钥,混沌密钥的安全性能更高。混沌密钥用于对信息进行加密和解密。不同的待认证设备对应不同的混沌密钥,基于各个设备专用的混淆密钥可以进一步提高设备认证的安全性。
具体地,认证服务器可以在本地生成待认证设备对应的初始密钥,对初始密钥进行混淆后,生成待认证设备对应的混沌密钥。认证服务器也可以从其他计算机设备获取待认证设备对应的初始密钥,对初始密钥进行混淆后生成混沌密钥。
在一个实施例中,认证服务器可以在接收到待认证设备发送的设备认证请求后,生成待认证设备对应的混淆密钥。具体地,待认证设备可以生成携带设备信息的设备认证请求,并将设备认证请求发送至认证服务器。认证服务器接收到设备认证请求后,可以根据设备信息生成待认证设备在认证服务器中对应的唯一设备标识,生成待认证设备对应的初始密钥,对初始密钥进行混淆后生成待认证设备对应的混沌密钥。认证服务器向待认证设备返回生成的设备标识和混沌密钥。认证服务器可以将设备信息和对应的设备标识、初始密钥、混淆密钥在本地关联存储。
在一个实施例中,认证服务器可以根据自定义的公式对初始密钥进行混淆后生成待认证设备对应的混沌密钥,例如,根据预设规则将初始密钥生成多个中间密钥,每个中间密钥包括部分初始密钥的真实信息和混淆信息,各个中间密钥组成混沌密钥,这样,设备获取到混沌密钥后,可以根据预设规则从各个中间密钥中按顺序提取信息并组合,还原得到初始密钥,再基于初始密钥进行加密认证处理。认证服务器也可以根据白盒密码算法对初始密钥进行混淆后生成待认证设备对应的混沌密钥,例如,AES(Advanced EncryptionStandard,高级加密标准)白盒密码算法。通过白盒密码算法对初始密钥进行混淆,可以在受到白盒攻击时保障初始密钥的安全性。
在一个实施例中,认证服务器可以对初始密钥进行密钥拓展,将初始密钥拓展为各轮加密对应的密钥。认证服务器获取输入信息,将输入信息经过多轮加密和混淆得到输出信息,基于各轮加密对应的输入信息和输出信息生成混淆密钥,这样,初始密钥就被隐藏到了混淆密钥中,黑客基于混淆密钥中纷繁复杂的信息是无法获知具有关键作用的初始密钥。每一轮加密的具体过程可以是对输入信息进行输入置乱,将置乱后的信息和对应的密钥进行融合,将融合后的信息依次经过数据替换、数据移位和数据混淆处理,将处理后的信息进行输出置乱,得到最终的输出信息。其中,输入信息可以是预设信息,例如预设数值范围内的信息,数值小于100的信息。输入信息也可以是所有可能的输入信息,例如,输入信息包括4个字节,每个字节包括8位数据,那么输入信息的所有组合都是确定的、可知的。因为混淆密钥包括各轮加密对应的输入信息和输出信息,所以混淆密钥也可以认为是一个用于加密和解密的查找表,对信息进行加密也就是对查找表进行查找的过程。
在一个实施例中,待认证设备和认证服务器的通信数据可以通过设备服务器进行中转。例如,参考图3,设备服务器可以收集待认证设备的设备信息,并存储在本地。设备可以通过设备服务器根据设备信息向认证服务器请求混淆密钥,设备服务器可以将认证服务器发送过来的混淆密钥转发至待认证设备。
步骤S204,将混淆密钥发送至待认证设备,以使待认证设备获取设备待加密信息,基于混淆密钥对设备待加密信息进行加密认证处理,得到待认证设备对应的设备认证码。
其中,设备待加密信息是设备用于加密认证处理的明文信息。设备待加密信息包括设备随机数、设备公钥、设备信息等中的至少一种。设备随机数可以是根据随机数生成算法生成的。设备公钥可以是根据非对称加密算法得到的设备密钥对中的公钥。其中,非对称加密算法包括但不限于ECC算法(Error Checking and Correction,椭圆加密算法)和SM2算法。设备信息可以包括设备序列号、设备位置信息、设备使用者信息等中的至少一种。加密认证处理是指在加密的过程中同时生成认证信息和加密信息,基于加密信息和认证信息得到设备认证码。加密信息用于保障原始信息的安全性,认证信息用于保障原始信息的完整性。设备认证码是用于对设备进行认证的信息。
具体地,待认证设备可以接收认证服务器发送的混淆密钥。待认证设备可以在本地获取设备待加密信息,基于混淆密钥对设备待加密信息进行加密认证处理,得到待认证设备对应的设备认证码。待认证设备也可以从其他计算机设备获取设备待认证信息,基于混淆密钥对设备待加密信息进行加密认证处理,得到待认证设备对应的设备认证码。
在一个实施例中,待认证设备可以通过自定义的公式基于混淆密钥对设备待加密信息进行加密认证处理得到设备认证码。例如,基于混淆密钥对设备待加密信息进行加密得到加密信息,提取设备待加密信息的消息摘要得到认证信息,基于加密信息和认证信息得到设备认证码。待认证设备也可以通过加密认证算法基于混淆密钥对设备待加密信息进行加密认证处理得到设备认证码,例如,CCM加密认证算法。CCM加密认证算法是CBC-MAC认证算法 (Cipher Block Chaining Message Authentication Code)和CTR加密算法(Counter)的组合。可以将CCM加密认证算法的基础计算单元AES转换成使用AES白盒密钥文件计算,对初始密钥进行了保护并且实现了设备认证。
在一个实施例中,待认证设备可以基于混沌密钥对设备待加密信息进行加密得到初始加密信息,基于初始加密信息得到目标认证信息,基于混沌密钥对预设信息进行加密得到中间加密信息,基于初始加密信息和中间加密信息得到目标加密信息,基于目标加密信息和目标认证信息得到设备认证码。
在一个实施例中,为了兼容存量设备,可以在待认证设备上安装设备认证SDK,待认证设备通过调用设备认证SDK的相关接口就可以基于混淆密钥对设备待加密信息进行加密认证处理,生成设备认证码。其中,存量设备是指已经投入生产、或者已经使用的设备。设备认证SDK是由认证服务器提供给设备服务器集成的,设备服务器需要根据设备认证SDK实现进行加密认证处理的相关接口,例如混淆密钥存储接口、混淆密钥读取接口等,也就是,待认证设备只需要调用设备认证SDK提供的相关接口就可以使用设备认证服务。设备服务器可以将设备认证SDK发送至待认证设备,以使待认证设备在本地安装设备认证SDK。这样,不论是什么设备,基于适配的设备认证SDK就可以生成设备认证码,具备较强的兼容性。此外,设备认证SDK是闭源且加壳发布的,可以进一步保护加密认证处理算法的安全,并且维护认证服务器的利益。
在一个实施例中,参考图4,设备服务器可以在本地集成设备认证SDK,对于存量设备,设备服务器可以通过远程升级的方式去更新设备认证SDK,对于新增设备,设备服务器可以直接将设备认证SDK烧录到设备中。参考图5,安装有设备认证SDK的设备可以向设备服务器发送密钥获取请求来请求混淆密钥,密钥获取请求携带设备信息,设备服务器可以根据本地是否存储该设备信息来判断是否发送对应的混淆密钥至该设备。当本地存储有该设备信息,则发送对应的混淆密钥至该设备;当本地没有存储该设备信息,则发送请求失败信息至该设备。请求混淆密钥成功的设备可以调用设备认证SDK中混淆密钥存储接口将混淆密钥烧录到设备上,后续可以调用设备认证SDK中混淆密钥读取接口在本地读取混淆密钥,基于混淆密钥对设备待加密信息进行加密认证处理,得到对应的设备认证码。
步骤S206,接收待认证设备发送的设备认证码,从设备认证码中提取待认证设备对应的目标认证数据和目标加密数据。
其中,目标认证数据是用于对设备进行认证的数据。目标加密信息是用于对目标认证数据进行认证的数据。
具体地,待认证设备生成设备认证码之后,待认证设备可以将设备认证码发送至认证服务器。认证服务器可以从设备认证码中提取目标认证数据和目标加密数据,也就是,从设备认证码中提取目标认证信息和目标加密信息。
在一个实施例中,将目标认证数据和目标加密数据进行拼接得到设备认证码。认证服务器可以根据二者的拼接方式从设备认证码中提取目标认证信息和目标加密信息。例如,目标认证数据占n个字节,目标加密数据占m个字节。若目标认证数据和目标加密数据是左右拼接,那么认证服务器接收到设备认证码后,可以获取前n个字节的数据作为目标认证数据,获取后m个字节的数据作为目标加密数据。
步骤S208,基于混淆密钥对目标加密数据进行解密处理,得到设备解密信息。
其中,设备解密信息是对目标加密数据进行解密得到的信息。解密处理可以认为是加密认证处理的逆过程。
具体地,认证服务器可以基于混淆密钥对目标加密数据进行解密处理,得到设备解密信息。认证服务器也可以基于混淆密钥对应的初始密钥对目标加密数据进行解密处理,得到设备解密信息。可以理解,混淆密钥和初始密钥都可以用于对目标加密数据进行解密处理,但是混淆密钥比初始密钥的数据量要大很多,因此,基于初始密钥对目标加密数据进行解密处理,可以快速得到设备解密信息。当认证服务器的安全系数比较高的时候,为了提高解密效率,认证服务器可以基于初始密钥对目标加密数据进行解密处理,得到设备解密信息。
步骤S210,基于混淆密钥对设备解密信息进行认证处理,得到待认证设备对应的参考认证数据。
其中,参考认证数据是用于对目标认证数据进行认证的数据。
具体地,认证服务器可以基于混淆密钥对设备解密信息进行认证处理,得到待认证设备对应的参考认证数据。为了提高效率,认证服务器也可以基于混淆密钥对应的初始密钥对设备解密信息进行认证处理,得到待认证设备对应的参考认证数据。其中,认证服务器基于混淆密钥对设备解密信息进行认证处理得到参考认证数据的处理过程和待认证设备基于混沌密钥对待认证设备进行加密认证处理得到目标认证数据的处理过程一样。这样,只有当设备解密信息和设备待加密信息完全一致时,基于相同的处理过程才能得到相同的处理结果。
步骤S212,基于参考认证数据和目标认证数据确定待认证设备的设备认证结果。
具体地,认证服务器得到参考认证数据和目标认证数据后,可以基于参考认证数据和目标认证数据确定待认证设备的设备认证结果。设备认证结果包括认证通过和认证失败。认证服务器可以向待认证设备返回设备认证结果。认证服务器也可以向待认证设备对应的设备服务器返回设备认证结果。设备认证是为了对设备的身份进行鉴别,以防有未经过认证的伪造设备或者非法设备在运行。因此,若某个设备的设备认证结果为认证失败,设备服务器可以主动断开与该设备的通信连接,拒绝该设备后续的任何相关请求,从而防止重要数据泄露,防止该设备的非法操作,实现对设备的安全管控。
在一个实施例中,基于参考认证数据和目标认证数据确定待认证设备的设备认证结果,包括:当参考认证数据和目标认证数据一致时,确定设备认证结果为认证通过;当参考认证数据和目标认证数据不一致时,确定设备认证结果为认证失败。
具体地,当参考认证数据和目标认证数据一致时,认证服务器可以确定设备认证结果为认证通过,当参考认证数据和目标认证数据不一致时,确定设备认证结果为认证失败。可以理解,若设备没有遭受到黑客攻击,目标加密数据是基于混沌密钥对设备待加密信息进行加密得到,那么认证服务器基于混沌密钥是可以成功对目标加密数据进行解密,得到正确的设备待加密信息。若设备遭受到黑客攻击,目标加密数据可能是基于其他密钥对设备待加密信息进行加密得到,或者基于混沌密钥通过其他方法对设备待加密信息进行加密得到,那么认证服务器基于混沌密钥对目标加密数据进行解密,就会解密失败,得到错误的设备待加密信息,例如,一堆乱码等。因此,基于混沌密钥或初始密钥对错误的设备待加密信息进行认证处理就会得到与目标认证数据不一致的参考认证数据。这样,通过参考认证数据和目标认证数据进行数据比对的简单操作就可以验证设备的身份信息,快速确定设备认证结果。
上述设备认证方法中,通过获取待认证设备对应的混淆密钥;将混淆密钥发送至待认证设备,以使待认证设备获取设备待加密信息,基于混淆密钥对设备待加密信息进行加密认证处理,得到待认证设备对应的设备认证码;接收待认证设备发送的设备认证码,从设备认证码中提取待认证设备对应的目标认证数据和目标加密数据;基于混淆密钥对目标加密数据进行解密处理,得到设备解密信息;基于混淆密钥对设备解密信息进行认证处理,得到待认证设备对应的参考认证数据;基于参考认证数据和目标认证数据确定待认证设备的设备认证结果。这样,相对于普通密钥,混淆密钥的数据结构更复杂,基于复杂度更高的混淆密钥对设备进行认证可以提高设备认证的安全性。并且,不同的设备对应不同的混淆密钥,基于设备对应的专用混淆密钥对设备进行认证可以进一步提高设备认证的安全性。
在一个实施例中,获取待认证设备对应的混淆密钥,包括:获取待认证设备对应的初始密钥,将初始密钥转化为初始密钥矩阵;基于初始密钥矩阵中各个矩阵数据和对应的位置信息对初始密钥矩阵进行密钥拓展,得到对应的目标密钥矩阵;获取加密混淆信息,基于加密混淆信息和目标密钥矩阵生成混淆密钥。
其中,加密混淆信息是用于对初始密钥进行混淆的信息。
具体地,认证服务器可以生成待认证设备对应的初始密钥,将初始密钥转化为初始密钥矩阵,对初始密钥矩阵进行密钥拓展,得到对应的目标密钥矩阵。对初始密钥矩阵进行密钥拓展具体可以是基于初始密钥矩阵中各个矩阵数据及其对应的位置信息,例如,将初始密钥矩阵的各个矩阵数据分别左移一位得到第一密钥矩阵,将初始密钥矩阵的各个矩阵数据分别左移二位得到第二密钥矩阵,由初始密钥矩阵、第一密钥矩阵和第二密钥矩阵组成目标密钥矩阵。或者,参考图6,将初始密钥矩阵的矩阵头数据和矩阵尾数据进行混淆处理,得到第一矩阵的矩阵头数据,将初始矩阵中第二个矩阵数据和第一矩阵的矩阵头数据进行融合处理,得到第一矩阵的第二个矩阵数据,将初始矩阵中第三个矩阵数据和第一矩阵的第二个数据进行融合处理,得到第一矩阵的第三个矩阵数据,以此类推,得到第一矩阵的所有矩阵数据。以此类推,根据同样的方法基于第二矩阵得到第三矩阵,基于第n-1矩阵得到第n矩阵,由初始矩阵、第一矩阵到第n矩阵组成目标密钥矩阵。其中,融合处理可以是进行矩阵异或处理,混淆处理可以是依次进行字节移位、字节替换、与预设数据进行异或处理。认证服务器得到目标密钥矩阵后,可以获取加密混淆信息,基于加密混淆信息和目标密钥矩阵生成混淆密钥。
本实施例中,获取待认证设备对应的初始密钥,将初始密钥转化为初始密钥矩阵;基于初始密钥矩阵中各个矩阵数据和对应的位置信息对初始密钥矩阵进行密钥拓展,得到对应的目标密钥矩阵;获取加密混淆信息,基于加密混淆信息和目标密钥矩阵生成混淆密钥。这样,通过进行密钥拓展和加密混淆信息可以将初始密钥混淆在混淆密钥中,提高混淆密钥的复杂性,从而提高设备认证的安全性。
在一个实施例中,目标密钥矩阵包括多轮加密对应的密钥子矩阵,获取加密混淆信息,基于加密混淆信息和目标密钥矩阵生成混淆密钥,包括:获取输入置乱矩阵,根据输入置乱矩阵对当前轮加密对应的输入矩阵进行置乱处理,得到第一矩阵;根据当前轮加密对应的密钥子矩阵对第一矩阵进行融合处理,得到第二矩阵;获取替换矩阵,根据替换矩阵对第二矩阵进行替换处理,得到第三矩阵;获取混淆矩阵,根据混淆矩阵对第三矩阵进行混淆处理,得到第四矩阵;获取输出置乱矩阵,根据输出置乱矩阵对第四矩阵进行置乱处理,得到当前轮加密对应的输出矩阵;将当前轮加密的输出矩阵作为下一轮加密的输入矩阵进行下一轮加密,得到各轮加密对应的输出矩阵;基于各轮加密分别对应的输入矩阵和输出矩阵生成混淆密钥。
其中,置乱处理是用于打乱矩阵的矩阵数据,具体可以是对矩阵数据的行移位、列移位、对角移位、重新排列等中的至少一种。行移位是指将矩阵中同一行的各个矩阵数据进行移位处理。矩阵中不同行可以进行不同的移位处理,例如,第一行向左移一位,第二行向左移两位。列移位是指将矩阵中同一列的各个矩阵数据进行移位处理。矩阵中不同列可以进行不同的移位处理。对角移位是指将矩阵中对角数据进行交换或移位处理。重新排列是指将矩阵中的矩阵数据重新排列,得到新的矩阵数据。各轮加密中使用的输入置乱矩阵可以相同可以不同,各轮加密中使用的输出置乱矩阵可以相同可以不同。
融合处理是用于融合密钥和矩阵,具体可以是矩阵异或、矩阵相乘等中的至少一种。替换处理是用于将矩阵的各个矩阵数据替换为对应的其他数据,具体可以通过参照预设替换表进行数据替换。
混淆处理是用于对矩阵的列数据进行混淆处理,具体可以是和混淆矩阵进行异或处理。和混淆矩阵进行异或处理具体可以是矩阵的每一列数据中的第一行数据和混淆矩阵的第一列进行矩阵相乘,矩阵的每一列数据中的第二行数据和混淆矩阵的第二列进行矩阵相乘,以此类推,矩阵的每一列数据中的第n行数据和混淆矩阵的第n列进行矩阵相乘,最后将矩阵的同一列数据中n个矩阵相乘结果按照行顺序依次两两进行异或,输出结果。
当前轮加密对应的输入矩阵可以是预设矩阵,也可以是所有可能的输入矩阵。加密的轮次可以根据实际需要进行设置,例如设置为10次。
具体地,加密混淆信息包括输入置乱矩阵、替换矩阵、混淆矩阵和输出置乱矩阵,目标密钥矩阵包括各轮加密对应的密钥子矩阵,各个密钥子矩阵的矩阵大小一致。认证服务器基于加密混淆信息和目标密钥矩阵生成混淆密钥具体可以是获取输入置乱矩阵,通过输入置乱矩阵对当前轮加密对应的输入矩阵进行置乱处理,得到第一矩阵,通过当前轮加密对应的密钥子矩阵对第一矩阵进行融合处理,得到第二矩阵,获取替换矩阵,通过替换矩阵对第二矩阵进行替换处理,得到第三矩阵。替换矩阵可以是由预设替换表转换得到,预设替换表中记录了待替换矩阵的各个位置的矩阵数据对应的替换数据,例如,第一行第一列对应的替换数据,第二行第二列对应的替换数据。紧接着,认证服务器获取混淆矩阵,根据混淆矩阵对第三矩阵进行混淆处理,得到第四矩阵,获取输出置乱矩阵,根据输出置乱矩阵对第四矩阵进行置乱处理,得到当前轮加密对应的输出矩阵,至此完成了当前轮加密的相关处理。参考图7,当前轮加密的输出矩阵是作为下一轮加密的输入矩阵进行下一轮加密,每一轮加密都是相同的处理流程,最终可以得到各轮加密对应的输出矩阵。那么,认证服务器基于各轮加密分别对应的输入矩阵、各个输入矩阵分别对应的输出矩阵得到混淆密钥。
本实施例中,通过置乱处理、融合处理、替换处理、混淆处理,可以将初始密钥保护起来,避免攻击者轻易获取到初始密钥,从而提高设备认证的安全性。因为即使攻击者获取到混淆密钥,也很难从庞大的复杂数据中提取到初始密钥。
在一个实施例中,如图8所示,将混淆密钥发送至待认证设备,以使待认证设备获取设备待加密信息,基于混淆密钥对设备待加密信息进行加密认证处理,得到待认证设备对应的设备认证码,包括:
步骤S802,基于混淆密钥对设备待加密信息进行认证处理,得到待认证设备对应的目标认证数据。
步骤S804,获取加密辅助信息,基于混淆密钥对加密辅助信息进行加密处理,得到初始加密数据。
步骤S806,将初始加密数据和设备待加密信息进行融合处理,得到待认证设备对应的目标加密数据。
步骤S808,基于目标加密数据和目标认证数据得到设备认证码。
其中,加密辅助信息是用于对设备待加密信息进行辅助加密的。加密辅助信息可以是预先设置的辅助信息,例如一个常数、一组有规律的数据等。加密辅助信息在设备和认证服务器之间是预先约定好的。
具体地,待认证设备获取到混淆密钥和设备待加密信息后,可以基于混淆密钥对设备待加密信息进行认证处理,得到目标认证数据。进一步的,待认证设备可以获取加密辅助信息,基于混淆密钥对加密辅助信息进行加密处理,得到初始加密数据,将初始加密数据和设备待加密信息进行融合处理,得到待认证设备对应的目标加密数据,具体可以是将初始加密数据和设备待加密信息进行异或处理。最终,待认证设备基于目标加密数据和目标认证数据得到设备认证码,具体可以是将目标加密数据和目标认证数据进行拼接得到设备认证码。
本实施例中,通过基于混淆密钥对设备待加密信息进行认证处理,得到待认证设备对应的目标认证数据,获取加密辅助信息,基于混淆密钥对加密辅助信息进行加密处理,得到初始加密数据,将初始加密数据和设备待加密信息进行融合处理,得到待认证设备对应的目标加密数据,基于目标加密数据和目标认证数据得到设备认证码。这样,基于混淆密钥对设备待加密信息进行加密认证处理可以生成目标认证数据和目标加密数据,目标加密数据可以保障设备待加密信息的安全性,目标认证数据可以保障设备待加密信息的完整性。基于结合了目标认证数据和目标加密数据的设备认证码对设备进行认证,可以提高设备认证的安全性和准确性。
在一个实施例中,基于混淆密钥对设备待加密信息进行认证处理,得到待认证设备对应的目标认证数据,包括:将设备待加密信息转化为至少一个有序待加密矩阵,从有序待加密矩阵中确定加密处理时的参考输入矩阵;基于混淆密钥对参考输入矩阵进行加密处理,得到加密处理结果,将加密处理结果和下一个有序待加密矩阵的融合处理结果作为下一次加密处理时的参考输入矩阵,返回基于混淆密钥对参考输入矩阵进行加密处理的步骤,直至各个有序待加密矩阵加密完成得到中间矩阵;获取初始辅助矩阵,基于混淆密钥对初始辅助矩阵进行加密处理,得到参考矩阵;基于中间矩阵和参考矩阵得到目标认证数据。
具体地,为了更好地进行加密认证处理,需要将设备待加密信息转化为指定大小的矩阵,因此待认证设备可以将设备待加密信息转化为至少一个有序待加密矩阵,其中,有序待加密矩阵的矩阵大小和密钥子矩阵的矩阵大小一致,以便进行矩阵运算。例如,密钥子矩阵的矩阵大小为1行4列,每个矩阵数据为4个字节,那么就需要将设备待加密信息转化为1行4列的待加密矩阵,每个矩阵数据为4个字节。若设备待加密信息的数据较多,一个待加密矩阵容纳不下,那么就将设备待加密信息转化为多个1行4列的有序待加密矩阵,各个有序待加密矩阵按序拼接就可以得到完整的设备待加密信息。待认证设备可以从有序待加密矩阵中确定加密处理时的参考输入矩阵,基于混淆密钥对参考输入矩阵进行加密处理,得到加密处理结果,将加密处理结果和下一个有序待加密矩阵的融合处理结果作为下一次加密处理时的参考输入矩阵,返回基于混淆密钥对参考输入矩阵进行加密处理的步骤,直至各个有序待加密矩阵加密完成得到中间矩阵。也就是,待认证设备需要依次对各个有序待加密矩阵进行加密处理,首先基于混淆密钥对排序第一的待加密矩阵进行加密处理,得到第一加密处理结果,将第一加密处理结果和排序第二的待加密矩阵进行融合处理,得到第一融合处理结果,基于混淆密钥对第一融合处理结果进行加密处理,得到第二加密处理结果,将第二加密处理结果和排序第三的待加密矩阵进行融合处理,得到第二融合处理结果,依次类推,直至各个有序待加密矩阵加密完成得到中间矩阵。接着,待认证设备获取初始辅助矩阵,基于混淆密钥对初始辅助矩阵进行加密处理,得到参考矩阵,基于中间矩阵和参考矩阵得到目标认证数据。基于中间矩阵和参考矩阵得到目标认证数据具体可以是将中间矩阵和参考矩阵进行融合处理得到目标认证数据。
参照图9,由设备待加密信息转化得到待加密矩阵1、待加密矩阵2和待加密矩阵3。基于混淆密钥对待加密矩阵1进行加密处理,得到第一加密处理结果,将第一加密处理结果和待加密矩阵2进行融合处理,得到第一融合处理结果,基于混淆密钥对第一融合处理结果进行加密处理,得到第二加密处理结果,将第二加密处理结果和待加密矩阵3进行融合处理,得到第二融合处理结果,基于混淆密钥对第二融合处理结果进行加密处理,得到中间矩阵。基于混淆密钥对初始辅助矩阵进行加密处理,得到参考矩阵,将参考矩阵和中间矩阵进行融合处理,得到目标认证数据。
本实施例中,通过将设备待加密信息拆分为多个待加密子信息,基于混淆密钥依次对各个待加密子信息进行加密,得到中间加密处理结果,基于混淆密钥对初始辅助矩阵进行加密处理,得到参考矩阵,将中间矩阵和参考矩阵组合得到目标认证数据。这样,不仅对设备待加密信息分组进行融合加密,而且进一步将设备待加密信息的加密处理结果和其他加密处理结果进行融合,最终得到目标认证数据,可以显著增加目标认证数据的复杂度,增加破解难度,从而提高设备认证的安全性。
在一个实施例中,获取加密辅助信息,基于混淆密钥对加密辅助信息进行加密处理,得到初始加密数据,包括:将加密辅助信息转化为至少一个加密辅助矩阵;基于混淆密钥分别对各个加密辅助矩阵进行加密处理,得到各个加密辅助矩阵分别对应的目标加密矩阵;基于各个目标加密矩阵得到初始加密数据。
具体地,为了更好地进行加密认证处理,需要将加密辅助信息转化为指定大小的矩阵,因此待认证设备可以将加密辅助信息转化为至少一个加密辅助矩阵。其中,加密辅助矩阵的矩阵大小和密钥子矩阵的矩阵大小一致,以便进行矩阵运算。各个加密辅助矩阵可以是有序排列的也可以是无序排列的。待认证设备可以基于混淆密钥分别对各个加密辅助矩阵进行加密处理,得到各个加密辅助矩阵分别对应的目标加密矩阵,各个目标加密矩阵组合得到初始加密数据。
参考图10,由加密辅助信息转换得到的加密辅助矩阵1、加密辅助矩阵2、加密辅助矩阵3。基于混淆密钥对加密辅助矩阵1进行加密处理,得到目标加密矩阵1,基于混淆密钥对加密辅助矩阵2进行加密处理,得到目标加密矩阵2,基于混淆密钥对加密辅助矩阵3进行加密处理,得到目标加密矩阵3。目标加密矩阵1、目标加密矩阵2和目标加密矩阵3组合得到初始加密数据。
在一个实施例中,初始辅助矩阵可以是由初始计数器转化得到,加密辅助信息可以是对初始计数器进行多次累加得到。例如,初始计数器为1,加密辅助信息包括2、3、4、5,那么将1转化为初始辅助矩阵,将2转化为加密辅助矩阵1,将3转化为加密辅助矩阵2,将4转化为加密辅助矩阵3,将5转化为加密辅助矩阵4。
本实施例中,通过将加密辅助信息拆分为多个加密辅助子信息,基于混淆密钥分别对各个加密辅助子信息进行加密。将各个加密辅助子信息的加密处理结果组合得到初始加密数据,对加密辅助信息分组进行加密可以增加初始加密数据的复杂度,增加破解难度,从而提高设备认证的安全性。
在一个实施例中,加密辅助矩阵和有序待加密矩阵一一对应,将初始加密数据和设备待加密信息进行融合处理,得到待认证设备对应的目标加密数据,包括:将各个目标加密矩阵和对应的有序待加密矩阵进行融合处理,得到各个目标融合矩阵;基于各个目标融合矩阵得到目标加密数据。
具体地,加密辅助矩阵和有序待加密矩阵一一对应。待认证设备将初始加密数据和设备待加密信息进行融合处理具体可以是将各个目标加密矩阵和对应的有序待加密矩阵进行融合处理,得到各个目标融合矩阵。例如,加密辅助矩阵a和有序待加密矩阵1对应,加密辅助矩阵b和有序待加密矩阵2对应,加密辅助矩阵c和有序待加密矩阵3对应,那么可以将加密辅助矩阵a对应的目标加密矩阵A和有序待加密矩阵1进行融合处理,将加密辅助矩阵b对应的目标加密矩阵B和有序待加密矩阵2进行融合处理,将加密辅助矩阵c对应的目标加密矩阵C和有序待加密矩阵3进行融合处理。最后,基于各个目标融合矩阵得到目标加密数据具体可以是将各个目标融合矩阵进行拼接得到目标加密数据。
参考图11,待加密矩阵1和加密辅助矩阵1对应,待加密矩阵2和加密辅助矩阵2对应,待加密矩阵3和加密辅助矩阵3对应。那么,基于混淆密钥对加密辅助矩阵1进行加密处理得到的目标加密矩阵1也和待加密矩阵1对应,基于混淆密钥对加密辅助矩阵2进行加密处理得到的目标加密矩阵2也和待加密矩阵2对应,基于混淆密钥对加密辅助矩阵3进行加密处理得到的目标加密矩阵3也和待加密矩阵3对应。将待加密矩阵1和目标加密矩阵1进行融合处理,得到目标融合矩阵1,将待加密矩阵2和目标加密矩阵2进行融合处理,得到目标融合矩阵2,将待加密矩阵3和目标加密矩阵3进行融合处理,得到目标融合矩阵3。目标融合矩阵1、目标融合矩阵2和目标融合矩阵3组合得到目标加密数据。
本实施例中,通过将各个目标加密矩阵和对应的有序待加密矩阵进行融合处理,得到各个目标融合矩阵,基于各个目标融合矩阵得到目标加密数据。这样,将加密辅助信息的加密处理结果分组融合到设备待加密信息中得到目标加密数据,可以增加目标加密数据的复杂度,增加破解难度,从而提高设备认证的安全性。
在一个实施例中,混淆密钥包括各轮加密分别对应的输入矩阵、输出矩阵和各轮加密的加密顺序,当前矩阵为参考输入矩阵或加密辅助矩阵,基于混淆密钥对当前矩阵进行加密处理,包括:获取初始抵消矩阵,将当前矩阵和初始抵消矩阵进行融合处理,得到首轮加密对应的目标参考矩阵;从混淆密钥中查找与当前轮加密的目标参考矩阵匹配的输入矩阵作为当前轮加密的目标输入矩阵,从混淆密钥中查找目标输入矩阵对应的输出矩阵作为当前轮加密的目标输出矩阵;获取当前轮加密对应的当前抵消矩阵,将目标输出矩阵和当前抵消矩阵进行融合处理,得到下一轮加密对应的目标参考矩阵,直至最后一轮加密的目标输出矩阵融合完成得到当前矩阵对应的目标加密结果。
其中,初始抵消矩阵和当前抵消矩阵是用于进行矩阵数据的行移位以及抵消相邻两轮加密的输入输出置乱。
具体地,混淆密钥包括各轮加密分别对应的输入矩阵、输出矩阵和各轮加密的加密顺序。将参考输入矩阵或加密辅助矩阵分别作为当前矩阵来说明基于混淆密钥对当前矩阵进行加密处理的具体过程。待认证设备获取初始抵消矩阵,将当前矩阵和初始抵消矩阵进行融合处理,得到首轮加密对应的目标参考矩阵。接着,从混淆密钥中首轮加密对应的输入矩阵中查找与首轮加密对应的目标参考矩阵一致的输入矩阵,将查找到的输入矩阵作为首轮加密对应的目标输入矩阵,从混淆密钥中首轮加密对应的输出矩阵中查找该目标输入矩阵对应的输出矩阵,将查找到的输出矩阵作为首轮加密对应的目标输出矩阵,获取首轮加密对应的抵消矩阵,将首轮加密对应的目标输出矩阵和首轮加密对应的抵消矩阵进行融合处理,得到第二轮加密对应的目标参考矩阵。按照与第一轮加密相同的处理方式,得到第二轮加密对应的目标输出矩阵,将第二轮加密对应的目标输出矩阵和第二轮加密对应的抵消矩阵进行融合处理,得到第三轮加密对应的目标参考矩阵。以此类推,可以得到最后一轮加密对应的目标输出矩阵,将最后一轮加密对应的目标输出矩阵和最后一轮加密对应的抵消矩阵进行融合处理,得到最后一轮加密对应的目标参考矩阵,将最后一轮加密对应的目标参考矩阵作为当前矩阵对应的目标加密结果。参考图12,明文经过多轮处理后得到密文。
参考图13,图13为认证服务器基于初始密钥对明文进行加密处理得到密文的具体过程。认证服务器可以对初始密钥进行密钥拓展,得到各轮加密对应的加密密钥。在一轮加密中,先将输入和对应的加密矩阵进行融合处理,得到第一结果矩阵,将第一结果矩阵的矩阵数据进行替换处理,得到第二结果矩阵,将第二结果矩阵的矩阵数据进行移位处理,得到第三结果矩阵,将第三结果矩阵的矩阵数据进行混淆处理(例如列混淆),得到对应的输出。其中,移位处理和混淆处理可以调换顺序。当前轮对应的输出作为下一轮对应的输入,再按照相同的方法进行处理,明文经过第一轮加密、第二轮加密、……、最后一轮加密后得到密文。但是,相对于认证服务器,设备处于一个相对比较危险的网络环境,因此,设备需要基于混淆密钥对明文进行加密得到密文,具体的过程可以参照图7。通过输入置乱和输出置乱可以混淆黑客的视线,让黑客无法获知各轮加密对应的加密密钥。为了让基于混淆密钥对明文进行加密得到的密文和基于混淆密钥对应的初始密钥对明文进行加密得到的密文保持一致,需要引入初始抵消矩阵和各轮加密对应的抵消矩阵来进行移位处理以及抵消相邻两轮加密的输入输出置乱。
在一个实施例中,将混淆密钥发送至待认证设备之前,所述方法还包括:获取待认证设备的设备信息,根据设备信息生成待认证设备对应的设备标识;将设备标识发送至待认证设备。基于目标加密数据和目标认证数据得到设备认证码,包括:基于设备标识对目标加密数据进行加密,得到更新加密数据;基于目标认证数据和更新加密数据得到设备认证码。
其中,设备标识是待认证设备在认证服务器上的唯一标识,具体可以包括字母、数字和符号中至少一种字符的字符串。更新加密数据是基于设备标识对目标加密数据进行加密得到的加密数据。
具体地,认证服务器在将混淆密钥发送至待认证设备之前,可以接收设备通过设备服务器发送过来的设备信息,根据设备信息生成待认证设备对应的设备标识,并向待认证设备返回该设备标识。那么,后续待认证设备在基于目标加密数据和目标认证数据生成设备认证码的时候,可以基于设备标识对目标加密数据进行加密,得到更新加密数据,将目标认证数据和更新加密数据进行拼接得到设备认证码。那么,后续认证服务器接收到待认证设备对应的设备认证码的时候,需要先基于待认证设备对应的设备标识对从设备认证码中提取得到的更新加密数据进行解密,得到初始解密数据,再基于初始密钥或混淆密钥对第一解密数据进行解密,得到目标解密数据。这样,当待认证设备用于加密的设备标识和认证服务器上存储的设备标识不一致时,例如攻击者伪造了设备标识,那么认证服务器在对设备进行认证时会解密得到错误的信息,进而该待认证设备无法通过认证。因此,基于设备标识对目标加密数据进行加密,得到更新加密数据;基于目标认证数据和更新加密数据得到设备认证码,可以进一步提高设备认证的安全性。
在一个实施例中,如图14所示,基于参考认证数据和目标认证数据确定待认证设备的设备认证结果之后,所述方法还包括:
步骤S1402,获取服务器待加密信息。
步骤S1404,基于混淆密钥对服务器待加密信息和设备认证码进行加密认证处理,得到服务器认证码。
步骤S1404,将设备认证结果和服务器认证码发送至待认证设备,以使待认证设备基于混淆密钥和设备认证码对服务器认证码进行服务器认证。
其中,服务器待加密信息是服务器用于加密认证处理的明文信息。服务器待加密信息包括服务器随机数、服务器公钥、服务器信息等中的至少一种。服务器随机数可以是根据随机数生成算法生成的。当然,设备随机数和服务器随机数可以是基于相同的随机数生成算法生成的。服务器公钥可以是根据非对称加密算法得到的服务器密钥对中的公钥。当然,设备公钥和服务器公钥可以是基于相同的非对称加密算法生成的。
具体地,除了认证服务器对待认证设备进行认证以外,待认证设备也可以对认证服务器进行认证,以防黑客伪造认证服务器向待认证设备发送错误的设备认证结果。基于待认证设备生成设备认证码相似的原理,认证服务器也可以基于混淆密钥对服务器待加密信息和设备认证码进行加密认证处理,得到服务器认证码。关于基于混淆密钥进行加密认证处理的过程,此处不再赘述,具体过程可以参照待认证设备生成设备认证码的过程。特别的,待认证设备是基于混淆密钥对设备待加密信息进行加密认证处理,得到设备认证码,而认证服务器是基于混淆密钥或混淆密钥对应的初始密钥对服务器待加密信息和设备认证码进行加密认证处理,得到服务器认证码。具体可以从设备认证码中获取预设位置的数据和服务器待加密信息组成目标待加密信息,例如,获取设备认证码的第三个字节拼接到服务器待加密信息的后面得到目标待加密信息,基于混淆密钥或混淆密钥对应的初始密钥对目标待加密信息进行加密认证处理,得到服务器认证码。
在一个实施例中,认证服务器可以在确定待认证设备的设备认证结果为认证通过后,才生成服务器认证码,减少认证服务器的计算压力,同时避免将服务器认证码发送至认证失败的待认证设备,保护服务器认证码的安全。
本实施例中,基于混淆密钥对服务器待加密信息和设备认证码进行加密认证处理,得到服务器认证码,能够防止服务器认证码被重放。因为每个设备的设备认证码是不同的,那么认证服务器每次生成的服务器认证码必然是不同的。进一步的,后续在对服务器认证码进行验证的时候,设备需要将设备认证码的相关信息作为验证依据之一,当对服务器认证码解密得到的信息不包括设备认证码的相关信息时,无需执行后续操作就可以快速确定服务器认证结果为认证失败,提高了服务器认证的速度。
在一个实施例中,设备认证码携带对应的生成时间,所述方法还包括:当生成时间和设备认证码的接收时间的时间差超过预设时间阈值时,确定设备认证结果为认证失败。
具体地,通常情况下,待认证设备是可以比较迅速地生成设备认证码,并发送至认证服务器进行设备认证。但是,若出现网络故障、黑客攻击等不安全的情况时,认证服务器无法第一时间接收到安全的设备认证码。因此,为了避免在不安全情况下的设备认证,可以通过设置设备认证码的有效期限来进一步提高设备认证的安全性。认证服务器接收到设备认证码后,可以对设备认证码进行有效性验证,若发现设备认证码已过期,认证服务器可以直接确定设备认证结果为认证失败,此时无需再通过参考认证数据和目标认证数据来确定设备认证结果。认证服务器对设备认证码进行有效性验证具体可以是比较设备认证码对应的生成时间和设备认证码对应的接收时间,当生成时间和接收时间的时间差超过预设时间阈值,也就是,生成时间和接收时间的时间差超过有效期限时,确定设备认证码不通过有效性验证,设备认证码已过期、已失效。此时,认证服务器可以发送设备认证码已失效的通知消息至待认证设备,以使待认证设备重新基于混淆密钥生成新的设备认证码,将新的设备认证码发送至认证服务器重新进行设备认证。
进一步的,设置设备认证码的有效期限可以防止重放攻击。重放攻击是指中间消息被截取后,黑客不断地发送同样的消息去进行攻击,如果不做有效性验证,则有可能认证服务器会因被攻击收到大量重复的认证通过的设备认证码,从而导致认证服务器的系统性能下降,甚至发生安全风险。
在一个实施例中,设备待加密信息包括设备公钥和设备随机数,服务器待加密信息包括服务器公钥和服务器随机数,所述方法还包括:当设备认证结果为认证通过时,获取服务器私钥,基于服务器私钥和设备公钥生成服务器初始会话密钥;基于设备随机数、服务器随机数和服务器初始会话密钥得到服务器目标会话密钥;将服务器目标会话密钥发送至待认证设备对应的设备服务器;服务器目标会话密钥用于对设备服务器与待认证设备的通话数据进行加密和解密。
其中,设备公钥是根据非对称加密算法得到的设备密钥对中的公钥。服务器私钥是根据非对称加密算法得到的服务器密钥对中的公钥。设备密钥对和服务器密钥对是基于相同的非对称加密算法得到的。设备服务器是指待认证设备对应的设备商的服务器。
具体地,设备待加密信息包括设备公钥和设备随机数,服务器待加密信息包括服务器公钥和服务器随机数。当设备认证结果为认证通过时,认证服务器可以从设备解密信息(即设备待加密信息)中获取设备公钥和设备随机数,认证服务器可以直接从本地获取服务器公钥和服务器随机数。当设备认证结果为认证通过时,认证服务器可以在本地获取服务器公钥对应的服务器私钥,基于服务器私钥和设备公钥生成服务器初始会话密钥,基于设备随机数、服务器随机数和服务器初始会话密钥得到服务器目标会话密钥。认证服务器生成服务器目标会话密钥后,可以将服务器目标会话密钥发送至待认证设备对应的设备服务器,后续设备服务器与待认证设备之间可以基于服务器目标会话密钥进行数据加密传输。例如,设备服务器欲发送数据A至待认证设备,设备服务器可以基于服务器目标会话密钥对数据A进行加密,将加密后的数据A发送至待认证设备。设备服务器接收到待认证设备发送的加密数据B,设备服务器可以基于服务器目标会话密钥对加密数据B进行解密,得到加密数据B对应的原始数据。
本实施例中,当设备认证结果为认证通过时,基于服务器私钥、服务器随机数、设备公钥和设备随机数可以生成会话密钥,会话密钥能够保障设备服务器与待认证设备之间的通信安全,防止通信数据泄露。
在一个实施例中,所述方法还包括:当服务器认证结果为认证通过时,待认证设备获取设备私钥,基于设备私钥和服务器公钥生成设备初始会话密钥;基于设备随机数、服务器随机数和设备初始会话密钥得到设备目标会话密钥;设备目标会话密钥用于对待认证设备与设备服务器的通话数据进行加密和解密。
其中,设备公钥是根据非对称加密算法得到的设备密钥对中的公钥。
具体地,设备待加密信息包括设备公钥和设备随机数,服务器待加密信息包括服务器公钥和服务器随机数。当服务器认证结果为认证通过时,待认证设备可以从服务器解密信息(即服务器待加密信息)中获取服务器公钥和服务器随机数,待认证设备可以直接从本地获取设备公钥和设备随机数。当服务器认证结果为认证通过时,待认证设备基于设备私钥和服务器公钥生成设备初始会话密钥,基于设备随机数、服务器随机数和设备初始会话密钥得到设备目标会话密钥。设备目标会话密钥和服务器目标会话密钥是相同的会话密钥。因此,待认证设备生成设备目标会话密钥后,待认证设备与设备服务器之间可以基于设备目标会话密钥进行数据加密传输。
在一个实施例中,服务器公钥=g服务器私钥 mod p,设备公钥=g设备私钥 mod p,g和p是指待认证设备和认证服务器用于生成密钥对的参数。服务器初始会话密钥=设备公钥服务器私钥mod p,设备初始会话密钥=服务器公钥设备私钥 mod p。由此得到的服务器初始会话密钥和设备初始会话密钥是相同的会话密钥。对设备随机数、服务器随机数和服务器初始会话密钥进行哈希处理,得到服务器目标会话密钥。对设备随机数、服务器随机数和设备初始会话密钥进行哈希处理,得到设备目标会话密钥。由于进行哈希处理的输入数据相同,因此哈希处理后的输出结果也相同,即服务器目标会话密钥和设备目标会话密钥是相同的会话密钥。那么,待认证设备可以基于设备目标会话密钥对目标数据进行加密后发送至设备服务器,设备服务器接收到加密数据后,基于服务器目标会话密钥对加密数据进行解密得到目标数据。设备服务器可以基于服务器目标会话密钥对目标数据进行加密后发送至待认证设备,待认证设备接收到加密数据后,基于设备目标会话密钥对加密数据进行解密得到目标数据。
在一个实施例中,待认证设备可以基于自定公式对设备随机数、服务器随机数和设备初始会话密钥进行哈希处理,得到设备目标会话密钥。待认证设备也可以基于PRF算法(Pseudo-random Function,伪随机函数)对设备随机数、服务器随机数和设备初始会话密钥进行哈希处理,得到设备目标会话密钥。同理,认证服务器可以基于自定公式对设备随机数、服务器随机数和服务器初始会话密钥进行哈希处理,得到服务器目标会话密钥。认证服务器也可以基于PRF算法(Pseudo-random Function,伪随机函数)对设备随机数、服务器随机数和服务器初始会话密钥进行哈希处理,得到服务器目标会话密钥。
在一个实施例中,设备每次重新上线都需要再次进行设备认证,因此,设备每次重新上线,设备和设备服务器都会得到新的会话密钥,基于新的会话密钥进行加密通信。这样,即使某一次的会话密钥被泄漏,之前的会话消息也不会被破解,从而进一步提高了设备和设备服务器之间的通信安全。
本实施例中,当服务器认证结果为认证通过时,基于设备私钥、服务器随机数、服务器公钥和设备随机数可以生成会话密钥,会话密钥能够保障设备服务器与待认证设备之间的通信安全,防止通信数据泄露。
在一个实施例中,如图14所示,提供了一种设备认证方法,以该方法应用于图1中的待认证设备102为例进行说明,包括以下步骤:
步骤S1402,接收认证服务器发送的混淆密钥。
步骤S1404,获取设备待加密信息,基于混淆密钥对设备待加密信息进行加密认证处理,得到设备认证码。
步骤S1406,将设备认证码发送至认证服务器,以使认证服务器从设备认证码中提取目标认证数据和目标加密数据,基于混淆密钥对目标加密数据进行解密处理,得到设备解密信息,基于混淆密钥对设备解密信息进行认证处理,得到参考认证数据,基于参考认证数据和目标认证数据确定设备认证结果。
具体地,待认证设备可以向认证服务器发送密钥获取请求,认证服务器根据密钥获取请求生成初始密钥,基于初始密钥生成对应的混淆密钥,向待认证设备返回混淆密钥。待认证设备接收到认证服务器发送的混淆密钥后,获取设备待加密信息,基于混淆密钥对设备待加密信息进行加密认证处理,得到设备认证码,向认证服务器发送生成的设备认证码。认证服务器接收到设备认证码后,可以从设备认证码中提取目标认证数据和目标加密数据,基于混淆密钥或者混淆密钥对应的初始密钥对目标加密数据进行解密处理,得到设备解密信息,基于混淆密钥或者混淆密钥对应的初始密钥对设备解密信息进行认证处理,得到参考认证数据,最后基于参考认证数据和目标认证数据确定设备认证结果。当参考认证数据和目标认证数据一致时,确定设备认证结果为认证通过,参考认证数据和目标认证数据不一致时,确定设备认证结果为认证失败。
其中,基于混淆密钥对设备待加密信息进行加密认证处理的具体过程可以参照应用于认证服务器为例说明设备认证方法的相关实施例。基于混淆密钥对目标加密数据进行解密处理得到设备解密信息的具体过程可以参照应用于认证服务器为例说明设备认证方法的相关实施例。基于混淆密钥对设备解密信息进行认证处理得到参考认证数据的具体过程可以参照应用于认证服务器为例说明设备认证方法的相关实施例。
上述设备认证方法、装置、计算机设备和存储介质,通过接收认证服务器发送的混淆密钥;获取设备待加密信息,基于混淆密钥对设备待加密信息进行加密认证处理,得到设备认证码;将设备认证码发送至认证服务器,以使认证服务器从设备认证码中提取目标认证数据和目标加密数据,基于混淆密钥对目标加密数据进行解密处理,得到设备解密信息,基于混淆密钥对设备解密信息进行认证处理,得到参考认证数据,基于参考认证数据和目标认证数据确定设备认证结果。这样,相对于普通密钥,混淆密钥的数据结构更复杂,基于复杂度更高的混淆密钥对设备进行认证可以提高设备认证的安全性。并且,不同的设备对应不同的混淆密钥,基于设备对应的专用混淆密钥对设备进行认证可以进一步提高设备认证的安全性。
在一个具体的实施例中,如图15所示,提供一种设备认证方法的流程示意图,具体来说:
1、设备发送设备信息至设备服务器。
2、设备服务器生成密钥获取请求,发送密钥获取请求至认证服务器,密钥获取请求携带设备信息。
3、认证服务器接收到密钥获取请求后,根据设备信息生成设备对应的设备标识,生成设备对应的初始密钥,基于初始密钥生成设备对应的混淆密钥。
在一个实施例中,认证服务器可以通过AES 白盒密码算法对初始密钥进行混淆,生成混淆密钥,也就是,通过AES 白盒密码算法对初始密钥进行混淆,生成白盒密钥文件。
4、认证服务器向设备服务器返回设备对应的设备标识和混淆密钥。
5、设备服务器向设备返回设备对应的设备标识和混淆密钥。
6、设备获取到设备标识和混淆密钥后,可以获取设备待加密信息,基于混淆密钥对设备待加密信息进行加密认证处理,得到设备认证码。
在一个实施例中,设备可以通过 AES 白盒密码原理以及CCM加密认证算法对设备待加密信息进行加密认证处理,生成设备认证码。也就是,将加密认证算法的基础计算单元AES转换成使用AES白盒密钥文件计算,不仅实现了设备认证,而且对初始密钥进行了保护来抵御白盒攻击,从而提高了设备认证的安全性。
进一步的,设备可以先基于混淆密钥对设备待加密信息进行加密认证处理,得到初始认证码,基于设备标识对初始认证码进行加密,得到设备认证码。
7、设备向设备服务器发送设备认证码。
8、设备服务器将设备认证码发送至认证服务器。
9、认证服务器基于设备认证码对设备进行认证,确定设备认证结果。当设备认证结果为认证通过时,生成服务器认证码和服务器目标会话标识。
具体地,认证服务器从设备认证码中提取目标加密数据和目标认证数据,基于初始密钥对目标加密数据进行解密处理,得到设备解密信息,基于初始密钥对设备解密信息进行认证处理,得到参考认证数据。当目标认证数据和参考认证数据一致时,确定设备认证结果为认证通过,当目标认证数据和参考认证数据不一致时,确定设备认证结果为认证失败。
当设备认证结果为认证通过时,认证服务器获取服务器待加密信息,基于初始密钥对服务器待加密信息和设备认证码进行加密认证处理,得到服务器认证码。
服务器待加密信息包括服务器公钥和服务器随机数,设备待加密信息包括设备公钥和设备随机数。认证服务器获取服务器私钥,基于服务器私钥和设备公钥生成服务器初始会话密钥,基于设备随机数、服务器随机数和服务器初始会话密钥得到服务器目标会话密钥。
10、当设备认证结果为认证通过时,认证服务器将设备认证结果、服务器认证码和服务器目标会话密钥发送至设备服务器。
可以理解,当设备认证结果为认证失败时,认证服务器只将设备认证结果发送至设备服务器,设备服务器将设备认证结果发送至设备。
11、设备服务器将服务器目标会话密钥存储在本地。
12、当设备认证结果为认证通过时,设备服务器将设备认证结果和服务器认证码发送至设备。
13、设备基于服务器认证码对认证服务器进行认证,确定服务器认证结果。当服务器认证结果为认证通过时,生成设备目标会话标识。
具体地,设备从服务器认证码中提取服务器加密数据和服务器认证数据,基于混沌密钥对服务器加密数据进行解密处理,得到服务器解密信息。当服务器解密信息不包括设备认证码的相关信息时,确定服务器认证结果为认证失败。当服务器解密信息包括设备认证码的相关信息时,继续基于混沌密钥对服务器解密信息进行认证处理,得到中间认证数据。当服务器认证数据和中间认证数据一致时,确定服务器认证结果为认证通过,当目标认证数据和参考认证数据不一致时,确定服务器认证结果为认证失败。
当服务器认证结果为认证通过时,设备获取设备私钥,基于设备私钥和服务器公钥生成设备初始会话密钥,基于设备随机数、服务器随机数和设备初始会话密钥得到设备目标会话密钥。
14、设备和设备服务器可以基于设备目标会话密钥和服务器目标会话密钥进行加密通信。
参考图16,以生成设备认证码为例来说明加密认证处理的具体过程。具体地,将设备待加密信息转换为有序排列的待加密矩阵1、待加密矩阵2、……、待加密矩阵n。基于混沌密钥对待加密矩阵1进行加密处理,得到第一加密处理结果,将第一加密处理结果和待加密矩阵2进行融合处理,得到第一融合处理结果,基于混沌密钥对第一融合处理结果进行加密处理,得到第二加密处理结果,以此类推依次进行加密处理和融合处理,直至待加密矩阵n和上一次加密处理结果进行融合处理,得到第n-1融合处理结果,基于混沌密钥对第n-1融合处理结果进行加密处理,得到中间矩阵。获取初始辅助矩阵,基于混沌密钥对初始辅助矩阵进行加密处理,得到参考矩阵。将中间矩阵和参考矩阵进行融合处理,得到目标认证数据。
将加密辅助信息转化为加密辅助矩阵1、加密辅助矩阵2、……、加密辅助矩阵n。基于混沌密钥对加密辅助矩阵1进行加密处理,得到目标加密矩阵1,基于混沌密钥对加密辅助矩阵2进行加密处理,得到目标加密矩阵2,以此类推,基于混沌密钥对加密辅助矩阵n进行加密处理,得到目标加密矩阵n,最终得到各个加密辅助矩阵对应的目标加密矩阵。
待加密矩阵和加密辅助矩阵一一对应,待加密矩阵和目标加密矩阵一一对应。将待加密矩阵1和目标加密矩阵1进行融合处理,得到目标融合矩阵1,将待加密矩阵2和目标加密矩阵2进行融合处理,得到目标融合矩阵2,以此类推,将待加密矩阵n和目标加密矩阵n进行融合处理,得到目标融合矩阵n。各个目标融合矩阵组合得到目标加密数据。
最终,目标认证数据和目标加密数据组合得到设备认证码。
本实施例中,本申请的设备认证方法可以抵御白盒攻击,提高设备认证的安全性。此外,设备只需要安装有设备认证SDK就可以基于混淆密钥对设备待加密信息进行加密认证处理,得到设备认证码。设备认证SDK的安装,只需考虑设备的存储空间,无需考虑设备的硬件结构,无需对设备进行硬件改造,兼容性强。并且,相比于通过硬件改造的方式进行设备认证,由于设备认证SDK移植成本低、开发成本低,所以通过设备认证SDK实现设备认证可以降低设备认证的成本。
应该理解的是,虽然图2、图8、图14的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2、图8、图14中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图17所示,提供了一种设备认证装置,该装置可以采用软件模块或硬件模块,或者是二者的结合成为计算机设备的一部分,该装置具体包括:密钥获取模块1702、密钥发送模块1704、数据提取模块1706、数据解密模块1708、数据认证模块1710和认证结果确定模块1712,其中:
密钥获取模块1702,用于获取待认证设备对应的混淆密钥。
密钥发送模块1704,用于将混淆密钥发送至待认证设备,以使待认证设备获取设备待加密信息,基于混淆密钥对设备待加密信息进行加密认证处理,得到待认证设备对应的设备认证码。
数据提取模块1706,用于接收待认证设备发送的设备认证码,从设备认证码中提取待认证设备对应的目标认证数据和目标加密数据。
数据解密模块1708,用于基于混淆密钥对目标加密数据进行解密处理,得到设备解密信息。
数据认证模块1710,用于基于混淆密钥对设备解密信息进行认证处理,得到待认证设备对应的参考认证数据。
认证结果确定模块1712,用于基于参考认证数据和目标认证数据确定待认证设备的设备认证结果。
在一个实施例中,密钥获取模块还用于获取待认证设备对应的初始密钥,将初始密钥转化为初始密钥矩阵;基于初始密钥矩阵中各个矩阵数据和对应的位置信息对初始密钥矩阵进行密钥拓展,得到对应的目标密钥矩阵;获取加密混淆信息,基于加密混淆信息和目标密钥矩阵生成混淆密钥。
在一个实施例中,目标密钥矩阵包括多轮加密对应的密钥子矩阵,密钥获取模块还用于获取输入置乱矩阵,根据输入置乱矩阵对当前轮加密对应的输入矩阵进行置乱处理,得到第一矩阵;根据当前轮加密对应的密钥子矩阵对第一矩阵进行融合处理,得到第二矩阵;获取替换矩阵,根据替换矩阵对第二矩阵进行替换处理,得到第三矩阵;获取混淆矩阵,根据混淆矩阵对第三矩阵进行混淆处理,得到第四矩阵;获取输出置乱矩阵,根据输出置乱矩阵对第四矩阵进行置乱处理,得到当前轮加密对应的输出矩阵;将当前轮加密的输出矩阵作为下一轮加密的输入矩阵进行下一轮加密,得到各轮加密对应的输出矩阵;基于各轮加密分别对应的输入矩阵和输出矩阵生成混淆密钥。
在一个实施例中,待认证设备基于混淆密钥对设备待加密信息进行认证处理,得到待认证设备对应的目标认证数据;获取加密辅助信息,基于混淆密钥对加密辅助信息进行加密处理,得到初始加密数据;将初始加密数据和设备待加密信息进行融合处理,得到待认证设备对应的目标加密数据;基于目标加密数据和目标认证数据得到设备认证码。
在一个实施例中,待认证设备将设备待加密信息转化为至少一个有序待加密矩阵,从有序待加密矩阵中确定加密处理时的参考输入矩阵;基于混淆密钥对参考输入矩阵进行加密处理,得到加密处理结果,将加密处理结果和下一个有序待加密矩阵的融合处理结果作为下一次加密处理时的参考输入矩阵,返回基于混淆密钥对参考输入矩阵进行加密处理的步骤,直至各个有序待加密矩阵加密完成得到中间矩阵;获取初始辅助矩阵,基于混淆密钥对初始辅助矩阵进行加密处理,得到参考矩阵;基于中间矩阵和参考矩阵得到目标认证数据。
在一个实施例中,待认证设备将加密辅助信息转化为至少一个加密辅助矩阵;基于混淆密钥分别对各个加密辅助矩阵进行加密处理,得到各个加密辅助矩阵分别对应的目标加密矩阵;基于各个目标加密矩阵得到初始加密数据。
在一个实施例中,加密辅助矩阵和有序待加密矩阵一一对应,待认证设备将各个目标加密矩阵和对应的有序待加密矩阵进行融合处理,得到各个目标融合矩阵;基于各个目标融合矩阵得到目标加密数据。
在一个实施例中,混淆密钥包括各轮加密分别对应的输入矩阵、输出矩阵和各轮加密的加密顺序,当前矩阵为参考输入矩阵或加密辅助矩阵,待认证设备获取初始抵消矩阵,将当前矩阵和初始抵消矩阵进行融合处理,得到首轮加密对应的目标参考矩阵;从混淆密钥中查找与当前轮加密的目标参考矩阵匹配的输入矩阵作为当前轮加密的目标输入矩阵,从混淆密钥中查找目标输入矩阵对应的输出矩阵作为当前轮加密的目标输出矩阵;获取当前轮加密对应的当前抵消矩阵,将目标输出矩阵和当前抵消矩阵进行融合处理,得到下一轮加密对应的目标参考矩阵,直至最后一轮加密的目标输出矩阵融合完成得到当前矩阵对应的目标加密结果。
在一个实施例中,密钥获取模块还用于获取待认证设备的设备信息,根据设备信息生成待认证设备对应的设备标识。密钥发送模块还用于将设备标识发送至待认证设备。待认证设备基于设备标识对目标加密数据进行加密,得到更新加密数据;基于目标认证数据和更新加密数据得到设备认证码。
在一个实施例中,认证结果确定模块还用于当参考认证数据和目标认证数据一致时,确定设备认证结果为认证通过;当参考认证数据和目标认证数据不一致时,确定设备认证结果为认证失败。
在一个实施例中,设备认证码携带对应的生成时间,认证结果确定模块还用于当生成时间和设备认证码的接收时间的时间差超过预设时间阈值时,确定设备认证结果为认证失败。
在一个实施例中,如图18所示,设备认证装置还包括:
服务器认证码生成模块1714,用于获取服务器待加密信息;基于混淆密钥对服务器待加密信息和设备认证码进行加密认证处理,得到服务器认证码;将设备认证结果和服务器认证码发送至待认证设备,以使待认证设备基于混淆密钥和设备认证码对服务器认证码进行服务器认证。
在一个实施例中,设备待加密信息包括设备公钥和设备随机数,服务器待加密信息包括服务器公钥和服务器随机数,设备认证装置还包括:
会话密钥生成模块1716,用于当设备认证结果为认证通过时,获取服务器私钥,基于服务器私钥和设备公钥生成服务器初始会话密钥;基于设备随机数、服务器随机数和服务器初始会话密钥得到服务器目标会话密钥;将服务器目标会话密钥发送至待认证设备对应的设备服务器;服务器目标会话密钥用于对设备服务器与待认证设备的通话数据进行加密和解密。
在一个实施例中,当服务器认证结果为认证通过时,待认证设备获取设备私钥,基于设备私钥和服务器公钥生成设备初始会话密钥;基于设备随机数、服务器随机数和设备初始会话密钥得到设备目标会话密钥;设备目标会话密钥用于对待认证设备与设备服务器的通话数据进行加密和解密。
在一个实施例中,如图19所示,提供了一种设备认证装置,该装置可以采用软件模块或硬件模块,或者是二者的结合成为计算机设备的一部分,该装置具体包括:密钥接收模块1902、信息加密认证模块1904和认证结果确定模块1906,其中:
密钥接收模块1902,用于接收认证服务器发送的混淆密钥。
信息加密认证模块1904,用于获取设备待加密信息,基于混淆密钥对设备待加密信息进行加密认证处理,得到设备认证码。
认证结果确定模块1906,用于将设备认证码发送至认证服务器,以使认证服务器从设备认证码中提取目标认证数据和目标加密数据,基于混淆密钥对目标加密数据进行解密处理,得到设备解密信息,基于混淆密钥对设备解密信息进行认证处理,得到参考认证数据,基于参考认证数据和目标认证数据确定设备认证结果。
在一个实施例中,信息加密认证模块还用于基于混淆密钥对设备待加密信息进行认证处理,得到目标认证数据;获取加密辅助信息,基于混淆密钥对加密辅助信息进行加密处理,得到初始加密数据;将初始加密数据和设备待加密信息进行融合处理,得到目标加密数据;基于目标加密数据和目标认证数据得到设备认证码。
在一个实施例中,信息加密认证模块还用于将设备待加密信息转化为至少一个有序待加密矩阵,从有序待加密矩阵中确定加密处理时的参考输入矩阵;基于混淆密钥对参考输入矩阵进行加密处理,得到加密处理结果,将加密处理结果和下一个有序待加密矩阵的融合处理结果作为下一次加密处理时的参考输入矩阵,返回基于混淆密钥对参考输入矩阵进行加密处理的步骤,直至各个有序待加密矩阵加密完成得到中间矩阵;获取初始辅助矩阵,基于混淆密钥对初始辅助矩阵进行加密处理,得到参考矩阵;基于中间矩阵和参考矩阵得到目标认证数据。
在一个实施例中,信息加密认证模块还用于将加密辅助信息转化为至少一个加密辅助矩阵;基于混淆密钥分别对各个加密辅助矩阵进行加密处理,得到各个加密辅助矩阵分别对应的目标加密矩阵;基于各个目标加密矩阵得到初始加密数据。
在一个实施例中,加密辅助矩阵和有序待加密矩阵一一对应,信息加密认证模块还用于将各个目标加密矩阵和对应的有序待加密矩阵进行融合处理,得到各个目标融合矩阵;基于各个目标融合矩阵得到目标加密数据。
在一个实施例中,混淆密钥包括各轮加密分别对应的输入矩阵、输出矩阵和各轮加密的加密顺序,当前矩阵为参考输入矩阵或加密辅助矩阵,信息加密认证模块还用于获取初始抵消矩阵,将当前矩阵和初始抵消矩阵进行融合处理,得到首轮加密对应的目标参考矩阵;从混淆密钥中查找与当前轮加密的目标参考矩阵匹配的输入矩阵作为当前轮加密的目标输入矩阵,从混淆密钥中查找目标输入矩阵对应的输出矩阵作为当前轮加密的目标输出矩阵;获取当前轮加密对应的当前抵消矩阵,将目标输出矩阵和当前抵消矩阵进行融合处理,得到下一轮加密对应的目标参考矩阵,直至最后一轮加密的目标输出矩阵融合完成得到当前矩阵对应的目标加密结果。
关于设备认证装置的具体限定可以参见上文中对于设备认证方法的限定,在此不再赘述。上述设备认证装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图20所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储初始密钥、混淆密钥、设备标识等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种设备认证方法。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图21所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、运营商网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种设备认证方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图20、21中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (15)
1.一种设备认证方法,其特征在于,所述方法包括:
获取待认证设备对应的混淆密钥;
将所述混淆密钥发送至所述待认证设备,以使所述待认证设备获取设备待加密信息,基于所述混淆密钥对所述设备待加密信息进行加密认证处理,得到所述待认证设备对应的设备认证码;
接收所述待认证设备发送的所述设备认证码,从所述设备认证码中提取所述待认证设备对应的目标认证数据和目标加密数据;
基于所述混淆密钥对所述目标加密数据进行解密处理,得到设备解密信息;
基于所述混淆密钥对所述设备解密信息进行认证处理,得到所述待认证设备对应的参考认证数据;
基于所述参考认证数据和所述目标认证数据确定所述待认证设备的设备认证结果。
2.根据权利要求1所述的方法,其特征在于,所述获取待认证设备对应的混淆密钥,包括:
获取所述待认证设备对应的初始密钥,将所述初始密钥转化为初始密钥矩阵;
基于所述初始密钥矩阵中各个矩阵数据和对应的位置信息对所述初始密钥矩阵进行密钥拓展,得到对应的目标密钥矩阵;
获取加密混淆信息,基于所述加密混淆信息和所述目标密钥矩阵生成所述混淆密钥。
3.根据权利要求2所述的方法,其特征在于,所述目标密钥矩阵包括多轮加密对应的密钥子矩阵,所述获取加密混淆信息,基于所述加密混淆信息和所述目标密钥矩阵生成所述混淆密钥,包括:
获取输入置乱矩阵,根据所述输入置乱矩阵对当前轮加密对应的输入矩阵进行置乱处理,得到第一矩阵;
根据所述当前轮加密对应的密钥子矩阵对所述第一矩阵进行融合处理,得到第二矩阵;
获取替换矩阵,根据所述替换矩阵对所述第二矩阵进行替换处理,得到第三矩阵;
获取混淆矩阵,根据所述混淆矩阵对所述第三矩阵进行混淆处理,得到第四矩阵;
获取输出置乱矩阵,根据所述输出置乱矩阵对所述第四矩阵进行置乱处理,得到当前轮加密对应的输出矩阵;
将当前轮加密的输出矩阵作为下一轮加密的输入矩阵进行下一轮加密,得到各轮加密对应的输出矩阵;
基于各轮加密分别对应的输入矩阵和输出矩阵生成所述混淆密钥。
4.根据权利要求1所述的方法,其特征在于,所述将所述混淆密钥发送至所述待认证设备,以使所述待认证设备获取设备待加密信息,基于所述混淆密钥对所述设备待加密信息进行加密认证处理,得到所述待认证设备对应的设备认证码,包括:
基于所述混淆密钥对所述设备待加密信息进行认证处理,得到所述待认证设备对应的目标认证数据;
获取加密辅助信息,基于所述混淆密钥对所述加密辅助信息进行加密处理,得到初始加密数据;
将所述初始加密数据和所述设备待加密信息进行融合处理,得到所述待认证设备对应的目标加密数据;
基于所述目标加密数据和所述目标认证数据得到所述设备认证码。
5.根据权利要求4所述的方法,其特征在于,所述基于所述混淆密钥对所述设备待加密信息进行认证处理,得到所述待认证设备对应的目标认证数据,包括:
将所述设备待加密信息转化为至少一个有序待加密矩阵,从所述有序待加密矩阵中确定加密处理时的参考输入矩阵;
基于所述混淆密钥对所述参考输入矩阵进行加密处理,得到加密处理结果,将所述加密处理结果和下一个有序待加密矩阵的融合处理结果作为下一次加密处理时的参考输入矩阵,返回所述基于所述混淆密钥对所述参考输入矩阵进行加密处理的步骤,直至各个有序待加密矩阵加密完成得到中间矩阵;
获取初始辅助矩阵,基于所述混淆密钥对所述初始辅助矩阵进行加密处理,得到参考矩阵;
基于所述中间矩阵和所述参考矩阵得到所述目标认证数据。
6.根据权利要求5所述的方法,其特征在于,所述获取加密辅助信息,基于所述混淆密钥对所述加密辅助信息进行加密处理,得到初始加密数据,包括:
将所述加密辅助信息转化为至少一个加密辅助矩阵;
基于所述混淆密钥分别对各个加密辅助矩阵进行加密处理,得到所述各个加密辅助矩阵分别对应的目标加密矩阵;
基于各个目标加密矩阵得到所述初始加密数据。
7.根据权利要求6所述的方法,其特征在于,所述加密辅助矩阵和所述有序待加密矩阵一一对应,所述将所述初始加密数据和所述设备待加密信息进行融合处理,得到所述待认证设备对应的目标加密数据,包括:
将所述各个目标加密矩阵和对应的有序待加密矩阵进行融合处理,得到各个目标融合矩阵;
基于各个目标融合矩阵得到所述目标加密数据。
8.根据权利要求6所述的方法,其特征在于,所述混淆密钥包括各轮加密分别对应的输入矩阵、输出矩阵和各轮加密的加密顺序,当前矩阵为所述参考输入矩阵或所述加密辅助矩阵,基于所述混淆密钥对当前矩阵进行加密处理,包括:
获取初始抵消矩阵,将所述当前矩阵和所述初始抵消矩阵进行融合处理,得到首轮加密对应的目标参考矩阵;
从所述混淆密钥中查找与当前轮加密的目标参考矩阵匹配的输入矩阵作为当前轮加密的目标输入矩阵,从所述混淆密钥中查找所述目标输入矩阵对应的输出矩阵作为当前轮加密的目标输出矩阵;
获取当前轮加密对应的当前抵消矩阵,将所述目标输出矩阵和所述当前抵消矩阵进行融合处理,得到下一轮加密对应的目标参考矩阵,直至最后一轮加密的目标输出矩阵融合完成得到所述当前矩阵对应的目标加密结果。
9.根据权利要求1所述的方法,其特征在于,所述基于所述参考认证数据和所述目标认证数据确定所述待认证设备的设备认证结果,包括:
当所述参考认证数据和所述目标认证数据一致时,确定所述设备认证结果为认证通过;
当所述参考认证数据和所述目标认证数据不一致时,确定所述设备认证结果为认证失败。
10.根据权利要求1所述的方法,其特征在于,所述基于所述参考认证数据和所述目标认证数据确定所述待认证设备的设备认证结果之后,所述方法还包括:
获取服务器待加密信息;
基于所述混淆密钥对所述服务器待加密信息和所述设备认证码进行加密认证处理,得到服务器认证码;
将所述设备认证结果和所述服务器认证码发送至所述待认证设备,以使所述待认证设备基于所述混淆密钥和所述设备认证码对所述服务器认证码进行服务器认证。
11.一种设备认证方法,其特征在于,所述方法包括:
接收认证服务器发送的混淆密钥;
获取设备待加密信息,基于所述混淆密钥对所述设备待加密信息进行加密认证处理,得到设备认证码;
将所述设备认证码发送至认证服务器,以使所述认证服务器从所述设备认证码中提取目标认证数据和目标加密数据,基于所述混淆密钥对所述目标加密数据进行解密处理,得到设备解密信息,基于所述混淆密钥对所述设备解密信息进行认证处理,得到参考认证数据,基于所述参考认证数据和所述目标认证数据确定设备认证结果。
12.一种设备认证装置,其特征在于,所述装置包括:
密钥获取模块,用于获取待认证设备对应的混淆密钥;
密钥发送模块,用于将所述混淆密钥发送至所述待认证设备,以使所述待认证设备获取设备待加密信息,基于所述混淆密钥对所述设备待加密信息进行加密认证处理,得到所述待认证设备对应的设备认证码;
数据提取模块,用于接收所述待认证设备发送的所述设备认证码,从所述设备认证码中提取所述待认证设备对应的目标认证数据和目标加密数据;
数据解密模块,用于基于所述混淆密钥对所述目标加密数据进行解密处理,得到设备解密信息;
数据认证模块,用于基于所述混淆密钥对所述设备解密信息进行认证处理,得到所述待认证设备对应的参考认证数据;
认证结果确定模块,用于基于所述参考认证数据和所述目标认证数据确定所述待认证设备的设备认证结果。
13.一种设备认证装置,其特征在于,所述装置包括:
密钥接收模块,用于接收认证服务器发送的混淆密钥;
信息加密认证模块,用于获取设备待加密信息,基于所述混淆密钥对所述设备待加密信息进行加密认证处理,得到设备认证码;
认证结果确定模块,用于将所述设备认证码发送至认证服务器,以使所述认证服务器从所述设备认证码中提取目标认证数据和目标加密数据,基于所述混淆密钥对所述目标加密数据进行解密处理,得到设备解密信息,基于所述混淆密钥对所述设备解密信息进行认证处理,得到参考认证数据,基于所述参考认证数据和所述目标认证数据确定设备认证结果。
14.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至10中任一项所述的方法的步骤。
15.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至10中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011311625.1A CN112115461B (zh) | 2020-11-20 | 2020-11-20 | 设备认证方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011311625.1A CN112115461B (zh) | 2020-11-20 | 2020-11-20 | 设备认证方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112115461A true CN112115461A (zh) | 2020-12-22 |
CN112115461B CN112115461B (zh) | 2021-04-06 |
Family
ID=73794953
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011311625.1A Active CN112115461B (zh) | 2020-11-20 | 2020-11-20 | 设备认证方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112115461B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112966289A (zh) * | 2021-03-30 | 2021-06-15 | 中国电子信息产业集团有限公司第六研究所 | 一种信息处理方法、装置、计算机设备和介质 |
CN113821809A (zh) * | 2021-08-26 | 2021-12-21 | 岚图汽车科技有限公司 | Ota远程连接方法、装置、存储介质及车辆 |
CN115277064A (zh) * | 2022-06-14 | 2022-11-01 | 中国电信股份有限公司 | 数据加密、数据解密方法、装置、电子设备和介质 |
CN116010992A (zh) * | 2023-02-07 | 2023-04-25 | 之江实验室 | 一种数据处理方法、装置、可读存储介质及电子设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102142957A (zh) * | 2010-09-17 | 2011-08-03 | 华为技术有限公司 | 数据加密的方法、装置及具有数据加密功能的通信设备 |
CN103888937A (zh) * | 2014-03-31 | 2014-06-25 | 北京科技大学 | 一种适用于无线传感器网络aes加密的低开销快速轮加密装置及方法 |
CN110278072A (zh) * | 2019-07-11 | 2019-09-24 | 北京电子科技学院 | 一种16轮sm4-128/128白盒密码实现方法 |
CN111629012A (zh) * | 2020-07-28 | 2020-09-04 | 杭州海康威视数字技术股份有限公司 | 通信方法、装置及门禁系统、设备、存储介质 |
CN111901303A (zh) * | 2020-06-28 | 2020-11-06 | 北京可信华泰信息技术有限公司 | 设备认证方法和装置、存储介质及电子装置 |
CN111935166A (zh) * | 2020-08-18 | 2020-11-13 | 杭州萤石软件有限公司 | 通信认证方法、系统、电子设备、服务器及存储介质 |
-
2020
- 2020-11-20 CN CN202011311625.1A patent/CN112115461B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102142957A (zh) * | 2010-09-17 | 2011-08-03 | 华为技术有限公司 | 数据加密的方法、装置及具有数据加密功能的通信设备 |
CN103888937A (zh) * | 2014-03-31 | 2014-06-25 | 北京科技大学 | 一种适用于无线传感器网络aes加密的低开销快速轮加密装置及方法 |
CN110278072A (zh) * | 2019-07-11 | 2019-09-24 | 北京电子科技学院 | 一种16轮sm4-128/128白盒密码实现方法 |
CN111901303A (zh) * | 2020-06-28 | 2020-11-06 | 北京可信华泰信息技术有限公司 | 设备认证方法和装置、存储介质及电子装置 |
CN111629012A (zh) * | 2020-07-28 | 2020-09-04 | 杭州海康威视数字技术股份有限公司 | 通信方法、装置及门禁系统、设备、存储介质 |
CN111935166A (zh) * | 2020-08-18 | 2020-11-13 | 杭州萤石软件有限公司 | 通信认证方法、系统、电子设备、服务器及存储介质 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112966289A (zh) * | 2021-03-30 | 2021-06-15 | 中国电子信息产业集团有限公司第六研究所 | 一种信息处理方法、装置、计算机设备和介质 |
CN113821809A (zh) * | 2021-08-26 | 2021-12-21 | 岚图汽车科技有限公司 | Ota远程连接方法、装置、存储介质及车辆 |
CN115277064A (zh) * | 2022-06-14 | 2022-11-01 | 中国电信股份有限公司 | 数据加密、数据解密方法、装置、电子设备和介质 |
CN115277064B (zh) * | 2022-06-14 | 2024-05-10 | 中国电信股份有限公司 | 数据加密、数据解密方法、装置、电子设备和介质 |
CN116010992A (zh) * | 2023-02-07 | 2023-04-25 | 之江实验室 | 一种数据处理方法、装置、可读存储介质及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112115461B (zh) | 2021-04-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112115461B (zh) | 设备认证方法、装置、计算机设备和存储介质 | |
CN113691502B (zh) | 通信方法、装置、网关服务器、客户端及存储介质 | |
CN110059458B (zh) | 一种用户口令加密认证方法、装置及系统 | |
CN105553951A (zh) | 数据传输方法和装置 | |
KR20210134655A (ko) | 보안 시스템 및 관련 방법 | |
Chikouche et al. | A privacy-preserving code-based authentication protocol for Internet of Things | |
US20200195446A1 (en) | System and method for ensuring forward & backward secrecy using physically unclonable functions | |
CN107453880B (zh) | 一种云数据安全存储方法和系统 | |
CN110690956B (zh) | 双向认证方法及系统、服务器和终端 | |
JP2020530726A (ja) | サプライチェーン資産管理を保護するアプリケーションを有する遠隔サーバへのnfcタグ認証 | |
CN114157415A (zh) | 数据处理方法、计算节点、系统、计算机设备和存储介质 | |
CN102821098A (zh) | 云环境下即时通讯消息自溶解系统及方法 | |
KR20210139344A (ko) | 데이터 기반 활동을 수행하는 방법 및 장치 | |
CN114443718A (zh) | 一种数据查询方法及系统 | |
CN113489710B (zh) | 一种文件共享方法、装置、设备和存储介质 | |
Goel et al. | LEOBAT: Lightweight encryption and OTP based authentication technique for securing IoT networks | |
GB2488753A (en) | Encrypted communication | |
Yevseiev et al. | The development of the method of multifactor authentication based on hybrid cryptocode constructions on defective codes | |
KR102282788B1 (ko) | 트랜잭션에 포함된 평문 데이터의 변경을 지원하는 블록체인 시스템 | |
KR102539418B1 (ko) | Puf 기반 상호 인증 장치 및 방법 | |
CN114745115A (zh) | 一种信息传输方法、装置、计算机设备及存储介质 | |
JP5945525B2 (ja) | 鍵交換システム、鍵交換装置、その方法、及びプログラム | |
CN114553557A (zh) | 密钥调用方法、装置、计算机设备和存储介质 | |
Malik et al. | Cloud computing security improvement using Diffie Hellman and AES | |
Bojanova et al. | Cryptography classes in bugs framework (BF): Encryption bugs (ENC), verification bugs (VRF), and key management bugs (KMN) |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40036276 Country of ref document: HK |