用于管理软件版本的方法、装置和计算机程序产品的制作方法

文档序号:6595617阅读:249来源:国知局
专利名称:用于管理软件版本的方法、装置和计算机程序产品的制作方法
技术领域
本发明的各种实施方式总体上涉及软件安装,并且更具体地,涉及一种用于管理软件版本的方法、装置和计算机程序产品。
背景技术
现代通信时代已经带来有线和无线网络的极大扩张。已经开发各种类型的联网技术使得受消费者需求所激发的计算机网络、电视网络、电话网络等前所未有的扩张。无线和移动联网技术已经在提供信息传送的更多灵活性和即时性的同时,解决了有关消费者的需求。用于执行应用、传达数据和存储数据的有线和/或无线设备已经变成了商务和社交环境中的重要工具。个人已经变得依赖于这些设备以完成每日的任务,具体是涉及到数据共享和通信的任务。用户需要这些通信能力,因而满足客户需求的网络提供商这样做的同时针对提供的服务收取费用。在一些实例中,为了避免支付通信费,黑客可能尝试利用在通信设备执行的软件中的安全故障。例如,黑客可以识别出在通信设备如蜂窝电话或者其它移动终端执行的软件中的弱点。黑客然后可以利用该弱点以免费通信、在未批准的蜂窝通信系统上使用蜂窝电话或者利用蜂窝电话的或者支持该设备的通信系统的其它功能。

发明内容
描述了一种以可以防止软件降级至过期或者更旧版本的方式用于软件管理的方法、装置和计算机程序产品。本发明的示例实施方式可以使用证书(例如,安全证书)以验证恰当软件版本安装于设备如计算或者通信设备上。在一些示例实施方式中,证书可以与设备(例如,硬件证书)关联,而另一证书可以与特定版本的软件应用关联(例如,共同配置证书)。可以用设备的公用标识符认证硬件证书。在认证硬件证书之后,可以认证共同配置证书,并且可以按照硬件证书的安全证书版本标准验证共同配置证书的版本。如果认证了共同配置证书并且验证了版本,则可以验证设备上安装的软件的版本并且可以批准允许执行软件。还应当注意,尽管上文描述涉及一个运用两个安全证书的示例实施方式,但是一些示例实施方式可以运用一个安全证书。在一个示例实施方式中,提供一种用于管理软件版本的方法。示例方法可以包括确定第一安全证书的安全标识符是否与受信的安全标识符匹配。就这一点而言,第一安全证书可以包括软件版本标准。示例方法也可以包括确定软件应用的软件版本是否满足第一安全证书的软件版本标准。可以响应于确定第一证书的安全标识符与受信的安全标识符匹配来进行这一确定。另外,该方法也可以包括响应于确定软件版本满足软件版本标准来允许处理器执行软件应用。在另一示例实施方式中,提供了一种用于管理软件版本的装置。该装置可以包括处理器。处理器可以被配置成确定第一安全证书的安全标识符是否与受信的安全标识符匹配。就这一点而言,第一安全证书可以包括软件版本标准。处理器也可以被配置成确定软件应用的软件版本是否满足第一安全证书的软件版本标准。处理器可以被配置成响应于确定第一证书的安全标识符与受信的安全标识符匹配来进行这一确定。另外,处理器也可以被配置成响应于确定软件版本满足软件版本标准来允许执行软件应用。在另一示例实施方式中,提供一种用于管理软件版本的计算机程序产品。计算机程序产品可以包括一个或者多个计算机可读存储介质,该存储介质具有存储于其中的可执行的计算机可读程序代码指令。计算机可读程序代码指令可以被配置成确定第一安全证书的安全标识符是否与受信的安全标识符匹配。就这一点而言,第一安全证书可以包括软件版本标准。计算机可读程序代码指令也可以被配置成确定软件应用的软件版本是否满足第一安全证书的软件版本标准。计算机可读程序代码指令可以被配置成响应于确定第一证书的安全标识符与受信的安全标识符匹配来进行这一确定。另外,计算机可读程序代码指令也可以被配置成响应于确定软件版本满足软件版本标准来允许执行软件应用。在又一示例实施方式中,提供一种用于管理软件版本的装置。示例装置可以包括用于确定第一安全证书的安全标识符是否与受信的安全标识符匹配的装置。就这一点而言,第一安全证书可以包括软件版本标准。示例装置也可以包括用于确定软件应用的软件版本是否满足第一安全证书的软件版本标准的装置。可以响应于确定第一证书的安全标识符与受信的安全标识符匹配来进行这一确定。另外,该装置也可以包括用于响应于确定软件版本满足软件版本标准来允许执行软件应用的装置。


已经这样一般性地描述了本发明,现在将参照未必按比例绘制的以下附图图Ia和图Ib描绘了根据本发明示例实施方式的包括用于管理软件版本的安全证书的关系图;图2是根据本发明各种示例实施方式的用于管理软件版本的装置的示意框图;以及图3和图4是根据本发明各种示例实施方式的用于管理软件版本的方法的流程图。
具体实施例方式现在下文将参照其中示出本发明的一些但是并非所有实施方式的附图更全面地描述本发明的实施方式。实际上,本发明可以以许多不同形式来实施而不应理解为限于这里阐述的实施方式;实际上,提供这些实施方式使得本公开内容将满足适用法律要求。贯穿全文,相似的参考标号指代相似的元素。如这里所用,术语“数据”、“内容”、“信息”和类似术语可互换用来指代能够根据本发明的实施方式来发送、接收、操作和/或存储的数据。如这里所用,短语软件版本可以指代整个软件应用或者软件应用的仅部分或者成分的版本。如这里所用术语“证书”可以指代可以使用任何已知方案(例如私用/公用密钥方案)来签名的任何签名数据块。另外,提供如这里所用术语“示例性”并非为了传达任何定性评价而代之以仅传达举例说明。图Ia描绘了根据本发明各种示例实施方式的包括安全证书的关系图。就这一点而言,可以在用于管理软件版本的方案中包括硬件证书105和共同配置证书125(统称为安全证书)。在一些示例实施方式中,硬件证书105和共同配置证书125的实现允许更新或者升级软件版本。另外,在一些示例实施方式中,硬件证书105和共同配置证书125的实现也防止改变成更旧或者不希望的软件版本。运用硬件证书105和共同配置证书125的示例实施方式提供在设备的唯一公用标识符与特定软件版本之间的安全纽带以保证设备正在利用恰当软件版本。就这一点而言, 硬件证书105可以与设备更紧密地关联,而共同配置证书125可以与软件版本更紧密地关联。在可以安全认证的硬件证书105与共同配置证书125之间的关系可以有助于升级设备上的软件同时也提供安全特征。一般而言,根据一些示例实施方式,可以在向设备引入更新的软件版本时在该设备上更新共同配置证书125。硬件证书105的标准可以用来验证共同配置证书125正确并且由此验证软件版本对于设备而言恰当。在确定在设备上安装恰当软件版本之后,可以允许软件由设备执行。就这一点而言,软件版本可以对于设备而言恰当,不仅因为软件是更新版本,还因为软件版本对于设备的特定配置(例如设备变体)而言是恰当的。就这一点而言,可以经由设备的唯一公用标识符来标识设备的特定配置。例如,可以在存储设备配置信息的数据库中查询公用标识符。然而,硬件证书105和共同配置证书 125的实现可以有助于以无需要求针对每次新软件安装来验证设备的公用标识符这样的方式来更新软件。相反地,使用比设备的唯一公用标识符更通用的标准的在硬件证书105与共同配置证书125之间的示例认证过程可以用于更新软件版本而无在每次安装新软件版本于设备上时涉及到唯一公用标识符这样的复杂性。以这一方式,可以简化设备制造(其中安装新软件版本),因为无需经由唯一公用标识符来验证每次安装。再次参照图la,公用标识符100可以是在能够执行软件应用的硬件设备上驻留的硬编码值或者不可修改值。公用标识符100可以存储于集成电路如只读存储器设备上。在一些示例实施方式中,公用标识符100可以用私用密钥来签名和/或与私用密钥关联。另外,公用标识符100可以对特定关联设备是唯一的。这样,公用标识符100可以用来标识设备或者设备变体的特定配置。例如在设备为蜂窝电话的实施方式中,设备的配置可以不仅包括蜂窝电话的硬件配置而且包括可以与蜂窝电话关联的网络提供商。就这一点而言,网络提供商可以提供将要求专门化软件支持的特有服务。软件应用145可以是用于由与公用标识符100关联的设备执行的任何软件应用。 在一些示例实施方式中,软件应用145可以是用于设备的操作系统。软件应用145可以具有和/或包括软件版本150,该软件版本可以是编号、日期、大小(例如以千字节等为单位)、 其组合等。软件版本150可以用私用密钥来签名和/或与私用密钥关联以有助于软件应用 145的安全认证。硬件证书105可以对硬件设备(例如计算机、移动终端等)是唯一的并且可以存储于设备的存储器中。硬件证书105可以与公用标识符110、共同配置证书标识符115和共同配置证书版本标准120关联或者包括它们。硬件证书105的公用标识符110可以匹配设备的公用标识符100。在硬件证书105 的公用标识符110与设备的公用标识符100之间的关系可以用来认证硬件证书105。在一些示例实施方式中,公用标识符110可以用私用密钥来签名和/或与私用密钥关联以有助于硬件证书105的安全认证。经由公用标识符110认证硬件证书失败可以防止在设备上执行软件。共同配置证书标识符115可以是可以在认证共同配置证书125时使用的值。经由共同配置证书标识符115认证共同配置证书125失败可以防止执行与该共同配置证书关联的软件。共同配置证书标识符115可以用私用密钥来签名和/或与私用密钥关联以有助于共同配置证书125的安全认证。共同配置证书版本标准120可以是用来确定共同配置证书125是否为恰当版本的标准。就这一点而言,可以配置共同配置证书版本标准120使得该标准可以确定共同配置证书125是否与为恰当版本的软件关联并且被配置用于恰当设备变体。通过使用共同配置证书版本标准120,可以检测不适当的共同配置证书,并且可以防止执行与不适当的共同配置证书关联的软件。在一些示例实施方式中,共同配置证书版本标准120可以包括用于共同配置证书125的阈值版本值。就这一点而言,版本值高于或者等于阈值版本值的共同配置证书可以满足共同配置证书版本标准120的至少一个方面。共同配置证书版本标准120 可以用私用密钥来签名和/或与私用密钥关联以有助于在应用标准之前的安全认证。共同配置证书125可以与软件应用145关联。在一些示例实施方式中,共同配置证书可以是特定软件应用的所有安装所共用的。共同配置证书125可以存储于设备的存储器中。共同配置证书125可以包括共同配置证书标识符130、共同配置证书版本135和软件版本标准140。共同配置证书标识符130可以是可以在用硬件证书105认证共同配置证书125时使用的值。就这一点而言,在一些示例实施方式中,如果硬件证书的共同配置证书标识符 115与共同配置证书125的共同配置证书标识符130匹配,则可以认证共同配置证书125。 经由共同配置证书标识符130认证共同配置证书失败可以防止执行与该共同配置证书关联的软件。类似于共同配置证书标识符115,共同配置证书标识符130可以用私用密钥来签名和/或与私用密钥关联以有助于共同配置证书125的安全认证。如上文所述,共同配置证书版本135可以应用于硬件证书105的共同配置证书版本标准120以确定共同配置证书版本135是否满足共同配置证书版本标准120。共同配置证书版本满足共同配置证书版本标准120的失败可以造成防止执行与共同配置证书关联的软件。类似于共同配置证书标识符标准120,共同配置证书版本135可以用私用密钥来签名和/或与私用密钥关联以有助于共同配置证书版本135的安全认证。软件版本标准140可以是用来确定软件版本150是否为用于共同配置证书125的恰当版本的标准。软件版本标准140可以贡献用于保证共同配置证书125未与不适当的软件版本结合使用的附加安全水平。这样,通过使用软件版本标准140,可以检测不适当的软件应用,并且可以防止执行这些软件应用。在一些示例实施方式中,软件版本标准140可以包括用于软件版本150的阈值版本值。就这一点而言,版本值高于或者等于比阈值版本值软件应用可以满足软件版本标准140。软件版本标准140可以用私用密钥来签名和/或与私用密钥关联以有助于在向软件版本150应用标准之前的安全认证。图Ib描绘了用于管理软件版本的一个替代实施方式的关系图。就这一点而言,与图Ib关联的示例方案利用单个安全证书155。安全证书155可以对硬件设备(例如计算机、移动终端等)是唯一的并且可以存储于设备的存储器中。安全证书155可以与公用标识符160和软件版本标准165关联或者包括它们。安全证书155的公用标识符160可以与如上文所述设备的公用标识符100关联。 在安全证书155的公用标识符160与设备的公用标识符100之间的关系可以用来认证安全证书155。在一些示例实施方式中,公用标识符160可以用私用密钥来签名和/或与私用密钥关联以有助于安全证书155的安全认证。经由公用标识符160认证安全证书155失败可以防止在设备上执行软件。软件版本标准165可以是用来确定软件版本150是否为用于在设备上执行的恰当版本的标准。通过使用软件版本标准165,可以检测不适当的软件应用,并且可以防止执行这些软件应用。在一些示例实施方式中,软件版本标准165可以包括用于软件版本150的阈值版本值。就这一点而言,版本值高于或者等于阈值版本值的软件应用可以满足软件版本标准165。软件版本标准165可以用私用密钥来签名和/或与私用密钥关联以有助于在向软件版本150应用标准之前的安全认证。图2图示了可以用于如这里描述的那样管理软件版本的示例装置200。在一些示例实施方式中,可以实施装置200作为具有有线或者无线通信能力的计算设备和/或通信设备或者包括装置200作为该计算设备和/或通信设备的部件。装置200的一些示例可以包括计算机、服务器、移动终端(比如移动电话、便携式数字助理(PDA)、寻呼机、移动电视、 游戏设备、移动计算机、膝上型计算机、相机、视频记录器、音频/视频播放器、无线电和/或全球定位系统(GPS)设备)、网络实体(比如接入点(比如基站))或者前述装置的任何组合等。另外,装置200可以被配置成实施如这里描述的本发明的各种方面(例如包括本发明的各种示例方法),其中借助硬件或者软件配置的处理器、计算机可读介质等实施方法。装置200可以包括处理器205和存储器设备210 (可以但是无需包括用于公用标识符211的只读存储器储存器)或者与它们通信。就这一点而言,在一些示例实施方式中, 用于公用标识符211的存储器储存器与存储器设备210分离。另外,在一些实施方式(比如其中装置200为移动终端的实施方式)中,装置200也可以包括通信接口 215和/或用户接口 225。可以将处理器205实施为各种装置,这些装置例如包括微处理器、协同处理器、控制器或者各种其它处理设备(包括集成电路(例如,ASIC(专用集成电路)、FPGA(现场可编程门阵列)或者硬件加速器))。在一个示例实施方式中,处理器205被配置成执行存储器设备210中存储的指令或者以其它方式可由处理器205访问的指令。处理器205也可以被配置成例如通过控制通信接口中包括的硬件和/或软件来有助于经由通信接口的通信。存储器设备210可以被配置成存储在实施本发明的实施方式时涉及到的各种信息,比如安全证书(例如,硬件证书和共同配置证书)。存储器设备210可以是计算机可读存储介质,该存储介质可以包括易失性和/或非易失性存储器。例如,存储器设备210可以包括随机存取存储器(RAM)(包括动态和/或静态RAM、片上或者片外高速缓存存储器等)。 另外,存储器设备210可以包括非易失性存储器(可以为嵌入的和/或为可拆卸的)并且可以例如包括只读存储器、闪存、磁存储设备(例如,硬盘、软盘驱动、磁带等)、光盘驱动和 /或介质、非易失性随机存取存储器(NVRAM)等。存储器设备210可以包括用于暂时存储数据的高速缓存区。就这一点,可以在处理器205内包括一些或者所有存储器设备210。另外,存储器设备210可以被配置成存储用于使处理器205和装置200能够执行根据本发明的示例实施方式的各种功能的信息、数据、应用、计算机可读程序代码指令等。例如,存储器设备210可以被配置成缓冲用于由处理器205处理的输入数据。除此之外或者取而代之,存储器设备210可以被配置成存储用于由处理器205执行的指令。用户接口 225可以与处理器205通信以接收在用户接口 225的用户输入和/或向用户提供例如作为可听、可视、机械或者其它输出指示的输出。用户接口 225可以例如包括键盘、鼠标、操纵杆、显示器(例如,触屏显示器)、麦克风、扬声器或者其它输入/输出机制。通信接口 215可以是配置成从网络接收数据或者向网络发送数据的以硬件、软件或者硬件和软件的组合实施的任何设备或者装置和/或与装置200通信的任何其它设备或者模块。就这一点而言,通信接口 215可以例如包括天线、发送器、接收器、收发器和/或支持硬件(包括用于实现与网络220通信的处理器或者软件)。经由通信接口 215和网络 220,装置200可以与各种其它网络实体通信。通信接口 215可以被配置成用于根据任何有线或者无线通信标准的通信。例如, 通信接口 215可以被配置成用于根据第二代QG)无线通信协议IS-136(时分多址(TDMA)、 GSM (全球移动通信系统)、IS-95(码分多址(CDMA))、第三代(3G)无线通信协议(比如通用移动电信系统(UMTS)、CDMA2000、宽带 CDMA (WCDMA)和时分同步 CDMA (TD-SCDMA))、第 3. 9 代(3.9G)无线通信协议(例如,演进型通用陆地无线电接入网络(E-UTRAN)、第四代0G) 无线通信协议)、国际移动电信高级(IMT-高级)协议、长期演进(LTE)协议(包括LTE-高级)等的通信。另外,通信接口 215可以被配置成用于根据技术例如射频(RF)、红外(IrDA) 或者多个不同无线联网技术(包括WLAN技术如IEEE 802. 11 (例如802. Ila,802. lib、 802. llg、802. Iln等)、无线局域网(WLAN)协议、全球微波接入互操作性(WiMAX)技术(比如IEEE 802. 16)和/或无线个人区域网(WPAN)技术比如IEEE 802. 15、蓝牙(BT)、超宽带 (UffB)等)中的任何技术的通信。装置200的证书管理器240和应用管理器245可以是以硬件、软件或者硬件和软件的组合实施的任何装置或者设备,比如实施软件指令的处理器205或者硬件配置的处理器205,该处理器被配置成执行如这里描述的证书管理器240和/或应用管理器M5的功能。在一个示例实施方式中,处理器205可以包括或者以别的方式控制证书管理器240和 /或应用管理器对5。在各种示例实施方式中,证书管理器240和/或应用管理器245可以驻留于不同装置上使得证书管理器240和/或应用管理器245的一些或者所有功能性可以由第一装置执行而证书管理器240和/或应用管理器245的其余功能性可以由一个或者多个其它装置执行。在一些示例实施方式中,证书管理器240可以被配置成将软件应用与第一安全证书一起接收。就这一点而言,第一安全证书可以与软件应用关联。证书管理器240也可以被配置成确定第一安全证书的安全标识符是否与受信的安全标识符关联。在一些示例实施方式中,安全标识符是共同配置证书的共同配置证书标识符(例如,共同配置证书标识符135),而受信的安全标识符是硬件证书的共同配置证书标识符(例如,共同配置证书标识符115)。在一些示例实施方式中,安全标识符是安全证书的公用标识符(例如,公用标识符160),而受信的安全标识符是设备的公用标识符(例如, 公用标识符100)。另外,在一些示例实施方式中,检测第一安全证书的安全标识符是否与受信的安全标识符匹配涉及到利用签名的安全标识符和/或私用密钥以认证第一安全证书的安全标识符。
证书管理器240也可以被配置成确定软件应用的软件版本是否满足第一安全证书的软件版本标准。就这一点而言,第一安全证书可以包括软件版本标准。在一些示例实施方式中,证书管理器240被配置成响应于确定第一证书的安全标识符与受信的安全标识符匹配来确定软件应用的软件版本是否满足第一安全证书的软件版本标准。在一些示例实施方式中,具有阈值软件版本或者比阈值软件版本更高的软件版本的软件应用可以满足软件版本标准。根据各种实施方式,更高版本可以包括任何渐进或者依次的排序增加,其中下一更高版本可以是更近来已经发布的。在一些示例实施方式中,更高版本的指示可以由字母-数字字符的任何汇集指示。在一些示例实施方式中,证书管理器240也被配置成通过验证第二安全证书的设备标识符与受信的设备标识符匹配来认证受信的安全标识符。就这一点而言,在一些示例实施方式中,可以通过验证第二安全证书的设备标识符(例如,硬件证书105的公用标识符 110)与受信的设备标识符(例如,公用标识符100)匹配来认证受信的安全标识符(例如, 硬件证书105的共同配置证书标识符11 。在一些示例实施方式中,受信的设备标识符是与装置200关联的唯一的、不可修改的值。另外,在一些示例实施方式中,证书管理器240也被配置成确定第一安全证书的安全证书版本是否满足第二安全证书的安全证书版本标准。在一些示例实施方式中,证书管理器240也可以被配置成确定第一安全证书的安全证书版本(例如,共同配置证书版本 135)是否满足第二安全证书的安全证书版本标准(例如,共同配置证书版本标准120)。就这一点,第二安全证书可以包括安全证书版本标准。与可接受的预先限定的设备变体关联的值可以满足安全证书版本标准。另外,证书管理器240也可以被配置成确定第一安全证书的安全证书版本是否满足第二安全证书的安全证书版本标准并且响应于认证受信的安全标识符来确定第一安全证书的安全标识符是否与受信的安全标识符匹配。应用管理器245可以被配置成响应于确定与软件应用关联的软件版本是否满足第一安全证书的软件版本标准来允许执行该软件应用。在一些示例实施方式中,应用管理器245被配置成如这里描述的那样响应于认证硬件证书(例如,硬件证书105)和共同配置证书(例如,共同配置证书125)来允许执行软件应用。另外,在一些示例实施方式中,应用管理器245被配置成响应于认证单个安全证书(例如安全证书155)来允许执行软件应用。图3和图4图示了根据本发明示例实施方式的系统、方法和计算机程序产品的流程图。将理解可以通过各种手段实施流程图的各框、步骤或者操作和/或者流程图中的框、 步骤或者操作的组合。用于实施流程图的框、步骤或者操作和/或流程图中的框、步骤或者操作的组合的手段可以包括硬件、固件和/或软件(包括一个或者多个计算机程序代码指令、程序指令或者可执行计算机可读程序代码指令)。在一个示例实施方式中,程序代码指令可以实施这里描述的一个或者多个过程。就这一点而言,实施这里描述的过程的程序代码指令可以由装置(例如,装置200)的存储器设备(比如,存储器设备210)存储或者存储于该存储器设备上并且由处理器(比如,处理器205)执行。如将理解的那样,可以向计算机或者其它可编程装置(例如,处理器205、存储器设备210)上加载任何这样的程序代码指令以产生机器,使得在计算机或者其它可编程装置上执行的指令产生用于实施在流程图的框、步骤或者操作中指定的功能的装置。这些程序代码指令也可以存储于计算机可读存储介质中,该存储介质可以指引计算机、处理器或者其它可编程装置以特定方式工作使得存储于计算机可读存储介质中的指令产生包括如下指令装置的制造产品,这些指令装置实施在流程图的框、步骤或者操作中指定的功能。也可以向计算机、处理器或者其它可编程装置上加载程序代码指令以使一系列操作步骤在计算机、处理器或者其它可编程装置上进行或者由计算机、处理器或者其它可编程装置进行以产生计算机实施的过程使得在计算机、处理器或者其它可编程装置上执行的指令提供用于实施在流程图的框、步骤或者操作中指定的功能的步骤。因而,流程图的框、步骤或者操作支持用于执行指定的功能的装置的组合、用于执行指定的功能的步骤的组合和用于执行指定的功能的程序代码指令装置。也将理解流程图的一个或者多个框、步骤或者操作和流程图中的框、步骤或者操作的组合可以由执行指定的功能或者步骤的基于专用硬件的计算机系统实施或者由专用硬件和程序代码指令的组合实施。图3描绘了流程图,该流程图描述用于管理软件版本的示例方法。在300,示例方法包括确定第一安全证书的安全标识符(例如,硬件证书的公用标识符)是否与受信的安全标识符(例如,设备的公用标识符)匹配。在310,示例方法还包括确定软件应用的软件版本是否满足第一安全证书的软件版本标准。在一些示例实施方式中,版本与阈值版本值相等或者超过阈值的软件应用可以满足软件版本标准。在一些示例实施方式中,版本日期阈值和/或软件大小阈值(例如,以千字节为单位的大小)也可以用作标准。另外,在一些示例实施方式中,在310进行的确定可以响应于在300确定第一证书的安全标识符与受信的安全标识符匹配而发生。示例方法也可以包括在320允许处理器执行软件应用。可以响应于在310确定软件版本满足软件版本标准来允许执行软件应用。另外,可以响应于已经认证一个或者多个安全证书来允许执行软件应用。图4描绘了根据本发明示例实施方式的用于管理软件版本的另一方法的流程图。 在400,示例方法可以包括接收软件应用和/或可选地接收关联第一安全证书(例如,共同配置证书)。第一安全证书可以与软件应用一起接收或者可能在不同时间与软件应用分开接收。在一些示例实施方式中,可以在存储器设备如存储器设备210上接收软件应用和关联第一安全证书。示例方法也可以包括在410通过验证第二安全证书的设备标识符(例如,硬件证书的公用标识符)是否与受信的设备标识符(例如,设备的公用标识符)匹配来认证受信的安全标识符(例如,硬件证书的共同配置证书标识符)。就这一点而言,第二安全证书也可以包括安全证书版本标准(例如,共同配置证书版本标准)。另外,受信的设备标识符可以是唯一的、不可修改的值。在420,示例方法可以包括确定第一安全证书的安全证书版本(例如,共同配置证书版本)是否满足第二安全证书的安全证书版本标准。在420进行的确定可以响应于在 410认证受信的安全标识符而发生。另外,示例方法也可以包括在430确定第一安全证书的安全标识符(例如,共同配置证书的共同配置证书标识符)是否与受信的安全标识符(例如,硬件证书的共同配置证书标识符)匹配。在一些示例实施方式中,与可接受的预先限定的设备变体关联的值可以满足安全证书版本标准。另外,在一些示例实施方式中,在430进行的确定可以响应于在410认证受信的安全标识符而发生。在440,示例方法还可以包括确定软件应用的软件版本是否满足第一安全证书的软件版本标准。在一些示例实施方式中,版本与阈值版本值相等或者超过阈值的软件应用可以满足软件版本标准。在一些示例实施方式中,版本日期阈值和/或软件大小阈值(例如,以千字节为单位的大小)也可以用作标准。在一些示例实施方式中,在440进行的确定可以响应于在430确定第一证书的安全标识符与受信的安全标识符匹配而发生。示例方法也可以包括在450允许处理器执行软件应用。可以响应于在440确定软件版本满足软件版本标准来允许执行软件应用。本发明的一些示例实施方式的效果在于防止设备执行未授权的软件版本。这具有防止在设备如计算和/或通信设备上安装和利用过期或者以别的方式不合需要的软件这样的优点。另外,本发明的一些示例实施方式允许在制造期间或者在送往消费者之前在设备上安装新的和/或改进的软件并且由此防止在设备为消费者所拥有之后将这些设备上的软件倒退至先前或者不合需要的软件版本。从前文说明书和关联附图中呈现的教导中受益的这些发明所涉及的领域中的技术人员将想到这里阐述的本发明的许多修改和其它实施方式。因此将理解本发明并不限于公开的具体实施方式
并且修改和其它实施方式旨在于被包括在所附权利要求的范围内。另外,虽然前文说明书和关联附图在元素和/或功能的某些示例组合的背景中描述示例实施方式,但是应当理解替代实施方式可以提供不同的元素和/或功能组合而不脱离所附权利要求的范围。就这一点而言,例如也如可以在一些所附权利要求中阐述的那样设想除了上文明确描述的元素和/或功能组合之外的不同元素和/或功能组合。虽然这里运用具体术语,但是仅以广义和描述意义使用它们而不用于限制。
权利要求
1.一种方法,包括确定第一安全证书的安全标识符是否与受信的安全标识符匹配,所述第一安全证书包括软件版本标准;响应于确定所述第一证书的所述安全标识符与所述受信的安全标识符匹配来确定软件应用的软件版本是否满足所述第一安全证书的软件版本标准;以及响应于确定所述软件版本满足所述软件版本标准来允许处理器执行所述软件应用。
2.根据权利要求1所述的方法,还包括通过验证第二安全证书的设备标识符与受信的设备标识符匹配来认证所述受信的安全标识符,所述第二安全证书包括安全证书版本标准;以及响应于认证所述受信的安全标识符来确定所述第一安全证书的安全证书版本是否满足所述第二安全证书的所述安全证书版本标准;并且其中确定所述第一安全证书的所述安全标识符是否与所述受信的安全标识符匹配包括响应于认证所述受信的安全标识符来确定所述第一安全证书的所述安全标识符是否与所述受信的安全标识符匹配。
3.根据权利要求2所述的方法,其中通过验证所述第二安全证书的所述设备标识符与所述受信的设备标识符匹配来认证所述受信的安全标识符包括所述受信的设备标识符为唯一的、不可修改的值。
4.根据权利要求2-3中的任一项权利要求所述的方法,其中确定所述第一安全证书的所述安全证书版本是否满足所述第二安全证书的所述安全证书版本标准包括与预先限定的设备变体关联的值满足所述安全证书版本标准。
5.根据权利要求2-4中的任一项权利要求所述的方法,还包括将所述软件应用与所述第一安全证书一起接收,所述第一安全证书与所述软件应用关联。
6.根据权利要求1-5中的任一项权利要求所述的方法,其中确定所述软件应用的所述软件版本是否满足所述第一安全证书的所述软件版本标准包括具有阈值软件版本或者比所述阈值软件版本更高的软件版本的软件应用满足所述软件版本标准。
7.一种装置,包括 处理器,配置成确定第一安全证书的安全标识符是否与受信的安全标识符匹配,所述第一安全证书包括软件版本标准;响应于确定所述第一证书的所述安全标识符与所述受信的安全标识符匹配来确定软件应用的软件版本是否满足所述第一安全证书的软件版本标准;以及响应于确定所述软件版本满足所述软件版本标准来允许执行所述软件应用。
8.根据权利要求7所述的装置,其中所述处理器还被配置成通过验证第二安全证书的设备标识符与受信的设备标识符匹配来认证所述受信的安全标识符,所述第二安全证书包括安全证书版本标准;以及响应于认证所述受信的安全标识符来确定所述第一安全证书的安全证书版本是否满足所述第二安全证书的所述安全证书版本标准;并且其中所述处理器被配置成确定所述第一安全证书的所述安全标识符是否与所述受信的安全标识符匹配包括配置成响应于认证所述受信的安全标识符来确定所述第一安全证书的所述安全标识符是否与所述受信的安全标识符匹配。
9.根据权利要求8所述的装置,其中所述处理器还被配置成通过验证所述第二安全证书的所述设备标识符与所述受信的设备标识符匹配来认证所述受信的安全标识符包括配置成通过验证所述第二安全证书的所述设备标识符与所述受信的设备标识符匹配来认证所述受信的安全标识符,所述受信的设备标识符为唯一的、不可修改的值。
10.根据权利要求8-9中的任一项权利要求所述的装置,其中所述处理器还被配置成确定所述第一安全证书的所述安全证书版本是否满足所述第二安全证书的所述安全证书版本标准包括配置成确定所述第一安全证书的所述安全证书版本是否满足所述第二安全证书的所述安全证书版本,与预先限定的设备变体关联的值满足所述安全证书版本标准。
11.根据权利要求8-10中的任一项权利要求所述的装置,其中所述处理器还被配置成将所述软件应用与所述第一安全证书一起接收,所述第一安全证书与所述软件应用关联。
12.根据权利要求8-11中的任一项权利要求所述的装置,还包括配置成存储所述第二安全证书的存储器设备。
13.根据权利要求7-12中的任一项权利要求所述的装置,其中所述处理器还被配置成确定所述软件应用的所述软件版本是否满足所述第一安全证书的所述软件版本标准包括被配置成确定所述软件应用的所述软件版本是否满足所述第一安全证书的所述软件版本标准,具有阈值软件版本或者比所述阈值软件版本更高的软件版本的软件应用满足所述软件版本标准。
14.一种包括至少一个计算机可读存储介质的计算机程序产品,所述至少一个计算机可读存储介质具有存储于其中的可执行计算机可读程序代码指令,所述计算机可读程序代码指令被配置成确定第一安全证书的安全标识符是否与受信的安全标识符匹配,所述第一安全证书包括软件版本标准;响应于确定所述第一证书的所述安全标识符与所述受信的安全标识符匹配来确定软件应用的软件版本是否满足所述第一安全证书的软件版本标准;以及响应于确定所述软件版本满足所述软件版本标准来允许执行所述软件应用。
15.根据权利要求14所述的计算机程序产品,其中所述计算机可读程序代码指令还被配置成通过验证第二安全证书的设备标识符与受信的设备标识符匹配来认证所述受信的安全标识符,所述第二安全证书包括安全证书版本标准;以及响应于认证所述受信的安全标识符来确定所述第一安全证书的安全证书版本是否满足所述第二安全证书的所述安全证书版本标准;并且其中所述计算机可读程序代码指令被配置成确定所述第一安全证书的所述安全标识符是否与所述受信的安全标识符匹配包括配置成响应于认证所述受信的安全标识符来确定所述第一安全证书的所述安全标识符是否与所述受信的安全标识符匹配。
16.根据权利要求15所述的计算机程序产品,其中所述计算机可读程序代码指令被配置成通过验证所述第二安全证书的所述设备标识符与所述受信的设备标识符匹配来认证所述受信的安全标识符包括配置成通过验证所述第二安全证书的所述设备标识符与所述受信的设备标识符匹配来认证所述受信的安全标识符,所述受信的设备标识符为唯一的、不可修改的值。
17.根据权利要求15-16中的任一项权利要求所述的计算机程序产品,其中所述计算机可读程序代码指令被配置成确定所述第一安全证书的所述安全证书版本是否满足所述第二安全证书的所述安全证书版本标准包括配置成确定所述第一安全证书的所述安全证书版本是否满足所述第二安全证书的所述安全证书版本标准,与预先限定的设备变体关联的值满足所述安全证书版本标准。
18.根据权利要求15-17中的任一项权利要求所述的计算机程序产品,其中所述计算机可读程序代码指令还被配置成将所述软件应用与所述第一安全证书一起接收,所述第一安全证书与所述软件应用关联。
19.根据权利要求14-18中的任一项权利要求所述的计算机程序产品,其中所述计算机可读程序代码指令被配置成确定所述软件应用的所述软件版本是否满足所述第一安全证书的所述软件版本标准包括被配置成确定所述软件应用的所述软件版本是否满足所述第一安全证书的所述软件版本标准,具有阈值软件版本或者比所述阈值软件版本更高的软件版本的软件应用满足所述软件版本标准。
20.一种装置,包括用于确定第一安全证书的安全标识符是否与受信的安全标识符匹配的装置,所述第一安全证书包括软件版本标准;用于响应于确定所述第一证书的所述安全标识符与所述受信的安全标识符匹配来确定软件应用的软件版本是否满足所述第一安全证书的软件版本标准的装置;以及用于响应于确定所述软件版本满足所述软件版本标准来允许执行所述软件应用的装置。
21.根据权利要求20所述的装置,还包括用于通过验证第二安全证书的设备标识符与受信的设备标识符匹配来认证所述受信的安全标识符的装置,所述第二安全证书包括安全证书版本标准;以及用于响应于认证所述受信的安全标识符来确定所述第一安全证书的安全证书版本是否满足所述第二安全证书的所述安全证书版本标准的装置;并且其中用于确定所述第一安全证书的所述安全标识符是否与所述受信的安全标识符匹配的装置包括用于响应于认证所述受信的安全标识符来确定所述第一安全证书的所述安全标识符是否与所述受信的安全标识符匹配的装置。
全文摘要
一种用于管理软件版本的装置可以包括处理器。处理器可以被配置成确定第一安全证书的安全标识符是否与受信的安全标识符匹配。就这一点而言,第一安全证书可以包括软件版本标准。处理器也可以被配置成确定软件应用的软件版本是否满足第一安全证书的软件版本标准。处理器可以被配置成响应于确定第一证书的安全标识符与受信的安全标识符匹配来进行这一确定。另外,处理器也可以被配置成响应于确定软件版本满足软件版本标准来允许执行软件应用。还可以提供关联方法和计算机程序产品。
文档编号G06F21/00GK102227732SQ200980147474
公开日2011年10月26日 申请日期2009年11月13日 优先权日2008年11月26日
发明者J·J·雅维南, J·塔卡拉, O·P·J·米卡, R·J·塔米南 申请人:诺基亚公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1