[发明专利]保护密钥的安全终端、例程和方法有效
| 申请号: | 200680028673.1 | 申请日: | 2006-08-01 |
| 公开(公告)号: | CN101238473A | 公开(公告)日: | 2008-08-06 |
| 发明(设计)人: | 让-菲利普·佩兰;哈拉尔德·鲍尔;帕特里克·富尔彻里 | 申请(专利权)人: | NXP股份有限公司 |
| 主分类号: | G06F21/02 | 分类号: | G06F21/02;G06F21/24 |
| 代理公司: | 中科专利商标代理有限责任公司 | 代理人: | 朱进桂 |
| 地址: | 荷兰艾*** | 国省代码: | 荷兰;NL |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 保护 密钥 安全 终端 例程 方法 | ||
技术领域
本发明设计一种保护密钥的安全终端、例程和方法。
背景技术
典型地,安全终端包括:
-处理器,执行软件应用程序和软件应用程序所调用的例程,和
-至少一个密钥。
所述处理器可以执行非安全软件应用程序以及安全软件应用程序。
非安全软件应用程序是可以被轻易更新或改变的软件应用程序。典型地,非安全软件应用程序被写入可以被重写的存储器,例如闪存。
相反,安全软件应用程序是不可以被轻易改变的软件应用程序。例如,安全软件应用程序在安全终端的制造过程中被写入只读存储器。保护所述只读存储器,以使得每个安全软件应用程序都不可以被轻易改变。
非安全软件应用程序是安全终端的弱点,因为它们会被黑客改变。然而,对安全终端的设计来说,将任何软件应用程序都记录在只读存储器中是不恰当的。因此,一直以来存在这样的危险,即黑客可能改变非安全软件应用程序,使得被改变的非安全软件应用程序读取密钥并将其泄漏给黑客。
发明内容
因此,本发明的目的是提供一种保护密钥使其不被非安全软件应用程序读取的方法。
本发明提供一种保护密钥使其不被非安全软件应用程序读取的方法,该方法包括将密钥记录为存储在只可执行的存储器中的只可执行的例程的步骤,所述例程包括:
-加载指令,如果安全软件应用程序调用所述例程,则将密钥载入安全和非安全软件应用程序均可读的存储器,和
-控制指令,如果调用所述只可执行的例程的软件应用程序是非安全软件应用程序,则在可读存储器中只留下虚假(dummy)数据而非密钥。
所述密钥被记录为存储在只可执行的存储器中的例程。为此,该例程被称为“只可执行的例程”。所述只可执行的例程不能被处理器读取而只能被执行。因此,获得所述密钥的唯一途径是执行只可执行的例程。然而,在执行时,所述例程本身确保与密钥有关的秘密信息不会泄漏给非安全软件应用程序。因此,密钥本身是非安全软件应用程序不可读的。
上述方法的实施例可以包括下列特征中的一个或一些:
-所述加载指令是加载常数的指令,每个常数的值嵌入在例程代码中并代表密钥的至少一位,
-所述方法包括步骤:在执行加载指令之前禁用任何IRQ(中断请求),并且只在已经删除了载入可读存储器中的密钥之后才重新启用IRQ,
-在执行IRQ重新启用步骤之前,所述只可执行的例程系统地返回安全软件应用程序,并且任何安全软件应用程序删除已加载的密钥,
-如果安全软件应用程序不是由只可执行的例程调用的,则该只可执行的例程所返回的所述安全软件应用程序立即删除已加载的密钥。
所述方法的上述实施例表现出下列优点:
-使密钥作为可加载常数嵌入在只可执行的例程中加强了实施例的安全性;
-禁用IRQ防止了任何非安全软件应用程序读取载入可读存储器的密钥,因为只要IRQ被禁用,就不能执行非安全软件应用程序;
-在只可执行的例程的执行结束时系统地返回安全软件应用程序防止了如下攻击,即调用只可执行的例程的非安全软件应用程序使用对应于安全软件应用程序的返回地址;
-如果只可执行的例程不是由安全软件应用程序调用的则从可读存储器中删除密钥通过防止其它非安全软件应用程序调用所述只可执行的例程而加强了终端的安全性。
本发明还涉及一种只可执行的例程,用于上述防止密钥被非安全软件应用程序读取的方法中。所述只可执行的例程包括:
-加载指令,如果所述例程是由安全软件应用程序调用的,则将密钥载入安全和非安全软件应用程序均可读的存储器,和
-控制指令,如果调用所述只可执行的例程的软件应用程序是非安全软件应用程序,则在可读存储器中只留下虚假数据而非密钥。
上述只可执行的例程的实施例可以包括下列特征中的一个或一些:
-所述加载指令是加载常数的指令,每个常数的值嵌入在例程代码中并代表密钥的至少一位,
-所述只可执行的例程具有在只可执行的例程的执行开始时禁用任何IRQ的指令,
-所述只可执行的例程具有在只可执行的例程的执行结束时系统地返回安全软件应用程序的指令。
本发明还涉及一种安全终端,包括:
-处理器,执行软件应用程序和软件应用程序所调用的例程,和
-至少一个密钥,
其中,所述安全终端还包括适于记录只可执行的例程的只可执行的存储器,所述只可执行的例程包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于NXP股份有限公司,未经NXP股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200680028673.1/2.html,转载请声明来源钻瓜专利网。





