电子设备软件的密钥生成装置、加密方法和解密方法

文档序号:7646547阅读:131来源:国知局
专利名称:电子设备软件的密钥生成装置、加密方法和解密方法
技术领域
本发明涉及加密算法中的密钥生成装置,特别是用于加密/解密电子 设备软件的密钥生成装置、以及利用这种装置进行软件加密和解密的方 法。
背景技术
移动终端的使用,诸如蜂窝电话和智能PDA (个人数字助理)正变 得日益普及。这些终端设备在出厂时,通常除了 IMEI(国际移动设备标 识)号和个别跟终端射频相关参数不同之外,其硬件配置和软件配置都基 本相同。在更高级的,带有加密通信、数字签名和数字证书的移动终端设 备中,因为需要运用密码技术保证所存储内容或传递信息的安全性、完整 性和私有性,密钥作为一个必不可少的差异化参数正起着关键性的作用。
如图1所示,移动终端100内具有中央处理单元102和片外存储芯 片101。中央处理单元102是移动终端内部的核心处理芯片,主要包括模 拟基带和数字基带两部分,负责完成移动终端的启动、操作系统、用户界 面、通信协议栈、各类数据业务,以及与其它应用模块、外设的接口通信 等任务;中央处理单元102内具有片内存储单元103 (如片内ROM)。 受到移动终端基带处理芯片内存储空间的限制,除了必要的与系统运行密 切相关的软件存储在中央处理单元102中之外,大部分移动终端软件通 常存储在基带处理芯片102以外的专用存储芯片当中。为了保护移动终 端上所运行软件的安全,对软件进行加密是一种常见的解决办法。对软件 进行加密的方式有很多种,通常分为以下两类
1) 对称加密方式;
2) 非对称加密方式。
对称加密采用了对称密码编码技术,它的特点是文件加密和解密使用
4相同的密钥,即加密密钥也可以用作解密密钥。在对称加密算法中,使用 的密钥只有一个,发收信双方都使用这个密钥对数据进行加密和解密,这 就要求解密方事先必须知道加密密钥。对称加密算法的特点是算法公开、 计算量小、加密速度快、加密效率高。不足之处是,交易双方都使用同样 密钥,安全性得不到保证。采用对称加密方式保护移动终端软件,需要注 意在终端芯片内部妥善保存解密密钥,否则密钥泄漏很容易被攻击者破 译。
非对称加密算法需要两个密钥公开密钥(Public key)和私有密钥 (Private key)。公开密钥与私有密钥是一对,如果用公开密钥对数据进 行加密,只有用其对应的私有密钥才能解密;如果用私有密钥对数据进行 加密,那么只有用对应的公开密钥才能解密。非对称加密算法的保密性比 较好,它消除了交换密钥的需要,但加密和解密花费时间长、速度慢,不 适合于对文件加密而只适用于对少量数据进行加密。由于受到移动终端处 理器能力的限制,应用非对称加密算法加密软件的例子比较小,通常利用 非对称加密方式传输认证数据或交换对称加密密钥。
无论采用对称加密方式还是采用非对称加密方式,都需要密钥的生成 和存储过程。出于安全的需要,不同的移动终端应该生成不同的加密解密 密钥,即密钥具有唯一性。通常情况下,大部分密钥都存储在移动终端内 部的非鲁棒性存储器中,即这类存储器可能由于意外原因造成所存储信息
丢失的可能。因此,需要提供一种机制既能够保证移动终端加密密钥生成 的唯一性,又能够保证其安全性。

发明内容
为解决上述技术问题,本发明提出一种电子设备软件的密钥生成装 置,其利用电子设备芯片固有参数生成密钥,使得被加密过的软件仅能运 行在所属电子设备上。
本发明还提出一种电子设备软件的加密方法,利用电子设备芯片固有 参数生成的密钥进行软件加密。
本发明还提出一种电子设备软件的解密方法,利用电子设备芯片固有
5参数生成的密钥进行软件解密。
本发明提供一种电子设备软件的密钥生成装置,包括 一次性可编程 存储器,其储存该电子设备的标识号;处理芯片,从该存储器中读取该标 识号,并计算该标识号的具有唯一性和不可逆性的对应值作为密钥。
上述的电子设备软件的密钥生成装置中,该一次性可编程存储器是内 置于该处理芯片,且该标识号是该处理芯片的芯片ID号。其中,该标识 号是预先以烧录方式配置于该一次性可编程存储器中。
上述的电子设备软件的密钥生成装置中,该对应值是采用HASH算 法计算获得的。
上述的电子设备软件的密钥生成装置中,该电子设备是移动终端,该 处理芯片为该移动终端中的中央处理单元。
本发明提供一种电子设备软件的加密方法,包括以下步骤提供一密 钥生成装置,其具有一次性可编程存储器及处理芯片,其中该存储器储存 该电子设备的标识号;以该处理芯片从该一次性可编程存储器中读取该标 识号,并计算该标识号的具有唯一性和不可逆性的对应值;以及以该对应 值作为加密密钥加密一软件。
上述的电子设备软件的加密方法中,该 一 次性可编程存储器是内置于 该处理芯片,且该标识号是该处理芯片的芯片ID号。
上述的电子设备软件的加密方法,还包括以烧录方式将该标识号初始 化配置于该一次性可编程存储器中。
上述的电子设备软件的加密方法中,计算该标识号的具有唯一性和不 可逆性的对应值的方法包括HASH算法。
上述的电子设备软件的加密方法中,以该对应值作为加密密钥加密该 软件的步骤之前还包括将需要加密的软件下载至连接于该处理芯片的一 片外存储器中;而且以该对应值作为加密密钥加密该软件的步骤之后还包 括将加密结果保存至该片外存储器中。
上述的电子设备软件的加密方法中,该电子设备是移动终端,该处理 芯片为该移动终端中的中央处理单元。
本发明还提供一种电子设备软件的解密方法,包括以下步骤提供一密钥生成装置,其具有一次性可编程存储器及处理芯片,该存储器储存该
电子设备的标识号;以该处理芯片从该一次性可编程存储器中读取该标识 号,并计算该标识号的具有唯一性和不可逆性的对应值;以及以该对应值 作为解密密钥解密一被加密的软件。
本发明可以通过对一次性可编程存储器中的标识号进行计算,方便、 快捷地产生加密电子设备软件所需的密钥,具有密钥唯一、不用保存、随 时用随时产生的特点,从而有效保护电子设备软件的安全。


图1是一种现有的移动终端的结构框图。 图2是本发明一个实施例的一种电子设备的结构框图。 图3是本发明 一个实施例的电子设备软件加密方法流程图。 图4是本发明 一个实施例的电子设备软件解密方法流程图。
具体实施例方式
请参阅图2所示,这是根据本发明一个实施例的一种电子设备的结构 框图。该电子设备200包括处理芯片202和片外存储器201。处理芯片202 内具有片内存储单元203 (如片内ROM)。该片外存储器201例如是非 易失性存储器。作为本发明的一个示例性说明,该电子设备200例如是 移动终端,其中处理芯片202例如是移动终端中的中央处理单元,如基 带芯片。以下以中央处理单元202作为处理芯片为例进行说明。
本发明一个实施例的密钥生成装置包括中央处理单元202和一次性 可编程(One Time Programming, OTP )存4诸器204。如图2所示,OTP 存储器204例如设置在中央处理单元202中。该OTP存储器204可以按 照编程人员的需要写入任意数据,但写入的数据不可以再次修改,即只可 以一次性编程。此编程可在移动终端初始化过程中完成。
移动终端在制造阶段的初始化过程是对移动终端主要芯片(中央处理 单元)做的一次初始化配置过程。在移动终端初始化过程中,根据图2 所示的连接装置,将中央处理单元202与外部的烧写控制器210和芯片ID数据库212相连。烧写控制器210通过编程接口将芯片ID数据库212 中的芯片ID号写入OTP存储器204。芯片ID数据库记录了足够多的芯 片ID号,用以区别不同的移动终端中央处理单元202。烧写的过程如下 第一步对OTP存储器204进行空白检查;检查OTP存储器中是
否已烧入数据,若该存储器是空白的则可以进入下一步,否则中断烧录过 程并提示错误;
第二步读取芯片ID数据库212中的数据,并烧入OTP存储器204, 该过程决定了中央处理单元的唯一性,读取方式可以为顺序读取、随机读 取或其他有效读取方式;
第三步校验OTP数据,即从OTP存储器204中读出之前写入的 数值并与数据库212的值进行对比,以检查记录过程是否正确。
此外,为了保证记录在OTP存储器204中的芯片ID号的安全,在移 动终端中央处理单元202中可以设计专用DMA单元来限制对该区域的访 问,即只有符合既定访问规则的指令才能读取芯片ID号。
应当指出的是OTP存储器204储存中央处理单元ID号仅为举例说 明,实际上,只要OTP存储器204储存一唯一表示该电子设备的标识号 即可。
中央处理单元202从该OTP存储器204中读取该芯片ID号,并计 算该芯片ID号的具有唯一性和不可逆性的对应值作为密钥(加密密钥或 解密密钥)。
下面将结合此密钥生成装置说明本发明的软件加密和解密方法。 请结合参阅图2、图3所示,本发明的软件加密方法的一个实施例的 步骤如下
步骤301:将需要加密的移动终端软件下载至片外存储器201; 步骤302:中央处理单元202从OTP存储器204中读取芯片ID号; 步骤303:中央处理单元202计算芯片ID号的一具有唯一性和不可 逆性的对应值;
步骤304:用该对应值作为密钥加密片外存储器201中的软件;以及 步骤305:将加密结果保存至片外存储器201中。其中,步骤301只要在步骤304之前执行即可,换言之,步骤301 也可以在步骤303与步骤304之间执行。
在步骤303中,为达到保密要求,该对应值与芯片ID号之间需要满 足的要求是唯一性不同的芯片ID号将获得不同的对应值;不可逆性, 即根据该对应值不能逆向获得该芯片ID号。HASH (哈希)算法是一种 满足以上条件的方法。HASH算法是将任意长度的二进制值映射为固定长 度的较小二进制值,后者即为HASH值。HASH值具有唯一性,即如果 芯片ID值不同而且只要更改该其中一个比特,随后的HASH值都将不同。 并且,HASH算法具有不可逆性,即如果知道了 HASH值,通过该HASH 值逆推芯片ID值是无法做到的。本发明正是利用HASH算法的唯一性和 不可逆性,并结合中央处理单元202中芯片ID号的唯一性和保密性,将 保存在片外存储器201中的移动终端软件与中央处理单元202紧密联系 在一起,保证了移动终端软件的安全。
步骤304所涉及到的加密算法为对称加密算法,因为加密密钥与中央 处理单元202的ID号相关,因此本发明可以省略保存加密密钥的环节, 加强了加密系统的安全。
请结合参照图2和图4所示,本发明的软件解密方法一个实施例步骤
步骤401:中央处理单元202从片外存储器201中读取被加密的软
件;
步骤402:中央处理单元202从OTP存储器中204读取芯片ID号; 步骤403:计算该芯片ID号的对应值;
步骤404:用该对应值作为密钥解密片外存储器201中的软件;以及 步骤405:中央处理单元202运行解密后的软件。 其中步骤401只要在步骤404之前执行即可,换言之,步骤401也 可以在步骤403与步骤404之间执行。
该对应值的计算方法将采用与加密过程相同的方法,例如HASH算法。
从上述过程可知,本发明在解密时所需的解密密钥不需要从芯片外传递到芯片内,而且芯片内的解密密钥也不需要另外烧录或者放置,它仅仅
只需要利用储存在OTP存储器204中的芯片的ID号的 一个对应值即可, 因此提供了系统的安全。
因此,通过本发明的密钥生成装置可以方便、快捷地产生加密移动终 端软件所需的密钥,具有密钥唯一、不用保存、随时用随时产生的特点, 从而有效保护移动终端软件的安全。
本发明并不限于应用在上述实施例中的移动终端中,任何其他需要软 件加密的电子设备,均可根据上述实施例的教示应用本发明的密钥生成装 置,这些应用的例子均在本发明的范围之内。
权利要求
1、电子设备软件的密钥生成装置,其特征在于,包括一次性可编程存储器,其储存该电子设备的标识号;处理芯片,从该存储器中读取该标识号,并计算该标识号的具有唯一性和不可逆性的对应值作为密钥。
2、 如权利要求1所述的电子设备软件的密钥生成装置,其特征在于, 该一次性可编程存储器是内置于该处理芯片,且该标识号是该处理芯片的 芯片ID号。
3、 如权利要求1或2所述的电子设备软件的密钥生成装置,其特征 在于,该标识号是预先以烧录方式配置于该一次性可编程存储器中。
4、 如权利要求1所述的电子设备软件的密钥生成装置,其特征在于, 该对应值是采用HASH算法计算获得的。
5、 如权利要求1或2所述的电子设备软件的密钥生成装置,其特征 在于,该电子设备是移动终端,该处理芯片为该移动终端中的中央处理单 元。
6、 一种电子设备软件的加密方法,其特征在于包括以下步骤 提供一密钥生成装置,其具有一次性可编程存储器及处理芯片,其中该存储器储存该电子设备的标识号;以该处理芯片从该一次性可编程存储器中读取该标识号,并计算该标 识号的具有唯一性和不可逆性的对应值;以及以该对应值作为加密密钥加密 一软件。
7、 如权利要求6所述的电子设备软件的加密方法,其特征在于,该 一次性可编程存储器是内置于该处理芯片,且该标识号是该处理芯片的芯 片ID号。
8、 如权利要求6或7所述的电子设备软件的加密方法,其特征在于, 还包括以烧录方式将该标识号初始化配置于该一次性可编程存储器中。
9、 如权利要求6所述的电子设备软件的加密方法,其特征在于,计 算该标识号的具有唯一性和不可逆性的对应值的方法包括HASH算法。
10、 如权利要求6所述的电子设备软件的加密方法,其特征在于, 以该对应值作为加密密钥加密该软件的步骤之前还包括将需要加密的软件下载至连接于该处理芯片的一片外存储器中;且以该对应值作为加密密钥加密该软件的步骤之后还包括将加密结果 保存至该片外存储器中。
11、 如权利要求6或7所述的电子设备软件的加密方法,其特征在 于,该电子设备是移动终端,该处理芯片为该移动终端中的中央处理单元。
12、 一种电子设备软件的解密方法,其特征在于包括以下步骤 提供一密钥生成装置,其具有一次性可编程存储器及处理芯片,该存储器储存该电子设备的标识号;以该处理芯片从该 一 次性可编程存储器中读取该标识号,并计算该标 识号的具有唯一性和不可逆性的对应值;以及以该对应值作为解密密钥解密一被加密的软件。
13、 如权利要求12所述的电子设备软件的解密方法,其特征在于, 该一次性可编程存储器是内置于该处理芯片,且该标识号是该处理芯片的 芯片ID号。
14、 如权利要求13所述的电子设备软件的解密方法,其特征在于, 计算该标识号的具有唯一性和不可逆性的对应值的方法包括HASH算法。
15、 如权利要求12所述的电子设备软件的解密方法,其特征在于, 以该对应值作为解密密钥解密该被加密的软件的步骤之前还包括该处理 芯片从一 片外存储器中读取该被加密的软件。
16、 如权利要求12或13所述的电子设备软件的解密方法,其特征 在于,该电子设备是移动终端,该处理芯片为该移动终端中的中央处理单 元。
全文摘要
本发明涉及一种电子设备软件的密钥生成装置及利用此装置加密和解密软件的方法,该装置包括一次性可编程存储器,其储存该电子设备的标识号;以及处理芯片,从该存储器中读取该标识号,并计算该标识号的具有唯一性和不可逆性的对应值作为密钥。由此可以方便、快捷地产生加密电子设备软件所需的密钥,并具有密钥唯一、不用保存、随时用随时产生的特点。
文档编号H04L9/32GK101425895SQ200710047508
公开日2009年5月6日 申请日期2007年10月29日 优先权日2007年10月29日
发明者玲 吕, 晖 缪 申请人:展讯通信(上海)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1