The invention relates to a microprocessor and related methods of operation. The microprocessor is used to operate in order to decrypt the encrypted instruction data as pure text instruction data and to perform it safely, avoiding the encrypted instruction data being seen outside the microprocessor. The microprocessor includes: master key register, comprising a plurality of main key; select logic circuit from a plurality of master key select at least two main key combinations; key expansion circuit, the master key is selected to execute at least a mathematical operation to generate the decryption key; and the instruction decoding circuit, the data encryption instruction with the implementation of a decryption key of the encryption arithmetic to decrypt the data and generate the instruction text instruction data.
【技术实现步骤摘要】
微处理器以及相关的操作方法本申请为申请日为2011年5月25日、申请号为201310687857.0的专利技术名称为“微处理器以及相关的操作方法”的申请案(其中该申请案的原申请的申请日和申请号分别为2011年5月25日和201110136447.8)的分案申请。
本专利技术涉及微处理器(microprocessor)领域,特别是涉及用于增加微处理器所执行的程序的安全性。
技术介绍
很多软件程序在面临破坏计算机系统安全的攻击时,通常是脆弱不堪的。例如,黑客可藉由攻击一运行中程序的缓冲溢位区漏洞(bufferoverflowvulnerability)植入不当程序码、并转移主控权给该不当程序码。如此一来,所植入的程序码将主导被攻击的程序。一种防范软件程序遭攻击的方案为指令集随机化(instructionsetrandomization)。概略解释之,指令集随机化技术会先将程序加密(encrypt)为某些形式,再于处理器将该程序自存储器提取后,于该处理器内解密(decrypt)该程序。如此一来,黑客便不易植入恶意指令,因为所植入的指令必须被适当地加密(例如,使用与所攻击程序相同的加密密钥或演算法)方会被正确地执行。例如,参阅文件「CounterCode-InjectionAttackswithInstruction-SetRandomization,byGauravS.Kc,AngelosD.Keromytis,andVassilisPrevelakis,CCS’03,October27-30,2003,Washington,DC,USA,ACM1-58113- ...
【技术保护点】
一种微处理器,用以操作以解密加密指令数据为纯文字指令数据并安全地予以执行,避免加密指令数据在该微处理器外部被看见,该微处理器包含:主密钥寄存器,包含多个主密钥;选择逻辑电路,从多个主密钥中选取至少两个主密钥之组合;密钥扩展电路,对所选取的主密钥执行至少一数学运算以产生该解密密钥;以及指令译码电路,对该加密指令数据与该解密密钥执行一数学运算以对该加密指令数据进行解密而产生该纯文字指令数据。
【技术特征摘要】
2010.05.25 US 61/348,127;2011.04.21 US 13/091,487;1.一种微处理器,用以操作以解密加密指令数据为纯文字指令数据并安全地予以执行,避免加密指令数据在该微处理器外部被看见,该微处理器包含:主密钥寄存器,包含多个主密钥;选择逻辑电路,从多个主密钥中选取至少两个主密钥之组合;密钥扩展电路,对所选取的主密钥执行至少一数学运算以产生该解密密钥;以及指令译码电路,对该加密指令数据与该解密密钥执行一数学运算以对该加密指令数据进行解密而产生该纯文字指令数据。2.如权利要求1所述的微处理器,还包含一用以提取解密指令数据区块之提取单元,其中每个该解密指令数据区块包含多个加密指令数据的提取数量,且每个提取数量包含多个指令数据位。3.如权利要求2所述的微处理器,其中每个该主密钥系至少为一个提取单元的提取数量。4.如权利要求2所述的微处理器,其中该密钥扩展电路对该选取的主密钥以每个新提取的加密指令数据位的提取数量执行一新数学运算。5.如权利要求2所述的微处理器,其中该选择逻辑电路以经由提取单元所提取的加密指令数据的每个新区块,来选取多个该主密钥至少两者的一新组合。6.如权利要求1所述的微处理器,其中该选择逻辑电路包含一第一多任务器与一第二多任务器,其中该第一多任务器用以从该主密钥寄存器文档选取一第一主密钥,该第二多任务器用以从该主密钥寄存器文档选取一第二主密钥。7.如权利要求1所述的微处理器,其中该选择逻辑电路使用该加密指令数据的该提取地址的一部份以从该主密钥寄存器文档选取该主密钥。8.如权利要求1所述的微处理器,其中该密钥扩展电路选择性地加上或减去两个被选取的主密钥。9.如权利要求1所述的微处理器,其中该密钥扩展电路对该选取主密钥的至少一者利用一位移量进行旋转运算。10.如权利要求9所述的微处理器,其中该位移量为该指令的提取地址的函数。11.如权利要求10所述的微处理器,其中该位移量系该指令所在的提取数量的提取地址的位最低集合的函数,以使该位移量在每当加密指令数据的一新提取数量被提取时做改变。12.如权利要求1所述的微处理器,其中该密钥扩展电路对该选取主密钥的至少一者利用一位移量进行旋转运算,并选择性地在另一个该选取主密钥上加上或减去该选转主密钥。13.如权利要求1所述的微处理器,其中该指令加密电路利用该加密指令数据以异或操作于该加密密钥。14.一种在微处理器中,安全地执行加密指令数据的方法,该方法包含:在储存于微处理器中的主密钥寄存器文档中,选取多个该主密钥至少两者的一新组合;在该微处理器中,在选取的该主密钥执行至少一...
【专利技术属性】
技术研发人员:G葛兰亨利,泰瑞派克斯,布兰特比恩,汤姆士A克理斯宾,
申请(专利权)人:威盛电子股份有限公司,
类型:发明
国别省市:中国台湾,71
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。