一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

建立和维持安全设备通信的制作方法

2022-02-25 20:18:15 来源:中国专利 TAG:


1.本公开涉及安全数据处理,并且更具体地,涉及用于为物联网(iot)设备建立和维持安全通信的技术。


背景技术:

2.物联网(iot)承诺在大规模上将元件相互连接在一起。根据应用的上下文和环境,这种合并允许这些元件之间的交互和协作来完成一个或多个特定的任务。例如,任务的范围可以从感测和监测环境特性(例如单个房间的温度或湿度)到控制和优化整个建筑物以实现更大的目标(例如能源管理策略)。在各种环境中,保护这些iot设备所处理的数据是非常有益的,特别是在设备最初部署在几乎没有或没有基于云的网络连接的环境中的环境中。
3.iot设备,或更一般地可以用于从环境中捕获数据的设备,已经存在了好几年,有各种方法来保护与这些部署的设备相关联的通信数据。许多以前部署的设备被设计为在隔离网络环境中运行,将收集到的数据存储在本地以供本地计算机系统分析。然而,随着基于云的连接的出现,用于在隔离网络环境中安全地连接设备的传统技术不足以在云计算环境中安全地连接设备。同时,许多这些传统设备没有计算资源(例如,处理资源、存储资源等)来运行实现安全通信的现代设备固件。因此,在改造这些传统设备以在现代环境中安全地运行方面存在技术挑战。
附图说明
4.上文简要概述的本公开的更详细描述可以通过参考各种实施例获得,其中一些实施例在附图中示出。虽然附图示出了本公开的选定实施例,但是这些附图不应被认为是对其范围的限制,因为本公开可以允许其他同样有效的实施例。
5.图1示出了根据这里描述的一个实施例的用于建立和维持安全设备通信的系统的方面。
6.图2示出了根据这里描述的一个实施例的连接到用于建立和维持安全设备通信的系统的不同类型的设备。
7.图3示出了根据这里描述的一个实施例的用于建立和维持安全设备通信的系统的连接元件的部署。
8.图4是示出根据这里描述的一个实施例的用于建立和维持安全设备通信的系统的框图。
9.图5示出了根据这里描述的一个实施例的用于建立和维持安全设备通信的递增信任元素和递减信任元素。
10.图6a示出了根据这里描述的一个实施例的用于建立和维持安全设备通信的信任状态演进元素的状态图。
11.图6b示出了根据这里描述的一个实施例的用于建立和维持安全设备通信的信任
状态演进过程的流程图。
12.图6c示出了根据这里描述的一个实施例的在用于建立和维持安全设备通信的系统中供给(provision)设备的序列图。
13.图7示出了根据这里描述的一个实施例的通用计算机系统的功能框图。
14.图8示出了根据这里描述的一个实施例的与通用计算机系统一起使用的通用存储系统的功能框图。
15.图9是示出根据这里描述的一个实施例的用于为设备生成安全配置文件的方法的流程图。
16.图10是说明根据这里描述的一个实施例的用于计算信任度量并将信任度量与设备相关联的方法的流程图。
17.图11是说明根据这里描述的一个实施例的用于生成信任级别度量并将信任级别度量与设备相关联的方法的流程图。
18.在可能的情况下,使用相同的附图标记来表示附图共有的相同的元素。然而,在一个实施例中公开的元素可以有益地用于其他实施例而无需具体叙述。
具体实施方式
19.在物联网(iot)或更普遍的网络物理系统(cps)的新兴世界中,多种技术的融合正在进行以允许感测、致动、数据捕获、存储和/或处理来自大量连接组件(包括物理组件、虚拟组件和/或两者的组合)的数据。可以使用现有网络基础架构远程访问这些组件,以实现高效的机器对机器(m2m)和人对机器(h2m)通信。随着连接组件的网络随着时间的推移而变化和增长,将会生成来自这些连接组件元件的越来越多的数据量。保护与这些动态连接设备和组件集相关联的数据是一项重大的技术挑战。
20.使这一挑战复杂化的是几代之前已部署的设备,这些设备可能没有为设备本身和大型数据网络(例如基于云的环境)之间的严格安全通信做好准备。此外,这些设备中的一些对于它们当前所属的网络可能是“不受信任的”。传统设备的一个挑战是,从工厂到当前所有者的所有权链通常是未知的,这为“不受信任”设备存在于现场创造了可能性,这些设备可能已经被恶意行为者破坏或者用于恶意设备仿真,从远程系统的角度来看,恶意设备仿真可能与真实设备无法区分。理想情况下,先前存在于环境中的任何设备(即,棕色地带设备)和新部署到环境中的设备(即,绿色地带设备)可以共存并彼此结合运行,因为这避免了用绿色地带设备替换棕色地带设备的成本。然而,这带来了巨大的挑战,因为许多棕色地带设备没有被配置为在现代环境(例如,一个或多个组件位于云计算环境中的现代环境)中运行,并且在许多情况下,这些棕色地带设备可能没有计算资源(例如,处理和存储能力)来执行将增加这些能力的更新固件。
21.随着这些iot计算设备迅速变得更加可获得和可利用,不正确地保护的iot设备成为用于危及有价值数据和相关联基础架构的极具吸引力的目标。数据窃取、僵尸网络的创建、有价值信息的窃取以及经由连接的iot设备对基础架构进行攻击的性能都是iot系统可能面临的潜在问题的示例。这种攻击通常可以针对直接使用数据服务或提供数据服务的iot设备,包括(但不限于)数据生成iot设备、iot网关和边缘设备。
22.对于通常不适用于传统计算设备和系统的iot设备存在安全挑战。这个挑战包括
安全地部署设备,而不考虑在环境中部署的设备的生成。包括棕色地带设备在内的系统漏洞的一个示例是利用未经认证的棕色地带设备的拒绝服务(dos)攻击。在这种攻击中,恶意用户可能会在平台上造成额外负载或注入虚假数据。例如,恶意用户可能会向平台创建一个或多个登录请求和/或多个虚假账户。有了足够量的此种帐户,恶意用户就可以注册足够量的恶意设备,这些设备可用于对系统(例如,数据存储系统或iot平台的另一部分)发起dos攻击。
23.作为另一个示例,通过利用对设备进行注册的请求“淹没”注册过程,可以对该过程发起dos攻击。恶意用户可以创建多个对设备进行授权的请求作为对注册过程自身的dos。作为又一示例,恶意用户可以创建假冒设备,其可以阻止真实设备连接到平台和/或可以在平台中加载无效数据,从而破坏分析数据。例如,恶意用户可以创建恶意设备,该恶意设备可以向平台发送损坏的或非常大量的数据,以超出平台的处理能力,从而拒绝合法设备使用平台。大量数据可以被恶意发送到平台以在不导致平台故障的情况下增加平台的运营成本。
24.iot系统的系统管理员可以使用缓解策略来缓解此种攻击的影响,这可以包括限制无效用户从部分系统或整个系统的访问,从而帮助防止恶意用户能够在平台上创建额外负载。此外,注册过程可以限制为设定数量的要注册设备的请求。此外,可以通过要求由经认证的idms用户执行该过程来限制注册。作为另一个示例,系统可以限制idms要求以下一项或多项来创建帐户:多因素认证、验证码门户、用于帐户创建的电子邮件验证、每个设备的idms唯一登录认证,以及为添加设备添加速率限制。
25.然而,如上所述,许多棕色地带设备可能没有配置程序逻辑来与在云计算环境中运行的现代iot系统集成。虽然一些设备可以通过安装增加云连接的更新软件来“升级”,但是在许多情况下,这些棕色地带设备可能不具有计算资源(例如,处理能力、存储能力等)来执行这种更新的软件逻辑。此外,即使有更新的软件,这些棕色地带设备也可能没有必要的数据和配置来完全集成到现代iot环境中。例如,制造商为许多现代设备分配了存储在设备上的存储器中的唯一标识符,该唯一标识符是已知的并且可以通过与设备通信的云计算应用来验证。虽然许多棕色地带设备在制造时被配置有这种唯一标识符,但是棕色地带设备可能不能通过云计算应用进行认证。换句话说,如果设备在制造时没有以可验证的方式配置唯一标识符(例如,在制造过程期间在设备上预先配置了诸如预共享密钥的秘密信息并且该信息是云服务器已知的,使用具有证书的公-私密钥基础架构,或者在制造时预先配置了私钥并将私钥安全地存储在设备上,等等),云系统可能只能验证设备的唯一标识符是有效的唯一标识符,但可能无法验证设备的身份。因此,传统解决方案没有提供足够的方法来确定何时完全信任棕色地带设备是可以接受的。
26.为了解决这个安全挑战,本公开提供了一种系统,该系统考虑特定设备的信任元素并使用这些信任元素来生成该设备的信任度量。通常,这种信任元素可以包括信任原子和不信任原子。然后,可以在每个设备级别上处理这些信任元素,以为每个设备创建信任度量。一旦创建了信任度量,这里描述的实施例可以将信任度量与设备级信任阈值进行比较。基于该处理,安全管理设备可以采取进一步的动作。例如,在确定特定设备足够值得信任时(例如,在信任度量超过设备级信任阈值时),当生成系统级事件和警报等时,实施例可以开始利用由特定设备在系统监测活动中收集的数据。
27.图1示出了根据本公开的一个实施例的用于建立和维持安全设备通信的系统。如图所示,系统125包括一个或多个通用计算机110、一个或多个数据存储阵列130、云计算环境120、包含一个或多个连接元件(未示出)的建筑物或其他结构140、以及允许在系统的这些部分之间交换数据的网络连接150。
28.如图1所示,建筑物140包含一个或多个连接元件、组件、设备和/或驱动组件,这些连接元件、组件、设备和/或驱动组件是物理的、虚拟的或两者的混合,它们执行感测、致动、数据捕获、存储或处理以监测或控制或管理建筑物140。任何种类的连接元件可用于捕获、存储或处理数据,或通过网络连接150致动相关联设备,到云计算环境120、到系统的其他部分。例如,这些连接元件可以检测温度、湿度、环境光、声音、烟雾、一氧化碳、二氧化碳、运动、非导电流体、导电流体、振动、能量、功率、电压、电流或任何其他期望的特性及其组合。连接元件还可以操作或接合元件、组件和/或其他系统,例如开灯、开门或开窗、移动窗帘或触发门锁。连接元件还可以处理来自其他连接元件的数据结构或者将数据结构从一个或多个连接元件传播到一个或多个其他连接元件。可以以任何组合部署任何数量的连接元件以监测或管理物理空间。这种空间的示例可以包括壁橱、房间、建筑物、校园、办公室、长廊或任何其他期望的位置。
29.如图所示,包含连接元件的一个或多个建筑物140通过网络连接150连接到云计算环境120。该连接允许通过能够以有线或无线连接方式连接到云计算环境120的各种设备来访问这种环境。在图1所描绘的示例中,这种设备包括能够接收来自用户的输入或提供自主操作的一个或多个通用计算机110。一个或多个数据存储阵列130可用于提供额外的数据存储能力。应当理解,云计算环境120虽然向额外的元件或系统提供额外的通信路径,但是不需要作为语义搜索方法的一部分。一些其他实施例考虑自包含系统或独立系统。
30.网络连接150可以是有线或无线连接类型。这种连接可以包括但不限于任何物理布线方法,例如第5类电缆、同轴电缆、光纤、铜缆、双绞线或传播电信号的任何其他物理介质。无线连接可以包括但不限于个域网(pan)、局域网(lan)、wi-fi、蓝牙、lpwan(低功率wan)蜂窝、全球或空基通信网络。在其他实施方式中,云环境120和任何其他云环境之间的访问是可能的,这些其他云环境被配置为与类似于例如现有的云环境120的云环境的设备连接。应当理解,图1中所示的计算设备仅是说明性的,并且计算节点和云计算环境可以通过具有可寻址或直接连接的任何类型的网络与任何类型的计算机化设备通信。
31.本公开的原理包括建立和维持安全设备通信的系统125,可以包含图1中的元件细节,可以包括更多或更少的这些元件,或者可以在建筑物140、一系列建筑物中。安全设备通信系统125可以是物理的、可以是虚拟的或两者的混合组合。对安全设备通信系统125的构成、位置或组织没有限制。
32.图2示出了可以如何实现不同类型的设备可以连接到根据本公开的各种实施例的用于建立和维持安全设备通信的系统的各种实施例。在图2的一个实施例中,建筑物140包含一种或多种类型的连接元件210、220、230、240,用于结构的监测或管理。这些连接元件210、220、230、240经由有线网络250或无线网络260通信,并且使得来自每个连接元件的数据结构经由网络连接150可用于安全设备通信系统125和/或云环境120。
33.任何种类的连接元件可用于通过网络连接150对安全设备通信系统125、云计算环境120、系统的其他部分执行感测、致动、数据捕获、存储或处理。例如,连接元件可以是测量
二氧化碳210用于监测建筑物140的空气质量、并经由有线网络连接250进行通信的连接传感器。连接元件可以是检测环境光的连接传感器和改变居住者灯具状态的致动器220这两者,并经由有线网络连接250进行通信。连接元件可以是用于温度和湿度以监测建筑物140的环境、并经由无线网络连接260进行通信的连接传感器230。最后,连接元件240用作连接网关以经由相关联的连接元件210、220、230的相应的网络连接250、260与该连接元件210、220、230通信,处理每个连接元件的数据结构,并将其发送到网络连接150以发送到云环境120。应当理解,云计算环境120虽然向额外的设备或系统提供额外的通信路径,但是仅仅是为了说明的目的而不是限制。其他实施例考虑自包含系统或独立系统。
34.这些连接元件不需要以任何方式在地理上本地化或在逻辑上分组以利用本公开的实施例。在地理上或逻辑上对连接元件进行分组可以允许更经济的使用。可以完成例如在公寓、家庭或办公楼中的地理分组,以及按功能在逻辑上定位连接元件。许多逻辑分组示例中的一个可以是将设计用于感测温度的连接端点定位在居住位置附近以检测环境的变化。应当理解,连接端点的分组也可以位于非常大的地理范围内,甚至全球范围内。这种全球操作可以通过位于全球任何数量设施中的网络来监测。
35.图3示出了根据这里描述的一个实施例的用于建立和维持安全设备通信的系统的各种连接元件的部署。示出了“北”建筑物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的环境并经由无线网络连接进行通信。如图所示,安全设备通信系统125连接到系统以建立和提供将已知或未知受信任度的设备登记到系统中的能力。
36.图4示出了根据本公开的各种实施例的用于建立和维持安全设备通信的系统250的示例框图。本公开的各种实施例可以包括启动设备供给过程的用户、可以通过可以验证一个或多个设备特性的中间件门户来请求供给的设备、请求用户标识和/或特性、与idms或功能类似的身份提供者通信以利用中间件门户进一步验证用户身份,以供给设备并与设备通信以执行不间断(ongoing)的表征和监测。
37.如图所示,图4的系统包括管理用户身份数据库403的集成数据库管理系统(idms)402。idms 402连接到中间件门户400。中间件门户400包括设备注册表404、云处理组件406和信任度量组件408。在所描绘的示例中,用户可以与用户终端110交互以启动新的棕色地带iot设备210的设备供给过程。通常,云处理组件406提供消息总线以及计算逻辑。iot设备210可以通过因特网125向云处理组件406发送消息,请求供给并指定iot设备210的设备id。然后云处理组件406可以将供给请求转发到设备注册表404,设备注册表404又向用户终端110发送对与设备注册相关联的用户身份的请求。用户向用户终端110输入登录凭证信息,并且该信息被发送到管理用户身份数据库403的idms 402,用户身份数据库403验证登录凭证信息。在成功认证用户后,idms 402向设备注册表404发送指示,指示用户是有效用户。
38.通常,云处理组件406可以在日常操作期间收集与iot设备210的行为相关的事件数据。例如,这种事件数据可以描述由iot设备210生成的网络流量的量、由iot设备210生成的网络流量的内容、由iot设备210执行的动作的时间安排、iot设备210的处理资源使用情况、iot设备210的存储资源使用情况等。云处理组件406通常可以将针对iot设备210观察到的行为模式与同时间的针对iot设备的预期行为模式进行比较。例如,这种预期行为模式可以根据从控制环境中的相同类型的其他iot设备收集的历史数据生成(例如,使用制造商知道是真实的并且正常运行的设备)。云处理组件406可以基于这些比较的结果生成信任原子(或者,可替换地,生成不信任原子)。例如,如果云处理组件406观察到iot设备210正在生成在内容和数量上与相同设备类型的历史设备基本相同的网络流量,则云处理组件406可以为iot设备210生成信任原子,指示iot设备210被确定为更值得信任。
39.作为另一个示例,制造商可以实施将设备的序列号分配给设备的过程,并且云处理组件406可以配置有用于确定所分配序列号和设备mac地址之间的关系的逻辑。例如,云处理组件406可以访问iot设备210的序列号和mac地址,并且可以使用与序列号相关的信息和逻辑来验证设备的序列号。例如,云处理组件406可以通过使用设备的mac地址在数据存储中执行查找操作来确定设备的制造时间,并且云处理组件406可以进一步访问该数据存储(或不同的数据存储)以确定在时间窗口(例如,一周)期间分配的序列号的范围,包括制造数据。云处理组件406然后可以确定为设备分配的序列号是否在所确定的范围内,如果是,则可以成功地验证设备。在验证设备210的序列号后,云处理组件406可以生成对应的信任原子。
40.云处理组件406可以为iot设备210的各种属性生成多个这些信任(或不信任)原子,并且信任度量组件408可以编译这些原子并计算iot设备210的聚合信任度量。信任度量组件408可以将所计算的信任度量发送到iot云平台410,iot云平台410可以存储与iot设备210相关联的信任度量。如果iot设备210的聚合信任度量指示iot设备210足够值得信任,则iot云平台410可以将iot设备210并入iot平台。例如,iot云平台410可以开始使用iot设备210收集的数据来生成可视化、事件/警报等。信任度量组件408可以继续监测由云处理组件406生成的信任原子和不信任原子,并且如果iot设备210开始表现异常并且不以与相同设备类型的其他设备一致的方式表现,则信任度量组件408可以撤销授予iot设备210的信任级别。因此,虽然棕色地带iot设备可能永远不会被给予与绿色地带iot设备相同的信任级别,但是实施例可以通过监测棕色地带设备的属性和它们的行为来向棕色地带设备提供某种信任级别,并且可以继续实时更新该信任级别,从而允许某些棕色地带设备在云环境中运行。
41.图5示出了用于建立和维持安全设备通信的递增和递减信任元素的实施例。信任原子和不信任原子用于逐个设备地确定受信任度。这些信任元素在设备级别进行处理以创建信任度量。创建信任度量后,将其与设备级别信任阈值进行比较。基于该处理,安全管理设备可以采取进一步的动作。
42.利用本发明的实施例供给的设备可以用供给它们的方法在设备数据库中的它们的元数据中进行标记。这些方法可以是棕色地带、绿色地带或由负责供给设备的机构定义的任何其他方法。这种数据可以是不可变的,并且可以用于增强对设备的任何过滤,例如移除或识别通过棕色地带过程供给的设备。这方面可能有利于确定一个或一系列设备是否应
该被放置在特定类别的设备(例如未经授权的设备)中。
43.当经由棕色地带过程在系统中首次供给设备时,可以假设没有设备的信任级别(0信任权重)。应该理解,该权重是高度可变和可配置的。存在很大程度的灵活性以允许广泛的应用并保留创新的益处。作为一个实施例,身份提供者服务(在该示例中为idms)身份验证可以具有大于0的信任权重。在注册之前要求身份验证将保证所供给的设备将以等于身份验证的信任权重的特定的初始信任权重开始(例如,大于0)。
44.未达到系统要使用的信任级别的设备,例如初始供给后的那些棕色地带设备,可以被分配试用(probationary)状态,同时确定它们是否具有足够的信任。该试用状态可用于进一步将可疑设备与平台的授权且受信任设备隔离。一旦达到设备的信任阈值,设备可以被移动到完全运行状态并从试用状态中移除。在试用期期间内,数据收集可能会被禁用或设置其他限制,以防止对其他设备、网络造成伤害和/或防止需要在试用结束时移动数据。
45.随着设备的部署,各种信任原子被累积,如果累积了足够的信任权重,设备将通过信任阈值并被认为是系统中的受信任设备。可替换地,如果设备在试用期内未通过信任阈值或安全系统管理员确定的其他标准,设备将被视为不受信任并被取消供给或采取其他动作。对于使用真实设备的合法用户来说,在指定的计时器时段内达到信任阈值可能不是问题,因为正常操作应该验证信任。但是,这对攻击者来说是一种威慑,因为他们必须在试用期期间维持主动攻击以获得对系统的完全访问权限。
46.通常,信任原子有几个相关联的特性。应当理解,这些并不是详尽的,因为存在其他特性。此外,这些特性可以相互组合以产生唯一的特性。例如,“信任原子(aot)”可能具有不同的权重,包括在“不信任原子(aod)”情况下的负值。作为另一个示例,“信任原子”可以由整数布尔(integer boolean)或其他数据值类型来表示。在一个实施例中,每个元素的ssize可以由aot的权重来定义。在特定实施例中,棕色地带设备可能无法得到单个aot以获得受信任状态,而是在可以得到受信任状态之前需要多个aot。这可以降低单次攻击获得访问权限的可能性。应当理解,用可验证的制造过程(例如,序列号)制造的设备具有高信任权重,并且可以在它们的元数据中用指示它们是用可验证的身份制造的标志来标记。
47.在一个实施例中,系统可以被配置为使得单个aod可以超过所有累积的aot,包括已经受信任的设备。不信任的大原子可以保留给表现出不受信任行为的设备(例如,在很长一段时间内过于频繁地发送数据)。在这种实施例中,设备可以潜在地基于单个aod(例如,从不受信任状态、试用受信任状态或受信任状态)转换到黑名单状态。
48.此外,时间可以是累积aot的构成部分。例如,信任原子可以在试用期期间累积权重,并且如果在试用期期间达到信任阈值,系统可以对设备能够被信任有一定的信心。但是,如果设备在试用期内没有达到信任阈值,它可能会被从系统中删除,要求用户重新注册该设备。失败的供给尝试可以被记录和计数,并且如果尝试供给的计数超过某个阈值,则设备可以被列入黑名单。
49.根据一个实施例,系统被配置为一旦设备被归类为被列入黑名单就停止监测和评估设备的信任状态,因为一旦设备被列入黑名单,无论黑名单设备的预期行为量如何,系统都不会移除该被列入黑名单的状态。在一个实施例中,系统被配置为完全停止与被列入黑名单设备的通信,并忽略从被列入黑名单设备发送的任何网络消息。作为另一个示例,系统
可以被配置为清除先前从被列入黑名单设备接收的或者在其他情况下为被列入黑名单设备收集的所有数据。在一个实施例中,系统被配置为实现一种过程,通过该过程设备可以从被列入黑名单的状态中被移除。例如,这种过程可以涉及致电客户支持以验证设备的真实性,让技术人员访问客户站点以验证设备的真实性等等。
50.删除在试用时间未达到信任阈值的设备的一个理由是,合法用户会将设备连接到系统,并且合法用户应该在试用期期间累积足够的信任。没有完成这种信任的一种解释是,该设备在该间隔期间没有连接或者它是恶意设备。恶意用户要满足此阈值和时间要求,将需要在一段时间内投入大量资源(例如,尝试使用模拟器创建多个无效设备身份),从而增加了攻击成本。这种资源成本对于合法用户来说不是问题,因为他们拥有可以在试用期期间发送适当数据的有效的物理设备。
51.原子权重可以以多种方式来评分。一个示例可以是最小且最容易实现的原子的权重为1。所有其他原子都是相对于这个最小的原子进行评分。本公开考虑了与原子评分相关的几个因素,这些因素可用于进一步对原子进行加权。它们包括但不限于难以发现的原子,例如序列号;难以自动化的原子,例如需要人在循环中的交互;以及难以伪造的原子,例如任何非常难以复制的原子,例如“盐”密码(“salt”code)。
52.当创建信任原子及其相应的权重时,重要的考虑因素是生成aot的相对成本和难度。例如,依赖于设备执行其正常操作的aot对于设备执行来说并不昂贵,但是对于攻击者生成来说却很昂贵,这可能是有价值的aot。需要平台计算能力来验证以及攻击者的计算能力的aot可以具有中等值。需要更多计算能力来验证而不是生成的aot可能值较低。
53.以下是各种aot的示例。确定原子的权重是一个高度灵活的过程,该过程取决于应用。每个原子可以有2个值,因为拥有该原子而得到的正值,以及如果已知原子不是真的而得到的负值。原子最初可以被分配由系统确定的值。
54.拥有非常大的不信任分数的原子可以使任何受信任项目不受信任,并导致它从未来的通信中被列入黑名单。非常大信任原子可以指示可靠和稳健的过程,这指示不需要进一步的信任。
55.信任原子可以具有二进制权重(例如,它拥有或不拥有信任元素)或者可以具有反映该信任原子已累积的量的整数权重。一些信任原子可以具有通过/失败权重,指示如果它们通过测试,则存在正信任权重,而测试失败则具有相关联的负权重。通常,测试失败比通过测试更消极,因为恶意用户试图通过测试。
56.idms验证可以具有低原子权重并且可以基于以下特性。与任何aot一样,可能需要基于系统定义的要求来供给设备。idms具有验证码(captcha)门户以防止暴力攻击,idms需要在激活帐户之前进行电子邮件验证和/或多因素认证(multi-factor authentication,mfa)。这些特性可以包括进一步的限定符(qualifier),例如captcha需要人工创建账户、唯一的电子邮件地址,和/或mfa需要人工的第二验证源。
57.网络接口的mac/序列号组合验证可以具有低aot和非常高的aod。用户可以使用网站应用为设备上的条形码拍照,该设备将读取mac地址、序列号和sku号。该信息可以与制造记录进行比较。可以执行验证以防止重复的mac/序列号组合。如果检测到重复的mac地址或序列号,则在此提供重复标识符原子方法。此外,攻击者还可以从产品标签中推断出mac和序列号之间的正确关系,从而能够猜测到迄今为止未见过的mac/序列号组合。
58.主机系统的序列号/sku号可以具有低aot和非常高的aod。用户将使用网站应用对安装在其中的设备的条形码进行拍照。该信息被发送到云端,并可以针对用户输入进行验证。消息包中的数据只能由有效设备取得。如果检测到重复的mac地址或序列号,则在此提供重复标识符原子方法。
59.在使用ups的情况下,对照其他数据项验证ups数据可以具有低aot和非常高的aod。在一些制造过程中,序列号和制造日期之间存在数学相关性。如果制造日期在公差范围内不匹配,则计算结果为高aod。有已知的关系来限制ups的制造日期。ups序列号可用于经由根据由设备报告的值进行的制造执行系统(manufacturing execution system,mes)数据库取得和比较来确定sku号。存在验证以防止重复的ups序列号通过识别具有多个注册的单元而被注册。
60.在使用ups的情况下,需要从单元的前面板执行自测的用户可以具有低aot和非常高的aod。用户将被指示对ups执行动作,并被要求在特定的请求时间段内执行操作。用户将使用ups的本地接口来使ups检查电池健康状况。对该动作的响应将是在不同位置具有特定值的特性消息集。
61.通信模式验证可以具有低aot和低aod。监测传入的消息并跟踪到达率(例如,在一段时间内收到的消息)并与预期的流量率进行比较可以提高信任级别。该aot可能有多个值,这些值随着时间的推移而增加,不一定是线性的。当超过通信速率限制时,不信任级别可能会增加。这种不信任原子在试用期期间可能会不断累积,如果超过指定的阈值,它可能会成为大的不信任项。
62.作为示例,来自设备的所有遥测数据被发送到事件中心,并且流分析作业将测量消息之间的时间。例如,如果消息之间的时间为5分钟 /-20秒,则可能会获得aot。如果不在该范围内,将减去1。在这种情况下,如果85%的消息通过了消息测试之间的时间,则设备是受信任的。如果在试用期期间未达到阈值,则设备是不受信任的。阈值可以假设设备运行1周,或者任何其他适当的时间度量,因此在超过25个间隔未达到则意味着设备没有持续连接。
63.验证数据中的序列号和统计计时器如预期的那样增加的消息内容单元可以具有低aot和高aod。例如,所有遥测数据都需要经过协议转换,并使用流分析过程来查询键值对。例如,流分析过程可以基于序列号应该增加的知识来验证数据,并且过程计数器和计时器应该适当地改变(例如,基于被测量的属性向上移动、向下移动或保持不变)。
64.物理遥测单元的统计验证可以具有低aot和高aod。例如,车载电池电压或其他测量值具有随时间变化的特定的统计分布。例如,可以预期设备上的给定度量值随着时间而变化。因此,如果系统确定设备在一段时间内报告给定度量的相同值,则系统可以确定这指示不值得受信任的设备(例如,假冒设备或恶意设备),并且可以相应地生成不信任原子。更一般地,实施例可以在确定各个设备是否以预期方式表现方面考虑给定设备类型的设备的已知限制。
65.重复标识符,例如序列号或mac地址检测可以具有低aod。重复的mac地址或序列号可能因制造缺陷或恶意行为者“捏造”mac地址或序列号作为dos而存在。由于无法确定实际(即,非假冒设备),所有带有副本的设备可能会累积不信任原子。如果副本之一已经是受信任的,则其不需要累积不信任原子,因为其被假定在很长一段时间内已经正确地执行了,这
确保其是真实的设备。在这种情况下,新尝试的设备可能不受信任,并且具有很高的不信任权重。作为另一种可能的变型,具有多个重复的mac地址的单个用户很可能是恶意行为者,并且与该用户相关联的所有设备都可能被禁用。
66.消息内容检查可以具有高aod。这个特性,每条消息必须包含由系统确定的预期数量的数据项。如果消息与以前的消息没有足够地“不同”,则可能会累积不信任原子。
67.在一个实施例中,系统可以对设备进行刺激-响应测试以生成信任原子或不信任原子。例如,系统可以为设备生成刺激事件的发生,并且可以监测设备的行为以确定设备如何响应刺激事件。如果设备以预期的方式并在预期的时间量内响应,系统可以为设备生成信任原子;同样,如果设备以非预期的方式响应和/或在与设备类型一致的时间段内没有响应(例如,在通过分析从控制环境中该设备类型的其他设备收集的历史性能数据确定的时间段内)。刺激事件的示例包括但不限于发送到第一设备的网络消息、发送到第一设备的预定义传感器数据以及手动导致第一物理事件类型的物理事件发生(例如,手动打开物理灯开关或按下物理按钮),其中第一设备被配置为监测第一物理事件类型的事件的发生。
68.图6a、图6b和图6c示出了用于建立和维持安全设备通信的实施例的信任状态演进的状态图、流程图和序列图的实施例。建立或维持安全设备连接的过程开始于设备或接收注册请求消息。当设备供给有棕色地带供给服务时,它可以从信任权重为零开始。获得的每个aot都将通过aot的权重增加信任权重。一些aot是二进制的(存在或不存在),而另一些aot具有随时间改变权重的整数值。可能有试用期,如果设备从供给到试用结束未达到信任阈值,则假定该设备不受信任并从系统中移除(取消供给和取消注册)。如果从系统中移除设备,整个注册和试用过程可以被重复;然而,这种允许重复的数量可以受到限制(例如,在设备被永久列入黑名单之前尝试3次)。因为需要在规定时间内没有完成信任的设备使得创建慢慢累积信任的“潜在”设备大军更具挑战性。具有从信任中被移除的设备的用户将获得不信任原子,因为它可能是恶意用户,具有高度不信任的用户将不被允许注册设备。如果设备“得到”很大的不信任分数,该设备将被列入黑名单,如果该设备是棕色地带设备,则也将把用户拥有的其他设备列入黑名单。
69.在本公开的各种实施例中使用的任何通用计算机系统可以是例如通用计算机,诸如基于英特尔奔腾型处理器、摩托罗拉powerpc、sun ultrasparc、惠普pa-risc处理器或任何其他类型处理器的通用计算机。
70.例如,本公开的各种实施例可以被实现为在例如图7中所示的通用计算机系统700中执行的专用软件。计算机系统700可以包括连接到一个或多个存储器设备730(例如磁盘驱动器、存储器或用于存储数据的其他设备)的处理器720。存储器730通常用于在计算机系统700的运行期间存储程序和数据。计算机系统700还可以包括提供额外存储容量的储存器系统750。计算机系统700的组件可以通过互连机构740耦合,互连机构740可以包括一条或多条总线(例如,集成在同一机器内的组件之间)和/或网络(例如,驻留在单独的分立机器上的组件之间)。互连机构740使得能够在系统700的系统组件之间交换通信(例如,数据、指令)。
71.计算机系统700还包括一个或多个输入设备710(例如键盘、鼠标、轨迹球、麦克风、触摸屏)以及一个或多个输出设备760(例如打印设备、显示屏、扬声器)。此外,计算机系统700可以包含将计算机系统700连接到通信网络的一个或多个接口(未示出)(作为互连机构
740的补充或替代)。
72.在图8中更详细地示出的储存器系统750通常包括计算机可读和可写的非易失性记录介质810,其中存储了定义由处理器执行的程序或存储在介质810上或存储在介质810中的信息的信号,该信息由程序处理以执行与这里描述的实施例相关联的一个或多个功能。介质可以是例如磁盘或闪存存储器。通常,在操作中,处理器使得数据从非易失性记录介质810被读取到另一存储器820中,存储器820比介质810允许处理器更快地访问信息。该存储器820通常是易失性随机存取存储器,例如动态随机存取存储器(dram)或静态存储器(sram)。如图所示,它可以位于储存系统800中,或者位于存储器系统730中。处理器720通常控制集成电路存储器730、820内的数据,然后在处理完成后将数据复制到介质810。已知多种机制用于管理介质810和集成电路存储器元件730、820之间的数据移动,并且本公开不限于此。本公开不限于特定的存储器系统730或储存器系统750。
73.计算机系统可以包括专门编程的专用硬件,例如专用集成电路(asic)。本公开的方面可以用软件、硬件或固件或其任何组合来实现。此外,这种方法、动作、系统及其系统元件和组件可以作为上述计算机系统的一部分或独立组件来实现。
74.虽然计算机系统700作为示例被示出为一种类型的计算机系统,在该计算机系统上可以实践本公开的各个方面,但是应当理解,本公开的方面不限于在如图8所示的计算机系统上实现。本公开的各个方面可以在具有与图8所示的不同架构或组件的一台或多台计算机上实践。此外,在这里(或在权利要求中)将本公开的实施例的功能或过程描述为在处理器或控制器上执行的情况下,这种描述旨在包括使用多于一个处理器或控制器来执行功能的系统。
75.计算机系统700可以是可使用高级计算机编程语言进行编程的通用计算机系统。计算机系统700也可以使用专门编程的专用硬件来实现。在计算机系统700中,处理器720通常是商业上可获得的处理器,例如可从英特尔公司获得的众所周知的奔腾级处理器。还有许多其他处理器可用。这种处理器通常执行的操作系统可以是例如windows95、windows 98、windows nt、windows 2000、windows me、windows xp、vista、windows 7、windows 10或可从微软公司获得的子代操作系统、mac os系统x或可从apple computer获得的子代操作系统、可从sun microsystems获得的solaris操作系统、unix、linux(任何发行版)或可从各种来源获得的子代操作系统。许多其他操作系统可以被使用。
76.处理器和操作系统共同定义了计算机平台,为该平台以高级编程语言编写了应用程序。应当理解,本公开的实施例不限于特定的计算机系统平台、处理器、操作系统或网络。此外,对于本领域技术人员来说,本公开不限于特定的编程语言或计算机系统是显而易见的。此外,应当理解,也可以使用其他合适的编程语言和其他合适的计算机系统。
77.计算机系统的一个或多个部分可以分布在耦合到通信网络的一个或多个计算机系统上。例如,如上所述,确定可用电源容量的计算机系统可以位于远离系统管理器的位置。这些计算机系统也可以是通用计算机系统。例如,本公开的各个方面可以分布在一个或多个计算机系统中,该计算机系统被配置为向一个或多个客户端计算机提供服务(例如,服务器),或者作为分布式系统的一部分执行整体任务。例如,本公开的各个方面可以在客户端-服务器或多层系统上执行,该多层系统包括分布在一个或多个服务器系统中的组件,该服务器系统执行根据本公开的各个实施例的各种功能。这些组件可以是可执行代码、中间
代码(例如,il)或解释型(例如,java)代码,它们使用通信协议(例如,tcp/ip)通过通信网络(例如,因特网)进行通信。例如,一个或多个数据库服务器可用于存储设备数据,例如预期电源消耗,其用于设计与本公开的实施例相关联的布局。
78.应当理解,本公开不限于在任何特定系统或系统组上执行。此外,应当理解,本公开不限于任何特定的分布式架构、网络或通信协议。
79.图9是说明根据这里描述的一个实施例的用于为设备生成安全配置文件的方法的流程图。如图所示,方法900开始于框910,其中中间件门户400确定第一设备类型的第一设备的多个特性。中间件门户400对照第一设备类型的预期特性集来分析该多个特性(框915)。另外,中间件门户400在时间窗口内监测第一设备的运行时行为以收集第一设备的运行时行为数据(框920)。中间件门户400分析第一设备的运行时行为数据以确定该设备是否以与第一设备类型一致的方式运行(框925)。在确定所分析的多个特性与预期特性集一致并且第一设备以与第一设备类型一致的方式运行时,中间件门户400为第一设备生成将第一设备指定为信任设备的安全配置文件(框930),并且方法900结束。
80.图10是说明根据这里描述的一个实施例的用于计算信任度量并将信任度量与设备相关联的方法的流程图。如图所示,方法1000开始于框1010,其中用户经由用户终端启动设备供给过程。设备从中间件门户请求供给(框1015)。中间件门户向用户请求用户身份信息(框1020),并且用户使用登录凭证信息登录到idms(框1025)。idms验证用户的身份并向中间件门户发送确认用户身份有效性的指示(框1030)。中间件门户确定设备的信任原子和不信任原子,并计算设备的聚合信任度量(框1035)。iot云平台存储设备的信任度量(框1040)。如图所示,当中间件门户继续监测设备的实时行为和属性并继续更新设备的原子和聚合信任度量时,可以重复框1035和框1040。在框1045处,iot云平台将设备收集的设备数据与信任度量相关联,并相应地处理设备数据。例如,如果聚合信任度量指示设备被确定为值得信任的设备,则iot云平台可以以与经认证的绿色地带设备收集的数据基本相同的方式来处理iot设备收集的数据。作为另一个示例,如果聚合信任度量指示设备行为异常或者以其他方式被确定为不值得信任,iot云平台可以将设备收集的数据标记为不值得信任,并且可以将该数据从iot云平台生成的可视化、事件、警报等中排除。当然,提供这种示例仅仅是为了说明的目的,并且更一般地,考虑与iot系统内的值得信任的设备或不值得信任的设备相关联的任何合适的动作可以由与这里描述的功能一致的iot云平台来执行。
81.图11是说明根据这里描述的一个实施例的用于生成信任级别度量并将信任级别度量与设备相关联的方法的流程图。如图所示,方法1100开始于框1110,在框1110处,中间件门户在时间窗口内监测设备的行为以确定设备的多个运行时行为特性。中间件门户确定设备的多个设备特性,至少包括设备的mac地址和序列号(框1115)。中间件门户另外确定请求向iot系统注册设备的用户的多个用户特性(框1120)。
82.中间件门户至少部分基于多个运行时行为特性、多个设备特性和多个用户特性来为设备生成信任级别(框1125)。中间件门户存储与设备相关联的信任级别(框1130),并将信任级别与随后从设备接收的一个或多个数据值相关联(框1135)。
83.本公开的各种实施例可以使用面向对象的编程语言来编程,例如smalltalk、java、c 、ada或c#(c-sharp)。也可以使用其他面向对象的编程语言。可替换地,可以使用函数、脚本和/或逻辑编程语言,例如basic、fortran、cobol、tcl或lua。本公开的各个方面
可以在非编程环境(例如,以html、xml或其他格式创建的文档,这些文档在浏览器程序的窗口中查看时呈现图形用户界面(gui)的方面或执行其他功能)中实现。本公开的各个方面可以被实现为编程元件或非编程元件,或它们的任何组合。
84.上文描述的系统和方法的实施例通常被描述为用于具有大量设备机架的相对较大的数据中心;然而,本公开的实施例也可以用于较小的数据中心和数据中心以外的设施。一些实施例也可以是在地理上分布的非常少量的计算机,而不是类似于特定的架构。
85.在上面讨论的本公开的实施例中,分析结果被描述为实时提供。正如本领域技术人员所理解的,术语“实时”的使用并不意味着暗示结果是立即可用的,而是快速可用的,使设计者能够在短时间段内(例如几分钟)尝试多种不同的设计。
86.在前文中,参考了各种实施例。然而,本公开的范围不限于具体描述的实施例。而是,所描述的特征和元素的任何组合,无论是否与不同的实施例相关,都被预期来实施和实践所预期的实施例。此外,虽然实施例可以实现优于其他可能的解决方案或现有技术的优点,但是特定的优点是否通过给定的实施例实现并不限制本公开的范围。因此,前述方面、特征、实施例和优点仅仅是说明性的,并且不被认为是所附权利要求的要素或限制,除非在权利要求中明确陈述。
87.本文公开的各种实施例可以实施为系统、方法或计算机程序产品。因此,各方面可以采取完全硬件实施例、完全软件实施例(包括固件、驻留软件、微代码等)或者结合软件和硬件方面的实施例的形式,这些软件和硬件方面在本文中被统称为“电路”、“模块”或“系统”。此外,各方面可以采取体现在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质具有体现在其上的计算机可读程序代码。
88.可以利用一个或多个计算机可读介质的任何组合。计算机可读介质可以是非暂时性计算机可读介质。例如,非暂时性计算机可读介质可以是但不限于,电子、磁、光、电磁、红外或半导体系统、装置或设备,或前述的任何合适的组合。非暂时性计算机可读介质的更具体的示例(非详尽列表)可以包括以下:具有一条或多条导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或闪存存储器)、光纤、便携式光盘只读存储器(cd-rom)、光存储设备、磁存储设备或前述的任何合适的组合。体现在计算机可读介质上的程序代码可以使用任何合适的介质来传输,包括但不限于无线、有线、光纤电缆、rf(射频)等,或前述的任何合适的组合。
89.用于执行本公开各方面的操作的计算机程序代码可以用一种或多种编程语言的任何组合来编写。此外,这种计算机程序代码可以使用单个计算机系统或通过彼此通信的多个计算机系统(例如,使用局域网(lan)、广域网(wan)、因特网等)来执行。虽然参考流程图和/或框图描述了前述的各种特征,但是本领域普通技术人员将理解,流程图和/或框图的每个框,以及流程图和/或框图中的框的组合可以通过计算机逻辑(例如,计算机程序指令、硬件逻辑、两者的组合等)来实现。通常,计算机程序指令可以被提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器。此外,使用处理器执行这种计算机程序指令产生能够执行流程图和/或框图的框中指定的功能或动作的机器。
90.附图中的流程图和框图说明了本公开的各种实施例的可能实施方式的架构、功能和/或操作。在这点上,流程图或框图中的每个框可以表示模块、代码段或代码部分,其包括用于实现指定逻辑功能的一个或多个可执行指令。还应该注意的是,在一些替代实施方式
中,框中标注的功能可以不按图中标注的顺序发生。例如,连续示出的两个框实际上可以基本同时执行,或者有时可以以相反的顺序执行框,这取决于所涉及的功能。还将注意到,框图和/或流程图图示的每个框以及框图和/或流程图图示中的框的组合可以由执行指定功能或动作的专用的基于硬件的系统或者专用硬件和计算机指令的组合来实现。
91.应当理解,以上描述旨在说明而非限制。在阅读和理解以上描述后,许多其他实施方式示例是显而易见的。尽管本公开描述了具体示例,但是应当认识到,本公开的系统和方法不限于这里描述的示例,而是可以在所附权利要求的范围内进行修改来实践。因此,说明书和附图被认为是说明性的而不是限制性的。因此,本公开的范围应当参考所附权利要求以及这些权利要求所赋予的等同物的全部范围来确定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献