CN108881303A - 具有计算功能的节点、安全验证网络和安全验证方法 - Google Patents

具有计算功能的节点、安全验证网络和安全验证方法 Download PDF

Info

Publication number
CN108881303A
CN108881303A CN201810884142.7A CN201810884142A CN108881303A CN 108881303 A CN108881303 A CN 108881303A CN 201810884142 A CN201810884142 A CN 201810884142A CN 108881303 A CN108881303 A CN 108881303A
Authority
CN
China
Prior art keywords
node
software
nodes
cryptographic hash
network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201810884142.7A
Other languages
English (en)
Inventor
黄惠斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to CN201810884142.7A priority Critical patent/CN108881303A/zh
Publication of CN108881303A publication Critical patent/CN108881303A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network 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
    • H04L63/0442Network 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 wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic 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 using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

本发明涉及具有计算功能的节点、安全验证网络和安全验证方法,属于网络安全技术领域。本发明的节点能够安装在分布式网络中并与所述网络中的其他节点耦接,所述节点和所述其他节点各自配置有用于实现预定功能的受保护的软件,其中,所述节点还设置有:备份存储模块,其用于备份存储网络中的所述其他节点的在安全状态下的至少部分所述软件和/或对应所述其他节点的在安全状态下的所述软件的第一哈希值;和安全验证模块,其用于利用备份存储的至少部分软件和/或第一哈希值对相应的所述其他节点的当前状态下的所述软件进行校验计算,从而确定该其他节点的所述软件的当前状态是否为安全状态。本发明的安全验证网络和节点不易于被劫持或攻破、安全性好。

Description

具有计算功能的节点、安全验证网络和安全验证方法
技术领域
本发明属于网络安全技术领域,涉及对分布式网络中的具有计算功能节点的安全验证,尤其涉及一种能够对其分布式网络中的其他节点的软件进行备份存储并进行校验计算的具有计算功能的节点、包括多个该节点的安全验证网络、利用节点之间彼此进行软件备份存储和校验计算的安全验证方法。
背景技术
随着网络技术的发展,越来越多的节点被接入网络中,例如,随着车联网的发展,车辆网络中的许多具有计算功能的节点(例如ECU等)都被接入网络中。因此,被接入网络的每个节点实际上是可以被网络访问的,随之也产生网络安全问题,例如,接入网络的某个节点的软件可以被黑客篡改或操控。这样,保证每个节点的安全并及时发现每个节点所配置的软件是否处于安全状态变得非常重要。
目前,为保护每个节点的安全,为每个节点单独地设置相应的专用测试器,但是,这种机制是一种单节点孤立形式的保护机制,非常容易被例如黑客攻破,安全性实际难以得到保证。
发明内容
本发明的目的之一在于,提高分布式网络及其中的每个节点的安全性。
本发明的又一目的在于,易于确定分布式网络中每个节点所配置的软件是否处于安全状态。
本发明的还一目的在于,方便地对分布式网络中处于非安全状态的每个节点进行恢复。
为实现以上目的或者其他目的,本发明提供以下技术方案。
按照本发明的第一方面,提供一种具有计算功能的节点,其能够安装在分布式网络中并与所述网络中的其他节点耦接,所述节点和所述其他节点各自配置有用于实现预定功能的受保护的软件,其中,所述节点还设置有:
备份存储模块,其用于备份存储所述网络中的所述其他节点的在安全状态下的至少部分所述软件和/或对应所述其他节点的在安全状态下的所述软件的第一哈希值;和
安全验证模块,其用于利用备份存储的至少部分所述软件和/或所述第一哈希值对相应的所述其他节点的当前状态下的所述软件进行校验计算,从而确定该其他节点的所述软件的当前状态是否为安全状态。
根据本发明一实施例的节点,其中,还包括解签模块,其被配置为:
使用相应的公钥将从所述网络中接收到的其他节点的软件数字签名进行解密计算得到欲验证的所述软件,其中,所述软件数字签名是在相应的所述其他节点中通过以下方式得到:采用相应的私钥对该其他节点的在当前状态下的所述软件进行签名以得到对应该软件的所述软件数字签名;和/或
使用相应的公钥将从所述网络中接收到的其他节点的哈希值数字签名进行解密计算得到欲验证的第二哈希值,其中,所述第一数字签名是在相应的所述其他节点中通过以下方式得到:对该其他节点的在当前状态下的所述软件进行哈希计算并得到当前的第二哈希值,采用相应的私钥进行签名以得到对应该当前的第二哈希值的所述哈希值数字签名;
其中,所述公钥和私钥是基于所述非对称加密算法获得。
根据本发明另一实施例或者之前任一实施例的节点,其中,所述安全验证模块还用于利用备份存储的所述软件/所述第一哈希值对所述欲验证的所述软件/所述第二哈希值进行校验计算,以确定相应的所述其他节点的所述软件的当前状态是否为安全状态。
根据本发明另一实施例或者之前任一实施例的节点,其中,所述安全验证模块还用于:
将欲验证的所述软件/所述第二哈希值与备份存储的所述软件/所述第一哈希值进行比对,如果它们一致,则确定所述其他节点的所述软件的当前状态为安全状态。
根据本发明另一实施例或者之前任一实施例的节点,其中,还包括数字签名生成模块,其用于:
对其所处的所述节点的在当前状态下的所述软件采用相应的私钥进行签名以得到对应该软件的所述软件数字签名,和/或
对其所处的所述节点的在当前状态下的所述软件进行哈希计算并得到该节点的当前的第二哈希值,采用相应的私钥进行签名以得到对应该第二哈希值的所述哈希值数字签名;
所述节点还包括:
数字签名广播模块,其用于向所述网络中的其他节点广播所述软件数字签名和/或所述哈希值数字签名。
根据本发明另一实施例或者之前任一实施例的节点,其中,所述节点还包括副本广播模块,其用于将所述节点配置的安全状态下的至少部分所述软件或其对应的第一哈希值以副本形式广播至所述网络的至少一个所述其他节点中。
根据本发明另一实施例或者之前任一实施例的节点,其中,多个所述其他节点的受保护的软件在所述节点中使用区块链方式按区块地分布存储在所述节点的区块中。
根据本发明另一实施例或者之前任一实施例的节点,其中,所述备份存储模块还用于:
使用区块链方式将所述网络中的M个所述其他节点的在安全状态下的至少部分所述软件分别备份存储在某一初始区块的N个后续区块中,其中M与N均为大于或等于1的整数,且N大于或等于M。
根据本发明另一实施例或者之前任一实施例的节点,其中,所述备份存储模块还用于:
在所述其他节点的所述受保护的软件被更新后,采用X个备用区块将更新后的所述软件备份存储,并且,所述备用区块作为第(N+1)至第(N+X)个后续区块,X为大于或等于1的整数。
根据本发明另一实施例或者之前任一实施例的节点,其中,当前的所述后续区块还备份存储其前一个区块所对应的所述哈希区域的第三哈希值,其中,所述第三哈希值用于该当前的后续区块的前一个区块的安全校验。
根据本发明另一实施例或者之前任一实施例的节点,其中,还包括:
随机因子生成及广播模块,其用于生成随机因子并向所述网络中的其他节点广播;
其中,所述数字签名生成模块还用于:
对其所处的所述节点的在当前状态下的所述软件以及接收的其他节点所广播的随机因子采用相应的私钥进行签名以得到对应该软件的软件数字签名,和/或
对其所处的所述节点的在当前状态下的所述软件以及接收的其他节点所广播的随机因子一起进行哈希计算并得到该节点的当前的第二哈希值,采用相应的私钥进行签名以得到对应该第二哈希值的所述哈希值数字签名。
根据本发明另一实施例或者之前任一实施例的节点,其中,所述安全验证模块还用于:
结合利用接收的其他节点所广播的随机因子以及备份存储的至少部分所述软件和/或所述第一哈希值,对相应的所述其他节点的当前状态下的所述软件进行校验计算,从而确定该其他节点的所述软件的当前状态是否为安全状态。
根据本发明另一实施例或者之前任一实施例的节点,其中,所述随机因子是针对备份存储的所述其他节点的所述软件的存储区域生成的排除地址。
根据本发明另一实施例或者之前任一实施例的节点,其中,在所述数字签名生成模块中,其签名处理或哈希计算的所述节点的所述软件为除所述排除地址之外的区域所存储的剩余部分所述软件,其中该排除地址是所述其他节点对应所述节点而生成的排除地址并从所述其他节点接收;
在所述安全验证模块中,其签名处理或哈希计算的备份存储的其他节点的所述软件为除相应的排除地址之外的区域所存储的剩余部分所述软件,其中该排除地址包括所述节点对应所述其他节点而生成的排除地址。
根据本发明另一实施例或者之前任一实施例的节点,其中,广播的所述随机因子是随机数;
其中,所述数字签名生成模块和所述安全验证模块处理的随机因子是对包括从所述其他节点同时接收的随机数进行合并处理或求和处理后得到的随机数值。
根据本发明另一实施例或者之前任一实施例的节点,其中,在所述安全验证模块中,其签名处理或哈希计算的备份存储的其他节点的所述软件为添加或***对应于所述随机数值的所述软件。
根据本发明另一实施例或者之前任一实施例的节点,其中,还包括:
软件恢复模块,其在确定所述其他节点的所述软件的当前状态是非安全状态时生成恢复指令以使用对应该其他节点备份存储的在安全状态下的至少部分所述软件将该其他节点的所述软件恢复至安全状态。
根据本发明另一实施例或者之前任一实施例的节点,其中,所述节点还配置有信任节点列表;
所述安全验证模块还用于在确定所述其他节点的所述软件的当前状态为安全状态的情况下将所述其他节点添加至信任节点列表中、在确定所述其他节点的所述软件的当前状态是非安全状态的情况下将所述其他节点从信任节点列表中移除。
根据本发明另一实施例或者之前任一实施例的节点,其中,所述节点是安装在车身网络或物联网中的节点。
按照本发明的第二方面,提供一种安全验证网络,包括第一节点和第二节点,其中,所述第一节点和所述第二节点为以上第一方面任一所述的节点,其中,一个或多个所述第一节点作为一个所述第二节点的所述其他节点,一个或多个所述第二节点作为一个所述第一节点的所述其他节点。
根据本发明一实施例的安全验证网络,其中,所述第一节点或第二节点中配置的安全状态下的所述软件作为整体被分布式地备份存储在相应的所述其他节点的每一个中。
根据本发明又一实施例的安全验证网络,其中,所述第一节点或第二节点中配置的安全状态下的所述软件以N个区块的形式被分布式地分别备份存储在相应的所述其他节点的N个中。
按照本发明的第三方面,提供一种安全验证方法,其通过分布式网络中的一个节点对该网络中的一个或多个其他节点的受保护的软件进行安全验证,其中,包括:
备份存储步骤:备份存储所述网络中的所述其他节点的在安全状态下的至少部分所述软件和/或对应所述其他节点的在安全状态下的所述软件的第一哈希值;和
安全验证步骤:利用备份存储的至少部分所述软件和/或所述第一哈希值对相应的所述其他节点的当前状态下的所述软件进行校验计算,从而确定该其他节点的所述软件的当前状态是否为安全状态。
根据本发明一实施例的安全验证方法,其中,还包括解签步骤:
使用相应的公钥将从所述网络中接收到的其他节点的软件数字签名进行解密计算得到欲验证的所述软件,其中,所述软件数字签名是在相应的所述其他节点中通过以下方式得到:采用相应的私钥对该其他节点的在当前状态下的所述软件进行签名以得到对应该软件的所述软件数字签名;和/或
使用相应的公钥将从所述网络中接收到的其他节点的哈希值数字签名进行解密计算得到欲验证的第二哈希值,其中,所述第一数字签名是在相应的所述其他节点中通过以下方式得到:对该其他节点的在当前状态下的所述软件进行哈希计算并得到当前的第二哈希值,采用相应的私钥进行签名以得到对应该当前的第二哈希值的所述哈希值数字签名;
其中,所述公钥和私钥是基于所述非对称加密算法获得。
根据本发明另一实施例或者之前任一实施例的安全验证方法,其中,所述安全验证步骤进一步利用备份存储的所述软件/所述第一哈希值对所述欲验证的所述软件/所述第二哈希值进行校验计算,以确定相应的所述其他节点的所述软件的当前状态是否为安全状态。
根据本发明另一实施例或者之前任一实施例的安全验证方法,其中,所述安全验证步骤进一步:
将欲验证的所述软件/所述第二哈希值与备份存储的所述软件/所述第一哈希值进行比对,如果它们一致,则确定所述其他节点的所述软件的当前状态为安全状态。
根据本发明另一实施例或者之前任一实施例的安全验证方法,其中,还包括数字签名生成步骤:
对所述节点的在当前状态下的所述软件采用相应的私钥进行签名以得到对应该软件的所述软件数字签名,和/或
对所述节点的在当前状态下的所述软件进行哈希计算并得到该节点的当前的第二哈希值,采用相应的私钥进行签名以得到对应该第二哈希值的所述哈希值数字签名;以及
数字签名广播步骤:向所述网络中的其他节点广播所述软件数字签名和/或所述哈希值数字签名。
根据本发明另一实施例或者之前任一实施例的安全验证方法,其中,还包括副本广播步骤:将所述节点配置的安全状态下的至少部分所述软件或其对应的第一哈希值以副本形式广播至所述网络的至少一个所述其他节点中。
根据本发明另一实施例或者之前任一实施例的安全验证方法,其中,多个所述其他节点的所述受保护的软件在所述节点中使用区块链方式按区块地分布存储在所述节点的区块中。
根据本发明另一实施例或者之前任一实施例的安全验证方法,其中,所述备份存储步骤进一步:
使用区块链方式将所述网络中的M个所述其他节点的在安全状态下的至少部分所述软件分别备份存储在某一初始区块的N个后续区块中,其中M与N均为大于或等于1的整数,且N大于或等于M。
根据本发明另一实施例或者之前任一实施例的安全验证方法,其中,所述备份存储步骤进一步:
在所述其他节点的所述受保护的软件被更新后,采用X个备用区块将更新后的所述软件备份存储,并且,所述备用区块作为第(N+1)至第(N+X)个后续区块,X为大于或等于1的整数。
根据本发明另一实施例或者之前任一实施例的安全验证方法,其中,当前的所述后续区块还备份存储其前一个区块所对应的所述哈希区域的第三哈希值,其中,所述第三哈希值用于该当前的后续区块的前一个区块的安全校验。
根据本发明另一实施例或者之前任一实施例的安全验证方法,其中,还包括:
随机因子生成及广播步骤:生成随机因子并向所述网络中的其他节点广播;
其中,所述数字签名生成步骤进一步:
对其所处的所述节点的在当前状态下的所述软件以及接收的其他节点所广播的随机因子采用相应的私钥进行签名以得到对应该软件的所述软件数字签名,和/或
对其所处的所述节点的在当前状态下的所述软件以及接收的其他节点所广播的随机因子一起进行哈希计算并得到该节点的当前的第二哈希值,采用相应的私钥进行签名以得到对应该第二哈希值的所述哈希值数字签名。
根据本发明另一实施例或者之前任一实施例的安全验证方法,其中,所述安全验证步骤进一步:
结合利用接收的其他节点所广播的随机因子以及备份存储的至少部分所述软件和/或所述第一哈希值,对相应的所述其他节点的当前状态下的所述软件进行校验计算,从而确定该其他节点的所述软件的当前状态是否为安全状态。
根据本发明另一实施例或者之前任一实施例的安全验证方法,其中,所述随机因子是针对备份存储的所述其他节点的所述软件的存储区域生成的排除地址。
根据本发明另一实施例或者之前任一实施例的安全验证方法,其中,在所述数字签名生成步骤中,签名处理或哈希计算的所述节点的所述软件为除所述排除地址之外的区域所存储的剩余部分所述软件,其中该排除地址是所述其他节点对所述节点而生成的排除地址并从所述其他节点接收;
在所述安全验证步骤中,签名处理或哈希计算的备份存储的其他节点的所述软件为除相应的排除地址之外的区域所存储的剩余部分所述软件,其中该排除地址包括所述节点对应所述其他节点而生成的排除地址。
根据本发明另一实施例或者之前任一实施例的安全验证方法,其中,广播的所述随机因子是随机数;
其中,所述数字签名生成步骤和所述安全验证步骤中处理的随机因子是对包括从所述其他节点同时接收的随机数进行合并处理或求和处理后得到的随机数值。
根据本发明另一实施例或者之前任一实施例的安全验证方法,其中,在所述安全验证步骤中,签名处理或哈希计算的备份存储的其他节点的所述软件为添加或***对应于所述随机数值的所述软件。
根据本发明另一实施例或者之前任一实施例的安全验证方法,其中,还包括:
软件恢复步骤:在确定所述其他节点的所述软件的当前状态是非安全状态时从所述节点生成恢复指令,从而使用对应该其他节点备份存储的在安全状态下的至少部分所述软件将该其他节点的所述软件恢复至安全状态。
根据本发明另一实施例或者之前任一实施例的安全验证方法,其中,所述安全验证步骤进一步:在确定所述其他节点的所述软件的当前状态为安全状态的情况下将所述其他节点添加至信任节点列表中、在确定所述其他节点的所述软件的当前状态是非安全状态的情况下将所述其他节点从信任节点列表中移除。
按照本发明的第四方面,提供一种具有计算功能的节点,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现以上任一所述安全验证方法的步骤。
按照本发明的第五方面,提供一种计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行以实现以上任一所述安全验证方法的步骤。
根据以下描述和附图本发明的以上特征和操作将变得更加显而易见。
附图说明
从结合附图的以下详细说明中,将会使本发明的上述和其他目的及优点更加完整清楚,其中,相同或相似的要素采用相同的标号表示。
图1是按照本发明一实施例的安全验证网络的基本结构示意图。
图2是按照本发明一实施例的安全验证网络中的节点的基本结构示意图。
图3是按照本发明一实施例的安全验证网络中的节点的模块结构示意图。
图4示意图1所示实施例的安全验证网络的第一种具体实现方式及其工作原理。
图5示意图1所示实施例的安全验证网络的第二种具体实现方式及其工作原理。
图6示意图1所示实施例的安全验证网络的第三种具体实现方式及其工作原理。
图7示意图1所示实施例的安全验证网络的第四种具体实现方式及其工作原理。
图8示意图1所示实施例的安全验证网络的第五种具体实现方式及其工作原理。
具体实施方式
现在将参照附图更加完全地描述本发明,附图中示出了本发明的示例性实施例。但是,本发明可按照很多不同的形式实现,并且不应该被理解为限制于这里阐述的实施例。相反,提供这些实施例使得本公开变得彻底和完整,并将本发明的构思完全传递给本领域技术人员。
附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或者在一个或多个硬件模块或集成电路中实现这些功能实体,或者在不同处理装置和/或微控制器装置中实现这些功能实体。
在被使用的情况下,术语“第一”、“第二”等不一定表示任何顺序或优先级关系,而是可以用于更清晰地将其限定的对象彼此区分。
图1所示为按照本发明一实施例的安全验证网络的基本结构示意图,图2所示为按照本发明一实施例的安全验证网络中的节点的基本结构示意图,图3所示为按照本发明一实施例的安全验证网络中的节点的模块结构示意图。
结合图1至图3所示,安全验证网络10可以是一种分布式网络或分布式网络的一部分,其由分布在不同位置的节点100互连形成,节点100之间形成网络连接并且可以进行有线或无线通信,安全验证网络10自身也处于网络中,其也可以被外部网络访问。
安全验证网络10可以是不同应用环境下的网络,其具体网络类型不是限制性的,例如其可以是车联网,或者可以是车身网络,还或者可以是不同种类物联网设备组成的局域网。以下以车联网为示例说明本发明的安全验证网络的工作与原理,本领域技术人员将理解到,在本发明的教导下,可以将本发明的安全验证网络或节点类推地应用到其他网络类型中。
安全验证网络10中的节点100的个数不是限制性的,例如,其中示例给出了t个节点,即节点1001、节点1002、节点1003、节点1004、…、节点100t,t可以是大于或等于2的整数。节点100的具体实现形式不是限制性的,例如,其可以是车辆上的不同ECU(电子控制单元)或不同车辆上的ECU,或者可以是一个或多个计算终端。
每个节点100是具有计算功能的节点,也就是说,其可以运行相应的软件310以实现预定的功能;软件310可以预先地配置在每个节点100中,例如,为节点1001、节点1002、节点1003、节点1004、…、节点100t分别配置软件3101、软件3102、软件3103、软件3104、…、软件310t。需要理解的是,每个节点100配置的软件100的数量和具体类型不是限制性的,配置的软件100可以进行更新或升级,例如版本更新。
安全验证网络10中的每个节点100的软件310是需要保护的,以保证其在安全状态下运行,因此,需要防止软件310被外部攻击或篡改,从而防止某个节点100被劫持,进行影响整个网络的安全。
如图2所示,每个节点100的基本硬件结构包括一个或多个处理器101、一个或多个存储器102,存储器102可以安装有相应的软件310,也即软件310的程序指令存储在存储器102上,并可在处理器101上运行,从而实现预定的功能;同时,存储器102也可以用于实现以下示例说明的备份存储模块110等,还可以安装相应的安全验证程序,其在与处理器102协同工作的情况下,能够实现本申请的安全验证等功能。
每个节点100还可以根据需要设置其他物理硬件,例如,网络接口103,通过网络接口103,例如可以向分布式的安全验证网络10中的其他节点广播信息,也可以从分布式的安全网络10中的其他节点接收信息。
如图3所示,每个节点100中设置有备份存储模块110,备份存储模块110用于备份存储网络10中的其他节点(例如所有其他节点或指定的部分其他节点)的在安全状态下的至少部分软件310,或者用于备份存储网络10中的其他节点(例如所有其他节点或部分其他节点)在安全状态下的第一哈希值(HASH Value),该第一哈希值是基于其软件310进行哈希(HASH)计算得到的安全的哈希值。将理解,在其他实施例中,也可以同时备份存储其他节点的上述至少部分软件310和第一哈希值二者。
每个节点100中还设置有安全验证模块120,安全验证模块120利用备份存储的至少部分软件310(其他节点的软件)对相应的其他节点的当前状态下的软件进行校验计算,或者利用备份存储的所述第一哈希值(其他节点的软件的第一哈希值)对相应的其他节点的当前状态下的软件进行校验计算,还或者利用备份存储的相应的某一其他节点的软件310和第一哈希值二者对该其他节点的当前状态下的软件进行例如双重校验计算,从而可以随时确定该其他节点的软件的当前状态是否为安全状态。
这样,通过备份存储模块110,每个节点100的安全状态下的软件310和/或第一哈希值可以副本的形式备份存储在安全验证网络10的其他节点100的一个或多个中;即使安全网络10的某个节点100被篡改或劫持,其安全状态的信息可以在其他节点100中更安全地备份,并且可以在其他节点100中进行校验计算来确定该节点100是否被篡改或劫持,分布式网络10中节点100之间可以相互校验,节点的安全性大大提高,并且多个节点之间可以构建分布式的安全网络,网络10的安全性也得到大大提高。
进一步,在备份存储其他节点的软件310的情况下,利用备份存储的安全状态下软件,可以方便地将当前处于非安全状态的节点100的软件310恢复至安全状态,从而恢复节点。
通过每个节点100中引入备份存储模块110,可以将网络10中的每个节点100的软件310的副本分布式地备份存储在多个其他节点100中。
在一实施例中,每个节点100的软件310的副本作为一个整体被分布式地备份存储在网络10的各个其他节点100中,也就是说,每个节点100的软件310的副本作为一个整体,也就是说,每个节点100的软件310的整个软件副本是分布在全网的所有节点内。
在又一实施例中,在分布式地分散备份存储时,软件310的副本并不是作为一个整体备份地,每个节点100中配置的安全状态下的软件310的副本以若干区块的形式被分布式地分别备份存储在相应的若干其他节点100中,也就是说,其他节点的一个仅备份存储某个软件节点100的软件副本的一部分。相应地,在安全校验时,其他节点的一个可以仅对存储的该部分软件副本进行校验计算。
需要理解的是,安全验证网络10中的“节点”与“其他节点”之间的关系是相对的,“其他节点”是相对某个节点之外的网络10中的节点,因此,某个节点10在网络10中本身也作为另一个节点10的其他节点,例如,如图1所示,节点1001是节点1002的其他节点的一个,节点1002是节点1001的其他节点的一个。
以下结合图4至图8,以安全验证网络10中的四个ECU节点(节点1001至节点1004)为示例,进一步示例说明本发明的安全验证网络100、节点100的工作原理,并且示例说明节点100的安全验证方法。
图4示意图1所示实施例的安全验证网络的第一种具体实现方式及其工作原理。如图4所示,安全验证网络101中,节点1001至节点1004 各自以区块的形式存储自身的软件和备份的其他节点的软件副本(即备份存储的软件)。
其中,节点1001的一个区块存储其自身的用于实现预定功能的受保护的软件3101,节点1001的其他三个区块分别存储其他三个节点(节点1002至节点1004)的软件副本31021、软件副本31031、软件副本31041
其中,节点1002的一个区块存储其自身的用于实现预定功能的受保护的软件3102,节点1002的其他三个区块分别存储其他三个节点(节点1001、节点1003和节点1004)的软件副本31012、软件副本31032、软件副本31042
其中,节点1003的一个区块存储其自身的用于实现预定功能的受保护的软件3103,节点1003的其他三个区块分别存储其他三个节点(节点1001、节点1002和节点1004)的软件副本31013、软件副本31023、软件副本31043
其中,节点1004的一个区块存储其自身的用于实现预定功能的受保护的软件3104,节点1004的其他三个区块分别存储其他三个节点(节点1001、节点1002和节点1003)的软件副本31014、软件副本31024、软件副本31024
每个节点100可以通过副本广播模块150将该节点配置的安全状态下的至少部分软件310以副本形式广播至网络10的其他节点中以在其他节点上进行备份存储。如图4所示虚线箭头210表示该软件副本的广播过程,其中,虚线箭头2101表示广播节点1001的安全状态下的软件3101的副本,虚线箭头2102表示广播节点1002的安全状态下的软件3102的副本,虚线箭头2103表示广播节点1003的安全状态下的软件3103的副本,虚线箭头2104表示广播节点1004的安全状态下的软件3104的副本。
虚线箭头220表示从其他节点接收广播而来的软件副本,从而将接收的软件副本进行备份存储,示例地,节点1001在网络10中接收的软件副本被备份存储为软件副本31021、软件副本31031、软件副本31041
以上软件副本的广播、接收、备份存储过程可以在安全状态下预先地完成,例如,在每个软件的安装完成或更新完成后进行。其中,备份存储过程可以通过备份存储模块110实现。
继续如图4所示,在网络101的节点的校验过程中,采用非对称加密算法进行加密和解密,对于每个节点100,箭头230表示从该节点广播其配置的软件310的软件数字签名,箭头240表示从该其他节点接收软件数字签名,它们可以通过数字签名广播模块160实现。
每个节点100在广播其软件数字签名之前,通过其配置的数字签名生成模块140对该节点的在当前状态下的软件310采用相应的私钥进行签名以得到对应该软件310的软件数字签名。以节点1001为示例,节点1001中的数字签名生成模块140将当前状态下的软件3101采用相应的私钥进行签名以得到软件3101的软件数字签名,并且广播2301中包含该软件数字签名;其他节点1002至1004进行同样类似操作。
对应地,每个节点100在接收来自其他节点的软件数字签名后(接收240之后),通过其配置的解签模块130,使用相应的公钥将从网络10中接收到的其他节点的软件数字签名进行解密计算,从而得到欲验证的软件。以节点1001为示例,节点1001中的解签模块130可以使用相应的公钥将从网络10中接收到的节点1002、节点1003或节点1004的软件数字签名进行解密计算,从而得到欲验证的软件3102、软件3103或软件3104;其他节点1002至1004进行同样类似操作。
进一步,得到其他节点的欲验证的软件310后,每个节点100的安全验证模块120对其他节点的欲验证的软件310进行校验计算。以节点1001为示例,节点1001中的安全验证模块120利用备份存储的软件副本31021、软件副本31031或软件副本31041对欲验证的软件3102、软件3103或3104进行校验计算,例如,将解密后的欲验证的软件3102与备份存储的软件副本31012进行比对,如果它们一致,则确定节点1002中的软件3102的当前状态为安全状态(例如软件代码未被篡改等),否则,确定节点1002中的软件3102的当前状态为非安全状态(例如软件代码已经被篡改);类似地,节点1001可以对其他节点的每个(例如节点1003和1004)的软件310完成校验。其他节点1002至1004进行同样类似操作,这样,节点1001的当前状态下的软件3101也可以在各个其他节点(节点1002至1004)中完成校验。
需要说明的是,以上采用的安全验证原则是它验原则(排己原则),例如,节点1002只可以利用解签后待验证的软件3101、3104、3104分别与本地存储的软件副本31012、31032、31042分别对比一致性,并确定节点1001、1003、1004内的3101、3104、3104的状态是否为安全状态。也就是说,每个节点都只能确定其它节点的软件是否为安全状态,而不对该节点自身是否为安全状态的判断,每个节点都广播HASH和/或软件副本给其它节点,从而让其它节点判断(证明)该发送广播的节点是否安全。
需要说明的是,网络10中的不同节点100分别使用的公钥和私钥,即公钥-私钥对,是基于非对称加密算法获得,非对称加密算法具体例如可以是椭圆曲线数字签名算法(ECDSA),将理解,也可以采用椭圆曲线数字签名算法之外的其他非对称加密算法。
继续如图4所示,假设例如节点1002的部分软件代码被非法篡改(即处于非安全状态),其他节点1001、1003和1004将都能够确定其处于非安全状态,其他节点1001、1003和1004都可以将节点1002标记为不信任节点;相反地,假设例如节点1002的当前是安全状态,其他节点1001、1003和1004将都能够确定其处于安全状态,其他节点1001、1003和1004都可以将节点1002标记为信任节点。在一实施例中,每个节点100可以配置信任节点列表(图中未示出),每个节点100的安全验证模块120还用于在确定某一其他节点的软件的当前状态为安全状态的情况下将该其他节点添加至信任节点列表中、在确定该其他节点的软件的当前状态是非安全状态的情况下将该其他节点从信任节点列表中移除。
每个节点100的当前的信任列表也可以发送至网络10中,在一实施例中,在网络10的所有节点中,针对某个节点进行校验时,超过预定数量的其他节点(例如一半其他节点)都确定该节点为合法的节点时,也即,在超过预定数量的其他节点(例如一半其他节点)的信任列表中都记录有该节点,则在本轮验证中该节点会被最终认可为是合法节点。
图5示意图1所示实施例的安全验证网络的第二种具体实现方式及其工作原理。如图5所示,安全验证网络102中,节点1001至1004的一个区块分别存储其自身的用于实现预定功能的受保护的软件3101至3104;并且,节点1001至1004均配置有哈希值备份区320。
其中,节点1001的哈希值备份区320分别存储其他三个节点(节点1002至节点1004)的第一哈希值副本42021、第一哈希值副本42031、第一哈希值副本42041
其中,节点1002的哈希值备份区320分别存储其他三个节点(节点1001、节点1003和节点1004)的第一哈希值副本42012、第一哈希值副本42032、第一哈希值副本42042
其中,节点1003的哈希值备份区320分别存储其他三个节点(节点1001、节点1002和节点1004)的第一哈希值副本42013、第一哈希值副本42023、第一哈希值副本42043
其中,节点1004的哈希值备份区320分别存储其他三个节点(节点1001、节点1002和节点1003)的第一哈希值副本42014、第一哈希值副本42024、第一哈希值副本42034
每个节点100可以通过副本广播模块150将该节点配置的安全状态下的至少部分软件310的第一哈希值以副本(即第一哈希值副本)形式广播至网络10的其他节点中以在其他节点上进行备份存储,其中,第一哈希值时是对例如安全状态下的软件310进行哈希计算得到。如图5所示虚线箭头410表示该第一哈希值副本的广播过程,其中,虚线箭头4101表示广播节点1001的安全状态下的软件3101的第一哈希值副本,虚线箭头4102表示广播节点1002的安全状态下的软件3102的第一哈希值副本,虚线箭头4103表示广播节点1003的安全状态下的软件3103的第一哈希值副本,虚线箭头4104表示广播节点1004的安全状态下的软件3104的第一哈希值副本;它们可以通过数字签名广播模块160实现。
虚线箭头420表示从其他节点接收广播而来的第一哈希值副本(可能为多个),从而将接收的第一哈希值副本进行备份存储,示例地,节点1001在网络10中接收的第一哈希值副本被备份存储为第一哈希值副本42021、第一哈希值副本42031、第一哈希值副本42041
以上第一哈希值副本的广播、接收、备份存储过程可以在安全状态下预先地完成,例如,在每个软件的安装完成或更新完成后进行。其中,备份存储过程可以通过备份存储模块110实现。
继续如图5所示,在网络10的节点的校验过程中,采用非对称加密算法进行加密和解密,对于每个节点100,箭头430表示从该节点广播其配置的软件310的哈希值数字签名,箭头440表示从该其他节点接收其他节点的哈希值数字签名。
每个节点100在广播其哈希值数字签名之前,通过其配置的数字签名生成模块140对该节点的在当前状态下的软件310进行哈希计算并得到该节点的当前的第二哈希值,采用相应的私钥进行签名以得到对应该第二哈希值的哈希值数字签名。以节点1001为示例,节点1001中的数字签名生成模块140将当前状态下的软件3101进行哈希计算并得到相应的第二哈希值,然后采用相应的私钥进行签名以得到软件3101的哈希值数字签名,并且广播4301中包含该哈希值数字签名;其他节点1002至1004进行同样类似操作。
对应地,每个节点100在接收来自其他节点的哈希值数字签名后(接收440之后),通过其配置的解签模块130,使用相应的公钥将从网络10中接收到的其他节点的哈希值数字签名进行解密计算,从而得到欲验证的第二哈希值。以节点1001为示例,节点1001中的解签模块130可以使用相应的公钥将从网络10中接收到的节点1002、节点1003或节点1004的哈希值数字签名进行解密计算,从而得到欲验证的软件3102、软件3103或软件3104的第二哈希值;其他节点1002至1004进行同样类似操作。
进一步,得到其他节点的欲验证的第二哈希值后,每个节点100的安全验证模块120对其他节点的欲验证的第二哈希值进行校验计算。以节点1001为示例,节点1001中的安全验证模块120利用备份存储的第一哈希值副本42021、第一哈希值副本42031或第一哈希值副本42041对欲验证的软件3102、软件3103或3104的第二哈希值分别进行校验计算,例如,将解密后的欲验证的软件3102的第二哈希值与备份存储的第一哈希值副本42021进行比对,如果它们一致,则确定节点1002中的软件3102的当前状态为安全状态(例如软件代码未被篡改等),否则,确定节点1002中的软件3102的当前状态为非安全状态(例如软件代码已经被篡改);类似地,节点1001可以对其他节点的每个(例如节点1003和1004)的软件310完成校验。其他节点1002至1004进行同样类似操作,这样,节点1001的当前状态下的软件3101也可以在各个其他节点(节点1002至1004)中完成校验。
在图5所示实施例中,主要是采用了哈希验证过程;由于每个节点100可以通过备份存储其他节点的安全状态下的第一哈希值副本可以实现校验计算,对每个节点100的存储器102的存储空间相对要小。但是,在某个节点100被确定为非法节点时,相对难以恢复。
图6示意图1所示实施例的安全验证网络的第三种具体实现方式及其工作原理。如图6所示,安全验证网络103中,其采用区块链方式进行分布存储。
其中,节点1001的第一个区块存储其自身的用于实现预定功能的受保护的软件3101的初始版本软件31011,节点1001的第二个区块存储受保护的软件3101的当前运行版本软件31021,该第二个区块在区块链方式存储中作为初始区块;节点1001的第三个至第五个区块分别存储其他三个节点(节点1002至节点1004)的软件副本310221、软件副本310231、软件副本310241,它们均是各个其他节点的当前运行版本软件3102的软件副本;其中,第二个区块至第五个区块中,第二个区块作为初始区块,下一区块作为前一区块的后续区块;在该实施例中,后续区块的还备份存储其前一区块所对应的哈希区域的第三哈希值(将前一区块作为哈希区域计算得到第三哈希值),例如,第三个区块还备份存储其前一区块(即第二个区块)所对应的哈希区域的第三哈希值422,第四个区块还备份存储其前一区块(即第三个区块)所对应的哈希区域的第三哈希值423,第五个区块还备份存储其前一区块(即第四个区块)所对应的哈希区域的第三哈希值424。从而,多个其他节点1002至节点1004的受保护的软件在节点1001中使用区块链方式按区块地分布存储在节点1001的多个区块中。
其中,节点1002的第一个区块存储其自身的用于实现预定功能的受保护的软件3102的初始版本软件31012,节点1002的第二个区块存储受保护的软件3102的当前运行版本软件31022,该第二个区块在区块链方式存储中作为初始区块;节点1002的第三个至第五个区块分别存储其他三个节点(节点1001、节点1003和节点1004)的软件副本310212、软件副本310232、软件副本310242,它们均是各个其他节点的当前运行版本软件3102的软件副本;同样地,第三个区块还备份存储其前一区块(即第二个区块)所对应的哈希区域的第三哈希值422,第四个区块还备份存储其前一区块(即第三个区块)所对应的哈希区域的第三哈希值423,第五个区块还备份存储其前一区块(即第四个区块)所对应的哈希区域的第三哈希值424。
其中,节点1003的第一个区块存储其自身的用于实现预定功能的受保护的软件3103的初始版本软件31013,节点1003的第二个区块存储受保护的软件3103的当前运行版本软件31023,该第二个区块在区块链方式存储中作为初始区块;节点1003的第三个至第五个区块分别存储其他三个节点(节点1001、节点1002和节点1004)的软件副本310213、软件副本310223、软件副本310243,它们均是各个其他节点的当前运行版本软件3102的软件副本;同样地,第三个区块还备份存储其前一区块(即第二个区块)所对应的哈希区域的第三哈希值422,第四个区块还备份存储其前一区块(即第三个区块)所对应的哈希区域的第三哈希值423,第五个区块还备份存储其前一区块(即第四个区块)所对应的哈希区域的第三哈希值424。
其中,节点1004的第一个区块存储其自身的用于实现预定功能的受保护的软件3104的初始版本软件31014,节点1004的第二个区块存储受保护的软件3104的当前运行版本软件31024,该第二个区块在区块链方式存储中作为初始区块;节点1004的第三个至第五个区块分别存储其他三个节点(节点1001、节点1002和节点1003)的软件副本310214、软件副本310224、软件副本310234,它们均是各个其他节点的当前运行版本软件3102的软件副本;同样地,第三个区块还备份存储其前一区块(即第二个区块)所对应的哈希区域的第三哈希值422,第四个区块还备份存储其前一区块(即第三个区块)所对应的哈希区域的第三哈希值423,第五个区块还备份存储其前一区块(即第四个区块)所对应的哈希区域的第三哈希值424。
其中,每个第三哈希值用于其所在的区块的前一个区块的安全校验。
在该实施例中,每个节点100还设置有空闲的备用区块330,如果例如某个其他节点的当前运行版本软件3102被更新后,更新后的软件可以备份存储在备用区块330中,并且,备用区块330可以作为第五个区块的后续区块。以节点1001示例说明,第六个区块为备用区块330,假设节点1002的当前运行版本软件31022发生更新,更新的当前运行版本软件31022被广播出去(虚线箭头2102所示),节点1001从网络103中接收更新的当前运行版本软件31022(虚线箭头220所示),并将其存储在备用区块330中,这样,第三个区块中存储的软件副本310221继续备份存储着,容易节点1002容易根据需要恢复至软件副本310221对应的版本(例如,因为新版本自身存在问题)。
以上示例的针对备用区块330的管理都可以通过对应的节点100中的备份存储模块110实现。
如图6所示的网络103的节点的校验过程可以与图4所示的网络101的节点的校验过程基本相同,它们都可以在一节点直接私匙签发相应的软件区块并广播、在另一节点公钥解密并利用备份存储的相应软件副本进行比对和验证,在此不再详述。
图7示意图1所示实施例的安全验证网络的第四种具体实现方式及其工作原理。如图7所示,安全验证网络104中,节点1001至节点1004 各自以区块的形式存储自身的软件和备份的其他节点的软件副本(即备份存储的软件)。
相比于图4示例的安全验证网络101,安全验证网络104中每个节点中引入了排除地址(Excluded Address),其中,排除地址可以是一种符合节点功能定义的合法物理地址,并且可以随机地生成,从而在安全验证过程中,排除地址可以用于产生随机的哈希区域以及产生随机的哈希值,进一步提高了可靠性和安全性。在一示例中,对于例如普通的物理地址0x12345678, 其中,0x代表16进制,12345678是符合一般***定义的合法物理地址,通过在物理地址的12345678数字位上并入随机产生的随机数,来形成排除地址。
具体地,如图7所示,每个节点通过其中设置的随机因子生成及广播模块170可以为其他节点(例如每个其他节点)的用于存储受保护的软件的区块(不是用于备份存储其他节点的受保护的软件副本的区块)随机生成一个或多个排除地址3111,因此相比于图4示例,对每个节点来说,还增加排除地址的广播过程和接收过程,其也可以通过相应节点的随机因子生成及广播模块170来完成。虚线箭头5301表示节点1001生成的排除地址3111(例如以私钥签名)被广播至网络104的其他节点,节点1001对应的虚线箭头540表示节点1001从其他节点接收对应该节点的排除地址3112(例如,接收的排除地址3112以公钥解签)。虚线箭头5302表示节点1002生成的排除地址3111(例如以私钥签名)被广播至网络104的其他节点,节点1002对应的虚线箭头540表示节点1002从其他节点接收对应该节点的排除地址3112(例如,接收的排除地址3112以公钥解签)。虚线箭头5303表示节点1003生成的排除地址3111(例如以私钥签名)被广播至网络104的其他节点,节点1003对应的虚线箭头540表示节点1003从其他节点接收对应该节点的排除地址3112(例如,接收的排除地址3112以公钥解签)。虚线箭头5304表示节点1001生成的排除地址3111(例如以私钥签名)被广播至网络104的其他节点,节点1004对应的虚线箭头540表示节点1004从其他节点接收对应该节点的排除地址3112(例如,接收的排除地址3112以公钥解签)。
图7中,是以每个节点100的每个区块从其他三个节点接收到三个随机的排除地址为示例说明的。如图7所示,参见节点1001的存储软件3101的第一个区块,其中的三个排除地址3111是分别在节点1002、节点1003和节点1004中随机生成的,并且接收它们广播的排除地址后在存储软件3101的第一个区块中体现。同时,节点1001的第一个区块的三个排除地址也分别在三个其他节点(即节点1002、节点1003和节点1004)的第一个区块中体现,这样,对应软件3101的软件副本31012、31013、31014的排除地址对应相同(如果各个节点没有被劫持或篡改)。
参见节点1002的用于备份存储软件副本3102的第二个区块,其中的三个排除地址3111是分别在节点1001、节点1003和节点1004中随机生成的,并且接收它们广播的排除地址后在存储软件3102的第二个区块中体现。同时,节点1002的第二个区块的三个排除地址也分别在三个其他节点(即节点1001、节点1003和节点1004)的第二个区块中体现,这样,对应软件3102的软件副本31021、31023、31024的排除地址对应相同(如果各个节点没有被劫持或篡改)。
参见节点1003的用于备份存储软件副本3103的第三个区块,其中的三个排除地址3111是分别在节点1001、节点1002和节点1004中随机生成的,并且接收它们广播的排除地址后在存储软件3103的第三个区块中体现。同时,节点1003的第三个区块的三个排除地址3111也分别在三个其他节点(即节点1001、节点1002和节点1004)的第三个区块中体现,这样,对应软件3103的软件副本31031、31032、31034的排除地址对应相同(如果各个节点没有被劫持或篡改)。
参见节点1004的用于备份存储软件副本3104的第四个区块,其中的三个排除地址3111是分别在节点1001、节点1002和节点1003中随机生成的,并且接收它们广播的排除地址后在存储软件3104的第四个区块中体现。同时,节点1004的第四个区块的三个排除地址3111也分别在三个其他节点(即节点1001、节点1002和节点1003)的第四个区块中体现,这样,对应软件3104的软件副本31041、31042、31043的排除地址对应相同(如果各个节点没有被劫持或篡改)。
进一步,在后续的安全验证过程中,哈希计算、私钥签名是对排除地址之外的其他区域进行处理的。
在一实施例的安全验证过程中,以节点1001对节点1002的当前状态的软件3102进行安全验证为示例,通过节点1002的数字签名生成模块140,针对节点1002的软件3102,除去排除地址之外的区域的软件代码后,对第二个区域存储的剩余部分软件3102进行哈希计算,得到对应软件3102的当前的第二哈希值,进一步采用相应的私钥进行签名以得到对应所该第二哈希值的哈希值数字签名;通过节点1002将软件3102的哈希值数字签名广播出去(参见箭头4302);对应地,节点1001接收软件3102的哈希值数字签名(参见对应节点1001的箭头440),并且,节点1001的解签模块130使用相应的公钥将对该哈希值数字签名进行解密计算得到欲验证的第二哈希值;通过节点1001的安全验证模块120,针对节点1001的软件副本31021,除去排除地址之外的区域的软件代码后,对节点1001的第二个区域存储的剩余部分软件副本31021进行哈希计算,得到的哈希值即为在安全状态下的哈希值;通过节点1001的安全验证模块120将解签得到第二哈希值与安全状态下的哈希值进行比对,如果一致,则确定节点1002的软件3102的当前状态为安全状态,否则为非安全状态。
在又一实施例的安全验证过程中,以节点1001对节点1002的当前状态的软件3102进行安全验证为示例,通过节点1002的数字签名生成模块140,针对节点1002的软件3102,除去排除地址之外的区域的软件代码后,确定第二个区域存储的剩余部分软件3102,采用相应的私钥对其进行签名以得到软件数字签名;通过节点1002将软件3102的软件数字签名广播出去(参见箭头4302);对应地,节点1001接收软件3102的软件数字签名(参见对应节点1001的箭头440),并且,节点1001的解签模块130使用相应的公钥将对该软件数字签名进行解密计算得到欲验证的软件3102(已经除去排除地址对应的代码);通过节点1001的安全验证模块120,针对节点1001的软件副本31021,确定除去排除地址之外的区域的软件代码,对节点1001的第二个区域存储的剩余部分软件副本31021;通过节点1001的安全验证模块120将节点1001的剩余部分软件副本31021与解签得到的软件3102进行比对,如果一致,则确定节点1002的软件3102的当前状态为安全状态,否则为非安全状态。
将理解,节点1002的每个其他节点(节点1004或节点1004)均可以与节点1001一样同样完成上述安全验证过程;针对节点1001的软件3101、节点1003的软件3103或节点1004的软件3104也可以完成类似的上述验证过程。
图8示意图1所示实施例的安全验证网络的第五种具体实现方式及其工作原理。如图8所示,安全验证网络105中,节点1001至节点1004 各自以区块的形式存储自身的软件和备份的其他节点的软件副本(即备份存储的软件)。其中,安全验证网络中受保护软件可以是由一个或多个区块组成,并且如果该受保护软件由多个区块组成,不同区块的长度可以一致也可以不一致,但是每个节点受保护的软件区块以及在该受保护软件区块在其它节点中的软件副本区块,在数量、长度以及内容上均与广播的初始化完成的软件副本后保持一致。图8中是以每个节点的受保护软件都由一个区块组成为例进行示例说明的。
相比于图4示例的安全验证网络101,安全验证网络105中每个节点中引入了随机数,其中,随机数是一种随机因子并且可以随机地生成,从而在安全验证过程中,进一步提高了可靠性和安全性。
具体地,如图8所示,每个节点通过其中设置的随机因子生成及广播模块170可以随机生成一个或多个随机数,例如,在某一时刻每个节点的随机因子生成及广播模块170各自生成一个随机数;因此相比于图4示例,对每个节点来说,还增加随机数的广播过程和接收过程,其也可以通过相应节点的随机因子生成及广播模块170来完成。虚线箭头6101表示节点1001生成的随机数(例如以私钥签名)被广播至网络104的其他节点,节点1001对应的虚线箭头620表示节点1001从其他节点接收对应该节点的随机数(例如,接收的随机数以公钥解签)。虚线箭头6102表示节点1002生成的随机数(例如以私钥签名)被广播至网络104的其他节点,节点1002对应的虚线箭头620表示节点1002从其他节点接收对应该节点的随机数(例如,接收的随机数以公钥解签)。虚线箭头6103表示节点1003生成的随机数(例如以私钥签名)被广播至网络104的其他节点,节点1003对应的虚线箭头620表示节点1003从其他节点接收对应该节点的随机数(例如,接收的随机数以公钥解签)。虚线箭头6104表示节点1001生成的随机数(例如以私钥签名)被广播至网络104的其他节点,节点1004对应的虚线箭头620表示节点1004从其他节点接收对应该节点的随机数(例如,接收的随机数以公钥解签)。
在一实施例的安全验证过程中,以节点1001对节点1002的当前状态的软件3102进行安全验证为示例,通过节点1002的数字签名生成模块140,针对节点1002的软件3102添加或***一个随机数值,该随机数值是将同一时刻四个节点1001至1004所生成的随机数进行合并处理或求和处理后得到的,其中,节点1001、节点1003和节点1004所生成的随机数通过从网络中接收获得;然后,对第二个区域存储的添加或***了该随机数值的软件3102进行哈希计算,得到对应软件3102的当前的第二哈希值,进一步采用相应的私钥进行签名以得到对应所该第二哈希值的哈希值数字签名;通过节点1002将软件3102的哈希值数字签名广播出去(参见箭头4302);对应地,节点1001接收软件3102的哈希值数字签名(参见对应节点1001的箭头440),并且,节点1001的解签模块130使用相应的公钥将对该哈希值数字签名进行解密计算得到欲验证的第二哈希值;通过节点1001的安全验证模块120,针对节点1001的软件副本31021,添加或***一个随机数值,该随机数值同样是将相同时刻四个节点1001至1004所生成的随机数进行合并处理或求和处理后得到,;然后,对节点1001的第二个区域存储的软件副本31021(包含添加或***的随机数值)进行哈希计算,得到的哈希值即为在安全状态下的哈希值;通过节点1001的安全验证模块120将解签得到第二哈希值与安全状态下的哈希值进行比对,如果一致,则确定节点1002的软件3102的当前状态为安全状态,否则为非安全状态。
需要说明的是,在以上添加或***随机数值的过程中,可以在对应的软件或软件副本的地址段内的任意地址上添加或***。
将理解,对于以上图7和图8所示的安全验证网络104和安全验证网络105中,随机数或排除地址的引入增加了随机性,使非法入侵者等无法通过监控信息破解静态过程。
将理解,节点1002的每个其他节点(节点1004或节点1004)均可以与节点1001一样同样完成上述安全验证过程;针对节点1001的软件3101、节点1003的软件3103或节点1004的软件3104也可以完成类似的上述验证过程。
进一步需要说明的是,以上图4、图6至图8的网络10中,一旦确定某个节点处于非安全状态,或者一旦确定某个节点是非法的,则启动相应节点的软件恢复模块180进行恢复操作,其中,软件恢复模块180在确定某一节点是处于非安全状态时生成恢复指令以使用对应该节点备份存储的在安全状态下的软件将该非安全状态的其节点的软件恢复至安全状态。
需要理解的是,恢复机制可以与备份存储机制是相对应。如果受保护的软件是整体地备份存储在其他节点,在恢复的过程中也可以整体地恢复;如果受保护的软件是分布式地分散备份存储在多个其他节点,在恢复的过程中也可以通过多个其他节点协同操作来分块地逐一恢复。将理解到,分布式存储可以带来的大量软件副本(或副本区块),从而使从网络的其它节点恢复受保护的软件变成可能。
示例地,如果节点1的受保护的软件为100M,例如分成50M一个区块,一共占用两个区块(例如区块1和区别2),分布式网络上的节点2和节点3对节点1的受保护的软件进行备份存储,其中, 节点2的指定区块备份存储编号为节点1区块1(50M),节点3的指定区块备份存储编号为节点1区块2(50M);如果节点2或节点3校验节点1的时候确定节点1的软件为非安全状态,则通过节点2和节点3的软件恢复模块启动恢复机制,其中,节点2用备份存储节点1区块1的区块(50M)恢复节点1的区块1,节点3用备份存储节点1区块2的区块(50M)恢复节点1的区块2,这样,节点1的受保护的软件可以全部得到恢复。
以上实施例的安全验证网络10及其应用的安全验证方法中,分布式存储与相应的节点广播方式的引入,将网络安全由个体(单个)节点行为变成群体(网络)行为,该节点全可以由群体决定,例如可以通过每个其他节点的注入信任列表类来投票确定某节点是否安,因此,具有去中心化效果、安全性好。
以上实施例的安全验证网络10及其应用的安全验证方法的优点或效果是通过以下一方面或多个方面来体现的:
(1)对于分布式网络内的每个节点的受保护的软件来说,在其他节点中可以形成几乎不可篡改的分布式软件副本;
(2)采用去中心化的节点网络安全信任机制和恢复机制;
(3)可以通过哈希校验判断节点软件是否被篡改;
(4)被篡改的节点将会被其它节点识别出来;
(5)恢复机制可以适时启动以恢复被劫持的节点;
(6)只有在分布式网络中一定比例的节点同时被劫持后,该分布式网络才可能被攻破,网络安全性得到大大提高。
需要说明的是,以上示例的节点100并不限于是车身网络上的节点(例如ECU),其也可以是其他各种类型的接入网络的终端或终端上的节点,例如,分布式家庭网络内的计算机、空调、电视机等。
需要说明的是,本发明的以上实施例的节点100的各个模块(例如图3所示的模块)可以由计算机程序指令实现,例如,通过专用的计算机程序指令来实现,可以将这些计算机程序指令提供给通用计算机、专用计算机或其他可编程数据处理设备的处理器以构成本发明实施例的节点100,并且,可以由计算机或其他可编程数据处理设备的处理器执行的这些计算机程序指令来创建用于实施这些流程图和/或框和/或一个或多个流程框图中指定的功能/操作的单元或模块。
并且,可以将这些计算机程序指令存储在计算机可读存储器中,这些指令可以指示计算机或其他可编程处理器以特定方式实现功能,以便存储在计算机可读存储器中的这些指令构成包含实施流程图和/或框图的一个或多个框中指定的功能/操作的指令部件的制作产品。
还应该注意在一些备选实现中,框中所示的功能/操作可以不按流程图所示的次序来发生。例如,依次示出的两个框实际可以基本同时地执行或这些框有时可以按逆序执行,具体取决于所涉及的功能/操作。
需要说明的是,本文公开和描绘的元件(包括附图中的流程图、方块图)意指元件之间的逻辑边界。然而,根据软件或硬件工程实践,描绘的元件及其功能可通过计算机可执行介质在机器上执行,计算机可执行介质具有能够执行存储在其上的程序指令的处理器,所述程序指令作为单片软件结构、作为独立软件模块或作为使用外部程序、代码、服务等的模块,或这些的任何组合,且全部这些执行方案可落入本公开的范围内。
虽然不同非限制性实施方案具有特定说明的组件,但本发明的实施方案不限于这些特定组合。可能使用来自任何非限制性实施方案的组件或特征中的一些与来自任何其它非限制性实施方案的特征或组件组合。
虽然示出、公开和要求了特定步骤顺序,但应了解步骤可以任何次序实施、分离或组合,除非另外指明,且仍将受益于本公开。
前述描述是示例性的而非定义成受限于其内。本文公开了各种非限制性实施方案,然而,本领域的一般技术人员将意识到根据上述教示,各种修改和变更将落入附属权利要求的范围内。因此,将了解在附属权利要求的范围内,可实行除了特定公开之外的公开内容。由于这个原因,应研读附属权利要求来确定真实范围和内容。

Claims (42)

1.一种具有计算功能的节点,其能够安装在分布式网络中并与所述网络中的其他节点耦接,所述节点和所述其他节点各自配置有用于实现预定功能的受保护的软件,其特征在于,所述节点还设置有:
备份存储模块,其用于备份存储所述网络中的所述其他节点的在安全状态下的至少部分所述软件和/或对应所述其他节点的在安全状态下的所述软件的第一哈希值;和
安全验证模块,其用于利用备份存储的至少部分所述软件和/或所述第一哈希值对相应的所述其他节点的当前状态下的所述软件进行校验计算,从而确定该其他节点的所述软件的当前状态是否为安全状态。
2.如权利要求1所述的节点,其特征在于,还包括解签模块,其被配置为:
使用相应的公钥将从所述网络中接收到的其他节点的软件数字签名进行解密计算得到欲验证的所述软件,其中,所述软件数字签名是在相应的所述其他节点中通过以下方式得到:采用相应的私钥对该其他节点的在当前状态下的所述软件进行签名以得到对应该软件的所述软件数字签名;和/或
使用相应的公钥将从所述网络中接收到的其他节点的哈希值数字签名进行解密计算得到欲验证的第二哈希值,其中,所述第一数字签名是在相应的所述其他节点中通过以下方式得到:对该其他节点的在当前状态下的所述软件进行哈希计算并得到当前的第二哈希值,采用相应的私钥进行签名以得到对应该当前的第二哈希值的所述哈希值数字签名;
其中,所述公钥和私钥是基于所述非对称加密算法获得。
3.如权利要求2所述的节点,其特征在于,所述安全验证模块还用于利用备份存储的所述软件/所述第一哈希值对所述欲验证的所述软件/所述第二哈希值进行校验计算,以确定相应的所述其他节点的所述软件的当前状态是否为安全状态。
4.如权利要求3所述的节点,其特征在于,所述安全验证模块还用于:
将欲验证的所述软件/所述第二哈希值与备份存储的所述软件/所述第一哈希值进行比对,如果它们一致,则确定所述其他节点的所述软件的当前状态为安全状态。
5.如权利要求1所述的节点,其特征在于,还包括数字签名生成模块,其用于:
对其所处的所述节点的在当前状态下的所述软件采用相应的私钥进行签名以得到对应该软件的所述软件数字签名,和/或
对其所处的所述节点的在当前状态下的所述软件进行哈希计算并得到该节点的当前的第二哈希值,采用相应的私钥进行签名以得到对应该第二哈希值的所述哈希值数字签名;
所述节点还包括:
数字签名广播模块,其用于向所述网络中的其他节点广播所述软件数字签名和/或所述哈希值数字签名。
6.如权利要求1所述的节点,其特征在于,所述节点还包括副本广播模块,其用于将所述节点配置的安全状态下的至少部分所述软件或其对应的第一哈希值以副本形式广播至所述网络的至少一个所述其他节点中。
7.如权利要求1所述的节点,其特征在于,多个所述其他节点的受保护的软件在所述节点中使用区块链方式按区块地分布存储在所述节点的区块中。
8.如权利要求7所述的节点,其特征在于,所述备份存储模块还用于:
使用区块链方式将所述网络中的M个所述其他节点的在安全状态下的至少部分所述软件分别备份存储在某一初始区块的N个后续区块中,其中M与N均为大于或等于1的整数,且N大于或等于M。
9.如权利要求8所述的节点,其特征在于,所述备份存储模块还用于:
在所述其他节点的所述受保护的软件被更新后,采用X个备用区块将更新后的所述软件备份存储,并且,所述备用区块作为第(N+1)至第(N+X)个后续区块,X为大于或等于1的整数。
10.如权利要求8或9所述的节点,其特征在于,当前的所述后续区块还备份存储其前一个区块所对应的所述哈希区域的第三哈希值,其中,所述第三哈希值用于该当前的后续区块的前一个区块的安全校验。
11.如权利要求5所述的节点,其特征在于,还包括:
随机因子生成及广播模块,其用于生成随机因子并向所述网络中的其他节点广播;
其中,所述数字签名生成模块还用于:
对其所处的所述节点的在当前状态下的所述软件以及接收的其他节点所广播的随机因子采用相应的私钥进行签名以得到对应该软件的软件数字签名,和/或
对其所处的所述节点的在当前状态下的所述软件以及接收的其他节点所广播的随机因子一起进行哈希计算并得到该节点的当前的第二哈希值,采用相应的私钥进行签名以得到对应该第二哈希值的所述哈希值数字签名。
12.如权利要求11所述的节点,其特征在于,所述安全验证模块还用于:
结合利用接收的其他节点所广播的随机因子以及备份存储的至少部分所述软件和/或所述第一哈希值,对相应的所述其他节点的当前状态下的所述软件进行校验计算,从而确定该其他节点的所述软件的当前状态是否为安全状态。
13.如权利要求12所述的节点,其特征在于,所述随机因子是针对备份存储的所述其他节点的所述软件的存储区域生成的排除地址。
14.如权利要求13所述的节点,其特征在于,在所述数字签名生成模块中,其签名处理或哈希计算的所述节点的所述软件为除所述排除地址之外的区域所存储的剩余部分所述软件,其中该排除地址是所述其他节点对应所述节点而生成的排除地址并从所述其他节点接收;
在所述安全验证模块中,其签名处理或哈希计算的备份存储的其他节点的所述软件为除相应的排除地址之外的区域所存储的剩余部分所述软件,其中该排除地址包括所述节点对应所述其他节点而生成的排除地址。
15.如权利要求11所述的节点,其特征在于,广播的所述随机因子是随机数;
其中,所述数字签名生成模块和所述安全验证模块处理的随机因子是对包括从所述其他节点同时接收的随机数进行合并处理或求和处理后得到的随机数值。
16.如权利要求15所述的节点,其特征在于,在所述安全验证模块中,其签名处理或哈希计算的备份存储的其他节点的所述软件为添加或***对应于所述随机数值的所述软件。
17.如权利要求1所述的节点,其特征在于,还包括:
软件恢复模块,其在确定所述其他节点的所述软件的当前状态是非安全状态时生成恢复指令以使用对应该其他节点备份存储的在安全状态下的至少部分所述软件将该其他节点的所述软件恢复至安全状态。
18.如权利要求1所述的节点,其特征在于,所述节点还配置有信任节点列表;
所述安全验证模块还用于在确定所述其他节点的所述软件的当前状态为安全状态的情况下将所述其他节点添加至信任节点列表中、在确定所述其他节点的所述软件的当前状态是非安全状态的情况下将所述其他节点从信任节点列表中移除。
19.如权利要求1所述的节点,其特征在于,所述节点是安装在车身网络或物联网中的节点。
20.一种安全验证网络,包括第一节点和第二节点,其特征在于,所述第一节点和所述第二节点为如权利要求1至19中任一所述的节点,其中,一个或多个所述第一节点作为一个所述第二节点的所述其他节点,一个或多个所述第二节点作为一个所述第一节点的所述其他节点。
21.如权利要求20所述的安全验证网络,其特征在于,所述第一节点或第二节点中配置的安全状态下的所述软件作为整体被分布式地备份存储在相应的所述其他节点的每一个中。
22.如权利要求20所述的安全验证网络,其特征在于,所述第一节点或第二节点中配置的安全状态下的所述软件以N个区块的形式被分布式地分别备份存储在相应的所述其他节点的N个中。
23.一种安全验证方法,其通过分布式网络中的一个节点对该网络中的一个或多个其他节点的受保护的软件进行安全验证,其特征在于,包括:
备份存储步骤:备份存储所述网络中的所述其他节点的在安全状态下的至少部分所述软件和/或对应所述其他节点的在安全状态下的所述软件的第一哈希值;和
安全验证步骤:利用备份存储的至少部分所述软件和/或所述第一哈希值对相应的所述其他节点的当前状态下的所述软件进行校验计算,从而确定该其他节点的所述软件的当前状态是否为安全状态。
24.如权利要求23所述的安全验证方法,其特征在于,还包括解签步骤:
使用相应的公钥将从所述网络中接收到的其他节点的软件数字签名进行解密计算得到欲验证的所述软件,其中,所述软件数字签名是在相应的所述其他节点中通过以下方式得到:采用相应的私钥对该其他节点的在当前状态下的所述软件进行签名以得到对应该软件的所述软件数字签名;和/或
使用相应的公钥将从所述网络中接收到的其他节点的哈希值数字签名进行解密计算得到欲验证的第二哈希值,其中,所述第一数字签名是在相应的所述其他节点中通过以下方式得到:对该其他节点的在当前状态下的所述软件进行哈希计算并得到当前的第二哈希值,采用相应的私钥进行签名以得到对应该当前的第二哈希值的所述哈希值数字签名;
其中,所述公钥和私钥是基于所述非对称加密算法获得。
25.如权利要求24所述的安全验证方法,其特征在于,所述安全验证步骤进一步利用备份存储的所述软件/所述第一哈希值对所述欲验证的所述软件/所述第二哈希值进行校验计算,以确定相应的所述其他节点的所述软件的当前状态是否为安全状态。
26.如权利要求25所述的安全验证方法,其特征在于,所述安全验证步骤进一步:
将欲验证的所述软件/所述第二哈希值与备份存储的所述软件/所述第一哈希值进行比对,如果它们一致,则确定所述其他节点的所述软件的当前状态为安全状态。
27.如权利要求23所述的安全验证方法,其特征在于,还包括数字签名生成步骤:
对所述节点的在当前状态下的所述软件采用相应的私钥进行签名以得到对应该软件的所述软件数字签名,和/或
对所述节点的在当前状态下的所述软件进行哈希计算并得到该节点的当前的第二哈希值,采用相应的私钥进行签名以得到对应该第二哈希值的所述哈希值数字签名;以及
数字签名广播步骤:向所述网络中的其他节点广播所述软件数字签名和/或所述哈希值数字签名。
28.如权利要求23所述的安全验证方法,其特征在于,还包括副本广播步骤:将所述节点配置的安全状态下的至少部分所述软件或其对应的第一哈希值以副本形式广播至所述网络的至少一个所述其他节点中。
29.如权利要求23所述的安全验证方法,其特征在于,多个所述其他节点的所述受保护的软件在所述节点中使用区块链方式按区块地分布存储在所述节点的区块中。
30.如权利要求29所述的安全验证方法,其特征在于,所述备份存储步骤进一步:
使用区块链方式将所述网络中的M个所述其他节点的在安全状态下的至少部分所述软件分别备份存储在某一初始区块的N个后续区块中,其中M与N均为大于或等于1的整数,且N大于或等于M。
31.如权利要求30所述的安全验证方法,其特征在于,所述备份存储步骤进一步:
在所述其他节点的所述受保护的软件被更新后,采用X个备用区块将更新后的所述软件备份存储,并且,所述备用区块作为第(N+1)至第(N+X)个后续区块,X为大于或等于1的整数。
32.如权利要求30或31所述的安全验证方法,其特征在于,当前的所述后续区块还备份存储其前一个区块所对应的所述哈希区域的第三哈希值,其中,所述第三哈希值用于该当前的后续区块的前一个区块的安全校验。
33.如权利要求27所述的安全验证方法,其特征在于,还包括:
随机因子生成及广播步骤:生成随机因子并向所述网络中的其他节点广播;
其中,所述数字签名生成步骤进一步:
对其所处的所述节点的在当前状态下的所述软件以及接收的其他节点所广播的随机因子采用相应的私钥进行签名以得到对应该软件的所述软件数字签名,和/或
对其所处的所述节点的在当前状态下的所述软件以及接收的其他节点所广播的随机因子一起进行哈希计算并得到该节点的当前的第二哈希值,采用相应的私钥进行签名以得到对应该第二哈希值的所述哈希值数字签名。
34.如权利要求33所述的安全验证方法,其特征在于,所述安全验证步骤进一步:
结合利用接收的其他节点所广播的随机因子以及备份存储的至少部分所述软件和/或所述第一哈希值,对相应的所述其他节点的当前状态下的所述软件进行校验计算,从而确定该其他节点的所述软件的当前状态是否为安全状态。
35.如权利要求34所述的安全验证方法,其特征在于,所述随机因子是针对备份存储的所述其他节点的所述软件的存储区域生成的排除地址。
36.如权利要求35所述的安全验证方法,其特征在于,在所述数字签名生成步骤中,签名处理或哈希计算的所述节点的所述软件为除所述排除地址之外的区域所存储的剩余部分所述软件,其中该排除地址是所述其他节点对所述节点而生成的排除地址并从所述其他节点接收;
在所述安全验证步骤中,签名处理或哈希计算的备份存储的其他节点的所述软件为除相应的排除地址之外的区域所存储的剩余部分所述软件,其中该排除地址包括所述节点对应所述其他节点而生成的排除地址。
37.如权利要求34所述的安全验证方法,其特征在于,广播的所述随机因子是随机数;
其中,所述数字签名生成步骤和所述安全验证步骤中处理的随机因子是对包括从所述其他节点同时接收的随机数进行合并处理或求和处理后得到的随机数值。
38.如权利要求37所述的安全验证方法,其特征在于,在所述安全验证步骤中,签名处理或哈希计算的备份存储的其他节点的所述软件为添加或***对应于所述随机数值的所述软件。
39.如权利要求23所述的安全验证方法,其特征在于,还包括:
软件恢复步骤:在确定所述其他节点的所述软件的当前状态是非安全状态时从所述节点生成恢复指令,从而使用对应该其他节点备份存储的在安全状态下的至少部分所述软件将该其他节点的所述软件恢复至安全状态。
40.如权利要求23所述的安全验证方法,其特征在于,所述安全验证步骤进一步:在确定所述其他节点的所述软件的当前状态为安全状态的情况下将所述其他节点添加至信任节点列表中、在确定所述其他节点的所述软件的当前状态是非安全状态的情况下将所述其他节点从信任节点列表中移除。
41.一种具有计算功能的节点,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求23-40中任一项所述安全验证方法的步骤。
42.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序能够被处理器执行以实现如权利要求23-40中任一项所述安全验证方法的步骤。
CN201810884142.7A 2018-08-06 2018-08-06 具有计算功能的节点、安全验证网络和安全验证方法 Pending CN108881303A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810884142.7A CN108881303A (zh) 2018-08-06 2018-08-06 具有计算功能的节点、安全验证网络和安全验证方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810884142.7A CN108881303A (zh) 2018-08-06 2018-08-06 具有计算功能的节点、安全验证网络和安全验证方法

Publications (1)

Publication Number Publication Date
CN108881303A true CN108881303A (zh) 2018-11-23

Family

ID=64308013

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810884142.7A Pending CN108881303A (zh) 2018-08-06 2018-08-06 具有计算功能的节点、安全验证网络和安全验证方法

Country Status (1)

Country Link
CN (1) CN108881303A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110225044A (zh) * 2019-06-17 2019-09-10 北京艾摩瑞策科技有限公司 在区块链上的验证方法及装置
CN112242903A (zh) * 2019-07-18 2021-01-19 英飞凌科技股份有限公司 混合设备以及针对混合设备执行安全引导过程的方法
CN112585930A (zh) * 2020-09-11 2021-03-30 华为技术有限公司 数据存储的方法、装置以及***
CN112740210A (zh) * 2020-09-30 2021-04-30 华为技术有限公司 验证车辆中电子设备软件安全性的方法及相关设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6295557B1 (en) * 1998-06-30 2001-09-25 Cisco Technology, Inc. Apparatus for simulating internet traffic
CN101236496A (zh) * 2007-01-29 2008-08-06 展讯通信(上海)有限公司 一种软件一致性检测方法和装置
CN101783801A (zh) * 2010-01-29 2010-07-21 福建星网锐捷网络有限公司 一种基于网络的软件保护方法、客户端及服务器
CN106484457A (zh) * 2015-08-25 2017-03-08 福特全球技术公司 多阶段的安全的车辆软件更新
CN106796524A (zh) * 2016-12-27 2017-05-31 深圳前海达闼云端智能科技有限公司 记录应用程序配置信息的方法、装置和电子设备
CN107077557A (zh) * 2016-12-29 2017-08-18 深圳前海达闼云端智能科技有限公司 软件应用程序发布和验证的方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6295557B1 (en) * 1998-06-30 2001-09-25 Cisco Technology, Inc. Apparatus for simulating internet traffic
CN101236496A (zh) * 2007-01-29 2008-08-06 展讯通信(上海)有限公司 一种软件一致性检测方法和装置
CN101783801A (zh) * 2010-01-29 2010-07-21 福建星网锐捷网络有限公司 一种基于网络的软件保护方法、客户端及服务器
CN106484457A (zh) * 2015-08-25 2017-03-08 福特全球技术公司 多阶段的安全的车辆软件更新
CN106796524A (zh) * 2016-12-27 2017-05-31 深圳前海达闼云端智能科技有限公司 记录应用程序配置信息的方法、装置和电子设备
CN107077557A (zh) * 2016-12-29 2017-08-18 深圳前海达闼云端智能科技有限公司 软件应用程序发布和验证的方法及装置

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110225044A (zh) * 2019-06-17 2019-09-10 北京艾摩瑞策科技有限公司 在区块链上的验证方法及装置
CN110225044B (zh) * 2019-06-17 2020-11-27 北京瑞策科技有限公司 在区块链上的验证方法及装置
CN112242903A (zh) * 2019-07-18 2021-01-19 英飞凌科技股份有限公司 混合设备以及针对混合设备执行安全引导过程的方法
CN112242903B (zh) * 2019-07-18 2023-12-15 英飞凌科技股份有限公司 混合设备以及针对混合设备执行安全引导过程的方法
CN112585930A (zh) * 2020-09-11 2021-03-30 华为技术有限公司 数据存储的方法、装置以及***
CN112740210A (zh) * 2020-09-30 2021-04-30 华为技术有限公司 验证车辆中电子设备软件安全性的方法及相关设备
WO2022067731A1 (en) * 2020-09-30 2022-04-07 Huawei Technologies Co., Ltd. Method for verifying software security of electronic device(s) in vehicle and related device

Similar Documents

Publication Publication Date Title
CN108881303A (zh) 具有计算功能的节点、安全验证网络和安全验证方法
JP3256427B2 (ja) 順向性、ロバスト及び回復可能な分散しきい値秘密共有を有する公開キー暗号システム及びその方法
JP4638912B2 (ja) ディストリビューションcdを使用した、署名されたグループにおけるダイレクトプルーフの秘密鍵を装置に伝達する方法
Chaum Computer Systems established, maintained and trusted by mutually suspicious groups
CN100432889C (zh) 提供断开鉴别的***和方法
US20080025514A1 (en) Systems And Methods For Root Certificate Update
EP3410633B1 (en) Device and system with global tamper resistance
US20100080391A1 (en) Auditing Data Integrity
CN111971929B (zh) 安全分布式密钥管理***
US11588631B2 (en) Systems and methods for blockchain-based automatic key generation
CN109446831B (zh) 基于硬件装置的密钥生成和验证方法及***
CN113254407B (zh) 基于区块链的招投标文件存储方法、***、介质和设备
Xu et al. Redactable blockchain-based secure and accountable data management
Schleiffer et al. Secure key management-a key feature for modern vehicle electronics
US11341217B1 (en) Enhancing obfuscation of digital content through use of linear error correction codes
Kent et al. Assuring vehicle update integrity using asymmetric public key infrastructure (PKI) and public key cryptography (PKC)
CN112631836A (zh) 用于区块链的方法、装置、存储介质及电子设备
Razaque et al. Secure data sharing in multi-clouds
Yu et al. How to detect unauthorised usage of a key.
CN115664801A (zh) 一种基于区块链的分布式数字身份管理认证方法及***
Zou et al. Dynamic provable data possession based on ranked Merkle hash tree
CN111881474B (zh) 基于可信计算环境的私钥管理方法和装置
CN115380502A (zh) 从备份存储器中恢复分布式密钥
CN112465501A (zh) 基于区块链的版权存证及侵权行为自动取证的方法及***
JP3711821B2 (ja) 素数生成方法及び装置及び素数生成プログラムを格納した記憶媒体

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20181123

RJ01 Rejection of invention patent application after publication