用于管理物联网设备的方法、装置和计算机可读介质与流程

文档序号:32879066发布日期:2023-01-12 19:52阅读:28来源:国知局
用于管理物联网设备的方法、装置和计算机可读介质与流程

1.本公开的实施例总体涉及通信领域,并且具体涉及用于管理物联网设备的方法、装置和计算机可读介质。


背景技术:

2.物联网(“iot”)通常是指能够通过网络进行通信的设备系统。iot中的设备(也被称为iot设备)可以包括日常家用设备,诸如烤面包机、咖啡机、恒温器系统、洗衣机、干衣机、灯、汽车等。该设备还可以包括建筑物和工厂机器中的工业设备,通常附有传感器和致动器等。网络通信可以被用于设备自动化、数据捕获、提供警报、设置个性化以及很多其他应用。
3.随着用户对iot设备的应用的日益增加,对iot设备的网络攻击问题也日益严重。当iot设备受到网络攻击时,可能将与该iot设备相连接的网络基础设施暴露于这种网络攻击。因此,iot设备的安全使用是值得关注的问题。


技术实现要素:

4.本公开的实施例提供了用于管理物联网设备的方法、装置和计算机可读介质。
5.在本公开的第一方面,提供了一种用于管理物联网设备的方法。该方法包括在认证方处,确定用于待认证的设备的加密密钥,加密密钥是基于与设备相关联的信息、根据预定加密算法而被生成的;验证加密密钥;以及如果加密密钥通过验证,创建设备与认证方之间的安全连接。
6.在本公开的第二方面,提供了一种电子装置。该装置包括至少一个存储器;至少一个处理器;以及认证模块。认证模块被配置为:确定用于待认证的设备的加密密钥,加密密钥是基于与设备相关联的信息、根据预定加密算法而被生成的;验证加密密钥;以及如果加密密钥通过验证,创建设备与电子装置之间的安全连接。
7.在本公开的第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序代码,计算机程序代码在由装置执行时,使该装置执行根据第一方面的方法。
8.提供发明内容部分是为了以简化的形式来介绍对概念的选择,它们在下文的具体实施方式中将被进一步描述。发明内容部分无意标识本公开的关键特征或必要特征,也无意限制本公开的范围。
附图说明
9.通过结合附图对本公开示例性实施例进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,在本公开示例性实施例中,相同的参考标号通常代表相同部件。
10.图1示出了根据本公开的一些实施例能够在其中实现的场景的示意图;
11.图2示出了根据本公开的一些实施例的用于管理设备的示例方法的流程图;
12.图3示出了根据本公开的一些实施例的用于创建安全连接的示例信令图;
13.图4示出了根据本公开的一些实施例的用于创建安全连接的另一示例信令图;
14.图5示出了根据本公开的一些实施例的用于更新加密密钥的示例信令图;以及
15.图6示出了可以用来实施本公开内容的实施例的示例设备的示意性框图。
16.在各个附图中,相同或对应的标号表示相同或对应的部分。
具体实施方式
17.下面将参照附图更详细地描述本公开的优选实施例。虽然附图中显示了本公开的优选实施例,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
18.在本文中使用的术语“包括”及其变形表示开放性包括,即“包括但不限于”。除非特别申明,术语“或”表示“和/或”。术语“基于”表示“至少部分地基于”。术语“一个示例实施例”和“一个实施例”表示“至少一个示例实施例”。术语“另一实施例”表示“至少一个另外的实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。
19.如本文所使用的,术语“云端”或“边缘端”指代提供因特网协议(ip)网络服务的远程服务器端,诸如iot服务器或云服务器。在本文中,“云端”、“边缘端(edge)”等可替换地使用。
20.如本文所使用的,术语“iot设备”指代连接到iot的任何类型的设备,包括各种家用设备或工业设备等。iot设备可以访问由云端所提供的ip网络,并且与云端交换数据包。iot设备可以利用各种无线通信技术与云端进行数据通信。示例无线通信技术包括但不限于:wifi、zigbee、私有协议等。
21.如上文所提及的,iot设备可能易受到网络攻击,并且因此可能将其所连接到的网络基础设施暴露于这种网络攻击。例如,以使用wifi的iot为例,当用户想要使设备加网(onboarding)或加入到iot中时,用户的移动设备(例如,移动电话)以明文(clear text)的方式将wifi网络的路由器的服务集标识(ssid)发送至该设备。这种明文的方式极易受到黑客的攻击,进而使得wifi网络的路由器的个人可标识信息pii被泄露。使用zigbee或其他通信技术的iot也存在类似的问题。
22.在常规方案中,通过对各个设备设置唯一的二维码(qr码),使用户通过使用用户的移动设备来扫描设备的二维码来使设备接入iot网络。这种常规方案在实际使用中遇到了一些问题。例如,设备每一次加入iot时,都需要用户扫描二维码,这影响了用户的使用体验。特别地,当遇到黑客攻击时,通常会触发对设备的重新认证。在这种情况下,用户需要重新扫描设备的二维码。设备的二维码有时并不位于设备的外表面,用户可能需要例如打开设备面板来扫描二维码,或者用户可能需要将二维码提前打印出来以供扫描。这进一步影响了用户的使用体验。此外,如果二维码丢失或者发生损坏,则会造成设备无法连接iot例如云端的情况。在这种情形下,用户可能会使用其他不需要扫描二维码的较不安全的方式将设备接入iot。例如,用户可能会选择输入密码的方式将设备接入iot,这样将会使密码容易被窃取。这种方式会使设备与iot容易暴露于被攻击的风险中。此外,在某些场景下,黑客
可能诱骗用户使用非认证的重连方式。这会导致用户在不知情的情况下泄露隐私,或者遭受进一步的网络攻击。
23.本公开的实施例提出了一种用于物联网的方案,以解决上述问题和其他潜在问题中的一个或多个。在该方案中,在认证方处,确定用于待认证的设备的加密密钥。该加密密钥是基于与设备相关联的信息、根据预定加密算法而被生成的。该方案还包括验证加密密钥,以及如果加密密钥通过验证,则创建设备与认证方之间的安全连接。
24.本公开的实施例能够通过验证基于与设备相关联的信息、根据预定加密算法而被生成的加密密钥,而在设备与认证方之间建立更加安全的连接。这种更加安全的连接降低了设备与认证方被攻击的风险。此外,这种方式不需要用户进行额外的操作,诸如扫描二维码等,因此能够提高用户的使用体验。
25.以下将参考附图来详细描述本公开的实施例。
26.图1图示了根据本公开的实施例可以在其中实现的场景100。在场景100中,包括设备110-1、110-2和110-3,被统称为或单独称为设备110。设备110可以指代家用电子设备,例如包括但不限于,空调、电视、洗衣机、冰箱、智能温度计、智能体重秤等;也可以指代工业电子设备,例如包括但不限于,工业机器人、服务器、路由器、厂房等;还可以指代可移动的设备,包括但不限于,交通工具、无人机、可携带设备等。附加地,本领域技术人员理解,随着物联网技术的发展,设备110还涵盖了具备物联网能力任何其他电子设备。
27.场景100还包括云端120,其中包括利用基础资源向用户提供云服务的各种云端设备或实体。云端120可以由云端设备集中式地部署或分布式地部署。
28.在场景中,还包括认证设备130,认证设备130可以例如包括但不限于,云端信任中心、边缘端信任中心、或者可用于认证设备110的任何其他适当的设备或装置。认证设备130被连接到云端120。在一些实施例中,设备110可以通过认证设备130来与云端120创建安全连接。
29.在场景100中,还包括用户设备140,用户设备140可以例如包括但不限于,蜂窝电话(例如,智能电话)、平板电脑、膝上型计算机、台式计算机、便携式媒体播放器、可穿戴数码设备(例如,数码眼镜、腕带、腕表、胸针、臂章等)、电视机、机顶盒(例如,分线盒、视频播放器、视频流处理设备等)、游戏系统等。在一些实施例中,用户设备140与云端120之间可以建立有安全信道,诸如https信道等。可以通过创建设备110与用户设备140之间的安全连接来将设备110安全地连接到云端120。此外,用户设备140与认证设备130之间也可以建立有安全信道。
30.应当理解,图1所示出的场景100仅仅是示例性的,而不应当构成对本公开所描述的实施例的功能和范围的任何限制。图1中所示出的设备110、认证设备130和用户设备140的数目仅仅是示意性的,场景100中可以包括任何适当数目的设备110、认证设备130和用户设备140。
31.图2示出了根据本公开的一些实施例的用于管理设备110的示例方法200的流程图。方法200例如可以由如图1所示的认证设备130或者用户设备140来执行。应当理解,方法200还可以被其他适当的设备或装置执行。方法200可以包括未示出的附加动作和/或可以省略所示出的动作,本公开的范围在此方面不受限制。以下结合图1来详细描述方法200。
32.如图2所示,在210处,认证方确定用于待认证的设备110的加密密钥。加密密钥是
基于与设备110相关联的信息、根据预定加密算法而被生成的。与设备110相关联的信息可以是设备110独有的信息。例如,与设备110相关联的信息可以包括设备110的唯一标识符,诸如电气与电子工程师协会(ieee)通用唯一识别码(uuid)。又如,与设备110相关联的信息可以包括设备110的媒体存取控制(mac)地址。预定加密算法可以包括加盐哈希算法,例如sha-1、sha-256、sha-224等。
33.在一些实施例中,认证方可以包括认证设备130。在认证方包括认证设备130的情况下,可以由认证设备130基于与设备110相关联的信息、根据预定加密算法来生成加密密钥。附加地或备选地,如果设备110不是初次被认证的新设备。即,认证设备130可能已经存储了关于设备110的信息,例如包括前次对设备110进行认证时所确定的设备110的加密密钥。在这种情况下,认证设备130可以基于设备110的信息,从认证设备130的存储器中查询对应于该信息的加密密钥。认证设备130进而可以将所查询到的对应于设备110的信息的加密密钥确定为用于待认证的设备110的加密密钥。
34.在一些实施例中,认证方可以包括用户设备140。在认证方是用户设备140的情况下,用户设备140可以从另一认证方,例如认证设备130接收加密密钥。加密密钥是由另一认证方,例如认证设备130基于与设备130相关联的信息、根据预定加密算法而生成的。附加地或备选地,加密密钥可以经由带外数据(oob)信道从另一认证方,例如认证设备130而被接收。通过利用oob信道这一受信任的信道传输加密密钥,能够避免加密密钥被泄露。
35.在220处,认证方确定加密密钥是否通过验证。例如,认证方可以对所确定的加密密钥与设备110的原始加密密钥进行匹配。如果所确定的加密密钥与设备110的原始加密密钥相匹配,则加密密钥通过验证。否则,则未通过验证。在一些实施例中,对加密密钥的认证可以在oob信道进行。
36.在一些实施例中,设备110的原始加密密钥由设备110的生产方(例如,工厂)基于设备110的信息、根据预定加密算法而确定。生产方所使用的加密算法与认证方所使用的加密算法相同。例如,原始加密密钥可以是生产方基于设备110的唯一标识符根据预定的sha-256生成的对称密钥。通过使用对称密钥进行加密及验证,相比不对称加密方式,能够节省资源,并且节省验证时间。
37.在其他实施例中,可以使用其他方式来验证加密密钥。例如,可以通过将该加密密钥与认证方所存储的受信任设备列表中的受信任加密密钥进行匹配。如果能够找到相匹配的受信任加密密钥,则该加密密钥通过验证。否则,该加密密钥需要进行进一步验证,例如以上所描述的与原始加密密钥进行匹配。
38.如果在220处,加密密钥通过了验证,则方法200进行到230。在230处,创建设备110与认证方之间的安全连接。例如,当认证方包括认证设备130时,创建设备110与认证设备130之间的安全连接。设备110经由认证设备130接入云端120。又如,当认证方包括用户设备140时,创建设备110与用户设备140之间的安全连接。设备110经由用户设备140接入云端。一旦设备与认证方之间已经创建了安全连接,则该安全连接是不容易被破坏或者被侵入的。
39.通过这样的方式,能够在生产方与认证方两者处使用相同的加密算法,基于设备的相同的信息来分别生成设备的原始加密密钥以及用于认证设备的加密密钥。这种方式提供了对大量设备的密钥管理。以这样,能够确保加密密钥不容易被泄露,从而确保设备、认
证方及云端不易被攻击。此外,此方式不需要用户每次使用设备时对设备的二维码进行扫描,操作更加简单,提高了用户的使用体验。
40.附加地或备选地,在一些实施例中,如果确定加密密钥存在失效风险,则认证方例如,认证设备130还可以基于设备110的信息,根据更新的加密算法来生成更新的加密密钥。认证方还可以通知设备110以使设备110利用更新的加密密钥替换设备110的原始加密密钥。经过替换,更新的加密密钥可以作为设备110的新的原始加密密钥。在设备110随后尝试再次加入云端120的网络、或者加入其他云端或边缘端的网络时,认证方,例如认证设备130会基于设备110的新的原始加密密钥来进行加密密钥验证过程。
41.如前所述,设备的原始加密密钥可以由设备110的生产方预先生成。更新的加密密钥可以是由第三方,诸如安全中心发送或配置至认证方的。更新的加密密钥也可以由认证方自己生成。更新的加密密钥也可以由设备110的生产方所确定并且发送至认证方。
42.在一些实施例中,以上所描述的更新的加密密钥还被发送或配置至设备110的生产方。例如,可以由第三方,诸如安全中心将更新的加密密钥发送或配置至生产方。该更新的加密密钥与被发送或配置至认证方的更新的加密密钥相同。又如,在更新的加密密钥是由认证方生成的情况,可以由认证方将更新的加密密钥发送至生产方。再如,更新的加密密钥可以是生产方自身所确定并配置的,并且生产方还将该更新的加密密钥发送至认证方。
43.将上述更新的加密算法配置至生产方,生产方将会使用该更新的加密算法来为之后新生产的设备进行加密。通过这样的方式,能够对生产方与认证方的加密算法进行同步更新,从而确保生产方与认证方所使用的加密算法保持一致。
44.附加地或备选地,认证方,例如认证设备130还会存储与设备110的认证相关信息。例如,存储设备110每次进行认证的时间,所使用的设备110的信息,以及设备110的加密密钥等信息。此外,认证方还会记录设备110进行不成功认证的信息,例如记录黑客等的攻击记录。以这样,这些信息可以作为黑客攻击的证据。
45.如上所述,在一些实施例中,预定加密算法可以由第三方,诸如安全中心统一地发送或配置至生产方和认证方两者。此外,安全中心还会对预定加密算法、之前使用过的加密算法和/或更新的加密算法进行存储。以这样,能够确保生产方和认证方两者使用相同的加密算法,并且能够确保所使用的加密算法是之前未被使用过或未被泄露过的加密算法。
46.以上参考图2描述了根据本公开的实施例的方法200的具体细节。以下将参考图3-图5描述根据本公开的实施例的示例信令图。
47.图3示出了根据本公开的一些实施例的用于创建安全连接的示例信令图300。图3示出了处于图1所示的场景100中的认证设备130与设备110。认证设备130已经与图1中的云端120之间建立有连接。图3中还示出了生产方301,生产方301不位于场景100中。此外,图3中还示出了用户302。
48.如图3所示,在310处,生产方301可以在设备110的生产过程中,基于设备110的信息,根据预定加密算法生成设备110的原始加密密钥。如前所述,预定加密算法可以由生产方301自身确定,也可以由认证方或第三方确定并且将其配置至生产方301。
49.在315处,生产方301可以将原始加密密钥存储至,例如,烧录(flash)至设备110。接下来,在320处,生产方301可以将原始加密密钥从生产方301的存储器中移除。
50.以上所描述的310、315和可选的320过程描述了设备110生产过程中的原始加密密
钥确定过程。下面将继续描述已经通过生产的投入使用中的设备110与认证设备130之间建立安全连接的过程。
51.在325处,用户302可以触发认证设备130以开放网络层(nwk),以使其他设备可以被连接到认证设备130。在330处,用户302可以触发设备110加入nwk。例如,用户302可以通过打开设备110的连接开关等来触发设备110加入nwk。
52.在335处,设备110将与设备110有关的信息传输至认证设备130。如前所述,与设备110有关的信息可以是可以唯一地确定设备110的信息,诸如设备的唯一标识符或者mac地址等,。例如,设备110可以向认证设备无线广播数据包,该数据包中包括与设备110有关的信息。
53.接下来,在340处,认证设备130确定用于待认证的设备110的加密密钥。例如,认证设备130可以基于所接收到的与设备110有关的信息,根据预定加密算法,生成用于待认证设备110的加密密钥。如前所述,预定加密算法可以由认证设备130本身确定,也可以由生产方301或其他第三方配置。该预定加密算法与生产方301所使用的预定加密算法保持一致。
54.在345处,认证设备130验证在340处所确定的加密密钥。例如,认证设备130可以对所确定的加密密钥与设备110的原始加密密钥(如在315处所存储的原始加密密钥)进行匹配。在一些实施例中,对加密密钥的认证可以在oob信道进行。如果在345处,所确定的加密密钥通过验证,则信令图300进行到350处。在350处,在认证设备130与设备110之间创建安全连接。
55.通过这样的方式,通过验证基于设备的信息、根据预定加密算法所确定的加密密钥,能够确保在设备与认证设备之间创建安全连接。通过在设备与认证设备之间创建安全连接,可以使设备安全地被连接到云端,从而避免设备、认证设备以及云端遭到攻击。此外,用户仅需要触发设备加入该网络,而不需要进行诸如扫描设备的二维码等操作,操作简单,进而提高了用户的使用体验。
56.图4示出了根据本公开的一些实施例的用于创建安全连接的另一示例信令图400。图4示出了处于图1所示的场景100中的认证设备130、设备110以及用户设备140。认证设备130、用户设备140与图1中的云端120三者之间建立有安全连接或安全信道。与图3类似,图4中还示出了生产方301与用户302。生产方301不位于场景100中。
57.图4中所示出的过程410、415、420、425、430及435与图3中的过程310、315、320、325、330及335类似,因此不再重复其描述。
58.如图4所示,在440处,设备110可以将与设备110有关的信息,诸如设备110的唯一标识符或mac地址等,发送至用户设备140。例如,可以通过用户设备140的接入点(ap),将存储有设备的唯一标识符的数据包传输至用户设备140。
59.在445处,用户设备140将接收到的与设备110有关的信息传输至认证设备130。例如,可以利用诸如wifi等无线通信经由oob信道这一受信任的信道来将与设备110有关的信息传输至认证设备130。
60.在450处,认证设备130基于接收到的与设备110有关的信息、根据预定加密算法,来生成用于待认证设备110的加密密钥。此过程与图3中的过程340类似,因此不再重复描述。接下来,在455处,认证设备130将所生成的加密密钥传输至用户设备140。即,用户设备140在455处接收由认证设备130所生成的加密密钥。在一些实施例中,加密密钥的传输也是
经由oob信道来进行的。
61.在460处,用户设备140验证接收到的加密密钥。例如,用户设备140可以对接收到的加密密钥与设备110的原始加密密钥进行匹配。如果相匹配,则加密密钥通过验证。否则,加密密钥未通过验证。在一些实施例中,对加密密钥的认证可以在oob信道进行。
62.如果在460处,加密密钥通过验证,则信令图400进行到465处。在465处,在设备110与用户设备140之间创建安全连接。
63.通过这样的方式,通过验证基于设备的信息、根据预定加密算法所确定的加密密钥,能够确保在设备与用户设备之间创建安全连接。通过在设备与用户设备之间创建安全连接,可以使设备安全地被连接到云端,从而避免设备、用户设备以及云端遭到攻击。此外,用户仅需要触发设备加入该网络,而不需要进行诸如扫描设备的二维码等操作,操作简单,进而提高了用户的使用体验。
64.图5示出了根据本公开的一些实施例的用于更新加密密钥的示例信令图500。图5示出了处于图1所示的场景100中的认证设备130与设备110。认证设备130已经与图1中的云端120之间建立有连接。图5中还示出了生产方301,生产方301不位于场景100中。此外,图5中还示出了安全中心502。应当理解,图5中的安全中心502可以位于任何位置。例如,安全中心502可以位于生产方301、云端120、或者位认证方等。安全中心502也可以是单独的第三方。
65.在510处,安全中心502可以确定加密密钥存在失效风险。例如,预定加密算法可能被泄露或被破解了。在一些实施例中,安全中心502可以由遭受了攻击的认证方,例如认证设备130来告知加密密钥存在失效风险。附加地或备选地,安全中心502也可以通过其存储的预定加密算法的记录,当预定加密算法已经使用了超过阈值时间之后,确定加密密钥存在失效风险。阈值时间可以是基于经验预先确定的预定加密算法可使用的时间长度。
66.如果在510处,安全中心502确定了加密密钥存在失效风险,则信令图500进行到515和520。在515处,安全中心502将更新的加密算法传输至生产方301。在520处,安全中心502将更新的加密算法传输至认证设备130。应当理解,过程515和过程520可以并行地同时进行,或者可以按不同次序来先后进行。
67.在525处,生产方301使用更新的加密密钥来为之后生成的新的设备110确定原始加密密钥。在530处,生产方301将原始加密密钥存储至设备110。在535处,生产方301将该原始加密密钥从其存储器移除。
68.在540处,认证设备130与设备110之间已经创建了安全连接。创建安全连接的过程可以是如图3所描绘的过程,在此不重复描述。接下来,在545处,认证设备130基于与设备110有关的信息、根据更新的加密算法来生成更新的加密密钥。
69.接下来,在550处,认证设备130将更新的加密密钥传输至设备110,以通知设备110更新加密密钥。例如,更新的加密密钥可以经由oob信道被传输至设备110。在555处,设备110利用更新的加密密钥替换其原始加密密钥。
70.经过替换,更新的加密密钥可以作为设备110的新的原始加密密钥。在设备110随后尝试再次加入云端120的网络、或者加入其他云端或边缘端的网络时,认证方,例如认证设备130会基于设备110的新的原始加密密钥来进行加密密钥验证过程。
71.通过这样的方式,可以在加密密钥存在失效风险或者加密算法存在泄密风险的情
况下,同步更新生产方与认证设备处的预定加密算法。一方面可以使生产方之后生产的设备可以利用更新的加密算法来生产原始加密密钥。另一方面,可以使之前生产的设备的原始加密密钥也可以被更新,从而当该设备之后想要加入其他云端网络时,认证设备可以利用更新的加密算法生成加密密钥来对其进行认证。以这样,能够进一步避免设备及云端等遭受攻击。
72.图6示出了可以用来实施本公开内容的实施例的示例设备600的示意性框图。例如,如图1所示的认证设备130或用户设备130可以由设备600实施。如图6所示,设备600包括中央处理单元(cpu)601,其可以根据存储在只读存储器(rom)602中的计算机程序指令或者从存储单元608加载到随机访问存储器(ram)603中的计算机程序指令,来执行各种适当的动作和处理。在ram 603中,还可存储设备600操作所需的各种程序和数据。cpu 601、rom 602以及ram 603通过总线604彼此相连。输入/输出(i/o)接口605也连接至总线604。
73.设备600中的多个部件连接至i/o接口605,包括:输入单元606,例如键盘、鼠标等;输出单元607,例如各种类型的显示器、扬声器等;存储单元608,例如磁盘、光盘等;以及通信单元609,例如网卡、调制解调器、无线通信收发机等。通信单元609允许设备600通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
74.上文所描述的各个过程和处理,例如方法200,可由处理单元601执行。例如,在一些实施例中,方法200可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元608。在一些实施例中,计算机程序的部分或者全部可以经由rom 602和/或通信单元609而被载入和/或安装到设备600上。当计算机程序被加载到ram 603并由cpu 601执行时,可以执行上文描述的方法200的一个或多个动作。
75.本公开可以是方法、装置、系统和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于执行本公开的各个方面的计算机可读程序指令。
76.计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是——但不限于——电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式压缩盘只读存储器(cd-rom)、数字多功能盘(dvd)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
77.这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
78.用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(isa)指令、
机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如smalltalk、c++等,以及常规的过程式编程语言—诸如“c”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。
79.这里参照根据本公开实施例的方法、装置、系统和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
80.这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理单元,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理单元执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
81.也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
82.附图中的流程图和框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
83.以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1