当前位置: 首页 > 专利查询>英特尔公司专利>正文

微码补丁验证制造技术

技术编号:2860490 阅读:1502 留言:1更新日期:2012-04-11 18:40
在将微码补丁传送到安装微码补丁的目标处理器之前对其进行编码。目标处理器在安装之前确认微码补丁。通过以下措施的一个或多个使处理的安全性得到增强:1)在安全存储器中进行确认、2)使用公开/秘密密钥对对微码补丁进行加密和解密、3)使用至少一个嵌入在目标处理器内并且不能由非安全软件读取的密钥以及4)使用嵌入在目标处理器内的散列值确认至少一个非嵌入的密钥。(*该技术在2023年保护过期,可自由使用*)

【技术实现步骤摘要】
背景计算机处理器中的一条典型指令用微指令实现一系列的操作,而微指令以微码的形式在非易失性存储区域中定义了被编码的每一操作。微码定义了处理器的所有或一部分可执行指令集,并且还可定义不是以软件可访问代码实现的内部操作。微码通常在制造处理器时置于处理器内的只读存储器(ROM)中。然而,在处理器制造后,甚至在处理器已处于操作中时,有时需要修改微码。微码补丁通过插入新的微指令取代原来的微指令而允许这样的修改。可将微码补丁以不同方式(如通过通信信道下载、由服务技术人员安装或随操作系统提供)传送到处理器,随后存储于处理器用于操作。由于不能简单地改变微码ROM,微码补丁通常置于处理器内的补丁存储器,如随机存取存储器(RAM),并且对于修改的微指令的引用则被重新定向到补丁RAM而不是ROM。因为补丁RAM可以是易失性的,所以通常微码补丁存储于磁盘上或存储于基本输入输出系统(BIOS)中,并在引导系统时将微码补丁加载到补丁RAM中。如果处理器用于安全环境,则在软件和/或硬件设计中应采取各种安全措施,以提供对安全特征操作篡改的保护。将非授权的微码补丁插入处理器中的能力代表了不怀好意的攻击者妨碍传统安全措施的一个方式。附图简述通过参考用于示出本专利技术实施例的以下描述以及附图可理解本专利技术。附图说明图1根据本专利技术的一个实施例示出了确认和安装微码补丁的系统框图。图2根据本专利技术的一个实施例示出了将微码补丁转换为安全传送形式的系统框图。图3根据本专利技术的一个实施例示出了从图2系统传送到图1系统的包含各单元的补丁包。图4根据本专利技术的一个实施例示出了用于制备、传送和确认补丁包的整个过程的流程图。图5根据本专利技术的一个实施例示出了用于制备补丁包的过程的流程图。图6根据本专利技术的一个实施例示出了用于确认补丁包的过程的流程图。详细描述在以下描述中,提出了许多特定细节。然而,可以理解,没有这些特定细节也可实现本专利技术的实施例。在其他实例中,为了便于该描述的理解,没有详细示出熟知的电路、结构和技术。提到的“一个实施例”、“实施例”、“示例实施例”、“各实施例”等表示所描述的实施例可包括特定特点、结构或特征,但不是每个实施例都必须包括这些特定的特点、结构和特征。并且,可将对于不同实施例描述的特点、结构或特征结合到单个实施例中。还有,重复使用短语“在一个实施例中”并不一定指同一实施例,虽然也可以指同一实施例。这里提到的加密法可包括加密、解密或两者兼而有之。这里提到的“对称”密码、密钥、加密或解密指的是同一密钥被用于加密和相关解密的密码技术。1993年作为联邦信息出版标准FIPS PUB 46-2出版的熟知的数据加密标准(DES)以及2001年作为FIPS PUB 197出版的高级加密标准都是对称密码的例子。这里提到的“不对称”密码、密钥、加密或解密指的是加密和相关解密使用不同但相关的密钥的密码技术。所谓的“公开密钥”密码技术, 包括熟知的Rivest-Shamir-Adleman(RSA)技术,就是不对称密码的例子。不对称密码过程两个相关密钥之一被称作为秘密密钥(因为它通常保持私密的),而另一个则被称作为公开密钥(因为它通常可自由地使用)。在一些实施例中,秘密或公开密钥可用于加密,而其中另一个密钥则用于相关的解密。可以硬件、固件和软件的其中一个或组合来实现本专利技术的实施例。本专利技术的实施例还可实现为存储在机器可读取介质上的指令,它可由至少一个处理器读取并执行以实现这里所描述的操作。机器(如计算机)可读取介质包括任何用于以机器可读取形式存储或发送信息的机制。例如,机器可读取介质包括只读存储器(ROM)、随机存取存储器(RAM)、磁盘存储介质、光存储介质、快闪存储器设备、电、光、声或其他形式的传播信号(例如载波、红外信号、数字信号等),等等。本专利技术的各个实施例涉及微码补丁(这里还简称为“补丁”)的编码和/或解码,使得在将补丁安装于目标处理器(希望使用补丁的处理器)中之前将其验证为有效。编码/解码可包括以下的一种或多种1)加密/解密、2)使用密码散列函数、3)使用数字签名、4)等等。目标系统是将要安装补丁的系统,而始发系统是制备安全传送到目标系统的补丁的系统。在一个实施例中,为特定类型的计算机系统产生补丁的公用集,其中“类型”可以指特定的代、特定型号、型号内的一些类别等。一旦产生了补丁,就在传送到想要该补丁的每个目标系统之前,以这里所述的方式对其进行编码。在每个目标系统中,可如这里所述对一个或多个补丁进行解码和安装,使得补丁成为目标系统的操作部分。可使用任何传统的传送方法,包括但不限于,通过通信链路传送、由技术人员安装、由操作系统的制造商包含在操作系统中、包含在基本输入输出系统(BIOS)中。一旦经过传送,补丁可以其编码形式存储直到其被操作安装。操作安装包括对编码的补丁进行解码、确认补丁是授权的以及将补丁置于补丁存储器。确认包括以下任一项或两者1)确定自补丁在始发系统中制备用于传送以来没有被修改过;以及2)确定该补丁在已授权系统中被制备。在一个实施例中,编码的补丁被存储在目标系统的盘上或BIOS中,每一次引导系统时,被操作地安装在易失性RAM中。在一个实施例中,将编码的补丁操作地安装在非易失性存储器中,并且在后续重引导期间不再安装。图1根据本专利技术的一个实施例示出了确认和安装微码补丁的系统框图。在图1示出的实施例中,系统100包括处理器110、芯片组130、盘140、主存储器150以及通信接口(Comm I/F)160。处理器110可包括微码ROM112、补丁存储器114、安全存储器118以及一个或多个密钥116。芯片组130可包括BIOS132。可将以后所描述的补丁包存储于盘140、BIOS132或包括非易失性存储的系统100的另一部分的至少一个中。在一些实施例中,可由包含在微码ROM112中的微指令序列实现对补丁进行解码、确认和安装的操作。在特定实施例中,通过执行将执行传输到序列入口点的特别指令启动该序列。在另一特定实施例中,响应于将预定值写到机器专用寄存器(MSR)的预定部分启动该序列。还可使用其它方法启动该序列。可将对补丁进行解码、确认和安装操作期间要运行的数据置于安全存储器118中,可将其设置为用非安全代码无法进行访问。在一些实施例中,安全存储器118在不同时间包含编码的补丁、解码的补丁以及在对编码补丁进行解码期间所产生的中间产物。在一个实施例中,安全存储器118没有足够容量来保存以上提到的补丁和/或中间产物,并且它也可同时包含编码补丁、解码补丁和中间产物中一个或多个的仅仅一部分。在一个实施例中,安全存储器118是专用RAM存储器,它可置于处理器110的内部或外部,仅仅用于安全操作。在另一实施例中,安全存储器118是处理器110的专用高速缓存,并且在补丁的解码、确认和安装期间,对于所有其它操作,对该专用高速缓存的访问是阻塞的。其他实施例可使用在所述操作期间提供安全存储器118的其他方法。虽然系统100示出了特定实施例,但还可使用其它实施例。例如,在一个实施例中,BIOS132可包括在处理器110中,而另一实施例没有芯片组130。在一个实施例中,密钥116是嵌入处理器110中的一个或多个安全密钥(在编码和/或解码中使用的一些值)。可以以下方式将“嵌本文档来自技高网...

【技术保护点】
一种提供指令的机器可读取介质,当该指令由一组一个或多个处理器执行时使该组处理器进行操作,该操作包括:    为微码补丁产生散列文摘;    对散列文摘进行加密以产生数字签名;以及    组合数字签名和微码补丁以传送到目标处理器来对目标处理器中的微码打补丁。

【技术特征摘要】
US 2002-4-12 10/121,8071.一种提供指令的机器可读取介质,当该指令由一组一个或多个处理器执行时使该组处理器进行操作,该操作包括为微码补丁产生散列文摘;对散列文摘进行加密以产生数字签名;以及组合数字签名和微码补丁以传送到目标处理器来对目标处理器中的微码打补丁。2.如权利要求1所述的介质,其特征在于所述组合包括将密钥与数字签名及微码补丁进行组合以传送到目标处理器。3.如权利要求1所述的介质,其特征在于所述组合包括将密钥的散列值与数字签名及微码补丁进行组合以传送到目标处理器。4.一种方法,包括为微码补丁产生散列文摘;用不对称密码算法的秘密密钥对散列文摘进行加密以产生数字签名;以及组合数字签名和微码补丁以传送到目标处理器来对目标处理器中的微码打补丁。5.如权利要求4所述的方法,其特征在于还包括对微码补丁进行加密;其中所述产生散列文摘包括在所述对微码补丁进行加密之前产生散列文摘;以及其中所述组合包括将数字签名与加密的微码补丁进行组合。6.如权利要求4所述的方法,其特征在于还包括对微码补丁进行加密;其中所述产生散列文摘包括在所述对微码补丁进行加密之后产生散列文摘;以及其中所述组合包括将数字签名与加密的微码补丁进行组合。7.一种包含数据的机器可读取介质,该数据包括对目标系统中的微码打补丁的微码补丁;以及通过将对微码补丁施加散列运算所创建的文摘进行加密所产生的数字签名。8.如权利要求7所述的介质,其特征在于所述数据还包括对数字签名进行解密以产生文摘的密钥。9.如权利要求7所述的介质,其特征在于所述数据还包括确认微码补丁的密钥的散列值。10.如权利要求7所述的介质,其特征在于微码补丁是加密的。11.一种设备,包括具有微码的处理器;耦合到处理器的安全存储器,用于对编码的微码补丁进行解码;以及耦合到微码的微码补丁存储器,用于保存经解码的微码补丁。12.如权利要求11所述的设备,其特征在于微码包括对编码的微码补丁进行解码的微指令;以及安全存储器包含编码的微码补丁、解码的微码补丁以及微码补丁解码期间的中间产物中的至少一个。13.如权利要求11所述的设备,其特征在于微码包括对编码的微码补丁进行解码的微指令;以及安全存储器用于同时包含编码的微码补丁、解码的微码补丁以及微码补丁解码期间的中间产物中的至少一个的仅仅一部分。14.如权利要求11所述的设备,其特征在于处理器包括嵌入式密钥,用于对编码的微码补丁进行解码。15.如权利要求14所述的设备,其特征在...

【专利技术属性】
技术研发人员:J萨顿二世
申请(专利权)人:英特尔公司
类型:发明
国别省市:US[美国]

网友询问留言 已有1条评论
  • 来自[广东省广州市电信] 2014年12月07日 22:49
    补丁是指衣服被褥上为遮掩破洞而钉补上的小布块现在也指对于大型软件系统(如微软操作系统)在使用过程中暴露的问题一般由黑客或病毒设计者发现而发布的解决问题的小程序就像衣服烂了就要打补丁一样人编写程序不可能十全十美的所以软件也免不了会出现BUG而补丁是专门修复这些BUG做的因为原来发布的软件存在缺陷发现之后另外编制一个小程序使其完善这种小程序俗称补丁补丁是由软件的原来作者制作的可以访问网站下载补丁
    0
1