CN115001864B - 智能家具的通信认证方法、装置、计算机设备和存储介质 - Google Patents
智能家具的通信认证方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN115001864B CN115001864B CN202210888420.2A CN202210888420A CN115001864B CN 115001864 B CN115001864 B CN 115001864B CN 202210888420 A CN202210888420 A CN 202210888420A CN 115001864 B CN115001864 B CN 115001864B
- Authority
- CN
- China
- Prior art keywords
- hash
- public key
- data
- target data
- ciphertext
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0853—Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/123—Applying verification of the received information received data contents, e.g. message integrity
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请涉及一种智能家具的通信认证方法、装置、计算机设备和存储介质。方法包括:向服务器发送认证请求,以使服务器返回由公钥和密文散列组合所得的组合数据;密文散列是对公钥的散列进行加密所得;接收组合数据,并判断组合数据中的公钥和密文散列是否匹配,若是,则组合数据中的公钥通过认证,得到认证的公钥;在进行数据交互时,计算目标数据的散列,并对目标数据的散列进行加密,得到目标数据的密文散列;通过认证的公钥对目标数据与目标数据的密文散列加密,得到通信认证数据;将通信认证数据发送到服务器,以基于通信认证数据对智能家具进行通信认证。采用本方法能够在智能家具较多,且算力有限时,保障智能家具与云服务器的安全通信。
Description
技术领域
本申请涉及数字信息传输技术领域,特别是涉及一种智能家具的通信认证方法、装置、计算机设备、存储介质和计算机程序产品。
背景技术
随着设备智能化的发展,家具也进行了智能化、联网化。如智能座椅等智能家具记录的数据包含体重、坐立时间、偏好等涉及到用户隐私的信息,要保证通信时的通道安全和身份安全,保障通讯时不被第三方监听,避免用户隐私被窃取。
而且,智能家具线下设备数量极大,对成本控制要求比较高,这就需要在设计时考虑安全通信方案的通用性、可量产性,并进行知识产权保护。而在现有技术中,在控制量产成本的同时,无法完全可靠地保障智能家具的通信安全。
发明内容
基于此,有必要针对上述技术问题,提供一种能够在算力有限的情况下,与云服务器的安全通信的智能家具的通信认证方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种智能家具的通信认证方法,由智能家具的安全芯片执行,所述方法包括:
向服务器发送认证请求,以使所述服务器返回由公钥和密文散列组合所得的组合数据;所述密文散列是对所述公钥的散列进行加密所得;
接收所述组合数据,并判断所述组合数据中的公钥和密文散列是否匹配,若是,则所述组合数据中的公钥通过认证,得到认证的公钥;
在进行数据交互时,计算目标数据的散列,并对所述目标数据的散列进行加密,得到所述目标数据的密文散列;
通过所述认证的公钥对所述目标数据与所述目标数据的密文散列加密,得到通信认证数据;
将所述通信认证数据发送到所述服务器,以基于所述通信认证数据对所述智能家具进行通信认证。
在其中一个实施例中,所述计算目标数据的散列,并对所述目标数据的散列进行加密,得到所述目标数据的密文散列,包括:
接收所述智能家具的控制单元发送的目标数据;
对所述目标数据进行哈希运算,得到所述目标数据的散列;
对所述目标数据的散列进行非对称加密,得到所述目标数据的密文散列。
在其中一个实施例中,所述对所述目标数据的散列进行非对称加密,得到所述目标数据的密文散列,包括:
对所述目标数据的散列,通过所述安全芯片的私钥进行非对称加密,得到所述目标数据的密文散列;
其中,所述安全芯片的私钥对应有所述安全芯片的公钥,所述安全芯片的公钥用于对所述智能家具进行通信认证。
在其中一个实施例中,所述组合数据中的所述密文散列是所述公钥的散列按照所述服务器的私钥进行加密所得到的;所述判断所述组合数据中的公钥和密文散列是否匹配,包括:
拆分所述组合数据,得到所述组合数据中的公钥与所述组合数据中的密文散列;
对所述组合数据中的公钥进行哈希运算,得到所述组合数据中的公钥的验证散列;
通过所述服务器的公钥,对所述组合数据中的密文散列进行解密,得到所述密文散列对应的明文散列;
判断所述组合数据中的公钥的验证散列与所述密文散列对应的明文散列是否一致。
本申请还提供了一种智能家具的通信认证方法,由服务器执行,所述方法包括:
接收安全芯片发送的认证请求;
响应于所述认证请求,向所述安全芯片发送由公钥和密文散列组合所得的组合数据,以使所述安全芯片认证所述组合数据中的公钥;所述密文散列是对所述公钥的散列进行加密所得;
接收所述安全芯片发送的通信认证数据;其中,所述通信认证数据是所述安全芯片通过认证的公钥对目标数据与所述目标数据的密文散列加密所得;
将所述通信认证数据通过所述认证的公钥适配的私钥进行解析,得到所述目标数据与所述目标数据的密文散列;
判断所述目标数据与所述目标数据的密文散列是否匹配,得到所述智能家具的通信认证结果。
在其中一个实施例中,所述响应于所述认证请求,向所述安全芯片发送由公钥和密文散列组合所得的组合数据,包括:
响应于所述认证请求,生成公钥和所述公钥适配的私钥;
对所述公钥进行哈希运算,得到所述公钥的散列;
基于所述服务器的私钥对所述公钥的散列进行加密,得到密文散列;
将所述公钥与所述密文散列进行组合,得到所述认证请求对应的组合数据。
在其中一个实施例中,所述目标数据的密文散列通过所述安全芯片的私钥对所述目标数据的散列进行加密得到;所述判断所述目标数据与所述目标数据的密文散列是否匹配,包括:
对所述目标数据进行哈希运算,得到所述目标数据的验证散列;
基于所述安全芯片的公钥对所述目标数据的密文散列进行解密,得到所述目标数据的明文散列;
判断所述目标数据的验证散列与所述目标数据的明文散列是否匹配。
第二方面,本申请提供了一种智能家具的通信认证装置。所述装置包括:
认证请求发送模块,用于向服务器发送认证请求,以使所述服务器返回由公钥和密文散列组合所得的组合数据;所述密文散列是对所述公钥的散列进行加密所得;
公钥认证模块,用于接收所述组合数据,并判断所述组合数据中的公钥和密文散列是否匹配,若是,则所述组合数据中的公钥通过认证,得到认证的公钥;
数据加密模块,用于在进行数据交互时,计算目标数据的散列,并对所述目标数据的散列进行加密,得到所述目标数据的密文散列;
通信认证数据生成模块,用于通过所述认证的公钥对所述目标数据与所述目标数据的密文散列加密,得到通信认证数据;
通信认证数据发送模块,用于将所述通信认证数据发送到所述服务器,以基于所述通信认证数据对所述智能家具进行通信认证。
本申请还提供了一种智能家具的通信认证装置。所述装置包括:
认证请求接收模块,用于接收安全芯片发送的认证请求;
公钥返回模块,用于响应于所述认证请求,向所述安全芯片发送由公钥和密文散列组合所得的组合数据,以使所述安全芯片认证所述组合数据中的公钥;所述密文散列是对所述公钥的散列进行加密所得;
通信认证数据接收模块,用于接收所述安全芯片发送的通信认证数据;其中,所述通信认证数据是所述安全芯片通过认证的公钥对目标数据与所述目标数据的密文散列加密所得;
通信认证数据解析模块,用于将所述通信认证数据通过所述认证的公钥适配的私钥进行解析,得到所述目标数据与所述目标数据的密文散列;
通信认证模块,用于判断所述目标数据与所述目标数据的密文散列是否匹配,得到所述智能家具的通信认证结果。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述智能家具的通信认证的步骤。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述智能家具的通信认证的。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述智能家具的通信认证的步骤。
上述智能家具的通信认证方法、装置、计算机设备、存储介质和计算机程序产品,上述智能家具的通信认证方法中,向服务器发送认证请求,以使服务器返回由公钥和密文散列组合所得的组合数据;密文散列是对公钥的散列进行加密所得,组合数据的请求过程占据较少计算资源;而接收组合数据,并判断组合数据中的公钥和密文散列是否匹配,若是,则组合数据中的公钥通过认证,得到认证的公钥,可以通过较少的计算判断组合数据中的公钥是否在传输过程中被更改,以通过较少计算资源进行公钥的安全认证。而在进行数据交互时,计算目标数据的散列,并对目标数据的散列进行加密,得到目标数据的密文散列;通过认证的公钥对目标数据与目标数据的密文散列加密,得到通信认证数据;以通过较少的计算资源得到目标数据的通信认证数据,并使服务器可以直接通过通信认证数据进行校验,检测目标数据在传输过程中是否被第三方更改,将通信认证数据发送到服务器,以基于通信认证数据对智能家具进行通信认证。
附图说明
图1为一个实施例中智能家具的通信认证方法的应用环境图;
图2为一个实施例中智能家具的通信认证方法的流程示意图;
图3为一个实施例中智能家具的通信认证方法的流程示意图;
图4为另一个实施例中智能家具的通信认证的应用环境图;
图5为一个实施例中智能家具暂存公钥的流程示意图;
图6为一个实施例中智能家具的数据交互的流程示意图;
图7为一个实施例中智能家具的通信认证装置的结构框图;
图8为一个实施例中智能家具的通信认证装置的结构框图;
图9为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。在以下的描述中,“A和/或 B”的含义是“A与B中的至少之一”。
本申请实施例提供的智能家具的通信认证方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储***可以存储服务器104需要处理的数据。数据存储***可以集成在服务器104上,也可以放在云上或其他网络服务器上。
其中,终端102可以但不限于是各种安装有安全芯片的智能椅、智能椅外接的控制设备等智能家具。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。本申请实施例提供的方案由终端102和服务器104协同实现。
在一个实施例中,安全芯片是一种用于知识产权保护和数据保护的嵌入式数据安全芯片。安全芯片内部存放秘钥和校验信息,且安全芯片可以储存自定义数据、运行自定义算法。在一个实施例中,安全芯片内保存的自定义数据和算法,是无法被外界读取和分析的,以保障数据安全。其中,安全芯片是内置智能卡内核的芯片,这种芯片支持自定义算法的下载和运行,并且在芯片硬件层面有着抵抗多种攻击的功能,如可抵抗差分攻击、功耗分析、剖片攻击。当这种芯片的安全等级为银行卡级别,芯片内部存储的自定义数据和自定义算法,可以认为是一个黑盒,外界无法获取此类信息,更做不到内部算法的分析和克隆。可以理解,这种芯片的成本也不高,且此类芯片的国产厂家也不少,在供应链安全方面有着显著优势,非常适合智能座椅等智能家具的量产需求。安全芯片具体可以是,深圳中巨伟业的SMEC90ST、北京凌科芯安的LKT4306等。
在一个实施例中,在考虑成本的情况下,可以降低一部分安全性的代价,不设置专门的安全芯片,将安全芯片内的算法在控制单元中,控制单元可以是MCU、FPGA、CPLD、CPU、DSP、逻辑电路、存储芯片等能实现相同功能的元器件或是组合来替代。
在一个实施例中,如图2所示,提供了一种智能家具的通信认证方法,以该方法应用于图1中的安装了安全芯片的终端102为例进行说明,由安全芯片执行以下步骤:
步骤202,向服务器发送认证请求,以使服务器返回由公钥和密文散列组合所得的组合数据;密文散列是对公钥的散列进行加密所得。
认证请求是对智能家具和服务器之间进行通信的安全认证请求,当安全认证请求通过服务器的校验后,服务器会返回由公钥和密文散列组合所得的组合数据。认证请求可以是认证请求明文或认证请求密文中的一种形式,而服务器通过该形式的认证请求是否符合对应的条件,以判定认证的流程是否终止。例如:向云服务器发送认证请求明文,如果服务器确定该认证请求明文是预设的固定,则返回由公钥和密文散列组合所得的组合数据;否则,终止认证流程。
在一个实施例中,安全芯片向服务器发送认证请求,包括:随着智能家具启动,安全芯片生成认证请求后,经过控制单元MCE和通信模组向某服务器发送该新生成的认证请求,而该新生成的认证请求用于通知服务器返回本次智能家具启动后的通信的公钥。
对应的,当服务器接收到认证请求后,服务器对认证请求进行校验;认证请求的校验通过,则生成该公钥与该公钥的散列,再将该公钥的散列非对称加密所得到的密文散列与该公钥组合,将该组合数据传输到发送认证请求的安全芯片。由此,在每次智能家具启动后,通过认证请求,获取本次启动所使用的通信的公钥,以对临时通信的公钥暂存,从而增加通信的安全性。
步骤204,接收组合数据,并判断组合数据中的公钥和密文散列是否匹配,若是,则组合数据中的公钥通过认证,得到认证的公钥。
安全芯片所接收到的组合数据可能是在通信过程中被第三方修改的,而为了保证数据安全,对接收到的组合数据中的公钥进行校验,当组合数据中的公钥通过认证,该组合数据中的公钥是认证的公钥。认证的公钥是在通信过程中并未被第三方修改的组合数据中的公钥。
对接收到的组合数据中的公钥进行校验的过程,是判断组合数据中的公钥和密文散列是否匹配的过程,在这一过程中,用于对接收到的组合数据中的公钥,以及,服务器返回的组合数据中的公钥进行匹配进行判断;若不匹配,则接收到的组合数据中的公钥是被修改的,认证失败;若是匹配的,则通过这一过程确定组合数据中的公钥是未进行修改的,得到认证的公钥。
在一个实施例中,判断组合数据中的公钥和密文散列是否匹配,包括:将组合数据拆分为待校验的公钥和该公钥的密文散列;将待校验的公钥进行加密运算所得的结果,以及,该公钥的密文散列进行解密所得的结果进行匹配,得到公钥校验结果;基于公钥校验结果,判断组合数据中的公钥和密文散列是否匹配。例如:当公钥校验结果表征,待校验的公钥进行加密运算所得的结果,以及,该公钥的密文散列进行解密所得的结果是不匹配的时,则判断组合数据中的公钥和密文散列是不匹配的。
在一个实施例中,组合数据中的密文散列是公钥的散列按照服务器的私钥进行加密所得到的。服务器的私钥是存储于服务器的,而服务器的公钥是存储于安全芯片中的。服务器的公钥和服务器的私钥二者具有非对称加密的对应关系。其中,非对称加密的对应关系是指,通过服务器的公钥加密的数据,可以通过服务器的私钥进行解密;而通过服务器的私钥加密的数据,可以通过服务器的公钥进行解密。其中,服务器的私钥是组合数据中的验签用的加密私钥,安全芯片用服务器的公钥解密,来验证该组合数据是否为合法的云服务器所发送。
对应的,判断组合数据中的公钥和密文散列是否匹配,包括:拆分组合数据,得到组合数据中的公钥与组合数据中的密文散列;对组合数据中的公钥进行哈希运算,得到组合数据中的公钥的验证散列;通过服务器的公钥,对组合数据中的密文散列进行解密,得到密文散列对应的明文散列;判断组合数据中的公钥的验证散列与密文散列对应的明文散列是否一致。
在一个实施例中,拆分组合数据,是基于组合数据的组合方式所对应的拆分方式,对组合数据进行拆分,得到组合数据中的公钥与组合数据中的公钥密文。其中,当组合数据是通过拼接得的,则直接对组合数据进行拆分;当组合数据是通过拼接后数据进行非对称加密所得的,则对组合数据进行解密后,再对组合数据进行拆分。
其中,当组合数据中的公钥的验证散列与密文散列对应的明文散列一致时,组合数据中的公钥认证通过,组合数据中的公钥是认证的公钥,认证的公钥是未被第三方进行修改的公钥。在得到认证的公钥后,将认证的公钥存储于安全芯片中,以增强安全性。
步骤206,在进行数据交互时,计算目标数据的散列,并对目标数据的散列进行加密,得到目标数据的密文散列。
目标数据是通过终端发送到服务器进行通信的数据。通过计算目标数据的散列,并对目标数据的散列进行可逆的加密,进而得到目标数据的密文散列。目标数据的密文散列用于对目标数据进行校验,以判断目标数据是否在传输过程中被更改。
在一个实施例中,计算目标数据的散列,并对目标数据的散列进行加密,得到目标数据的密文散列,包括:接收智能家具的控制单元发送的目标数据;对目标数据进行哈希运算,得到目标数据的散列;对目标数据的散列进行非对称加密,得到目标数据的密文散列。
在一个实施例中,对目标数据进行哈希运算,是对目标数据按照MD5、SHA1、SHA3等任意散列算法进行计算,得到目标数据的散列,目标数据的散列是无法通过逆运算得到目标数据的。在得到目标数据的散列后,对目标数据的散列进行非对称加密,得到可以进行解密的目标数据的密文散列。
在一个实施例中,对目标数据的散列进行非对称加密,得到目标数据的密文散列,包括:对目标数据的散列,通过安全芯片的私钥进行非对称加密,得到目标数据的密文散列;其中,安全芯片的私钥对应有安全芯片的公钥,安全芯片的公钥用于对智能家具进行通信认证。由此,在终端通过安全芯片的私钥进行加密,而在服务器接收到通信认证数据,通过公钥适配的私钥进行解析,得到目标数据与目标数据的密文散列;再从通信认证数据中拆分出密文散列,将通信认证数据中的密文散列通过安全芯片的公钥进行解密,基于解密的结果与通信认证数据中的目标数据进行匹配,实现智能家具的通信认证。
步骤208,通过认证的公钥对目标数据与目标数据的密文散列加密,得到通信认证数据。
在一个实施例中,通过认证的公钥对目标数据与目标数据的密文散列加密,包括:将目标数据与目标数据的密文散列进行拼接,得到目标数据的拼接数据;通过认证的公钥,对目标数据的拼接数据进行加密,得到通信认证数据。通信认证数据用于传递目标数据到服务器,且使服务器基于通信认证数据对目标数据在传输过程中是否被更改而进行认证,以判断目标数据是否在传输过程中被进行了更改。
步骤210,将通信认证数据发送到服务器,以基于通信认证数据对智能家具进行通信认证。
在一个实施例中,将通信认证数据发送到服务器,包括:在通过安全芯片生成通信认证数据后,将通信认证数据经由MCU和通信模组进行发送到云服务器,以使云服务器基于通信认证数据对智能家具进行通信认证。
上述智能家具的通信认证方法中,向服务器发送认证请求,以使服务器返回由公钥和密文散列组合所得的组合数据;密文散列是对公钥的散列进行加密所得,组合数据的请求过程占据较少计算资源;而接收组合数据,并判断组合数据中的公钥和密文散列是否匹配,若是,则组合数据中的公钥通过认证,得到认证的公钥,可以通过较少的计算判断组合数据中的公钥是否在传输过程中被更改,以通过较少计算资源进行公钥的安全认证。而在进行数据交互时,计算目标数据的散列,并对目标数据的散列进行加密,得到目标数据的密文散列;通过认证的公钥对目标数据与目标数据的密文散列加密,得到通信认证数据;以通过较少的计算资源得到目标数据的通信认证数据,并使服务器可以直接通过通信认证数据进行校验,检测目标数据在传输过程中是否被第三方更改,将通信认证数据发送到服务器,以基于通信认证数据对智能家具进行通信认证。
在一个实施例中,如图3所示,提供了一种智能家具的通信认证方法,以该方法应用于图1中的服务器104为例进行说明,包括以下步骤:
步骤302,接收安全芯片发送的认证请求。
在接收到某个安全芯片发送的认证请求后,对认证请求进行校验。在对认证请求进行校验的过程中,将接收到的认证请求与对应校验值进行比对,得到该安全芯片的本次认证请求的校验结果;若认证请求的校验结果表征,认证请求通过校验,则服务器响应于认证请求并执行相应的步骤;否则,安全认证结束。
步骤304,响应于认证请求,向安全芯片发送由公钥和密文散列组合所得的组合数据,以使安全芯片认证组合数据中的公钥;密文散列是对公钥的散列进行加密所得。
密文散列是对公钥进行非对称加密所得到的。密文散列是可以被解析的,其可以被解析成密文散列对应的散列明文,而公钥按照同样的方式进行散列计算,也可以得到用于验证的散列,以通过密文散列对应的散列明文与用于验证的散列的匹配结果,判断组合数据中的公钥是否被第三方更改。
在一个实施例中,响应于认证请求,向安全芯片发送由公钥和密文散列组合所得的组合数据,包括:响应于认证请求,生成公钥和该公钥适配的私钥;对公钥进行哈希运算,得到公钥的散列;基于服务器的私钥对公钥的散列进行加密,得到密文散列;将公钥与密文散列进行组合,得到认证请求对应的组合数据。
在一个实施例中,响应于认证请求,生成公钥和该公钥适配的私钥,包括:服务器响应于某智能家具的认证请求,基于某种公钥算法,生成该认证请求对应的公钥,以及该公钥适配的私钥。其中,公钥算法包括但不局限于RSA算法、椭圆曲线算法等任意一种算法。
对公钥进行哈希计算的过程,其是采用按照某散列算法进行计算的。散列算法可以是不限于MD5、SHA1、SHA3等算法的任意一种算法,或者任意算法的组合,以兼顾安全性和计算量。例如:为了减少计算量,可以使用计算资源较少的散列算法进行运算;而为了提高安全性,可以使用较为复杂的散列算法进行运算,或者,通过多种散列算法组合运算。
步骤306,接收安全芯片发送的通信认证数据;其中,通信认证数据是安全芯片通过认证的公钥对目标数据与目标数据的密文散列加密所得。
通信认证数据的生成过程、发送过程是在终端执行的,其过程、定义及相关效果可以参阅本申请中步骤206-步骤210的实施例。
步骤308,将通信认证数据通过公钥适配的私钥进行解析,得到目标数据与目标数据的密文散列。
在一个实施例中,将通信认证数据通过公钥适配的私钥进行解析,包括:将通信认证数据,通过公钥适配的私钥进行解析,得到接收到的目标数据与目标数据的密文散列。其中,公钥适配的私钥用于对该公钥加密所得到的密文进行解密。
步骤310,判断目标数据与目标数据的密文散列是否匹配,得到智能家具的通信认证结果。
目标数据是交互的数据,当目标数据并未发送时,目标数据不会在传播过程中被更改掉;当服务器接收到通信认证数据时,目标数据可能会在传播过程中被更改。因而,对目标数据与目标数据的密文散列拼接并加密,以检测目标数据是否被更改。
在一个实施例中,判断目标数据与目标数据的密文散列是否匹配,包括:将接收到的目标数据进行加密运算所得的结果,以及,该目标数据的密文散列进行解密所得的结果进行匹配,得到目标数据校验结果;基于目标数据校验结果,判断接收到的目标数据和目标数据的密文散列是否匹配。例如:当目标数据校验结果表征,接收到的目标数据进行加密运算所得的结果,以及,该目标数据的密文散列进行解密所得的结果是不匹配的时,则判断组合数据中的公钥和密文散列是不匹配的。
在一个实施例中,目标数据的密文散列通过安全芯片的私钥对目标数据的散列进行加密得到的。安全芯片的私钥是存储于安全芯片的,而安全芯片的公钥是存储于服务器中的。安全芯片的公钥和安全芯片的私钥二者具有非对称加密的对应关系。其中,非对称加密的对应关系是指,通过安全芯片的公钥加密的数据,可以通过安全芯片的私钥进行解密;而通过安全芯片的私钥加密的数据,可以通过安全芯片的公钥进行解密。其中,安全芯片的私钥是目标数据验签用的加密私钥,服务器用安全芯片的公钥解密,来验证通信认证数据中的目标数据是否为合法的智能家具所发送的,且验证该目标数据是否在传输过程中被更改。
对应的,判断目标数据与目标数据的密文散列是否匹配,包括:对目标数据进行哈希运算,得到目标数据的验证散列;基于安全芯片的公钥对目标数据的密文散列进行解密,得到目标数据的明文散列;判断目标数据的验证散列与目标数据的明文散列是否匹配。
其中,若目标数据的验证散列与目标数据的明文散列是匹配的,则确定目标数据是可以进行通信的数据;若是不匹配的,则确定目标数据是无法进行通信的数据。
上述智能家具的通信认证方法中,接收安全芯片发送的认证请求;响应于认证请求,向安全芯片发送由公钥和密文散列组合所得的组合数据,以使安全芯片认证组合数据中的公钥,组合数据的请求过程占据较少计算资源,通过较少的计算判断组合数据中的公钥是否在传输过程中被更改,以通过较少计算资源进行公钥的安全认证。而在进行数据交互时,接收安全芯片发送的通信认证数据;其中,通信认证数据是安全芯片通过认证的公钥对目标数据与目标数据的密文散列加密所得;将通信认证数据通过公钥适配的私钥进行解析,得到目标数据与目标数据的密文散列,从而可以直接对通信认证数据中的目标数据与目标数据的密文散列进行校验,检测目标数据在传输过程中被第三方更改,以提高安全性。
在一个实施例中,将步骤202-步骤210,以及,步骤302-步骤310进行综合论述,以了解本申请的整体方案,具体的包括如下步骤:
智能家具向服务器发送认证请求;
服务器接收安全芯片发送的认证请求;
服务器响应于所述认证请求,向所述安全芯片发送由公钥和密文散列组合所得的组合数据;
智能家具接收所述组合数据,并判断所述组合数据中的公钥和密文散列是否匹配,若是,则所述组合数据中的公钥通过认证,得到认证的公钥;
智能家具在与服务器进行数据交互时,计算目标数据的散列,并对所述目标数据的散列进行加密,得到所述目标数据的密文散列;
智能家具通过所述认证的公钥对所述目标数据与所述目标数据的密文散列加密,得到通信认证数据;
智能家具将所述通信认证数据发送到所述服务器,以基于所述通信认证数据对所述智能家具进行通信认证。
服务器接收所述安全芯片发送的通信认证数据;
服务器将所述通信认证数据通过所述认证的公钥适配的私钥进行解析,得到所述目标数据与所述目标数据的密文散列;
服务器判断所述目标数据与所述目标数据的密文散列是否匹配,得到所述智能家具的通信认证结果。
本实施例中,密文散列是对公钥的散列进行加密所得,组合数据的请求过程占据较少计算资源,在进行公钥的校验时,通过较少的计算判断组合数据中的公钥是否在传输过程中被更改,以通过较少计算资源进行公钥的安全认证;在进行数据交互时,通过较少的计算资源得到目标数据的通信认证数据,并使服务器可以直接通过通信认证数据中的目标数据和目标数据的密文散列进行校验,兼顾通信成本和通信安全。
具体的,本申请实施例提供的智能家具的通信认证方法,可以应用于如图1所示的应用环境中。其中:
安全芯片:一种用于知识产权保护和数据保护的嵌入式数据安全芯片,以下简称为安全芯片。安全芯片内部可以储存自定义数据、运行自定义算法。在此安全认证方案中,可以认为安全芯片内保存的自定义数据和算法,是无法被外界读取和分析的,故安全算法可以存入安全芯片中。
控制单元:是通用的MCU芯片、FPGA等芯片,以下简称为MCU。它里面运行的程序,具有被第三方导出并分析的危险,故用来保存和运行那些对安全性要求不高的数据和代码。在此安全认证方案中,可以认为MCU里保存的数据和算法,对外透明,故禁止将安全算法放入MCU中。
通信模组:具有4G(***移动通信技术)或WiFi(无线网络通信技术)等联网功能的嵌入式通信模块,控制端口与MCU进行通信,具有让设备联网的功能。
云服务器:云服务器或者物联网平台,以下简称为云服务器。云服务器被保管在专用机房内,上面运行着加密交互算法。在此安全认证方案中,可以认为云服务器内运行的安全算法和交互逻辑,是无法被外界读取和分析的。
在一个实施例中,如图5所示,通过图4所示的应用环境,论述本方案的实施方式,其包括如下步骤:
1、根据公钥算法PKA1生成一组服务器的密钥对,其中,服务器的公钥记为PubKey1,存入安全芯片中;服务器的私钥记为PrivKey1,存入云服务器中;
2、根据公钥算法PKA3生成一组安全芯片的密钥对,其中,安全芯片的公钥记为PubKey3,存入云服务器中;安全芯片的私钥记为PrivKey3,存入安全芯片中。
3、安全芯片经过MCU和通信模组,向云服务器发送认证请求,该认证请求的明文为一固定值,记为AuthReq,这一固定值为“AuthRequest”的ASCII(美国信息交换标准代码)。
4、云服务器收到AuthReq后,判断Auth是否为“AuthRequest”的ASCII,如果不是,则终止认证流程。
5、如果AuthReq的值等于“AuthRequest”的ASCII,则云服务器根据公钥算法PKA2生成一组密钥对,其中,公钥记为PubKey2,私钥记为PrivKey2。
6、云服务器通过散列算法HA1,计算公钥PubKey2的散列,得到公钥的散列值记为HashB1。
7、云服务器将公钥的散列值HashB1用公钥算法PKA1加密,加密的密钥为服务器的私钥PrivKey1,得到密文散列CipherHash1。
8、将云服务器生成的公钥PubKey2与密文散列CipherHash1拼接,得到组合数据CipherText1,组合数据CipherText1经过通信模组和MCU,返回给安全芯片。
9、安全芯片得到组合数据CipherText1,并不知道此接收到的组合数据CipherText1是否在通信过程中被第三方修改。先将此密文记为接收到的组合数据CipherText2*,并将其拆分成待校验的公钥PubKey2*和该待校验的公钥的密文散列CipherHash1*。
10、安全芯片使用同样的散列算法HA1,对待校验的公钥PubKey2*进行散列,得到组合数据中的公钥的验证散列HashB1*。
11、安全芯片使用同样的公钥算法PKA1,利用服务器的公钥PubKey1解密待校验的公钥的密文散列CipherHash1*,得到密文散列对应的明文散列HashB1**。
12、安全芯片比对组合数据中的公钥的验证散列HashB1*与密文散列对应的明文散列HashB1**是否完全相同,如果不完全相同,则终止认证流程。
13、如果组合数据中的公钥的验证散列HashB1*与密文散列对应的明文散列HashB1**完全相同,安全芯片会将PubKey2*写入其内部存储空间中。
本实施例中,步骤1-13每次智能座椅启动时执行的步骤,在智能家具通电期间,公钥PubKey2和私钥PrivKey2不会改变,但是每次智能座椅只要重新上电,***重新初始化,公钥PubKey2和私钥PrivKey2就会更新。
进一步地,在步骤13之后,如图6所示,该方法还包括交互的步骤,其中:
14、智能座椅内的控制单元MCU需要向云服务器上发目标数据Data时,先将需要上发的目标数据Data传给安全芯片。
15、安全芯片接收到目标数据Data后,利用散列算法HA2,对目标数据Data进行散列计算得到目标数据的散列HashA1。
16、安全芯片将目标数据的散列值HashA1用公钥算法PKA3加密,加密的密钥为安全芯片的私钥PrivKey3,得到目标数据的密文散列CipherHash2。
17、安全芯片将目标数据Data与目标数据的密文散列CipherHash2拼接,得到目标数据的组合数据CipherText2。
18、安全芯片对目标数据的组合数据CipherText2使用公钥算法PKA2加密,加密的密钥为认证的公钥PubKey2*,得到通信认证数据CipherText3。
19、通信认证数据CipherText3经由MCU和通信模组,上发至云服务器。
20、云服务器接收到上发的通信认证数据时,并不知道此通信认证数据是否在通信过程中被第三方修改。此通信认证数据为服务器接收到的通信认证数据CipherText3*。
21、云服务器利用公钥算法PKA2和认证的公钥所适配的私钥PrivKey2解密服务器接收到的通信认证数据CipherText3*,得到目标数据的拼接数据CipherText2*,目标数据的拼接数据是目标数据与所述目标数据的密文散列拼接所得的。
22、云服务器将目标数据的拼接数据CipherText2*拆分为服务器解析出的目标数据Data*和服务器解析出的目标数据的密文散列CipherHash2*。
23、云服务器使用同样的散列算法HA2,计算服务器解析出的目标数据Data*的散列,得到目标数据的验证散列HashA1*。
24、云服务器使用同样的公钥算法PKA3,利用安全芯片公钥PubKey3解密目标数据的密文散列CipherHash2*得到目标数据的明文散列HashA1**。
25、云服务器对比目标数据的验证散列HashA1*和目标数据的明文散列HashA1**是否完全相同,如果不完全相同,则终止认证流程。
26、如果目标数据的验证散列HashA1*和目标数据的明文散列HashA1**完全相同,则云服务器判断服务器解析出的目标数据Data*为合法设备传过来的数据,且未经第三方修改。
本实施例中,涉及到的相关重要数据有:
AuthReq:安全芯片生成的认证请求明文,发往云服务器。
CipherHash1:云服务器用PrivKey1加密HashB1得到的密文散列;CipherHash1*:安全芯片将CipherText1*拆分后得到的密文散列;CipherHash2:安全芯片用PrivKey3加密HashA1得到的密文散列;CipherHash2*:云服务器将CipherText2*拆分后得到的密文散列;CipherText1:云服务器发往安全芯片的密文;CipherText1*:安全芯片借由不安全的通信通道,接收到的密文;CipherText2:安全芯片将Data与密文CipherHash2拼接后得到的密文;CipherText2*:CipherText3*由PKA2和PrivKey2解密后得到的内容;CipherText3:安全芯片用PubKey2*加密CipherText2得到的密文;CipherText3*:云服务器借由不安全的通信通道,接收到的密文;
Data:智能座椅需要向云服务器上发的原始数据明文;Data*:云服务器将CipherText2*拆分后得到的明文。
HA1:一种散列算法;HA2:一种散列算法。
HashA1:安全芯片对Data做HA2后得到的散列;HashA1*:云服务器通过对Data*做HA2后得到的散列;HashA1**:云服务器用PKA3算法,使用公钥PubKey3解密CipherHash2*得到的明文散列;
HashB1:云服务器对PubKey2进行散列计算,得出的明文散列;HashB1*:安全芯片对PubKey2*做HA1后得到的散列;HashB1**:安全芯片用PKA1算法,使用公钥PubKey1解密CipherHash1*得到的明文散列。
PKA1:一种公钥算法;PKA2:一种公钥算法;PKA3:一种公钥算法。
PrivKey1:预先在云服务器中存入的密钥;PrivKey2:云服务器生成的一个密钥;PrivKey3:预先在安全芯片中存入的密钥。
PubKey1:预先在安全芯片中存入的密钥;PubKey2:云服务器生成的一个密钥;PubKey2*:安全芯片将CipherText1*拆分后得到的密钥;PubKey3:预先在云服务器中存入的密钥。
散列算法可选择且并不限于MD5、SHA1、SHA3等。PKA1、PKA2、PKA3:这三个公钥算法可以是同一种,也可以是不同种类,公钥算法可选择且并不限于RSA、椭圆曲线等。
由此,利用非对称算法的加密和验签功能,完成信息的加密传输和篡改检测,本实施例能够对通信双方的合法性进行校验,如果第三方伪造云服务器或者智能座椅,安全认证机制都能检测到并及时终止认证流程,保护了知识产权。
具体的,首先,本实施例的关键交互逻辑都发生在安全芯片和云服务器间,而这两个部件完全可以认为是黑盒,被第三方恶意破解和逆向分析的可能性几乎为0。相比于交互逻辑放入MCU的情况,安全性提高。其次,本申请不强制要求采用安全性高的MCU,降低了成本,并具备量产可行性。而且,相比于将X509证书放入通信模组的情况,本实施例避免了证书被替换而导致的中间人攻击和通信明文泄露,不需要物联网平台支持X509证书验证,增强了通用性。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的智能家具的通信认证方法的智能家具的通信认证装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个智能家具的通信认证装置实施例中的具体限定可以参见上文中对于智能家具的通信认证方法的限定,在此不再赘述。
在一个实施例中,如图7所示,提供了一种智能家具的通信认证装置,包括:认证请求发送模块702、公钥认证模块704、数据加密模块706、通信认证数据生成模块708和通信认证数据发送模块710,其中:
认证请求发送模块702,用于向服务器发送认证请求,以使所述服务器返回由公钥和密文散列组合所得的组合数据;所述密文散列是对所述公钥的散列进行加密所得;
公钥认证模块704,用于接收所述组合数据,并判断所述组合数据中的公钥和密文散列是否匹配,若是,则所述组合数据中的公钥通过认证,得到认证的公钥;
数据加密模块706,用于在进行数据交互时,计算目标数据的散列,并对所述目标数据的散列进行加密,得到所述目标数据的密文散列;
通信认证数据生成模块708,用于通过所述认证的公钥对所述目标数据与所述目标数据的密文散列加密,得到通信认证数据;
通信认证数据发送模块710,用于将所述通信认证数据发送到所述服务器,以基于所述通信认证数据对所述智能家具进行通信认证。
在其中一个实施例中,所述数据加密模块706,包括:
目标数据获取单元,用于接收所述智能家具的控制单元发送的目标数据;
目标数据的散列计算单元,用于对所述目标数据进行哈希运算,得到所述目标数据的散列;
密文散列计算单元,用于对所述目标数据的散列进行非对称加密,得到所述目标数据的密文散列。
在其中一个实施例中,所述密文散列计算单元,具体用于:对所述目标数据的散列,通过所述安全芯片的私钥进行非对称加密,得到所述目标数据的密文散列;其中,所述安全芯片的私钥对应有所述安全芯片的公钥,所述安全芯片的公钥用于对所述智能家具进行通信认证。
在其中一个实施例中,所述组合数据中的所述密文散列是所述公钥的散列按照所述服务器的私钥进行加密所得到的;所述公钥认证模块704,包括:
组合数据拆分单元,用于拆分所述组合数据,得到所述组合数据中的公钥与所述组合数据中的密文散列;
验证散列生成单元,用于对所述组合数据中的公钥进行哈希运算,得到所述组合数据中的公钥的验证散列;
密文散列解密单元,用于通过所述服务器的公钥,对所述组合数据中的密文散列进行解密,得到所述密文散列对应的明文散列;
目标数据验证单元,用于判断所述组合数据中的公钥的验证散列与所述密文散列对应的明文散列是否一致。
在一个实施例中,如图8所示,本申请还提供了一种智能家具的通信认证装置。所述装置包括:
认证请求接收模块802,用于接收安全芯片发送的认证请求;
公钥返回模块804,用于响应于所述认证请求,向所述安全芯片发送由公钥和密文散列组合所得的组合数据,以使所述安全芯片认证所述组合数据中的公钥;所述密文散列是对所述公钥的散列进行加密所得;
通信认证数据接收模块806,用于接收所述安全芯片发送的通信认证数据;其中,所述通信认证数据是所述安全芯片通过认证的公钥对目标数据与所述目标数据的密文散列加密所得;
通信认证数据解析模块808,用于将所述通信认证数据通过所述认证的公钥适配的私钥进行解析,得到所述目标数据与所述目标数据的密文散列;
通信认证模块810,用于判断所述目标数据与所述目标数据的密文散列是否匹配,得到所述智能家具的通信认证结果。
在其中一个实施例中,所述公钥返回模块804,包括:
密钥生成单元,用于响应于所述认证请求,生成公钥和所述公钥适配的私钥;
公钥散列计算单元,用于对所述公钥进行哈希运算,得到所述公钥的散列;
密文散列生成单元,用于基于所述服务器的私钥对所述公钥的散列进行加密,得到密文散列;
公钥组合单元,用于将所述公钥与所述密文散列进行组合,得到所述认证请求对应的组合数据。
在其中一个实施例中,所述目标数据的密文散列通过所述安全芯片的私钥对所述目标数据的散列进行加密得到;所述通信认证模块810,包括:
验证散列生成单元,用于对所述目标数据进行哈希运算,得到所述目标数据的验证散列;
目标数据的明文散列单元,用于基于所述安全芯片的公钥对所述目标数据的密文散列进行解密,得到所述目标数据的明文散列;
目标数据验证单元,用于判断所述目标数据的验证散列与所述目标数据的明文散列是否匹配。
由此,通过智能家具的通信认证装置,利用非对称算法的加密和验签功能,完成信息的加密传输和篡改检测,本实施例能够对通信双方的合法性进行校验,如果第三方伪造云服务器或者智能座椅,安全认证机制都能检测到并及时终止认证流程,保护了知识产权。本实施例的关键交互逻辑都发生在安全芯片和云服务器间,而这两个部件完全可以认为是黑盒,被第三方恶意破解和逆向分析的可能性几乎为0。相比于交互逻辑放入MCU的情况,安全性提高。其次,本申请不强制要求采用安全性高的MCU,降低了成本,并具备量产可行性。而且,相比于将X509证书放入通信模组的情况,本实施例避免了证书被替换而导致的中间人攻击和通信明文泄露,不需要物联网平台支持X509证书验证,增强了通用性。
上述智能家具的通信认证装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图9所示。该计算机设备包括通过***总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***和计算机程序。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WI-FI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被安全芯片执行时以实现一种智能家具的通信认证方法。
本领域技术人员可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括安全芯片,安全芯片中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(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 (11)
1.一种智能家具的通信认证方法,其特征在于,由智能家具的安全芯片执行,所述方法包括:
在智能家具启动时,所述安全芯片生成认证请求,向服务器发送所述认证请求,以使所述服务器返回由公钥和密文散列组合所得的组合数据;所述密文散列是对所述公钥的散列进行加密所得;所述公钥是所述智能家具在启动后的更新的;所述认证请求用于控制服务器反馈所述智能家具本次启动后的公钥;
接收所述组合数据,并判断所述组合数据中的公钥和密文散列是否匹配,若是,则所述组合数据中的公钥通过认证,得到认证的公钥;将所述认证的公钥暂存于所述安全芯片;
在进行数据交互时,计算目标数据的散列,并对所述目标数据的散列进行加密,得到所述目标数据的密文散列;所述目标数据是通过所述智能家具发送到服务器进行通信的数据;所述目标数据的密文散列是可逆的加密,所述目标数据的散列是不可逆的加密;
通过所述认证的公钥对所述目标数据与所述目标数据的密文散列加密,得到通信认证数据;
将所述通信认证数据发送到所述服务器,以基于所述通信认证数据对所述智能家具进行通信认证。
2.根据权利要求1所述的方法,其特征在于,所述计算目标数据的散列,并对所述目标数据的散列进行加密,得到所述目标数据的密文散列,包括:
接收所述智能家具的控制单元发送的目标数据;
对所述目标数据进行哈希运算,得到所述目标数据的散列;
对所述目标数据的散列进行非对称加密,得到所述目标数据的密文散列。
3.根据权利要求2所述的方法,其特征在于,所述对所述目标数据的散列进行非对称加密,得到所述目标数据的密文散列,包括:
对所述目标数据的散列,通过所述安全芯片的私钥进行非对称加密,得到所述目标数据的密文散列;
其中,所述安全芯片的私钥对应有所述安全芯片的公钥,所述安全芯片的公钥用于对所述智能家具进行通信认证。
4.根据权利要求1所述的方法,其特征在于,所述组合数据中的所述密文散列是所述公钥的散列按照所述服务器的私钥进行加密所得到的;所述判断所述组合数据中的公钥和密文散列是否匹配,包括:
拆分所述组合数据,得到所述组合数据中的公钥与所述组合数据中的密文散列;
对所述组合数据中的公钥进行哈希运算,得到所述组合数据中的公钥的验证散列;
通过所述服务器的公钥,对所述组合数据中的密文散列进行解密,得到所述密文散列对应的明文散列;
判断所述组合数据中的公钥的验证散列与所述密文散列对应的明文散列是否一致。
5.一种智能家具的通信认证方法,其特征在于,由服务器执行,所述方法包括:
接收安全芯片发送的认证请求;所述认证请求是所述安全芯片在智能家具启动时生成并发送的,所述认证请求用于控制服务器反馈所述智能家具本次启动更新的公钥;
响应于所述认证请求,向所述安全芯片发送由公钥和密文散列组合所得的组合数据,以使所述安全芯片认证所述组合数据中的公钥;所述密文散列是对所述公钥的散列进行加密所得;所述公钥是所述智能家具在启动后的更新的,以使所述认证的公钥暂存于所述安全芯片;
在进行数据交互时,接收所述安全芯片发送的通信认证数据;其中,所述通信认证数据是所述安全芯片通过认证的公钥对目标数据与所述目标数据的密文散列加密所得;所述目标数据是通过所述智能家具发送到服务器进行通信的数据;所述目标数据的密文散列是可逆的加密,所述目标数据的散列是不可逆的加密;
将所述通信认证数据通过所述认证的公钥适配的私钥进行解析,得到所述目标数据与所述目标数据的密文散列;
判断所述目标数据与所述目标数据的密文散列是否匹配,得到所述智能家具的通信认证结果。
6.根据权利要求5所述的方法,其特征在于,所述响应于所述认证请求,向所述安全芯片发送由公钥和密文散列组合所得的组合数据,包括:
响应于所述认证请求,生成公钥和所述公钥适配的私钥;
对所述公钥进行哈希运算,得到所述公钥的散列;
基于所述服务器的私钥对所述公钥的散列进行加密,得到密文散列;
将所述公钥与所述密文散列进行组合,得到所述认证请求对应的组合数据。
7.根据权利要求5所述的方法,其特征在于,所述目标数据的密文散列通过所述安全芯片的私钥对所述目标数据的散列进行加密得到;所述判断所述目标数据与所述目标数据的密文散列是否匹配,包括:
对所述目标数据进行哈希运算,得到所述目标数据的验证散列;
基于所述安全芯片的公钥对所述目标数据的密文散列进行解密,得到所述目标数据的明文散列;
判断所述目标数据的验证散列与所述目标数据的明文散列是否匹配。
8.一种智能家具的通信认证装置,其特征在于,所述装置包括:
在智能家具启动时,认证请求发送模块,用于通过安全芯片生成认证请求,向服务器发送所述认证请求,以使所述服务器返回由公钥和密文散列组合所得的组合数据;所述密文散列是对所述公钥的散列进行加密所得;所述公钥是所述智能家具在启动后的更新的;所述认证请求用于控制服务器反馈所述智能家具本次启动后的公钥;
公钥认证模块,用于接收所述组合数据,并判断所述组合数据中的公钥和密文散列是否匹配,若是,则所述组合数据中的公钥通过认证,得到认证的公钥;将所述认证的公钥是暂存于所述安全芯片;
数据加密模块,用于在进行数据交互时,计算目标数据的散列,并对所述目标数据的散列进行加密,得到所述目标数据的密文散列;所述目标数据是通过所述智能家具发送到服务器进行通信的数据;所述目标数据的密文散列是可逆的加密,所述目标数据的散列是不可逆的加密;
通信认证数据生成模块,用于通过所述认证的公钥对所述目标数据与所述目标数据的密文散列加密,得到通信认证数据;
通信认证数据发送模块,用于将所述通信认证数据发送到所述服务器,以基于所述通信认证数据对所述智能家具进行通信认证。
9.一种智能家具的通信认证装置,其特征在于,所述装置包括:
认证请求接收模块,用于在智能家具启动时,接收安全芯片生成并发送的认证请求,所述认证请求是所述安全芯片在智能家具启动时生成并发送的,所述认证请求用于控制服务器反馈所述智能家具本次启动更新的公钥;
公钥返回模块,用于响应于所述认证请求,向所述安全芯片发送由公钥和密文散列组合所得的组合数据,以使所述安全芯片认证所述组合数据中的公钥;所述密文散列是对所述公钥的散列进行加密所得;所述公钥是所述智能家具在启动后的更新的,以使所述认证的公钥暂存于所述安全芯片;
通信认证数据接收模块,用于接收所述安全芯片发送的通信认证数据;其中,所述通信认证数据是所述安全芯片通过认证的公钥对目标数据与所述目标数据的密文散列加密所得;
通信认证数据解析模块,用于将所述通信认证数据通过所述认证的公钥适配的私钥进行解析,得到所述目标数据与所述目标数据的密文散列;所述目标数据是通过所述智能家具发送到服务器进行通信的数据;所述目标数据的密文散列是可逆的加密,所述目标数据的散列是不可逆的加密;
通信认证模块,用于判断所述目标数据与所述目标数据的密文散列是否匹配,得到所述智能家具的通信认证结果。
10.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210888420.2A CN115001864B (zh) | 2022-07-27 | 2022-07-27 | 智能家具的通信认证方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210888420.2A CN115001864B (zh) | 2022-07-27 | 2022-07-27 | 智能家具的通信认证方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115001864A CN115001864A (zh) | 2022-09-02 |
CN115001864B true CN115001864B (zh) | 2023-03-10 |
Family
ID=83022534
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210888420.2A Active CN115001864B (zh) | 2022-07-27 | 2022-07-27 | 智能家具的通信认证方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115001864B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116702177B (zh) * | 2023-06-21 | 2024-02-20 | 王芹生 | 一种计算机大数据安全传输***及方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11050562B2 (en) * | 2016-01-29 | 2021-06-29 | Hewlett Packard Enterprise Development Lp | Target device attestation using a trusted platform module |
CN107040369B (zh) * | 2016-10-26 | 2020-02-11 | 阿里巴巴集团控股有限公司 | 数据传输方法、装置及*** |
CN110113745A (zh) * | 2019-04-29 | 2019-08-09 | 中兴新能源汽车有限责任公司 | 车载设备的验证方法、服务器、车载设备及存储介质 |
CN111541677B (zh) * | 2020-04-17 | 2021-08-13 | 中国科学院上海微***与信息技术研究所 | 一种基于窄带物联网的安全混合加密方法 |
CN111931158A (zh) * | 2020-08-10 | 2020-11-13 | 深圳大趋智能科技有限公司 | 一种双向认证方法、终端以及服务器 |
CN112202556B (zh) * | 2020-10-30 | 2023-07-04 | 联通物联网有限责任公司 | 安全认证方法、装置和*** |
CN112637166B (zh) * | 2020-12-15 | 2022-07-22 | 平安科技(深圳)有限公司 | 一种数据传输方法、装置、终端及存储介质 |
CN112733107B (zh) * | 2021-04-02 | 2021-06-22 | 腾讯科技(深圳)有限公司 | 一种信息验证的方法、相关装置、设备以及存储介质 |
-
2022
- 2022-07-27 CN CN202210888420.2A patent/CN115001864B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN115001864A (zh) | 2022-09-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11323275B2 (en) | Verification of identity using a secret key | |
US11218330B2 (en) | Generating an identity for a computing device using a physical unclonable function | |
US7697691B2 (en) | Method of delivering Direct Proof private keys to devices using an on-line service | |
US20190007215A1 (en) | In-vehicle information communication system and authentication method | |
US11050562B2 (en) | Target device attestation using a trusted platform module | |
US7693286B2 (en) | Method of delivering direct proof private keys in signed groups to devices using a distribution CD | |
CN113691502B (zh) | 通信方法、装置、网关服务器、客户端及存储介质 | |
US11153074B1 (en) | Trust framework against systematic cryptographic | |
CN114257376B (zh) | 数字证书更新方法、装置、计算机设备和存储介质 | |
US20060013399A1 (en) | Method of delivering direct proof private keys to devices using a distribution CD | |
CN117155549A (zh) | 密钥分发方法、装置、计算机设备和存储介质 | |
CN115348107A (zh) | 物联网设备安全登陆方法、装置、计算机设备和存储介质 | |
CN115001864B (zh) | 智能家具的通信认证方法、装置、计算机设备和存储介质 | |
CN117081736A (zh) | 密钥分发方法、密钥分发装置、通信方法及通信装置 | |
CN115514492A (zh) | Bios固件验证方法、装置、服务器、存储介质和程序产品 | |
CN116049802B (zh) | 应用单点登陆方法、***、计算机设备和存储介质 | |
CN116232639B (zh) | 数据传输方法、装置、计算机设备和存储介质 | |
CN108390758B (zh) | 用户口令处理方法、装置和内控安全监察*** | |
CN114553557B (zh) | 密钥调用方法、装置、计算机设备和存储介质 | |
CN108242997B (zh) | 安全通信的方法与设备 | |
US20240187262A1 (en) | Encrypted and authenticated firmware provisioning with root-of-trust based security | |
CN115694833A (zh) | 一种协同签名方法 | |
CN115361198A (zh) | 解密方法、加密方法、装置、计算机设备和存储介质 | |
CN114065170A (zh) | 平台身份证书的获取方法、装置和服务器 | |
CN116980228B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |