CN113330765A - 安全上下文分发服务 - Google Patents

安全上下文分发服务 Download PDF

Info

Publication number
CN113330765A
CN113330765A CN202080010430.5A CN202080010430A CN113330765A CN 113330765 A CN113330765 A CN 113330765A CN 202080010430 A CN202080010430 A CN 202080010430A CN 113330765 A CN113330765 A CN 113330765A
Authority
CN
China
Prior art keywords
distribution service
security context
request
response message
security
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
CN202080010430.5A
Other languages
English (en)
Inventor
V.丹尼尔钦科
D.科恩
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.)
Schneider Electric USA Inc
Original Assignee
Schneider Electric USA Inc
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 Schneider Electric USA Inc filed Critical Schneider Electric USA Inc
Publication of CN113330765A publication Critical patent/CN113330765A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • H04W12/069Authentication using certificates or pre-shared keys
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • H04L9/3268Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]
    • 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/0435Network 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 symmetric encryption, i.e. same key used for encryption and decryption
    • 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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/062Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • 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/321Cryptographic 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 a third party or a trusted authority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic 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 challenge-response
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/03Protecting confidentiality, e.g. by encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • H04W12/043Key management, e.g. using generic bootstrapping architecture [GBA] using a trusted network node as an anchor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/10Integrity
    • H04W12/108Source integrity

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)
  • Computer And Data Communications (AREA)

Abstract

提供了使用安全上下文分发服务为设备配置安全上下文的技术。一个实施例从在第一网络上操作的第一设备接收对第一设备的安全上下文的请求,其中该请求包括第一设备的公共证书。该请求被解密,该公共证书被验证。基于第一设备的唯一标识符和与第一设备相关联的设备声明信息来确定一组设备要求。实施例基于该组设备要求生成包含与第一网络相关联的至少一个传输层安全(TLS)证书的响应消息,其中使用与第一设备相关联的公钥对响应消息进行加密。响应消息被传输到第一设备。

Description

安全上下文分发服务
技术领域
本公开涉及计算机网络,并且更具体地,涉及用于具有适当安全上下文的自动设备在特定数据通信网络内操作的安全上下文分发服务。
背景技术
物联网(Internet of Things,IoT)有望大规模地将设备和系统互联在一起。这种融合允许这些元件之间的交互和协作,以完成一个或多个特定任务。这样的任务可能根据应用的上下文和环境而不同。例如,任务的范围可以从感测和监测环境特性(诸如,单个房间的温度或湿度)到控制和优化整个建筑物或设施,以实现更大的目标(诸如,能源管理策略)。在各种环境中,保护由这些IoT设备交易的数据非常有益。
IoT设备通常在其计算资源(诸如,存储、CPU和/或存储器)方面受到限制。即使这些设备不受资源限制,避免将IoT设备管理集成到更大的环境中的复杂性和管理开销也可能是有益的。这种设备也可以放置在各种连接环境中,如果没有附加的配置,这可能会使传统的云连接出现问题。虽然传统解决方案允许手动配置这些IoT设备,但这种手动配置效率低下,在处理许多IoT设备时可能不切实际。因此,对于通常不适用于传统计算设备和系统的IoT设备存在安全挑战。
附图说明
上文简要概述的本公开的更详细描述可通过参考各种实施例来获得,其中一些实施例在附图中示出。虽然附图示出了本公开的选定实施例,但是这些附图不应被认为是对其范围的限制,因为本公开可以允许其他同等有效的实施例。
图1示出了根据本文描述的一个实施例的、用于促进安全上下文分发服务(Security Context Distribution Service,SCDS)的系统的各方面。
图2示出了根据本文描述的一个实施例的、包括连接到SCDS的不同类型设备的系统。
图3A-图3B示出了根据本文描述的实施例的、SCDS的各种连接元件的示例性部署。
图4A-图4B示出了根据本文描述的实施例的、显示设备自定义的各种状态的框图。
图5A-图5B示出了根据本文描述的实施例的证书管理生命周期图。
图6A-图6B示出了根据本文描述的实施例的用于执行SCDS的各种操作的序列图。
图7是示出根据本文描述的一个实施例的操作安全上下文分发服务以用安全证书配置设备的方法的流程图。
图8是示出根据本文描述的一个实施例的利用网络的安全证书自动配置网络上的设备的方法的流程图。
图9是示出根据本文描述的一个实施例的操作安全上下文分发服务以用安全证书配置设备的方法的流程图。
图10是示出根据本文描述的一个实施例的利用网络的安全证书自动配置网络上的设备的方法的流程图。
图11示出了根据本文描述的一个实施例的通用计算机系统的框图。
图12示出了根据图11的通用计算机系统的通用存储系统的框图。
在可能的情况下,使用相同的附图标记来表示附图中相同的元件。然而,在一个实施例中公开的元件可以有益地用于其他实施例,而无需具体叙述。
发明内容
本文描述的一个实施例提供了一种方法,该方法包括在安全上下文分发服务处从在第一网络上操作的第一设备接收对第一设备的安全上下文的请求,其中该请求使用在第一设备上预先配置的私钥来签名,并且其中该请求使用与安全上下文分发服务相关联的公钥来加密。该方法还包括解密该请求和验证请求签名。另外,该方法包括基于第一设备的唯一标识符和与第一设备相关联的设备声明信息来确定一组设备要求。该方法还包括基于该组设备要求生成包含与第一网络相关联的至少一个传输层安全(Transport LayerSecurity,TLS)证书的响应消息,其中该响应消息使用与第一设备相关联的公钥加密,并使用与安全上下文分发服务相关联的私钥签名。该方法包括向第一设备传输响应消息。预期的附加实施例包括系统和包含计算机程序代码的非暂时性计算机可读介质,当计算机程序代码由一个或多个计算机处理器执行时,执行上述方法。
本文描述的另一实施例提供了一种设备,该设备包括一个或多个计算机处理器和包含计算机程序代码的存储器,当该计算机程序代码被一个或多个计算机处理器的操作执行时,执行操作。该操作包括启动操作以利用与第一网络相关联的安全证书来配置设备。此外,该操作包括检索被预先配置在设备上的私钥。该操作包括生成对该设备的安全上下文的请求,其中使用私钥对该请求进行签名,并且其中使用与安全上下文分发服务相关联的公钥对该请求进行加密。该操作还包括向安全上下文分发服务传输请求,其中安全上下文分发服务被配置为解密请求消息并验证请求消息的签名。此外,该操作包括从安全上下文分发服务接收响应消息,其中该响应消息包含与第一网络相关联的至少一个传输层安全(TLS)证书,其中该安全上下文分发服务被配置为使用与该安全上下文分发服务相关联的私钥来对该响应消息进行签名,并且其中该安全上下文分发服务被配置为使用与该设备相关联的公钥来加密该响应消息。在使用被预先配置在设备上的私钥来解密响应消息并验证响应消息的签名时,操作包括将设备配置为使用接收到的TLS证书。预期的附加实施例包括系统和包含计算机程序代码的非暂时性计算机可读介质,当由一个或多个计算机处理器执行时,该计算机程序代码执行上述操作以及作为方法执行的操作。
本文描述的另一实施例提供了包含计算机程序代码的非暂时性计算机可读介质,当由一个或多个计算机处理器的操作执行时,该计算机程序代码执行操作。该操作包括在安全上下文分发服务处从在第一网络上操作的第一设备接收对第一设备的安全上下文的请求,其中该请求是使用安全上下文分发服务的公钥加密的。该操作还包括使用与安全上下文分发服务相关联的私钥来解密接收到的请求。另外,该操作包括基于第一设备的唯一标识符和与第一设备相关联的设备声明信息来确定一组设备要求。该操作还包括基于该组设备要求,生成包含与第一网络相关联的至少一个传输层安全(TLS)证书的响应消息,其中使用与安全上下文分发服务相关联的私钥对响应消息进行签名,并将响应消息传输到第一设备。预期的附加实施例包括系统和包含计算机程序代码的设备,当由一个或多个计算机处理器执行时,该计算机程序代码执行上述操作以及作为方法执行的操作。
本文提供的另一实施例提供了一种设备,该设备包括一个或多个计算机处理器和包含计算机程序代码的存储器,当该计算机程序代码由一个或多个计算机处理器的操作执行时,执行操作。该操作包括启动操作以利用与第一网络相关联的安全证书来配置设备。此外,该操作包括检索与安全上下文分发服务相关联的公钥,并为第一设备生成对安全上下文的请求,其中使用与安全上下文分发服务相关联的公钥对该请求进行加密。该操作还包括向安全上下文分发服务传输请求,其中安全上下文分发服务被配置为解密请求消息,并且随后从安全上下文分发服务接收响应消息,其中响应消息包含与第一网络相关联的至少一个传输层安全(TLS)证书,并且其中安全上下文分发服务被配置为使用与安全上下文分发服务相关联的私钥对响应消息进行签名。一旦验证了响应消息的签名,操作包括将第一设备配置为使用接收到的TLS证书。
具体实施方式
在物联网(IoT)或更广泛的网络实体系统(Cyber Physical Systems,CPS)的新兴世界中,多种技术的融合正在进行,以允许来自大量连接的元件、设备和/或组件的感测、激励、数据捕获、存储和/或处理,这些元件、设备和/或组件可以是实体的、虚拟的和/或两者的混合组合。可以使用现有网络基础设施远程访问这些连接的元件,以实现高效的机器对机器(Machine to Machine,M2M)和人对机器(Human to Machine,H2M)通信。作为这种通信的结果,并且随着连接元件的网络随时间变化,将产生来自这些连接元件的越来越多的数据,允许以前不可能的相关性。保护与这些动态的连接元件集及其提供的解决方案相关联的数据是一项重大挑战。
使这一挑战变得复杂的是IoT设备在各种环境上下文中的渗透,例如终端用户、企业和/或行业。随着IoT计算设备迅速变得更加可用和被使用,不适当保护的IoT设备成为危害有价值数据和相关联基础设施的极具吸引力的目标。数据盗窃、僵尸网络的产生、有价值信息的盗窃、经由连接的IoT设备对基础设施的攻击仍然是一个问题。应当理解,并非所有IoT设备都直接消费或提供数据服务,但那些消费或提供数据服务的设备,包括IoT网关和边缘设备,容易受到数据安全问题的影响。
IoT设备通常在其计算资源方面受到限制,诸如存储、CPU和/或存储器。即使这些设备不受资源限制,避免将IoT设备管理集成到更大的环境中的复杂性和管理开销也可能是有益的。这种设备也可以放置在各种连接上下文中,如果没有附加的配置,这可能会使传统的云连接出现问题。因此,对于IoT设备存在安全挑战,其通常不适用于传统的计算设备和系统,诸如膝上型计算机系统、桌上型计算机系统、具有允许大规模部署安全信息的软件的服务器等。这一挑战包括安全部署设备,而不需要手动调试过程。
设备也可以放置在各种连接性环境中,诸如传输层安全(TLS)检查和/或加密数据包检查。如果没有通常经由企业信息技术(Information Technology,IT)管理进行部署的附加的配置,这种连接性环境可能会使传统的云连接性出现问题。使用诸如TLS检查之类的安全措施正变得越来越普遍。总的来说,这些问题对于通常不适用于传统计算设备和系统的IoT设备提出了安全挑战,并且在如何将后续操作和服务消费所需的安全上下文部署到IoT设备而不需要每个设备的手动调试过程方面提出了技术挑战。
本文描述的实施例通过为设备(例如,IoT设备、工业IoT(Industrial Internetof Things,IIoT)设备等)提供必要的安全上下文来对该安全挑战提供解决方案,这使得设备能够进行后续的安全数据通信。该过程可被称为“安全引导”,因为当该过程被激活时,例如在IoT设备的引导过程期间,详细的安全性被启用。此过程可能包括用于启用TLS检查的TLS证书颁发机构(Certificate Authority,CA)证书,以及诸如服务端点的其他公共安全配置和诸如安全令牌的私有安全配置。本文描述的实施例也可以应用于IoT设备供应商,该IoT设备供应商希望向多个客户提供相同类型的IoT设备并且需要一种机制来部署到他们制造的IoT设备或者配置特定于给定客户、租户、站点或者甚至设备的自定义安全上下文,而无需在制造或工厂配置时间确定和安装该安全上下文,并且不需要在调试时间手动部署该安全上下文。本文描述的实施例提供了用于创建安全通道以从远程服务器向IoT设备安全地传递和/或接收信息的技术,并且可以用于许多目的,包括向IoT设备传递代理配置信息。
IoT系统和应用示例包括但不限于:(1)管理HVAC系统,以确保设施居住者的舒适性,(2)为存储或居住者维护特定的环境空气质量(可能包括温度、湿度和二氧化碳含量),并根据主要天气条件动态调整工作建筑物环境,(3)通过主动控制照明、加热和冷却来控制和优化能耗,从而管理设施管理,以及(4)监测日常运行、维护和监督设施运行。这种应用的商业实施例可以是建筑物管理或自动化系统的一部分。
应当理解,本文描述的系统在配置和/或最终用户应用方面有助于显著的灵活性,并且尽管描述了几个示例,但是替代实施例配置和应用也是可能的。这些系统和方法的实施例可以由本质上相对非技术性的个人来执行,并且需要丰富的交互体验,这隐藏了安全问题的复杂性。本文包含的各种实施例的优点允许用于部署IoT设备的交钥匙安全解决方案,而不需要大量的安装后配置。
当IoT设备首次安装并连接到网络时,本地IP地址和代理信息的初始获取可以通过例如动态主机配置协议(Dynamic Host Configuration Protocol,DHCP)和/或域名系统(Domain Name System,DNS)协议以及网络代理自动发现(Web Proxy Auto Discovery,WPAD)协议来实现。将设备连接到其用来运行的网络IoT服务所需的后续手动调试量降至最低是有益的。然而,如果设备被安装在本地网络上,并通过TLS检查代理与网络隔离,则最初尝试联系任何TLS加密的网络服务可能无法按预期运行。在这种情况下,由设备接收并由TLS检查代理出示的证书可以由专用于该代理、站点和/或代理供应商的私有证书颁发机构颁发。下面的示例1示出了这种证书的“主体”和“发行者”属性可能包括的内容。
$openssl x509-in test.com.cer-subject-issuer-noout
issuer=/C=US/ST=California/O=Zscaler Inc./OU=Zscaler\
Inc./CN=Zscaler Intermediate Root CA(zscaler.net)\
/emailAddress=support@zscaler.com
subject=/OU=Domain Control Validated/OU=nsProtect Secure\
Xpress/CN=www.test.com
示例1–证书颁发机构证书
在此示例中,所提供证书的“颁发者”属性是指特定于特定代理供应商(在描述的例子中,ZScaler)的证书颁发机构(CA)证书。相关的CA证书不被认为是公钥基础设施(Public Key Infrastructure,PKI)的一部分,也不与PKI CA库一起分发。由此产生的问题是如何在设备上安装代理CA证书作为授权CA。传统上,这个问题是通过手动调试步骤来解决的,其中调试操作员连接到设备(例如本地应用程序),并将必要的CA添加到安装在设备上的授权CA列表中。然而,这种类型的手动配置扩展性差,并且在配置多个设备而不增加大量成本和工作量的情况下存在技术挑战。一旦安装了代理CA,网络服务消费就像设备与代理建立TLS会话时一样正常进行,代理打开TLS分组,并通过第二TLS会话将它们转发到它们的预期目的地。
图1示出了根据本公开的各种实施例的用于促进SCDS的系统。利用SCDS 125的系统可以包括一个或多个通用计算机110、一个或多个数据存储阵列130、云计算环境120、包含一个或多个连接元件(未示出)的建筑物或其他结构140、以及允许在系统的这些部分之间交换数据的网络连接150。
在图1所示的系统的一个实施例中,建筑物140包含一个或多个连接的元件、组件、设备和/或激励组件,这些元件、组件、设备和/或激励组件是实体的、虚拟的或两者的混合,它们执行感测、激励、数据捕获、存储或处理,以用于建筑物140的监测或控制或管理。任何种类的连接元件都可用于捕获、存储或处理数据,或通过网络连接150激励关联设备,到云计算环境120,到系统的其他部分。这些连接元件可以例如检测温度、湿度、环境光、声音、烟雾、一氧化碳、二氧化碳、运动、非导电流体、导电流体、振动、能量、功率、电压、电流或任何其他期望的特性及其组合。连接元件还可以操作或铰接元件、组件和/或其他系统,诸如开灯、打开门或窗、移动窗帘或触发门锁。连接元件还可以处理来自其他连接元件的数据结构,或者将数据结构从一个或多个连接元件传播到一个或多个其他连接元件。可以以任何组合部署任何数量的连接元件来监测或管理实体空间。这种空间的示例可以包括壁橱、房间、建筑物、校园、办公室、散步场所或任何其他期望的位置。
包含连接元件的一个或多个建筑物140可以最终通过网络连接150连接到云计算环境120。该连接允许能够以有线或无线连接方式连接到云计算环境120的各种设备访问云计算环境120。从图1中,这样的设备可以包括能够接收来自用户的输入或者提供自主操作的一个或多个通用计算机110。一个或多个数据存储阵列130可用于提供附加的数据存储能力。应当理解,云计算环境120虽然向附加的元件或系统提供附加的通信路径,但是不需要作为语义搜索方法的一部分。一些其他实施例考虑自包含或独立的系统。
网络连接150可以是有线或无线连接类型。这种连接可以包括但不限于任何实体布线方法,诸如5类电缆、同轴电缆、光纤、铜缆、双绞线或传播电信号的任何其他实体介质。无线连接可以包括但不限于个人区域网(personal area networks,PAN)、局域网(localarea networks,LAN)、Wi-Fi、蓝牙、蜂窝、全球或基于空间的通信网络。云环境120和任何其他云环境之间的访问是可能的。在其他实施方式中,这些其他云环境被配置为与类似于云环境的设备连接,诸如现有云环境120。应当理解,图1所示的计算设备仅旨在说明,并且计算节点和云计算环境可以通过具有可寻址或直接连接的任何类型的网络与任何类型的计算机化设备通信。
SCDS 125可以包含图1中的元件细节,可以包括更多或更少的这些元件,或者可以位于建筑物140中(或者,例如,一系列建筑物)。SCDS 125可以是实体的、虚拟的或两者的混合组合。对SCDS 125的组成、位置或组织没有暗示限制。
图2示出了可以实施的根据本公开的各种实施例的、不同类型的设备如何连接到SCDS。在图2的一个实施例中,建筑物140包含一种或多种类型的连接元件210、220、230、240以用于监测或管理该结构。这些连接元件210、220、230、240经由有线网络250或无线网络260通信,并且使得来自每个连接的元件的数据结构经由网络连接150可用于SCDS 125和/或云环境120。
任何种类的连接元件可用于通过网络连接150到SCDS 125、云计算环境120、系统的其他部分来执行感测、激励、数据捕获、存储或处理。例如,连接元件可以是测量二氧化碳210的连接传感器以用于监测建筑物140的空气质量,并经由有线网络连接250进行通信。连接元件可以是检测环境光的连接的传感器,也可以是改变居住者照明器材的状态并经由有线网络连接250通信的激励器220。连接元件可以是针对温度和湿度的连接的传感器230以监测建筑物140的环境并经由无线网络连接260进行通信。最后,连接元件240充当连接的网关,以经由它们各自的网络连接250、260与相关联的连接元件210、220、230通信,处理每个连接的数据结构,并且将其传输到网络连接150以传输到云环境120。应当理解,云计算环境120虽然向附加设备或系统提供附加通信路径,但是不需要作为语义搜索方法的一部分。其他实施例考虑自包含或独立的系统。
为了利用本公开的实施例,这些连接元件不需要在地理上定位或以任何方式逻辑分组。在地理上或逻辑上对连接元件进行分组允许更经济地使用。可以实现诸如公寓、住宅或办公楼中的地理分组,以及通过功能逻辑定位连接元件。许多逻辑分组示例中的一个可以是将设计用于感测温度的连接端点定位在占用位置附近,以检测环境的变化。应当理解,连接端点的分组也可以位于非常大的地理范围内,甚至全球范围内。此类全球运营可通过位于全球任意数量设施的网络进行监测。
图3A示出了其中可以实施本公开的各种实施例的SCDS的各种连接元件的示例性部署。示出了“北”建筑物310和“西”建筑物320。每栋建筑物都有与各自相关联的(3)楼。北楼层(1)312、北楼层(2)314、北楼层(3)316包含在北建筑物310内。西楼层(1)322、西楼层(2)324和西楼层(3)326包含在西建筑物320内。每个楼层都有(3)个不同类型的连接元件。例如,连接元件可以是测量二氧化碳330、332、334、360、362、364的连接传感器以用于分别监测建筑物310、320的空气质量,并经由有线网络连接进行通信。连接元件可以是用于检测环境光的连接的传感器,也可以是用于改变居住者照明器材的状态并经由有线网络连接进行通信的激励器340、342、344、370、372、374。连接元件可以是针对温度和湿度的连接的传感器350、352、354、380、382、384,以分别监测建筑物310、320的环境,并经由无线网络连接进行通信。如图所示,SCDS 125连接到系统,以向连接元件提供语义查询和操作规则,从而实现系统上的改变。
图3B示出了图3A的SCDS的各种实体位置上的连接元件的示例性部署,其中可以实施本公开的各种实施例。在每栋建筑物的每一楼层内,存在多个连接元件。作为示例,温度和湿度连接元件350、352、354、380、382、384,二氧化碳连接元件330、332、334、360、362、364以及环境光连接元件340、342、344、370、372、374存在于每栋建筑物的每一楼层上。此外,每个连接元件可以存在于每栋建筑物的每一楼层的不同区域中。作为许多示例中的一个,总楼层平面图390可以指示被定义为“区域1”392、“区域2”394和“区域3”396的区域。应当理解,这种指定可由用户或其他系统高度配置,并且在此仅出于说明的目的而示出。
给定图3A和图3B所示的连接元件配置,每个连接元件拥有包括但不限于传感器特定信息(温度/湿度、二氧化碳和环境光)、地理信息(区域、楼层、建筑物)和网络信息(MAC地址、IP地址、有线、无线)的数据结构。其他连接元件信息以及与连接元件本身的操作相关的信息也是可用的。作为一个示例,在线或离线状态可用于进一步增加每个连接元件的数据结构。
图4A示出了根据本公开的各种实施例的、自定义之前的设备的示例框图。本公开的实施例考虑了在自定义之前包括互连模型410形式的几个硬件和/或软件模块的设备400,互连模型410用于为本公开的益处提供必要的灵活性。
预自定义设备400可以至少具有实体硬件层。应当理解,在一些实施例中,该硬件本质上可以是虚拟的。这种硬件代表设备400的操作系统在其上交互以提供设备本身的期望功能的基础。
也可以利用各种开放系统互连(Open Systems Interconnection,OSI)层,并且包含诸如用于定义设备400本身的特性(例如,温度传感器)和/或提供必要的功能性来执行其设计的功能的功能性。这种功能的一个示例可以是引导加载器,其中这种层对于允许将自定义配置以及诸如设备固件之类的基础加载到设备400上是必要的。以这种方式,设备400可以具有一组硬件或类似的能力,但是可以基于可用的动态自定义来使用,因为任何设备400都利用设备400可用的可用资源。
应当理解,该预自定义设备400虽然在一些环境中起作用,但是在被本公开的系统和方法转换成配置的设备之前,可能能够或可能不能在安全环境中操作。
图4B示出了根据本公开的各种实施例的自定义之后的设备的示例框图。一旦针对设备400完成了本文描述的动态自定义过程,就发生了包含特定安全引导证书(SecurityBootstrap Certificate,SBC))430层的转换。该层可以在部署时在环境中动态配置,以允许特定应用的最大灵活性。以这种方式,预先配置的设备400被转换成具有安全能力的设备420,否则该设备400在没有手动配置的情况下将不能在安全环境中使用。此外,这种设备可以被部署到环境中,并根据需要被重新部署到不同的环境中,而不需要手动配置和重新配置设备。
图5A示出了SCDS的实施例的证书管理生命周期图的实施例,图5B示出了SCDS的实施例的证书使用生命周期图的实施例。SCDS过程的公共证书可以在OSI堆栈的应用层生成和使用。这样的证书可能不需要是SCDS用于公开TLS服务端点的证书。此外,在制造或工厂配置时,与证书存储在设备上相关的证书的真实性被验证给客户端设备。因此,可能不需要经历完整的PKI证书验证过程。但是,可能需要监测证书的有效时间,以确保遵守推荐的证书轮换实践。从这一点来看,使用由私人认证机构签名的SBC是可能的,并且在操作上和经济上都是有利的。即使使用私有CA,客户证书也应该遵循PKI准则,以确保可靠的安全实践。一些实施例支持由私人CA签名的SBC,前提是它为SCDS所知。这些考虑的各种实施例在图5A的生命周期图中示出。
本公开的实施例考虑了如图5A所示的各种SBC轮换因素。利用符合PKI的证书来执行安全引导操作是有益的。也考虑使用其他证书,例如原始公钥。证书可以基于几个因素和各种轮换实践进行轮换。如图5A所示,注意两个关键考虑因素,n和T,可以由业务需求和/或安全策略激励。基于上述特征,一个或多个证书可以在任何给定时间有效,并且在设备制造或工厂配置时,所有当前有效的引导证书可以存储在设备上,使得它们可供使用。
SBC 430可以具有有效的日期范围,在该日期范围之后,SBC 430变得无效。出于安全原因,该有效时间范围可能是有限的。由于SBC 430证书不需要在PKI环境中完全验证,并且可以是自签名的或私人签名的,所以期望SBC 430不同于SCBS服务证书。SCBS可以使用具有重叠有效范围的多个SBC 430。
举例说明,给定某个设备在SCBS证书过期前一天生产,并且配置了存储的SCBS证书,当试图利用SCBS执行CA引导事务时,它将无法完全验证该证书。此外,如果给定的SBC被泄露,则即使一个证书无效、过期和/或被泄露,SCBS和客户端仍应该能够执行CA引导以允许设备的操作。
比证书有效期更频繁地轮换证书并在给定设备上存储多个证书以便设备能够持续稳定地运行可能是有益的。
从图5A和图5B,考虑利用以下考虑的示例:
n:在设备调试时存在的有效证书的最小数量。(n≥1)。
T:在设备制造和设备调试之间允许过期的持续时间。这个变量考虑了供应链和其他非即时的物流和商业运作的实际情况,诸如供应链长度。
v:每个服务证书必须有效的持续时间。在一个实施例中,值v被计算为T*(n+1))。因此,如果T的值为1年并且n=1,则v将是两年(即1*(1+1))。
r:证书刷新之间的持续时间。(r≤T)。
在此示例中,如果n=2且T=1年,则必须生成有效期为3年的SCBS证书,但在1年后进行轮换,使用停用但仍然有效的证书作为后备。所有仍然有效的证书将被存储在客户端设备上,从而准许客户端在现场调试时具有至少一个有效的证书,并允许安全操作。这种在SCBS证书有效期内动态停用部分证书的概念被称为“滚动”SCBS证书。
图6A示出了用于执行SCDS的各种实施例的序列图的实施例。本公开的各种实施例示出了允许在不需要大量安装后配置的情况下部署IoT设备的交钥匙安全解决方案的方法。这可以包括但不限于自定义公共安全上下文(例如,用于TLS检查代理的公共、站点特定的CA证书),自定义公共安全上下文可以被引导到现成的IoT设备上,实现“即插即用”调试。这种自定义可以是每个应用、每个租户和/或每个设备。实施例可以在不安全的通信信道上执行,例如,但不限于,明文HTTP和/或未验证的HTTPS,其基于TLS检查代理的操作是有益的。
本公开的实施例示出了可以触发在客户端设备上的引导的方法。这些包括但不限于:设备的首次引导、每个TLS连接呈现的未知CA、显式应用触发器和/或周期性触发器。
图6A还示出了在客户端上执行引导的本公开的实施例,其中设备可以用至少一个引导服务器证书来制造,所述至少一个引导服务器证书在制造、工厂配置阶段预先配置,和/或一旦安装在环境中就动态地配置。证书在可配置的足够长的持续时间内有效,以解决分发链延迟和其他类似的考虑。这些证书中的一个或多个可以被SCBS服务用作引导证书。设备预安装客户端证书和密钥是有益的。
客户端构建包含设备身份、密码强随机数(例如,GUID)和设备的公共客户端证书的消息。该消息用有效的引导证书中的一个加密。
图6A还示出了本公开的用于在SCBS上执行引导的实施例,其中引导请求消息被接收并利用私钥被解密。然后基于诸如设备ID、租期、自定义CA和/或自定义秘密信息等特性确定设备要求。然后创建包含随机数(防止重放)和/或自定义CA的响应消息。应当理解,基于设备的要求、消息大小和其他因素,可以根据需要包括其他元件。然后用私钥对该响应消息进行签名。
图6B示出了用于在SCDS的各种实施例中声明设备的序列图的实施例。可以利用设备声明信息来确定设备需求确定。设备可以通过分发链进行跟踪来预声明,或者可以由用户使用声明过程来声明,例如但不限于扫描设备QR码。
支持SCBS引导能力受益于维护和轮换一组引导密钥和/或证书。这些可以是一个或多个公钥、公钥证书、私钥、私钥和/或所有这些的混合。如果使用证书,则使这些证书不同于任何服务证书是有益的。如果使用证书,它们可能是自签名的,和/或由私有CA签名的,并且应该有足够的剩余有效期,以使得即使考虑到由于分发链和其他业务驱动因素造成的延迟,客户端也能够拥有一个或多个有效的引导证书。以这种方式,将准许至少一个安全签名事件,并且可以完全实现本文描述的益处或多个轮换密钥和证书。
图7是示出根据本文描述的一个实施例的操作安全上下文分发服务以用安全证书配置设备的方法的流程图。如图所示,方法700开始于框710,其中安全上下文分发服务从第一网络上的第一设备操作接收对第一设备的安全上下文的请求。在本示例中,该请求包括第一设备的公共证书。安全上下文分发服务解密请求并验证请求签名(框715)。
另外,安全上下文分发服务基于第一设备的唯一标识符和与第一设备相关联的设备声明信息来确定一组设备要求(框720)。在所描述的实施例中,安全上下文分发服务然后基于该组设备要求生成包含与第一网络相关联的至少一个传输层安全(TLS)证书的响应消息(框725)。响应消息使用与第一设备相关联的公钥加密,并使用与安全上下文分发服务相关联的私钥签名。安全上下文分发服务向第一设备传输响应消息(框730),并且方法700结束。
图8是示出根据本文描述的一个实施例的、利用网络的安全证书自动配置网络上的设备的方法的流程图。方法800开始于框810,其中设备上的逻辑启动操作以利用与第一网络相关联的安全证书来配置设备。例如,该逻辑可以基于以下各项中的至少一个来确定发起该操作:(i)第一引导操作、(ii)用户命令、(iii)计划的更新和(iv)尝试在设备上建立安全套接字连接。
该逻辑检索在设备上预先配置的私钥(框815)。例如,设备制造商可以在设备制造和初始配置时将私钥存储在设备上的安全存储位置。此外,该逻辑生成对设备的安全上下文的请求,使用私钥对该请求进行签名,并使用与安全上下文分发服务相关联的公钥对该请求进行加密(框820)。在一个实施例中,请求包括设备的唯一标识符。在特定实施例中,该请求包括密码安全随机数。此外,在一个实施例中,用于对请求加密的私钥是制造商在设备上预先配置的多个私钥之一,并且该逻辑被配置为根据轮换调度轮换私钥的使用。
该逻辑将该请求传输到安全上下文分发服务,其中安全上下文分发服务被配置为解密该请求消息并验证该请求消息的签名(框825)。在稍后的某个时间点,该逻辑从安全上下文分发服务接收响应消息(框830)。在所描述的示例中,响应消息包含与第一网络相关联的至少一个传输层安全(TLS)证书。安全上下文分发服务被配置为使用与安全上下文分发服务相关联的私钥对响应消息进行签名,并且还被配置为使用与设备相关联的公钥对响应消息进行加密。在一个实施例中,TLS证书是证书颁发机构(CA)证书。在一个实施例中,响应消息还包含凭证、服务令牌和权限端点数据中的至少一个。在使用设备上预先配置的私钥解密响应消息并验证响应消息的签名后,逻辑将设备配置为使用接收到的TLS证书(框835),并且方法800结束。
图9是示出根据本文描述的一个实施例的、操作安全上下文分发服务以用安全证书配置设备的方法的流程图。如图所示,方法900开始于框910,其中安全上下文分发服务从在第一网络上操作的第一设备接收对第一设备的安全上下文的请求。该请求使用安全上下文分发服务的公钥加密。
安全上下文分发服务使用与安全上下文分发服务相关联的私钥解密接收到的请求(框915),并基于第一设备的唯一标识符和与第一设备相关联的设备声明信息来确定一组设备要求(框920)。然后,安全上下文分发服务基于该组设备要求生成包含与第一网络相关联的至少一个传输层安全(TLS)证书的响应消息,并使用与安全上下文分发服务相关联的私钥对该响应消息进行签名(框925)。安全上下文分发服务向第一设备传输响应消息(框930),并且方法900结束。
图10是示出根据本文描述的一个实施例的、利用网络的安全证书自动配置网络上的设备的方法的流程图。方法1000开始于框1010,其中设备上的逻辑启动操作以利用与第一网络相关联的安全证书来配置设备。该逻辑检索与安全上下文分发服务相关联的公钥(框1015),并为第一设备生成对安全上下文的请求,其中使用与安全上下文分发服务相关联的公钥加密该请求(框1020)。该逻辑将该请求传输到安全上下文分发服务,其中安全上下文分发服务被配置为解密该请求消息(框1025)。
在稍后的某个时间点,逻辑从安全上下文分发服务接收响应消息(框1030)。在本示例中,响应消息包含与第一网络相关联的至少一个传输层安全(TLS)证书,并且安全上下文分发服务被配置为使用与安全上下文分发服务相关联的私钥来对响应消息进行签名。该逻辑验证响应消息的签名,并且在成功验证后,该逻辑配置第一设备使用接收到的TLS证书(框1035),并且方法1000结束。
在本公开的各种实施例中使用的任何通用计算机系统可以是例如通用计算机,诸如基于英特尔PENTIUM型处理器、摩托罗拉PowerPC、太阳UltraSPARC、惠普PA-RISC处理器或任何其他类型的处理器的计算机。
例如,本公开的各种实施例可以被实施为在诸如图11所示的通用计算机系统1100中执行的专用软件。计算机系统1100可以包括连接到一个或多个存储设备1130的处理器1120,诸如磁盘驱动、存储器或用于存储数据的其他设备。存储器1130通常用于在计算机系统1100运行期间存储程序和数据。计算机系统1100还可以包括提供附加存储容量的存储系统1150。计算机系统1100的组件可以通过互连机制1140耦合,互连机制1140可以包括一个或多个总线(例如,集成在同一机器内的组件之间)和/或网络(例如,驻留在分离的分立机器上的组件之间)。互连机制1140使得通信(例如,数据、指令)能够在系统1100的系统组件之间交换。
计算机系统1100还包括一个或多个输入设备1110,例如,键盘、鼠标、轨迹球、麦克风、触摸屏,以及一个或多个输出设备1160,例如打印设备、显示屏、扬声器。此外,计算机系统1100可以包含将计算机系统1100连接到通信网络的一个或多个接口(未示出)(作为互连机制1140的补充或替代)。
在图12中更详细地示出的存储系统1150通常包括计算机可读和可写的非易失性记录介质1210,其中存储了定义由处理器执行的程序或存储在介质1210上或介质1210中由程序处理的信息的信号,以执行与本文描述的实施例相关联的一个或多个功能。该介质例如可以是磁盘或闪存。典型地,在操作中,处理器使得数据从非易失性记录介质1210被读取到另一存储器1220中,这允许处理器比介质1210更快地访问信息。该存储器1220通常是易失性随机存取存储器,诸如动态随机存取存储器(dynamic random-access memory,DRAM)或静态存储器(static memory,SRAM)。如图所示,它可以位于储存系统1200中,或者位于存储器系统1130中。处理器1120通常操纵集成电路存储器1130、1220内的数据,然后在处理完成后将数据复制到介质1210。已知多种机制用于管理介质1210和集成电路存储元件1130、1220之间的数据移动,并且本公开不限于此。本公开不限于特定的存储器系统1130或储存系统1150。
计算机系统可以包括专门编程的专用硬件,例如专用集成电路(application-specific integrated circuit,ASIC)。本公开的各方面可以在软件、硬件或固件或其任意组合中实现。此外,这些方法、动作、系统、系统元件及其组件可以作为上述计算机系统的一部分或作为独立组件来实施。
尽管计算机系统1100通过示例的方式被示为可以在其上实践本公开的各个方面的一种类型的计算机系统,但是应当理解,本公开的各方面不限于在如图12所示的计算机系统上实施。本公开的各个方面可以在具有图12所示的不同架构或组件的一个或多个计算机上实施。此外,在本文(或在权利要求中)将本公开的实施例的功能或过程描述为在处理器或控制器上执行的情况下,这种描述旨在包括使用多于一个处理器或控制器来执行这些功能的系统。
计算机系统1100可以是使用高级计算机编程语言可编程的通用计算机系统。计算机系统1100也可以使用专门编程的专用硬件来实施。在计算机系统1100中,处理器1120通常是商业上可获得的处理器,诸如从英特尔公司获得的众所周知的Pentium类处理器。还有许多其他处理器可用。这样的处理器通常执行操作系统,该操作系统可以是,例如,Windows95、Windows 98、Windows NT、Windows 2000、Windows ME、Windows XP、Vista、Windows 9、Windows 10,或可从微软公司获得的后代操作系统、MAC OS System X,或可从苹果计算机获得的后代操作系统、可从太阳微系统公司获得的Solaris操作系统、UNIX、Linux(任何发行版),或可从各种来源获得的后代操作系统。可以使用许多其他操作系统。
处理器和操作系统共同定义了一个计算机平台,为该计算机平台编写高级编程语言的应用程序。应当理解,本公开的实施例不限于特定的计算机系统平台、处理器、操作系统或网络。此外,对于本领域技术人员来说,显然本公开不限于特定的编程语言或计算机系统。此外,应当理解,也可以使用其他合适的编程语言和其他合适的计算机系统。
计算机系统的一个或多个部分可以分布在耦合到通信网络的一个或多个计算机系统上。例如,如上所述,确定可用功率容量的计算机系统可以远离系统管理器。这些计算机系统也可以是通用计算机系统。例如,本公开的各个方面可以分布在被配置为向一个或多个客户端计算机提供服务(例如,服务器)或者作为分布式系统的一部分执行整体任务的一个或多个计算机系统中。例如,本公开的各个方面可以在客户机-服务器或多层系统上执行,该系统包括分布在一个或多个服务器系统中的组件,这些组件根据本公开的各个实施例执行各种功能。这些组件可以是使用通信协议(例如,TCP/IP)在通信网络(例如,因特网)上通信的可执行代码、中间代码(例如IL)或解释代码(例如Java)。例如,一个或多个数据库服务器可用于存储设备数据,诸如预期功耗,其用于设计与本公开的实施例相关联的布局。
应当理解,本公开不限于在任何特定系统或系统组上执行。此外,应当理解,本公开不限于任何特定的分布式架构、网络或通信协议。
本公开的各种实施例可以使用面向对象的编程语言来编程,诸如SmallTalk、Java、C++、Ada或C#(C-Sharp)。也可以使用其他面向对象的编程语言。或者,可以使用函数式、脚本式和/或逻辑编程语言,诸如BASIC、ForTran、COBoL、TCL或Lua。本公开的各个方面可以在非编程环境中实施(例如,当在浏览器程序的窗口中查看时,以HTML、XML或其他格式创建的文档呈现图形用户界面(GUI)的方面或执行其他功能)。本公开的各个方面可以实施为编程或非编程元件,或者它们的任意组合。
上述系统和方法的实施例通常被描述为用于具有许多装备机架的相对较大的数据中心;然而,本公开的实施例也可以用于较小的数据中心以及数据中心以外的设施。一些实施例也可以是地理上分布的非常少数量的计算机,以不与特定的架构类似。
在上述本公开的实施例中,分析结果被描述为被实时提供。如本领域技术人员所理解的,术语实时的使用并不意味着暗示结果是立即可用的,而是快速可用的,使设计者能够在短时间内,例如几分钟内,尝试许多不同的设计。
因此,已经描述了本公开的至少一个实施例的几个方面,应当理解,本领域技术人员将容易想到各种改变、修改和改进。这种改变、修改和改进旨在成为本公开的一部分,并且旨在在本公开的精神和范围内。因此,前述描述和附图仅作为示例。
在前面,参考了各种实施例。然而,本公开的范围不限于具体描述的实施例。相反,所描述的特征和元件的任何组合,无论是否与不同的实施例相关,都被设想来实现和实践所设想的实施例。此外,尽管实施例可以实现优于其他可能的解决方案或现有技术的优点,但是特定的优点是否由给定的实施例实现并不限制本公开的范围。因此,前述的方面、特征、实施例和优点仅仅是说明性的,并且不被认为是所附权利要求的要素或限制,除非在权利要求中明确陈述。
本文公开的各种实施例可以实施为系统、方法或计算机程序产品。因此,各方面可以采取完全硬件实施例、完全软件实施例(包括固件、常驻软件、微代码等)的形式,或结合软件和硬件方面的实施例,这些方面在本文中通常被称为“电路”、“模块”或“系统”。此外,各方面可以采取包含在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质具有包含在其上的计算机可读程序代码。
可以利用一个或多个计算机可读介质的任何组合。计算机可读介质可以是非暂时性计算机可读介质。非暂时性计算机可读介质可以是例如但不限于电子、磁、光、电磁、红外或半导体系统、装置或设备,或前述的任何合适的组合。非暂时性计算机可读介质的更具体的示例(非穷举列表)可以包括如下:具有一条或多条导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(random access memory,RAM)、只读存储器(read-only memory,ROM)、可擦除可编程只读存储器(EPROM或闪存)、光纤、便携式光盘只读存储器(CD-ROM)、光存储设备、磁存储设备或前述的任何合适的组合。包含在计算机可读介质上的程序代码可以使用任何适当的介质来传输,包括但不限于无线、有线、光纤电缆、RF等,或前述的任何合适的组合。
用于执行本公开各方面的操作的计算机程序代码可以用一种或多种编程语言的任意组合来编写。此外,这种计算机程序代码可以使用单个计算机系统或通过彼此通信的多个计算机系统(例如,使用局域网(local area network,LAN)、广域网(wide areanetwork,WAN)、因特网等)来执行。虽然前面的各种特征是参照流程图和/或框图描述的,但是本领域普通技术人员将理解,流程图和/或框图的每个框以及流程图和/或框图中的框的组合可以由计算机逻辑(例如,计算机程序指令、硬件逻辑、两者的组合等)来实现。通常,计算机程序指令可以被提供给通用计算机、专用计算机或其他可编程数据处理设备的处理器。此外,使用处理器执行这样的计算机程序指令产生了能够执行流程图和/或框图块中指定的功能或动作的机器。
附图中的流程图和框图说明了本公开的各种实施例的可能实现的架构、功能和/或操作。在这点上,流程图或框图中的每个框可以表示模块、代码段或代码部分,其包括用于实现指定逻辑功能的一个或多个可执行指令。还应当注意,在一些替代实施方式中,方框中提到的功能可以不按图中提到的顺序发生。例如,连续示出的两个框实际上可以基本上同时执行,或者这些框有时可以以相反的顺序执行,这取决于所涉及的功能。还将注意到,框图和/或流程图说明的每个框以及框图和/或流程图说明中的框的组合可以由执行指定功能或动作的基于专用硬件的系统或者专用硬件和计算机指令的组合来实现。
应当理解,以上描述旨在说明,而非限制。通过阅读和理解以上描述,许多其他实施例是显而易见的。尽管本公开描述了具体的示例,但是应当认识到,本公开的系统和方法不限于这里描述的示例,而是可以在所附权利要求的范围内进行修改来实施。因此,说明书和附图被认为是说明性的,而不是限制性的。因此,本公开的范围应当参照所附权利要求以及这些权利要求所赋予的等同物的全部范围来确定。

Claims (23)

1.一种方法,包括:
在安全上下文分发服务处,从在第一网络上操作的第一设备接收对第一设备的安全上下文的请求,其中,使用在第一设备上预先配置的私钥对所述请求进行签名,并且其中,使用与所述安全上下文分发服务相关联的公钥加密所述请求;
解密所述请求并验证请求签名;
基于第一设备的唯一标识符和与第一设备相关联的设备声明信息来确定一组设备要求;
基于所述一组设备要求,生成包含与第一网络相关联的至少一个传输层安全TLS证书的响应消息,其中,所述响应消息使用与第一设备相关联的公钥加密,并且使用与所述安全上下文分发服务相关联的私钥签名;以及
向第一设备传输所述响应消息。
2.根据权利要求1所述的方法,其中,所述至少一个传输层安全TLS证书还包括证书颁发机构CA证书。
3.根据权利要求1所述的方法,其中,所生成的响应消息还包含凭证、服务令牌和权限端点中的至少一个。
4.根据权利要求1所述的方法,其中,所述请求还包括所述第一设备的唯一标识符和密码安全随机数。
5.根据权利要求1所述的方法,其中,所述第一设备被预先配置有私钥。
6.根据权利要求5所述的方法,其中,所述私钥存储在所述第一设备上的安全存储位置内。
7.根据权利要求1所述的方法,其中,所述第一设备还被预先配置有多个公钥,包括与所述安全上下文分发服务相关联的公钥,并且其中,所述第一设备被配置为从所述多个公钥中选择与所述安全上下文分发服务相关联的公钥,并且使用所选择的公钥来加密对安全上下文的所述请求。
8.根据权利要求1所述的方法,其中,所述第一设备被配置为基于以下各项中的至少一项来生成和传输对所述安全上下文的请求:(i)第一引导操作、(ii)用户命令、(iii)计划的更新以及(iv)尝试建立安全套接字连接。
9.根据权利要求1所述的方法,其中,生成所述响应消息还包括:
基于(i)第一设备的唯一标识符和(ii)与第一设备相关联的设备声明信息中的至少一个,从包含多个公钥的储存库中检索与第一设备相关联的公钥。
10.根据权利要求1所述的方法,其中,包含与所述安全上下文分发服务相关联的私钥的公钥-私钥对是在所述安全上下文分发服务上预先配置的多个公钥-私钥对中的一个,并且其中,所述安全上下文分发服务被配置为根据轮换计划来轮换所述多个公钥-私钥对中的公钥-私钥对的使用。
11.一种设备,包括:
一个或多个计算机处理器;和
包含计算机程序代码的存储器,当所述计算机程序代码由一个或多个计算机处理器的操作执行时,执行包括以下步骤的操作:
启动操作以利用与第一网络相关联的安全证书来配置所述设备;
检索在所述设备上预先配置的私钥;
生成对所述设备的安全上下文的请求,其中,使用所述私钥对所述请求进行签名,并且其中,使用与安全上下文分发服务相关联的公钥来加密所述请求;
将所述请求传输到所述安全上下文分发服务,其中,所述安全上下文分发服务被配置为解密所述请求消息并验证所述请求消息的签名;
从所述安全上下文分发服务接收响应消息,其中,所述响应消息包含与第一网络相关联的至少一个传输层安全TLS证书,其中,所述安全上下文分发服务被配置为使用与所述安全上下文分发服务相关联的私钥对所述响应消息进行签名,并且其中,所述安全上下文分发服务被配置为使用与所述设备相关联的公钥来加密所述响应消息;以及
在使用设备上预先配置的私钥解密响应消息并验证响应消息的签名后,将所述设备配置为使用接收到的TLS证书。
12.根据权利要求11所述的系统,其中,所述安全上下文分发服务在生成所述响应消息时被配置为基于所述设备的唯一标识符和与所述设备相关联的设备声明信息来确定所述设备的一组设备要求,并且其中,所述安全上下文分发服务被配置为基于所述一组设备要求来生成所述响应消息。
13.根据权利要求11所述的系统,所述操作还包括:
生成密码安全随机数;以及
在生成的安全上下文请求中包括所述密码安全随机数。
14.根据权利要求11所述的系统,其中,所述设备被配置为基于以下各项中的至少一项来生成和传输对所述安全上下文的请求:(i)第一引导操作、(ii)用户命令、(iii)计划的更新以及(iv)尝试建立安全套接字连接。
15.根据权利要求11所述的系统,其中,所述至少一个传输层安全TLS证书还包括证书颁发机构CA证书,并且其中,所述响应消息还包含凭证、服务令牌和权限端点中的至少一个。
16.一种包含计算机程序代码的非暂时性计算机可读介质,当由一个或多个计算机处理器的操作执行时,所述计算机程序代码执行包括以下步骤的操作:
在安全上下文分发服务处,从在第一网络上操作的第一设备接收对第一设备的安全上下文的请求,其中,使用所述安全上下文分发服务的公钥对所述请求进行加密;
使用与所述安全上下文分发服务相关联的私钥解密所接收的请求;
基于第一设备的唯一标识符和与第一设备相关联的设备声明信息来确定一组设备要求;
基于所述一组设备要求,生成包含与第一网络相关联的至少一个传输层安全TLS证书的响应消息,其中,使用与所述安全上下文分发服务相关联的私钥对所述响应消息进行签名;以及
向第一设备传输所述响应消息。
17.根据权利要求16所述的非暂时性计算机可读介质,其中,所述至少一个传输层安全TLS证书还包括证书颁发机构CA证书,并且其中,所述请求还包括第一设备的唯一标识符和密码安全随机数。
18.根据权利要求16所述的非暂时性计算机可读介质,其中,所述第一设备还被预先配置有与所述安全上下文分发服务相关联的公钥,并且其中,所述第一设备被配置为使用与所述安全上下文分发服务相关联的公钥来加密对所述安全上下文的请求。
19.根据权利要求16所述的非暂时性计算机可读介质,其中,所述第一设备被配置为基于以下各项中的至少一个来生成和传输对所述安全上下文的请求:(i)第一引导操作、(ii)用户命令、(iii)计划的更新以及(iv)尝试建立安全套接字连接。
20.一种设备,包括:
一个或多个计算机处理器;以及
包含计算机程序代码的存储器,当所述计算机程序代码由一个或多个计算机处理器的操作执行时,执行包括以下步骤的操作:
启动操作以利用与第一网络相关联的安全证书来配置所述设备;
检索与安全上下文分发服务相关联的公钥;
生成对第一设备的安全上下文的请求,其中,使用与所述安全上下文分发服务相关联的公钥来加密所述请求;
将所述请求传输到所述安全上下文分发服务,其中,所述安全上下文分发服务被配置为解密所述请求消息;
从所述安全上下文分发服务接收响应消息,其中,所述响应消息包含与第一网络相关联的至少一个传输层安全TLS证书,并且其中,所述安全上下文分发服务被配置为使用与所述安全上下文分发服务相关联的私钥对所述响应消息进行签名;和
在验证所述响应消息的签名后,将第一设备配置为使用接收到的TLS证书。
21.根据权利要求20所述的设备,其中,所述安全上下文分发服务在生成所述响应消息时被配置为基于第一设备的唯一标识符和与所述第一设备相关联的设备声明信息来确定第一设备的一组设备要求,并且其中,所述安全上下文分发服务被配置为基于所述一组设备要求来生成所述响应消息。
22.根据权利要求20所述的设备,所述操作还包括:
生成密码安全随机数;和
在生成的对安全上下文的所述请求中包括所述密码安全随机数。
23.根据权利要求20所述的设备,其中,所述至少一个传输层安全TLS证书还包括证书颁发机构CA证书,并且其中,所述设备被配置为基于以下各项中的至少一项来生成和传输对所述安全上下文的请求:(i)第一引导操作、(ii)用户命令、(iii)计划的更新以及(iv)尝试建立安全套接字连接。
CN202080010430.5A 2019-01-29 2020-01-29 安全上下文分发服务 Pending CN113330765A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201962798202P 2019-01-29 2019-01-29
US62/798,202 2019-01-29
US201962826397P 2019-03-29 2019-03-29
US62/826,397 2019-03-29
PCT/US2020/015667 WO2020160139A1 (en) 2019-01-29 2020-01-29 Security context distribution service

Publications (1)

Publication Number Publication Date
CN113330765A true CN113330765A (zh) 2021-08-31

Family

ID=71841121

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080010430.5A Pending CN113330765A (zh) 2019-01-29 2020-01-29 安全上下文分发服务

Country Status (4)

Country Link
US (1) US11888998B2 (zh)
EP (1) EP3895464A4 (zh)
CN (1) CN113330765A (zh)
WO (1) WO2020160139A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11888998B2 (en) * 2019-01-29 2024-01-30 Schneider Electric USA, Inc. Security context distribution service
EP4035036A1 (en) * 2019-09-25 2022-08-03 Hilti Aktiengesellschaft Systems and methods for data security within power tools
US11689375B2 (en) * 2021-05-21 2023-06-27 International Business Machines Corporation Data in transit protection with exclusive control of keys and certificates across heterogeneous distributed computing environments
US20240210920A1 (en) * 2022-12-27 2024-06-27 Schneider Electric USA, Inc. Automated cypher configuration of industrial devices

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1906886A (zh) * 2004-01-08 2007-01-31 国际商业机器公司 在计算机系统之间建立用于传递消息的安全上下文
US20160254904A1 (en) * 2015-02-27 2016-09-01 Verizon Patent And Licensing Inc. Network services via trusted execution environment
WO2016202375A1 (en) * 2015-06-17 2016-12-22 Telefonaktiebolaget Lm Ericsson (Publ) Method for enabling a secure provisioning of a credential, and related wireless devices and servers
CN107079006A (zh) * 2014-09-17 2017-08-18 微软技术许可有限责任公司 在两个设备之间建立信任
US20180191508A1 (en) * 2016-10-14 2018-07-05 Cable Television Laboratories, Inc Systems and methods for bootstrapping ecosystem certificate issuance
CN108432180A (zh) * 2015-11-13 2018-08-21 维萨国际服务协会 用于基于pki的认证的方法和系统
WO2018232111A1 (en) * 2017-06-16 2018-12-20 Cryptography Research, Inc. Internet of things (iot) device management

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010086038A (ko) * 1999-09-17 2001-09-07 이데이 노부유끼 데이터 제공 시스템 및 그 방법
EP1436682B1 (en) * 2001-06-15 2015-09-02 Link Us All, Llc System and method for specifying security, privacy, and access control to information used by others
US7171555B1 (en) * 2003-05-29 2007-01-30 Cisco Technology, Inc. Method and apparatus for communicating credential information within a network device authentication conversation
RU2011140357A (ru) * 2009-03-05 2013-04-10 Интердиджитал Пэйтент Холдингз, Инк. Способ и устройство для проверки и подтверждения целостности h(e)nb
US9699655B1 (en) * 2016-02-23 2017-07-04 T-Mobile Usa, Inc. Cellular device authentication
WO2018120217A1 (zh) * 2016-12-30 2018-07-05 华为技术有限公司 验证密钥请求方的方法和设备
US10958425B2 (en) * 2018-05-17 2021-03-23 lOT AND M2M TECHNOLOGIES, LLC Hosted dynamic provisioning protocol with servers and a networked responder
US11888998B2 (en) * 2019-01-29 2024-01-30 Schneider Electric USA, Inc. Security context distribution service
US11457010B2 (en) * 2019-04-05 2022-09-27 Comcast Cable Communications, Llc Mutual secure communications

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1906886A (zh) * 2004-01-08 2007-01-31 国际商业机器公司 在计算机系统之间建立用于传递消息的安全上下文
CN107079006A (zh) * 2014-09-17 2017-08-18 微软技术许可有限责任公司 在两个设备之间建立信任
US20160254904A1 (en) * 2015-02-27 2016-09-01 Verizon Patent And Licensing Inc. Network services via trusted execution environment
WO2016202375A1 (en) * 2015-06-17 2016-12-22 Telefonaktiebolaget Lm Ericsson (Publ) Method for enabling a secure provisioning of a credential, and related wireless devices and servers
CN108432180A (zh) * 2015-11-13 2018-08-21 维萨国际服务协会 用于基于pki的认证的方法和系统
US20180191508A1 (en) * 2016-10-14 2018-07-05 Cable Television Laboratories, Inc Systems and methods for bootstrapping ecosystem certificate issuance
WO2018232111A1 (en) * 2017-06-16 2018-12-20 Cryptography Research, Inc. Internet of things (iot) device management

Also Published As

Publication number Publication date
US11888998B2 (en) 2024-01-30
US20210409232A1 (en) 2021-12-30
EP3895464A1 (en) 2021-10-20
WO2020160139A1 (en) 2020-08-06
EP3895464A4 (en) 2022-08-03

Similar Documents

Publication Publication Date Title
JP6826149B2 (ja) 分散状態の同期化のためのサブスクリプション通知メカニズム
JP6549276B2 (ja) スマートホームデバイスおよびクラウドベースのサーバーの間の通信を円滑にするための多層認証方法
CN113330765A (zh) 安全上下文分发服务
US10382203B1 (en) Associating applications with Internet-of-things (IoT) devices using three-way handshake
US8930576B1 (en) Secure communication network
US11611873B2 (en) Method for monitoring access to a user service intended for monitoring of a home-automation installation
Zhang et al. Sovereign: Self-contained smart home with data-centric network and security
Burdzovic et al. IoT Penetration Testing: Security analysis of a car dongle
US20230063428A1 (en) Onboarding for cloud-based management
Trungadi Exploiting virtual networks for CPS security analysis–The Smart Home Environment

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