利用虚拟机远程维护电子网络中的多个客户端的系统和方法

文档序号:7848604阅读:144来源:国知局
专利名称:利用虚拟机远程维护电子网络中的多个客户端的系统和方法
技术领域
本发明总体上涉及信息交換,并且更具体地说,涉及用于以改进的安全性和保密性远程维护信息处理系统的方法和系统。
背景技术
分布式通信网络包括从专用内部网络到不安全的互联网的宽范围的系统。在任何通信网络中,电子内容从网络中的一个点流向另ー个点。关于这点,电子内容可以包括电子 文档、可执行文件、数据文件等。在ー些通信网络中,对该电子内容的访问可能被限制和/或限于特定的用户和/或客户端。存在多种方法来验证尝试获得对电子内容的访问的用户的标识,诸如用户名和密码组合、公用/专用密钥组合和/或生物特征(biometrics)。在一些网络中,中心服务器可以在向进行请求的用户和/或客户端分发电子内容之前采用这些方法。服务提供方与客户端之间的软件交换可以通过认证所交換的数据的内容和安全性来改进。用于认证的一些系统由于各种原因而难以实现。例如,其难以保护操作系统内的扫描和报告代理程序。作为另ー示例,客户端系统的大小可能由于大小而需要过多时间来完成扫描和/或发送报告。作为另ー示例,一些系统可能无法提供生物特征传感器与报告代理程序之间的安全连接。改进的认证方法和系统可以改进服务提供方与客户端之间的软件交換的安全性、速度和/或效率。

发明内容
本公开提供了ー种基本上消除或減少了与先前方法和系统关联的至少ー些缺点和问题的用于分发电子内容的方法和系统。根据ー种实施方式,一种用于对服务多个客户端的电子网络执行远程维护的系统可以包括中心服务器、托管第一虚拟机的第一客户端系统以及与所述第一客户端系统关联的接收机。所述中心服务器可以广播可用于传送到所述多个客户端系统的更新的软件模块的列表。所述第一客户端系统可以包括多个节点,所述多个处理资源中的每ー个具有存储在各自的关联的计算机可读存储器上的各自的处理指令集。所述接收机可操作为接收由所述中心服务器广播的所述列表。所述第一虚拟机可操作为至少部分地基于所述第一客户端系统的所述多个节点的标识来确定是否请求所接收到的列表上的任何更新的软件模块。所述接收机可以可操作为接收由所述第一虚拟机请求的任何更新的软件模块。所述第一虚拟机可以可操作为安装传送到所述客户端系统的任何更新的软件模块。根据另ー实施方式,一种用于在被配置为服务于多个客户端的电子网络中执行远程维护的系统可以包括客户端系统、服务器的集合、广播模块、与所述客户端系统关联的接收机以及由所述客户端系统操作的第一虚拟机。所述客户端系统可以包括操作第一虚拟机的多个处理资源。所述多个处理资源中的每ー个都可以具有存储在各自的关联的计算机可读存储器上的各自的处理指令集。所述服务器的集合可以与所述电子网络关联。所述服务器的集合可以可操作为在被请求时向所述客户端系统传送更新的软件模块。所述广播模块可以发送用于标识可用于从所述服务器的集合传送到所述客户端的更新的软件模块的列表的无线信号。所述接收机可以接收更新的软件模块的所述列表并将该列表发送到所述第一虚拟机。所述第一虚拟机可操作为至少部分地基于所述客户端系统的所述多个处理资源的所述标识来确定是否请求所接收到的列表上的任何更新的软件模块。所述第一虚拟机可操作为请求来自所述服务器的集合中的一个服务器的更新的软件模块。所述接收机可操作为从所述服务器的集合中的所述ー个服务器接收由所述第一虚拟机请求的任何更新的软件模块。所述第一虚拟机可以操作为安装传送到所述客户端系统的任何更新软件模块。根据另ー实施方式,ー种用于对由服务多个客户端的电子网络服务的客户端系统执行远程维护的方法可以包括以下步骤接收更新的软件模块的列表;确定是否请求任何更新软件模块;请求更新软件模块;接收所请求的更新的软件模块;以及将所接收到的更新的软件模块安装在所述客户端系统上。所述列表可以标识可用于传送到所述多个客户端 系统的更新的软件模块。所述关于请求更新软件模块的确定可以至少部分地基干与所述客户端系统关联的多个处理资源的所述标识。本公开的特定实施方式的技术优点包括提供了用于允许在客户端之间直接传递电子内容而不需要将两个客户端连接至服务器的方法。该方法可以包括基于各个客户端的特性的检查和/或授权该传递。该方法可以包括在从服务器传送了电子内容之后跟踪和/或追踪该电子内容的传递。根据以下附图、描述以及权利要求书,本领域技术人员将容易明白其它技术优点。而且,虽然上面已经列举了具体优点,但是各种实施方式可以包括全部或一些所列举的优点或者不包括所列举的优点。


为了更完整地理解本发明及其优点,现在结合附图对以下描述进行说明,附图中图I示出了根据本公开的教导的、包括客户端系统和外部数据中心的示例通信网络;图2示出了根据本公开的教导的、包括示例客户端系统和外部数据中心的示例通信网络;图3示出了根据本公开的教导的、包括客户端系统的细节的示例通信网络;以及图4-11示出了说明用于以改进的安全性和保密性对信息处理系统进行远程维护的各种方法的流程图。
具体实施例方式优选实施方式和它们的优点通过參照图I到图11来最佳地理解,附图中,相同的数字用于指示相同和对应的部分。图I示出了根据本公开的教导的、示例电子网络I的简化表示。电子网络I可以包括数据中心10和客户端系统20。电子网络I的一些实施方式可以包括多个客户端和它们的相应客户端系统。在图1-3中,为清楚起见,示出并讨论了单个客户端及其客户端系统20。
数据中心10可以被配置为向各个客户端和/或客户端系统20提供维护。这种维护可以包括管理软件和/或固件的更新和/或状态。在具有许多客户端系统20的复杂电子网络中,如果必须认证和/或验证报告,则对向各个客户端系统20的电子内容传递进行管理可能更加困难。出于公开的目的,“电子内容”、“内容”、“软件”和/或“软件更新”可以包括任何文件、文件、目标代码、可执行代码、数据记录或者电子网络的客户端可能希望访问的任何其它电子记录的数据结构。例示性示例可以包括文本文件、电子表格、电子邮件、医疗记录、图像和其它电子数据以及网页、专用网络、字处理程序、文件管理系统和其它程序。另外,“客户端”可以指充当終端用户的人,或者指由这种人用来接入通信网络的装置或多个装置,诸如个人计算机、信息站(kiosk)或移动计算装置。受信任计算(Trusted Computing)和TrustCube可以向服务提供方(例如,数据中心10)提供与客户端系统20有关的可认证报告。可认证报告可能难以保护与客户端系统20关联的扫描和/或报告代理程序。另外,完成扫描和发送大的关联报告所需的时间可能太大。作为另ー示例,可能难以实现针对客户端系统20的生物特征传感器及其报告代理程 序。在本发明的一些实施方式中,虚拟机(VM)技术和受信任计算技术的组合可以提供超过其它方法的优点。例如,利用具有针对生成报告的有限目的的最小操作系统(OS)的第一 VM可以向客户端系统20的其余部分提供针对外部访问的保护。作为另ー示例,因为第一 VM使用较少数量的文件,并且这些文件较小,所以可以减小发送给数据中心10的报告的大小。这些优点可以通过利用虚拟硬盘映像和虚拟存储器映像代替硬盘分区中的单个文件来増加。作为另ー示例,有限目的OS可以重复使用相同的文件和/或存储器映像,并且可以丢弃和/或删除针对那些文件和映像的改变。在一些实施方式中,VM技术可以与文件存储技术(例如,mbox)组合。例如,可以将文件以纯文本格式存储在单个文件中。这些技术可以允许文本处理工具容易地用于这些内容。虚拟机管理器(VMM)可以创建、运行、监测和/或终止各种VM。VMM可以起作用以截取VM之间的中断和/或故障,和/或控制应用对硬件装置和/或已安装软件的访问。VMM还可以通过在应用和/或VM在其中运行的各个线程之间共享时间来管理针对处理器的多任务。VMM的使用可以扩展上述VM的功能。作为另ー示例,生物特征传感器可以通过VMM利用独立的VM并入并连接至第一VM。数据中心10可以结合生物特征数据使用可认证报告技木,以评估客户端系统20的状态和/或生物特征数据的可信赖性。数据中心10可以包括处理器12、存储资源14以及通信总线16。处理器12可以包括可操作为解释和/或执行程序指令和/或处理数据的任何系统、装置或设备,并且可以不受限制地包括被配置为解释和/或执行程序指令和/或处理数据的微处理器、微控制器、数字信号处理器(DSP)、专用集成电路(ASIC)或者任何其它数字或模拟电路。在一些实施方式中,处理器104可以解释和/或执行存储在存储资源14和/或数据中心10的另ー组件中的程序指令和/或处理数据。数据中心10可以代表管理安全策略和认证属性的受信任的专用服务器。数据中心10可以包含数据库,该数据库包含限定ー组属性值的多个策略(在客户端系统20被准许访问电子内容和/或软件之前,这些策略必须被满足)。数据中心10可以接收来自客户端系统20的属性报告,属性报告标识与客户端系统20关联的ー个或更多个属性。在认证这些属性之后,数据中心10可以确定是否向客户端系统20提供所请求的服务。应用这种属性报告和认证也可以被称为“基于策略的管理”。该语境的数据可以包括表示客户端系统20的数据,诸如客户端系统20的物理位置(例如,IP地址)、安装在进行请求的机器上的特定软件(例如,严格防病毒软件)、生物特征标识符或任何其它合适的背景属性。存储资源14可以可通信地耦接至处理器12,并且可以包括可操作为在ー时段内保持程序指令或数据的任何系统、装置或设备(例如,计算机可读介质)。存储资源14可以包括随机存取存储器(RAM)、电可擦除可编程只读存储器(EEPROM)、PCMCIA卡、闪速存储器、磁存储器、光磁存储器或在存储资源12的电カ断开之后保持数据的非易失性存储器或易失性存储器的任何合适选择结果和/或集合。存储资源14可以包括硬件和软件的任何组合(包括控制逻辑)。例如,存储资源14 可以包括文档(诸如医疗记录)的集中式储存库。作为另ー示例,存储资源14可以表示通过网络提供针对特定应用、软件或其它介质的访问的应用服务提供方。这些应用、软件或介质可以包括文档阅读器、网络浏览器或文档编辑软件等。作为另ー示例,存储资源14可以与在线联网网站或电子邮件提供方关联。为描述清楚起见,图I将处理器12和存储资源14描述为独立组件。在一些实施方式中,处理器12和存储单元14可以包括存储在计算机可读介质上并可由与一个或更多个计算机和/或服务器关联的ー个或更多个处理器执行的独立软件程序。然而,处理器12和存储单元14还可以包括大型软件程序的硬编码到计算机可读介质中的组件或子例程和/或被配置为执行期望功能的任何硬件或软件模块。通信总线16可以是可操作为用作数据中心10与网络18之间的接ロ的任何合适的系统、设备或装置。通信总线16可以使得数据中心10能够利用任何合适的传输协议和/或标准来通过网络18进行通信,该传输协议和/或标准包括但不限于以下针对网络18的讨论列举的所有传输协议和/或标准。在一些实施方式中,网络18可以是封闭网络(例如,网络18仅可由授权客户端接入)。如所示,网络18可以包括能够发送音频和/或视频电信信号、数据和/或消息的任何网络。ー些示例可以包括无线电接入网络、公共交換电话网(PSTN)、公用或专用数据网络、局域网(LAN)、城域网(MAN)、广域网(WAN)、诸如互联网的局部性、地区性或全球性通信或计算机网络、有线或无线网络、企业内部网或者以上的任何组合中的全部或一部分。在操作中,网络18可以利用任何合适的通信协议来提供耦接至网络18的组件之间的连接性。为实现所述通信能力,网络18可以包括路由器、集线器、交換机、网关、呼叫控制器和/或任何合适的形式或布置的任何其它合适的组件。另外,网络18可以包括被配置为按照数据的分组、単元、帧、区段或其它部分的形式对信息进行通信的任何硬件和/或软件。尽管网络18被例示为单个网络,但是通信网络18可以包括任何数量或配置的网络。而且,通信网络I的特定实施方式可以包括任何数量或配置的网络18。在一些实施方式中,网络18可以包括虚拟专用网络(VPN)。与开放的和/或公用的网络相比,VPN提供増加的安全性。一般来说,VPN分离和/或封装数据传递,使得数据可以相对于共享中间网络(例如,LAN或WAN)的其它装置保持私密和/或安全性。在操作中,VPN可以允许多个客户端20与数据中心10相互作用,就像直接和/或专门连接一祥。客户端20可以包括至少部分地由数据中心10维护的电子网络I的任何系统和/或组件。客户端20可以包括多个处理器、相关软件和/或固件、传感器等。例如,客户端20可以包括汽车及其内部网络。作为另ー示例,客户端20可以包括具有处理器和软件标识模块(SIM)卡的便携式电话。在本公开的上下文中,客户端20可能是针对具体实施方式
来描述的,但是本教导并不因而受限。在一些实施方式中,与客户端20关联的各个处理器和存储资源可能由多个厂商和/或服务提供方来提供。在那些实施方式中,对各个处理器及其关联软件和/或固件的维护可能因需要针对所有多个厂商和/或服务提供方协调数据而变复杂。本公开的教导可以实现使各个资源彼此分离的虚拟划分,而不是允许无拘束地访问整个客户端系统20。客户端20可以包括具有用干与数据中心10进行无线通信的功能的计算机和/或计算装置。例如,客户端20可以包括台式计算机、膝上型计算机、个人数字助理(PDA)、智能电话,蜂窝或移动电话、车内或车外导航系统和/或移动游戏装置。客户端20可以操作一 个或更多个客户端应用(例如,网络浏览器、文本编辑器等)。图I示出了示例客户端系统20,该示例客户端系统20包括处理模块21、多个VM22、VMM 24、受信任平台模块(TPM) 26、资源列表28、客户端网络系统30、节点32以及GPS接ロ 40。一些实施方式可以通过创建多个VM 22并且利用VMM 24控制这些VM 22之间的信息流来为VM 22提供经增加的安全性。客户端系统20可以比图I所示的简化客户端网络系统30明显地更加复杂。例如,汽车可以包括客户端网络系统30(例如,FlexRay),该客户端网络系统30包括多个处理器,在一些示例中,包括几百个处理器。在图I中,节点32表示与客户端网络系统30关联的单个处理器和/或其它资源。VM 22可以包括与客户端网络系统30对应的和/或与和客户端网络系统30关联的单个处理对应的虚拟机。多个VM 22可以运行多个操作系统(OS)。在这种布置中,各个VM 22可以使用单个目的OS,并且通过VMM 24对客户端系统20和/或处理模块21的任何所需的处理资源进行时间共享。受信任平台模块26可以包括被配置为生成密钥的资源(例如,硬件伪随机数生成器)。在一些实施方式中,TPM 26可以包括远程证明和/或密封存储器(sealedstorage)。在一些实施方式中,TPM 26包括至少ー个专用处理器,该专用处理器具有被分配给处理器芯片并在制造期间烧制到处理器芯片中的唯一且秘密的RSA密钥。在TPM 26中使用唯一RSA密钥可以允许数据中心10验证客户端系统20实际上为客户端。例如,TPM 26可以采用包括客户端系统20的硬件和软件配置的摘要的散列密钥。散列密钥可以使得客户端系统20能够测试任何进入的软件包和/或更新,以验证它们没有被改变。ー个示例验证方法包括基于在处理器制造期间对于该处理器唯一的TPM背书(endorsement)密钥和/或与该背书密钥有关的另一受信任密钥的绑定、加密。另ー示例验证方法包括密封,其可以对TPM 26的条件施加附加状态需求。资源列表28可以包括实体的列表和/或登记。在一些实施方式中,资源列表28可以包括经准许访问和/或识别的实体的白名単。白名单可以包括TPM 26可以准许访问客户端系统20的任何数据中心10实体。在一些实施方式中,资源列表28可以包括被拒绝访问的实体的黑名単。客户端网络30可以包括特定客户端内的网络系统,其包括多个处理器和/或存储资源。例如,客户端网络30可以包括与汽车关联的FlexRay网络系统。FlexRay是针对管理汽车系统中的多个处理器开发的网络通信协议的具体实施方式
。作为另ー示例,控制器区域网络(CAN或CAN总线)是被设计成使得微控制器与装置能够在不需要主计算机的情况下彼此通信的通信协议标准的具体实施方式
。附加示例包括时间触发协议(TTP)和航空电子设备全双エ交换以太网(AFDX)。客户端系统20中的节点32可以包括客户端系统20的任何特定资源。例如,节点32可以包括处理器和/或它们的关联软件、固件和/或有关于处理器的处理指令。例如,汽车可以具有包括多个CPU的非常复杂的网络系统。各个CPU可以具有用于其由厂商提供的操作的软件和/或固件。客户端系统30可以负责各个节点32的操作和/或维护,这包括管理与客户端系统20中的各个节点32关联的软件和/或固件的版本和/或更新状态。
·
全球定位系统接ロ 40可以包括与全球定位系统(GPS)的任何接ロ。GPS包括提供可靠的位置和时间信息的基于空间的全球导航卫星系统。GPS可被具有GPS接收机的任何人和/或任何系统访问。使用特定且准确的位置和/或定时信息可以使得客户端处理模块21能够管理信息请求、下载和/或其它内容。图2示出了根据本公开的教导的、包括示例客户端系统20和外部数据中心IOa和IOb的示例通信网络2。数据中心10可以包括可由客户端系统20访问的任何外部数据库。仅出于例示的目的,与图2有关地描述了 ー个示例客户端系统20,其中客户端系统20包括移动导航系统。本公开的教导可以用于任何合适的客户端系统20。通信网络2可以包括互联网42、外部数据中心10以及客户端移动导航系统20。客户端系统20可以通过专用基础设施44 (例如,用户家中的基于家庭的互联网连接)与互联网42进行通信。数据中心IOa和IOb可以通过网络18与客户端系统20进行通信。网络18可以提供如本公开所述的安全通信。数据中心IOa可以包括在客户端系统20中有用的电子内容的数据库。例如,如果客户端系统20包括移动导航系统,则数据中心IOa可以包括与移动导航系统有关的地图、针对用户的更新接ロ以及其它内容。数据中心IOa还可以经由ISP与互联网42进行通信。数据中心IOb可以包括针对与移动导航系统20的操作有关的固件、维护以及软件的数据库。例如,数据中心IOb可以提供针对移动导航系统20中的各个处理器的固件的最新版本的列表。客户端系统20可以操作模块21中的多个VM 22,以与各个独立数据源连接。例如,VM 22a可以包括用干与互联网42交互的通用浏览器和/或网络OS。作为另ー示例,VM22b和22c可以包括用于分别与数据中心IOa和IOb交互的专门应用和虚拟OS。作为另ー示例,VM 22d可以包括用于与用户的汽车32中的各个系统交互的专门应用和虚拟OS。各个VM 22可以通过VMM 24仅与另一 VM 22进行通信。VMM 24可以与TPM合作地管理这些通信,以增加各个VM 22的安全性。例如,从互联网42接收到的内容可能不被安装至节点32,除非通过在此描述的各种方法中的任ー种方法被VMM 24许可。图3示出了根据本公开的教导的、包括客户端系统20的细节的示例通信网络2的细节。图3示出了 VMM 24负责各个VM 22的环境管理。各个VM 22可以包括由OS 46操作的关联应用44。VMM 24可以在适当时候向各个VM 22提供存储资源48。VMM 24可以与各个VM 22关联地操作一个或更多个程序50。VMM 24还可以与TPM 26和/或资源列表28协作,以提供加密、确认密钥、白名单和/或黑名単。图4例示了根据本公开的特定实施方式的、用于执行被配置为服务于多个客户端系统20的电子网络中的远程维护的示例方法60的流程图。方法60可以包括多个步骤,并且可以由电子网络I的各个组件(包括数据中心10和/或其它资源)来执行。方法60可以在62开始。在一些实施方式中,客户端系统20可以包括汽车和/或与汽车关联的FlexRay系统。步骤64可以包括操作具有与客户端系统中的各个处理器和资源关联的软件的数据库的数据中心10。例如,步骤64可以包括维护与客户端系统20关联的处理器的列表以及针对使用客户端系统20的处理器而提供的任何当前软件和/或固件。 步骤66可以包括与由客户端系统20的处理模块21托管的第一虚拟机22b进行通信。第一虚拟机22b可以处理与数据中心10关联的第一数据集。如以上讨论的,第一虚拟机22b可以由VMM 24来管理。第一虚拟机22b可以被配置为监测处理器的列表和它们的由数据中心10维护的关联软件和/或固件。步骤68可以包括接收来自第一虚拟机22b的、标识用于传送至客户端系统20的软件更新的请求。例如,数据中心10可以通过网络18接收来自第一虚拟机22b的这种请求。步骤70可以包括执行验证客户端系统20的标识的证明处理。证明处理可以包括上面讨论的验证处理中的任ー个。在一些实施方式中,证明处理可以包括接收、测试和/或验证ー个或更多个生物特征指示符。在一些实施方式中,数据中心10可以执行证明处理以验证客户端系统20的标识。步骤72可以包括利用网络18向第一虚拟机22b发送所标识的软件更新。网络18可以是如上讨论的封闭网络。在一些实施方式中,数据中心10可以执行步骤72。在ー些实施方式中,所标识的软件更新可以无线地发送。步骤74可以包括授权第一虚拟机22b利用与客户端系统关联的第二虚拟机22c将所标识的软件更新安装在客户端系统20上。在一些实施方式中,数据中心10可以执行步骤74。在其它实施方式中,VMM 26可以执行步骤74。方法60可以在76结束。方法60可以对客户端系统20有用,其中,第一虚拟机22b和第二虚拟机22c通过VMM 24通信。使用VMM 24可以保护客户端系统20不被数据中心10直接访问,和/或另外增加客户端系统20的组件的安全性。在方法60的一些实施方式中,第一虚拟机22b可以询问第二虚拟机22c,以验证客户端系统20已经成功安装软件更新。在具有大量节点32的客户端系统20中,传统维护方法需要在安全维护位置维修客户端系统20。通过无线电传输和/或另ー空中系统的远程维护在那些传统方法下可能降低安全性。相反,采用方法60的电子网络I可以允许在不降低安全性的情况下使用远程维护。电子网络I的特定实施方式可以通过利用VMM 24管理VM 22来增加任何特定VM 22的安全性,其中,各个VM 22之间的数据交换可以由VMM 24来操作和/或控制。
图5例示了根据本公开的特定实施方式的、用于客户端系统20请求并接收来自远程服务器的软件更新的示例方法80的流程图。方法80可以包括多个步骤,并且可以由电子网络I的各个组件(包括客户端系统20的处理器模块21和/或其它资源)来执行。在一些实施方式中,客户端系统20可以包括汽车和/或与汽车关联的FlexRay系统。方法80可以在82开始。步骤84可以包括托管与客户端系统20关联的两个VM 22。第一 VM 22b可以处理与客户端系统20关联的第一数据集。第二 VM 22c可以处理与外部数据中心10关联的第
ニ数据集。步骤86可以包括操作被配置为管理 两个虚拟机22之间的通信的VMM 24。使用VMM 24可以保护客户端系统20不被数据中心10直接访问和/或另外增加客户端系统20的组件的安全性。步骤88可以包括识别第一数据集与第二数据集相比已经过期。步骤88可以由VM22执行。例如,第二 VM 22b可以询问第一 VM 22c以检查任何处理器和/或它们的相应软件和/或固件的状态、版本和/或配置。例如,第二 VM 22b可以与数据中心10中的更新数据比较特定处理器和/或其相应软件和/或固件的状态、版本和/或配置。步骤90可以包括标识用于传送至客户端系统20的软件更新。步骤90可以由VM22、数据中心10和/或电子网络I的其它组件来执行。在一些实施方式中,VM 22可以经由安全机构(例如,经由TPM/TNC)向数据中心10发送与客户端系统20有关的数据。步骤92可以包括执行验证数据中心10的标识的证明处理。证明处理可以包括上面讨论的验证处理中的任ー个。在一些实施方式中,证明处理可以包括接收、测试和/或验证ー个或更多个生物特征指示符。在一些实施方式中,客户端系统20可以利用第二 VM22b、TPM 24和/或资源列表28来执行证明处理以验证数据中心10的标识。步骤94可以包括请求来自外部数据中心10的所标识的软件更新。在一些实施方式中,第二 VM 22b可以执行步骤94。所标识的软件更新可以包括与客户端系统20的ー个或更多个节点32 (例如,CPU)有关的各个软件和/或固件。步骤96可以包括接收从外部数据中心10到客户端系统20的所标识的软件更新。在一些实施方式中,第二 VM 22b将执行步骤96。所标识的软件更新可以通过网络18发送。在一些实施方式中,VMM 24可以在执行步骤98之前检查所接收的软件更新的完整性。步骤98可以包括通过第一虚拟机22b将所发送的软件更新安装在客户端系统20上。在方法80的一些实施方式中,第二虚拟机22b可以询问第一虚拟机22c,以验证客户端系统20已经成功安装软件更新。在一些实施方式中,客户端系统20可以创建和/或维护针对接收和/或安装软件更新的日志。在一些实施方式中,数据中心10可以创建和/或维护针对发送和/或安装软件更新的日志。该日志可以包括时间戳。方法80可以在99结束。在具有大量节点32的客户端系统20中,传统维护方法需要在安全维护位置维修客户端系统20。通过无线电传输和/或另ー空中系统进行的远程维护在那些传统方法下可能降低安全性。相反,采用方法80的电子网络I可以允许在不降低安全性的情况下使用远程维护。电子网络I的特定实施方式可以通过利用VMM 24管理VM 22来增加任何特定VM 22的安全性,其中,各个VM 22之间的数据交换可以由VMM 24来操作和/或控制。图6例示了根据本公开的特定实施方式的、用于执行在由电子网络提供服务的客户端系统中的远程维护的示例方法100的流程图。方法100可以包括多个步骤,并且可以由电子网络I的各个组件(包括数据中心10和/或其它资源)来执行。在一些实施方式中,客户端系统20可以包括汽车和/或与汽车关联的FlexRay系统。方法100可以在102开始。步骤104可以包括维护数据库,所述数据库包括将客户端系统节点32的列表与相应处理指令集关联的信息。数据中心10可以单独或者结合其它资源来执行步骤104。例如,个体可以负责随着新信息变得可用而更新数据库。作为另ー示例,与客户端系统节点32关联的各个厂商和/或提供方可以通过电子方式向数据中心10传送更新软件和/或固件包。步骤106可以包括接收针对软件更新的请求,该请求包括与特定客户端系统20以 及特定处理指令集对应的标识符。数据中心10可以执行步骤106。数据中心可以通过网络18接收该请求。步骤108可以包括访问该数据库以检索与客户端系统节点32以及与关联的节点32相关的相应处理指令集有关的信息。数据中心10可以基于所接收的请求来执行步骤108。步骤110可以包括执行用于模拟节点32与由安装所请求的软件更新导致的相应处理指令的组合的计算。数据中心10可以执行步骤110。方法100可以在112结束。在一些实施方式中,客户端系统20可以包括具有多个节点32 (例如,CPU和/或处理资源)的复杂网络系统。各个节点32可以包括由厂商提供的关联软件和/或固件。随着任何特定节点32接收到来自其相应厂商的更新软件和/或固件,存在用于客户端系统20的软件和/或固件的新组合。可能的组合的数量可能非常大。软件和/或固件的无效的和/或不合适的组合可能影响客户端系统20的操作。在一些实施方式中,数据中心10可以维护节点32及其相应软件的数据库。方法100可以使得数据中心10和/或电子网络I的附加组件能够在向客户端系统20传送任何电子内容之前,模拟所提出的节点32和/或它们的相应软件和/或固件的组合。针对操作完整性、兼容性和/或任何其它合适标准测试所提出的组合可増加客户端系统20的可靠性和/或稳定性。图7例示了根据本公开的特定实施方式的、用于执行针对由服务多个客户端20的电子网络I提供服务的客户端系统20的远程维护的示例方法120的流程图。方法120可以包括多个步骤,并且可以由电子网络I的各个组件(包括客户端系统20和/或其它资源)来执行。在一些实施方式中,客户端系统20可以包括汽车和/或与汽车关联的FlexRay系统。方法120可以在122开始。步骤124可以包括接收可用于传送至多个客户端系统20的更新的软件模块的列表。这些更新的软件模块可以托管在多个服务器上。步骤124可以由客户端系统20执行。例如,第一 VM 22b可以向数据中心10查询该列表,并接着接收该列表。步骤126可以包括至少部分地基干与客户端系统20关联的多个节点32的标识,来确定是否请求该列表上的任何更新的软件模块。在一些实施方式中,第一 VM 22b可以考虑客户端系统20中的处理器的列表,并且比较该列表与可用模块的列表。例如,如果客户端系统20是汽车和/或与汽车关联的FlexRay系统,则第一 VM 22b可以基于该汽车的品牌、型号和/或年份来确定是否请求更新。步骤128可以包括请求更新软件模块。在一些实施方式中,步骤128可以是空中和/或远程通信。客户端系统20可以执行步骤128。例如,第一 VM 22b可以向数据中心10请求所述更新软件模块。步骤130可以包括接收所请求的更新的软件模块。在一些实施方式中,更新的软件模块可以托管在多个服务器上。在这种实施方式中,客户端系统20可以从托管所请求的模块的特定服务器接收所请求的模块。在这些实施方式中,更新的软件模块的列表可以包括标识各个模块的位置的统ー资源定位符。步骤132可以包括将所接收的更新的软件模块安装在客户端系统上。更新的软件模块可以通过空中方式和/或通过另ー远程通信系统来传送。方法120可以在134结束。 图8例示了根据本公开的特定实施方式的、用于执行在被配置为服务于多个客户端系统20的电子网络I中的远程维护的示例方法140的流程图。方法140可以包括多个步骤,并且可以由电子网络I的各个组件(包括数据中心10和/或其它资源)来执行。在一些实施方式中,客户端20可以包括移动电话。方法140可以在142开始。步骤144可以包括操作具有与客户端系统中的各个节点32关联的软件的数据库的数据中心10。在客户端系统20包括移动电话的实施方式中,节点32可以包括各种软件标识符模块(SM)。数据中心10可以执行步骤144。步骤146可以包括与由客户端系统20托管的第一虚拟机22b进行通信。第一虚拟机22b可以处理与数据中心10关联的第一数据集。例如,第一虚拟机22b可以被配置为访问与客户端系统20的各个节点32有关的各种配置、修订号等的列表。数据中心10可以利用网络18执行步骤146。数据中心10可以将与第一 VM 22b关联的数据集与现行版本和/或更新状态的列表进行比较,并标记标识中的任何变化。步骤148可以包括接收第一虚拟机22b标识用于传送至客户端系统20中的各种节点32中的一个节点的软件更新的请求。例如,第一 VM 22b可以请求针对移动电话中的特定SIM的软件更新。数据中心10可以执行步骤148。步骤150可以包括执行验证客户端系统20的标识的证明处理。数据中心10可以执行步骤150。证明处理可以包括上面讨论的验证处理中的任ー个。在一些实施方式中,证明处理可以包括接收、测试和/或验证ー个或更多个生物特征指示符。在一些实施方式中,客户端系统20可以利用第二 VM 22b、TPM 24和/或资源列表28来执行用于验证数据中心10的标识的证明处理。步骤152可以包括利用网络向第一虚拟机发送所标识的软件更新。在一些实施方式中,数据中心10可以通过网络18发送所标识的软件。在一些实施方式中,步骤152可以通过无线方式和/或空中方式发送所标识的软件更新来执行。步骤154可以包括授权第一 VM 22b利用与各个节点32中的所述ー个节点关联的第二 VM 22c将所接收的软件更新安装在客户端系统20上。第一 VM 22b与第二 VM 22c可以通过VMM 24进行通信。在一些实施方式中,客户端系统20可以在接受来自数据中心10的所接收的软件之前,执行验证所接收的软件的完整性和/或安全性的证明处理。方法140可以在156结束。证明可以在安装所接收的软件更新之前和/或之后进行。在一些实施方式中,第一 VM 22b可以询问第二 VM 22c以验证客户端系统20已经接收到该软件更新。在一些客户端系统20中,多个节点32中的每ー个可以利用唯一操作系统来操作。例如,在具有多个SIM卡的移动电话中,各个SIM卡可以对其自己的OS进行操作。多个SM卡之间和/或客户端系统20的各个VM 22之间的数据交换可能因OS的变化而变复杂。在一些实施方式中,特定SM卡可能具有比另ー SM卡及其OS低级别的安全性需求。在这些实施方式中,传统维护需要在安全维护位置维修客户端系统20。使用方法140和本公开的教导可以允许通过空中方式和/或无线方式维护客户端系统20。在具有通过VMM 24链接的多个VM 22的客户端系统中,数据中心10与客户端系统20之间的数据交换可以由TPM 26来支持,并且提供增加的安全性和/或可靠性。 图9例示了根据本公开的特定实施方式的、用于客户端系统20请求并接收来自远程服务器10的软件更新的示例方法160的流程图。方法160可以包括多个步骤,并且可以由电子网络I的各组件(包括客户端系统20和/或其它资源)来执行。在一些实施方式中,客户端20可以包括移动电话。节点32可以包括用户标识模块(SM)卡。方法160可以在162开始。步骤144可以包括托管与客户端系统20关联的两个虚拟机22。第一 VM 22b可以处理与外部数据中心10关联的第一数据集。第二 VM 22c可以处理与客户端系统10中的节点32关联的第二数据集。第一 VM 22b与第二 VM 22c可以通过VMM 24进行通信,以维护各个VM 22的数据完整性和/或可靠性。步骤146可以包括操作被配置为管理两个VM之间的通信的VMM 24。客户端系统20可以与TPM 26结合执行步骤146。步骤148可以包括识别第一数据集与第二数据集相比标识已过期。数据中心10、VM 22b或22c和/或VMM 24可以执行步骤148。步骤150可以包括标识用于传送至节点32的软件更新,该软件更新被配置为恢复第一数据集与第二数据集之间的标识。步骤152可以包括执行验证客户端系统的标识、验证数据中心10的标识和/或所标识出的软件更新的可靠性和/或安全性的证明处理。电子网络I的某一部分可以执行该证明处理。例如,VMM 24可以结合TPM 26进行操作,以确认软件包和/或数据中心10的标识。步骤154可以包括请求来自外部数据中心10的所标识的软件更新。第一 VM 22b可以执行步骤154。步骤156可以包括接收从外部数据中心10至第一 VM 22b的所标识的软件更新。步骤158可以包括通过第二 VM 22c将所发送的软件更新安装在节点32上。在一些实施方式中,第一 VM 22b可以询问第二 VM 22c以验证节点32已经接收到该软件更新。在一些客户端系统20中,多个节点32中的每ー个可以利用唯一操作系统进行操作。例如,在具有多个SM卡的移动电话中,各个SM卡可以以其自己的OS进行操作。多个SIM卡之间和/或客户端系统20的各个VM 22之间的数据交换可能因OS的差别而变复杂。在一些实施方式中,特定SM卡可以具有比另ー SIM卡及其OS低级别的安全性需求。在这些实施方式中,传统维护需要在安全维护位置维修客户端系统20。方法160的使用和本公开的教导可以使得能够通过空中方式和/或无线方式维护客户端系统20。在具有通过VMM 24链接的多个VM 22的客户端系统中,数据中心10与客户端系统20之间的数据交换可以由TPM 26来支持,并且提供增加的安全性和/或可靠性。图10例示了根据本公开的特定实施方式的、用于验证电子软件代码完整性的示例方法182的流程图。方法182可以包括多个步骤,并且可以由电子网络I的各个组件(包括客户端系统20和/或其它资源)来执行。方法182可以在184开始。步骤186可以包括向客户端系统20提供多个加密密钥,所述多个加密密钥中的每一个与相应时间因子相关。该时间因子可以至少部分地取决于在传送软件代码包时生成的控制因子和时间戳、该软件代码包的更新定时或者与该客户端关联的受信任协议模块的更新定时。 步骤188可以包括基于与软件代码包有关的时间因子利用所述多个加密密钥中的一个来对该软件代码包进行加密。步骤190可以包括向客户端系统20传送加密的软件代码包。步骤192可以包括向客户端20通知基于与客户端20接收软件代码包的时间关联的时间因子来选择解密密钥。方法182可以在194结束。传统软件代码的完整性可以利用电子签名(例如,公用密钥基础设施(PKI)认证方法)来检查。然而,与本公开的方法相比,使用电子签名可能不可靠。例如,电子签名可以并入到期日期,在该到期日期之后,签名失效。可以在执行电子签名确认处理之前和/或之后替换和/或改变代码。根据本公开的教导,代码完整性可以通过包括更新定时/密钥控制来实质改迸。该加密密钥可以基于时间因子而改变。例如,该时间因子可以至少部分地取决于与发送和/或传送电子内容有关的时间戳。作为另ー示例,时间因子可以至少部分地取决于TPM 26和/或VM 22的更新定时。在任何情况下,该时间因子还可以取决于预先设置的控制因子α。可以通过与TPM 26关联的资源列表28存储多个加密密钥。利用合适的加密密钥,TPM26还可以利用其电子签名日期来检查电子内容的到期时间。图11例示了根据本公开的特定实施方式的、用于验证电子软件代码的完整性的示例方法200的流程图。方法200可以包括多个步骤,并且可以由电子网络I的各个组件(包括客户端系统20和/或其它资源)来执行。方法200可以在202开始。根据本公开的教导,代码完整性可以通过包括更新定时/密钥控制来实质改迸。该加密密钥可以基于时间因子而改变。例如,该时间因子可以至少部分地取决于与发送和/或传送电子内容相关的时间戳。作为另ー示例,时间因子可以至少部分地取决于TPM 26和/或VM 22的更新定时。在任何情况下,该时间因子还可以取决于预先设置的控制因子α。可以通过与TPM 26关联的资源列表28存储多个加密密钥。利用合适的加密密钥,TPM26还可以利用其电子签名日期来检查电子内容的到期时间。步骤204可以包括存储来自数据中心10的加密密钥的列表,各个加密密钥与相应时间因子相关。该列表可以由TPM 24和/或由与TPM 24关联的存储资源来存储。步骤206可以包括接收来自数据中心10的加密软件代码包。在一些实施方式中,还可以接收电子签名。
步骤208可以包括基于时间因子来选择加密密钥。在一些实施方式中,TPM 24还可以检查随着加密软件包传送的电子签名。方法200可以在210结束。尽管图4-11表示了要针对方法60、80、100、120、140、160、184以及200采取的特定数量的步骤,但是各种方法可以以比所描绘的那些步骤更多或更少的步骤来执行。利用本文公开的方法和系统,可以改进、減少或消除与维护针对电子内容的安全访问关联的特定问题。例如,本文公开的方法和系统可以针对执行客户端系统的远程维护的电子网络提供増加的安全性和/或可靠性。尽管已经利用多个实施方式描述了本发明,但是本领域技术人员可以想到各种改变和修改。本发明g在涵盖落入所附权利要求书的范围内的这些改变和修改。本公开的教导涵盖本领域普通技术人员应当理解的、对于本文的示例实施方式的所有改变、替换、变型、更改、修改。
具体实施方式
中,可以将ー个或更多个网页与联网系统和/或联网服务关联。
具体实施方式
可能涉及检索和/或获得(render)由任何类型的网络可寻址资源或网站托管的结构性文档。另外,在本文使用吋,“用户”可以包括个体、団体和/或公司实体(例如,商业和第三方应用)。
权利要求
1.一种用于对服务多个客户端的电子网络进行远程维护的系统,所述系统包括 中心服务器,所述中心服务器广播可用于传送到所述多个客户端系统的更新的软件模块的列表; 第一客户端系统,所述第一客户端系统包括多个处理资源,所述多个处理资源中的每一个处理资源都具有存储在各自关联的计算机可读存储器上的各自的处理指令集;以及接收机,所述接收机与所述第一客户端系统关联,所述接收机能够操作以接收由所述中心服务器广播的所述列表; 由所述第一客户端系统托管的第一虚拟机,所述第一虚拟机能够操作以至少部分地基于所述第一客户端系统的所述多个处理资源的标识来确定是否请求所接收到的列表上的任何更新的软件模块; 所述接收机能够操作以接收由所述第一虚拟机请求的任何更新的软件模块,并且 所述第一虚拟机能够操作为安装传送到所述客户端系统的任何更新的软件模块。
2.根据权利要求I所述的系统,其中,所述客户端系统包括与汽车关联的FlexRay系统。
3.根据权利要求I所述的系统,其中,可用于传送到所述客户端系统的更新的软件模块的所述列表包括针对各个可用的更新的软件模块的相应统一资源定位符。
4.根据权利要求I所述的系统,其中,所述中心服务器包括数据中心。
5.根据权利要求I所述的系统,其中,所述客户端系统包括与汽车关联的FlexRay系统,并且所述第一虚拟机至少部分地基于所述汽车的品牌、型号和年份来确定是否请求所接收到的列表上的任何更新的软件模块。
6.根据权利要求I所述的系统,所述系统还包括所述第一虚拟机能够操作为通过空口方式连接到所述电子网络以请求可用于传送到所述客户端的更新的软件模块的所述列表中的更新的软件模块。
7.一种用于在被配置为服务多个客户端的电子网络中进行远程维护的系统,所述系统包括 客户端系统,所述客户端系统包括操作第一虚拟机的多个处理资源; 所述多个处理资源中的每一个处理资源都具有存储在各自的关联的计算机可读存储器上的各自的处理指令集; 服务器的集合,所述服务器的集合与所述电子网络关联,所述服务器的集合能够操作以在被请求时向所述客户端系统传送更新的软件模块; 广播模块,所述广播模块发送用于标识可用于从所述服务器的集合传送到所述客户端的更新的软件模块的列表的无线信号;以及 接收机,所述接收机与所述客户端系统关联,所述接收机接收更新的软件模块的所述列表并将所述列表发送到所述第一虚拟机; 所述第一虚拟机能够操作以至少部分地基于所述客户端系统的所述多个处理资源的所述标识来确定是否请求所接收到的列表上的任何更新的软件模块; 所述第一虚拟机能够操作以请求来自所述服务器的集合中的一个服务器的更新的软件模块; 所述接收机能够操作以从所述服务器的集合中的所述一个服务器接收由所述第一虚拟机请求的任何更新的软件模块;并且 所述第一虚拟机能够操作来安装传送到所述客户端系统的任何更新的软件模块。
8.根据权利要求7所述的系统,其中,可用于从所述服务器的集合传送到所述客户端的更新的软件模块的所述列表包括针对所述服务器的集合中的各服务器的相应的统一资源定位符。
9.根据权利要求7所述的系统,其中,所述客户端系统包括与汽车关联的FlexRay系统。
10.根据权利要求7所述的系统,其中,可用于传送到所述客户端系统的更新的软件模块的所述列表包括针对各个可用的更新的软件模块的相应的统一资源定位符。
11.根据权利要求7所述的系统,其中,所述中心服务器包括数据中心。
12.根据权利要求7所述的系统,其中,所述客户端系统包括与汽车关联的FlexRay系统,并且所述第一虚拟机至少部分地基于所述汽车的品牌、型号和年份来确定是否请求所接收到的列表上的任何更新的软件模块。
13.根据权利要求7所述的系统,所述系统还包括所述第一虚拟机能够操作以通过空口方式连接到所述电子网络以请求可用于传送到所述客户端的更新的软件模块的所述列表中的更新的软件模块。
14.一种用于对由服务多个客户端的电子网络所服务的客户端系统进行远程维护的方法,所述方法包括以下步骤 接收可用于传送到多个客户端系统的更新的软件模块的列表; 至少部分地基于与所述客户端系统关联的多个处理资源的标识来确定是否请求所述列表上的任何更新的软件模块; 请求更新的软件模块; 接收所请求的更新的软件模块;以及 将所接收到的更新的软件模块安装在所述客户端系统上。
15.根据权利要求14所述的方法,其中,所述客户端系统包括与汽车关联的FlexRay系统。
16.根据权利要求14所述的方法,所述方法还包括将可用于传送到所述多个客户端系统的所述更新的软件模块托管在多个服务器上。
17.根据权利要求14所述的方法,所述方法还包括将可用于传送到所述多个客户端系统的所述更新的软件模块托管在多个服务器上,并且其中,可用于传送的更新的软件模块的所述列表包括针对可用于传送的所述更新的软件模块中的各更新的软件模块的相应统一资源定位符。
18.根据权利要求14所述的方法,其中,可用于传送到所述多个客户端系统的更新的软件模块的所述列表由包括数据中心的中心服务器来广播。
19.根据权利要求14所述的方法,其中,所述客户端系统包括与汽车关联的FlexRay系统,并且虚拟机至少部分地基于所述汽车的品牌、型号和年份来确定是否请求所接收到的列表上的任何更新的软件模块。
20.根据权利要求14所述的方法,所述方法还包括通过空口方式连接到所述电子网络,以请求可用于传送到所述客户端系统的更新软件模块的所述列表中的更新的软件模V块。
全文摘要
一种用于对服务多个客户端的电子网络执行远程维护的系统可以包括中心服务器、托管第一虚拟机的第一客户端系统及与第一客户端系统关联的接收机。中心服务器可以广播可用于传送到多个客户端系统的更新的软件模块的列表。第一客户端系统可以包括多个节点,各处理资源具有存储在各自关联的计算机可读存储器上的对应的处理指令集。接收机可操作为接收由中心服务器(124)广播的列表。第一虚拟机可操作为至少部分地基于第一客户端系统(126)的多个节点的标识来确定是否请求所接收到的列表上的任何更新的软件模块。接收机可操作为接收由第一虚拟机(130)请求的任何更新软件模块。第一虚拟机可以可操作为安装传送到客户端系统(132)的任何更新的软件模块。
文档编号H04W8/24GK102859935SQ201180014465
公开日2013年1月2日 申请日期2011年3月1日 优先权日2010年3月23日
发明者小谷诚刚, 铃木雅人 申请人:富士通株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1