固件加密和解密方法以及使用该方法的装置制造方法及图纸

技术编号:3000050 阅读:212 留言:0更新日期:2012-04-11 18:40
一种对电子设备中使用的固件进行加密和解密的方法,以及使用该方法的装置。该固件加密方法包括:接收预定的专用密钥数据;使用预定的随机数从所述预定的专用密钥数据产生加密密钥数据;基于所述加密密钥数据、产生与要存储在存储器中的固件地址信息相对应的加密数据;以及通过对所述加密数据和固件数据执行异或操作而产生加密固件数据以存储在所述固件地址中。

【技术实现步骤摘要】

本专利技术涉及一种加密和/或解密信息的方法以及使用该方法的装置,尤其是涉及一种加密和/或解密电子设备中使用的固件的方法以及使用该方法的装置。
技术介绍
安装在电子设备硬件中的固件是一种存储电子设备操作必要的信息和/或存储执行基本操作所需的信息而需要的软件(程序或数据)。通常,在采用C语言或汇编语言创建了源代码且由编译器编译了源代码之后,就将二进制编码固件存入或写入存储器中(例如,一种记录介质,如闪速存储器或ROM)。参考图1,使用ROM记录器120将已编程固件110写入闪速ROM 130。或者,参考图2,使用微处理器220将已编程固件从计算机210下载到闪速ROM230。常规地,由于是将未加密固件写入和/或下载到存储器,因此非法复制存储在存储器中的固件相对容易。此外,可通过非法地改动固件而使用一部分固件。
技术实现思路
本专利技术的一方面提供了一种固件加密和/或解密方法,以便将加密固件存储到存储器中以及在使用固件时对加密固件进行解密,并且进一步提供一种使用该方法的装置。根据本专利技术的一个方面,提供一种固件加密方法。所述方法包括接收预定的专用密钥数据;使用一个预定的随机数、从所述预定的专用密钥数据产生加密密钥数据;基于所述加密密钥数据、产生与要存储在存储器中的固件地址信息相对应的加密数据;以及通过对加密数据和固件数据执行异或(XOR)操作来产生加密固件数据,以便根据所述固件地址来存储加密固件数据。本专利技术的其它方面和/或优点将部分地在随后的说明书中得以阐述,并且部分地将从说明书中显然可以得出的,或者可通过本专利技术的实施而获知。根据本专利技术的另一个方面,提供一种固件解密方法。所述方法包括当确定满足了操作固件的条件时,读取存储在存储器中的预定专用密钥数据;基于所述预定的专用密钥数据产生加密密钥数据;产生与固件地址信息相对应的加密数据以便从存储器中读取固件数据;以及通过对加密数据和从固件地址中读取的固件数据执行异或操作而产生解密固件数据。根据本专利技术的另一个方面,提供一种固件加密装置。所述装置包括加密密钥产生器,使用一个预定的随机数从预定的输入专用密钥数据产生加密密钥数据;和固件加密处理单元,基于加密密钥数据而产生与固件地址信息相对应的加密数据,以及通过对加密数据和固件数据执行异或操作而产生加密固件数据以将其存储到所述固件地址。根据本专利技术的另一个方面,提供一种固件解密装置。所述装置包括存储器,存储加密固件和在加密操作中使用的预定专用密钥数据;微处理器,当确定满足了操作固件的条件时,从存储器中读取所述预定专用密钥数据,产生固件地址信息以从存储器中读取加密固件并且产生读取控制信号,以及执行包含在加密固件中的程序;加密密钥产生器,使用一个预定的随机数而从所述预定的专用密钥数据产生加密密钥数据;和固件解密处理单元,使用加密密钥数据而产生与固件地址信息相对应的加密数据,并通过对所述加密数据和从固件地址中读取的加密固件数据执行异或操作而产生解密固件数据。附图说明从下面结合附图对示范性实施例的说明中,本专利技术的上述和/或其它特征及优点将变得明显且更易于理解,其中附图中图1和图2是示例说明在ROM中存储固件的常规操作的方框图;图3是根据本专利技术一个实施例的固件加密装置的方框图;图4是根据本专利技术一个实施例的固件解密装置的方框图;图5是根据本专利技术一个实施例的固件加密方法的流程图;以及图6是根据本专利技术一个实施例的固件解密方法的流程图。具体实施例方式现在将详细参考本专利技术的实施例,其示例在附图中进行说明,其中相同的参考标记自始至终指相同的元件。下面通过参考附图,描述所述实施例以说明本专利技术。图3是根据本专利技术一个实施例的固件加密装置的方框图。参考图3,固件加密装置300包括加密处理单元310、ROM记录器320、以及存储器330。加密处理单元310包括加密密钥产生器310-1和固件加密处理单元310-2。加密密钥产生器310-1从外部设备接收256比特专用密钥数据SK,并且使用预定的随机数而产生32比特加密密钥数据EK。所述加密密钥数据EK具有32比特,其是四字节的固件。根据本实施例,所述专用密钥数据是256比特单元,然而专用密钥数据的比特数可以改变。固件加密处理单元310-2接收由加密密钥产生器310-1产生的加密密钥数据EK、8比特固件数据D以及16比特固件地址信息A。固件地址信息A是要存储在存储器330中的位置信息。固件加密处理单元310-2使用固件地址信息A而从加密密钥数据EK产生8比特加密数据TD。例如,固件加密处理单元310-2根据固件地址信息A的最低的2比特A的值而产生加密数据TD。也就是说,当A等于″00″、″01″、″10″、或″11″时,加密数据TD分别等于EK、EK、EK、或EK。相应地,根据固件地址信息A,加密数据TD可以取4个不同的值。通过对加密数据TD和要存储在固件地址中的固件数据D执行异或操作,固件加密处理单元310-2产生加密固件数据ED,其中,加密数据TD从所述固件地址产生。加密固件数据ED由ROM记录器320写入到存储器3 30中。图4是根据本专利技术一个实施例的固件解密装置的方框图。参考图4,根据本专利技术的实施例,固件解密装置400包括输入设备410、微处理器420、存储器430、以及解密处理单元440。解密处理单元440包括加密密钥产生器440-1和固件解密处理单元440-2。根据本专利技术的实施例,计算机450借助于微处理器420将数据下载到存储器430或从存储器430中上传数据。输入设备410输入密钥命令以控制电子设备,并且微处理器420响应于从输入设备410输入的密钥命令、使用存储在存储器430中的固件来控制所述电子设备。由图3中显示的固件加密装置300加密的固件和在加密处理中使用的专用密钥数据SK被存储在存储器430中。根据本专利技术的实施例,存储器430是闪速ROM,一种非易失性存储器设备。微处理器420使用从存储器430中读取和解密的固件而控制电子设备,以及当确定从输入设备410和/或计算机450输入的信息满足了执行固件的条件时,微处理器420产生地址信息和读取控制信号,以便从存储器430中读取专用密钥数据SK。微处理器420产生地址信息和读取控制信号以读取所述加密固件。加密密钥产生器440-1接收从存储器430中读取的256比特专用密钥数据SK,并使用一个随机数产生32比特加密密钥数据EK。所述加密密钥数据EK具有32比特,其是四字节的固件。固件解密处理单元440-2接收由加密密钥产生器440-1产生的加密密钥数据EK、从存储器430中读取的8比特加密固件数据ED和16比特固件地址信息A。所述固件地址信息A是要从存储器330中读取加密固件的地址信息。固件解密处理单元440-2采用与用于加密的相似的方法,使用所述固件地址信息A从加密密钥数据EK产生8比特加密数据TD。也就是说,当为固件地址信息A的最低2比特的A的值是″00″、″01″、″10″、或″11″时,加密数据TD分别等于EK、EK、EK、或EK。相应地,根据固件地址信息A,加密数据TD可以取4个不同的值。固件解密处理单元440-2通过对加密数据TD和从固件地址中读取的已加密固件数据ED执行异或操作而产生解密固件数据D,所述加密数据TD从所述固件地址中本文档来自技高网...

【技术保护点】
一种固件加密方法,包括:接收预定的专用密钥数据;使用预定的随机数从所述预定的专用密钥数据产生加密密钥数据;基于所述加密密钥数据、产生与要存储在存储器中的固件地址信息相对应的加密数据;以及通过对所述加密数据和固件数据执行异或操作而产生加密固件数据,以根据所述固件地址信息存储所述加密固件数据。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:金仁球李钟圭
申请(专利权)人:三星电子株式会社
类型:发明
国别省市:KR[韩国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1