固件实现的软件许可的制作方法_4

文档序号:8548099阅读:来源:国知局
,固件实现的许可技术提供高水平安全性,不容易被规避,不需要附加硬件,而且不需要互联网连接。
[0066]上述公开内容提供了说明和描述,但是无意为详尽性或将实施方案限于公开的精确形式。改动和变化根据以上公开内容是可能的或者可以从实施方案的实践获得。
[0067]如本文中所使用,术语“组件”意图被广泛地视为硬件、固件或硬件和软件的组合。
[0068]一些实施方案是连同阈值被描述在本文中。在本文中用来描述值和阈值的关系的术语“大于”(或类似术语)可以与术语“大于或等于”(或类似术语)互换地使用。类似地,在本文中用来描述值和阈值的关系的术语“小于”(或类似术语)可以与术语“小于或等于”(或类似术语)互换地使用。如本文中所使用,“满足”阈值(或类似术语)可以与“大于阈值”、“大于或等于阈值”、“小于阈值”、“小于或等于阈值”或其它类似术语互换地使用。
[0069]应该明白,本文所描述的系统和/或方法可以以图中所说明的实施方案中的软件、固件和硬件的许多不同形式来实现。用于实现这些系统和/或方法的实际软件代码或专用控制硬件不限制所述实施方案。因此,系统和/或方法的操作和行为是在不参照具体软件代码的情况下被描述一应该理解,软件和控制硬件可以被设计成基于本文的描述来实现系统和/或方法。
[0070]尽管特定的特征组合被叙述在权利要求书中和/或被公开在本说明书中,但是这些组合无意限制可能的实施方案的公开内容。实际上,这些特征中的许多可以以没有明确地在权利要求书中叙述和/或在本说明书中公开的方式组合。尽管下文所列出的每个从属权利要求可以直接依赖于仅一个权利要求,但是可能的实施方案的公开内容包括每个从属权利要求和权利要求组中所有其它权利要求的组合。
[0071]本文所使用的元件、动作或指令不应该视为是关键或必要的,除非被明确描述成这样。另外,如本文中所使用,冠词“一”意图包括一个或多个项目,且可以与“一个或多个”互换地使用。当只想指示一个项目时,使用术语“一个”或类似语言。另外,除非另外明确说明,否则短语“基于”意指“至少部分基于”。
【主权项】
1.一种方法,其包括: 通过所述处理器接收使用软件程序的请求; 通过所述处理器并基于接收所述请求确定比较指示符; 通过所述处理器并基于存储在安全环境中的许可证有效性指示符和所述比较指示符来确定所述软件程序的许可证是否有效; 通过所述处理器并在所述许可证被确定为有效时允许执行存储在所述安全环境中的安全代码;以及 通过所述处理器并在所述许可证被确定为无效时阻止执行存储在所述安全环境中的所述安全代码。
2.根据权利要求1所述的方法,其中所述许可证有效性指示符包括通过将密匙生成算法应用于下列项而生成的安全密匙: 用于访问所述软件程序的许可证密钥,和 识别用于运行所述软件程序的设备的至少一个组件的系统识别符。
3.根据权利要求2所述的方法,其中所述比较指示符包括通过将所述密匙生成算法应用于下列项而生成的比较密匙: 比较许可证密钥,和 所述系统识别符;且 其中所述的确定所述许可证是否有效进一步包括: 通过确定所述比较密匙和所述安全密匙是否匹配来确定所述许可证是否有效。
4.根据权利要求1所述的方法,其中所述许可证有效性指示符指示当所述软件程序被安装在计算设备上时所确定的第一系统时间。
5.根据权利要求4所述的方法,其中所述比较指示符指示当所述的使用所述软件程序的请求被所述计算设备接收时所确定的第二系统时间;且 其中所述的确定所述许可证是否有效进一步包括: 通过确定所述第一系统时间与所述第二系统时间之间的差是否满足阈值来确定所述许可证是否有效。
6.根据权利要求1所述的方法,其中所述安全代码包括用于运行所述软件程序的程序代码的一部分。
7.根据权利要求1所述的方法,其中所述安全代码包括用于解密用来运行所述软件程序的程序代码或信息的解密算法。
8.一种设备,其包括: 一个或多个处理器,其用于: 接收使用软件程序的请求; 基于接收所述请求来确定比较指示符; 基于存储在安全环境中的许可证有效性指示符和所述比较指示符来确定所述软件程序的许可证是否有效; 当所述许可证被确定为有效时,允许执行存储在所述安全环境中的安全代码;以及 当所述许可证被确定为无效时,阻止执行存储在所述安全环境中的所述安全代码。
9.根据权利要求8所述的设备,其中所述许可证有效性指示符包括通过将密匙生成算法应用于下列项而生成的安全密匙: 用于访问所述软件程序的许可证密钥,和 识别用于运行所述软件程序的设备的至少一个组件的系统识别符。
10.根据权利要求9所述的设备,其中所述比较指示符包括通过将所述密匙生成算法应用于下列各项而生成的比较密匙: 比较许可证密钥,和 所述系统识别符;且 其中当确定所述许可证是否有效时,所述一个或多个处理器还用于: 通过确定所述比较密匙和所述安全密匙是否匹配来确定所述许可证是否有效。
11.根据权利要求8所述的设备,其中所述许可证有效性指示符指示当所述软件程序被安装在计算设备上时所确定的第一系统时间。
12.根据权利要求11所述的设备,其中所述比较指示符指示当使用所述软件程序的所述请求被所述计算设备接收时所确定的第二系统时间;且 其中当确定所述许可证是否有效时,所述一个或多个处理器还用于: 通过确定所述第一系统时间与所述第二系统时间之间的差是否满足阈值来确定所述许可证是否有效。
13.根据权利要求8所述的设备,其中所述安全代码包括用于运行所述软件程序的程序代码的一部分。
14.根据权利要求8所述的设备,其中所述安全代码包括用于解密用来运行所述软件程序的程序代码或信息的解密算法。
15.—种存储指令的非临时性计算机可读介质,所述指令包括: 一个或多个指令,其在被处理器执行时促使所述处理器: 接收使用软件程序的请求; 基于接收所述请求来确定比较指示符; 基于存储在非易失性存储器中的许可证有效性指示符和所述比较指示符来确定所述软件程序的许可证是否有效; 当所述许可证被确定为有效时,允许执行存储在所述非易失性存 储器中的安全代码;以及 当所述许可证被确定为无效时,阻止执行存储在所述非易失性存储器中的所述安全代码。
16.根据权利要求15所述的计算机可读介质,其中所述许可证有效性指示符包括通过将所述密匙生成算法应用于下列各项而生成的安全密匙: 用于访问所述软件程序的许可证密钥,和 识别用于运行所述软件程序的设备的至少一个组件的系统识别符。
17.根据权利要求16所述的计算机可读介质,其中所述比较指示符包括通过将所述密匙生成算法应用于下列各项而生成的比较密匙: 比较许可证密钥,和 所述系统识别符;且 其中促使所述处理器确定所述许可证是否有效的所述一个或多个指令还促使所述处理器: 通过确定所述比较密匙和所述安全密匙是否匹配来确定所述许可证是否有效。
18.根据权利要求15所述的计算机可读介质,其中所述许可证有效性指示符指示当所述软件程序被安装在计算设备上时所确定的第一系统时间。
19.根据权利要求18所述的计算机可读介质,其中所述比较指示符指示当使用所述软件程序的所述请求被所述计算设备接收时所确定的第二系统时间;且 其中促使所述处理器确定所述许可证是否有效的所述一个或多个指令还促使所述处理器: 通过确定所述第一系统时间与所述第二系统时间之间的差是否满足阈值来确定所述许可证是否有效。20.根据权利要求15所述的计算机可读介质,其中所述安全代码包括下列各项中的至少一个: 用于运行所述软件程序的程序代码的部分;或 用于解密程序代码的解密算法或用于运行所述软件程序的信息。
20.根据权利要求15所述的计算机可读介质,其中所述安全代码包括下列各项中的至少一个: 用于运行所述软件程序的程序代码的部分;或 用于解密程序代码的解密算法或用于运行所述软件程序的信息。
【专利摘要】一种设备接收使用软件程序的请求,基于接收所述请求确定比较指示符,并基于存储在安全环境中的许可证有效性指示符和所述比较指示符来确定所述软件程序的许可证是否有效。所述设备在所述许可证被确定为有效时允许执行存储在所述安全环境中的安全代码,且在所述许可证被确定为无效时阻止执行存储在所述安全环境中的安全代码。
【IPC分类】G06F21-12
【公开号】CN104871165
【申请号】CN201380065960
【发明人】谢尔盖·布洛特斯基, 卡瑟卡曼萨·纳达瑞简, 叶建飞, 张星月
【申请人】Ati科技无限责任公司
【公开日】2015年8月26日
【申请日】2013年11月19日
【公告号】EP2923294A1, US20140143885, WO2014078934A1
当前第4页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1