CN101425895A - 电子设备软件的密钥生成装置、加密方法和解密方法 - Google Patents
电子设备软件的密钥生成装置、加密方法和解密方法 Download PDFInfo
- Publication number
- CN101425895A CN101425895A CNA2007100475087A CN200710047508A CN101425895A CN 101425895 A CN101425895 A CN 101425895A CN A2007100475087 A CNA2007100475087 A CN A2007100475087A CN 200710047508 A CN200710047508 A CN 200710047508A CN 101425895 A CN101425895 A CN 101425895A
- Authority
- CN
- China
- Prior art keywords
- software
- chip
- identification number
- electronic appliance
- process chip
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Storage Device Security (AREA)
Abstract
本发明涉及一种电子设备软件的密钥生成装置及利用此装置加密和***的方法,该装置包括:一次性可编程存储器,其储存该电子设备的标识号;以及处理芯片,从该存储器中读取该标识号,并计算该标识号的具有唯一性和不可逆性的对应值作为密钥。由此可以方便、快捷地产生加密电子设备软件所需的密钥,并具有密钥唯一、不用保存、随时用随时产生的特点。
Description
技术领域
本发明涉及加密算法中的密钥生成装置,特别是用于加密/解密电子设备软件的密钥生成装置、以及利用这种装置进行软件加密和解密的方法。
背景技术
移动终端的使用,诸如蜂窝电话和智能PDA(个人数字助理)正变得日益普及。这些终端设备在出厂时,通常除了IMEI(国际移动设备标识)号和个别跟终端射频相关参数不同之外,其硬件配置和软件配置都基本相同。在更高级的,带有加密通信、数字签名和数字证书的移动终端设备中,因为需要运用密码技术保证所存储内容或传递信息的安全性、完整性和私有性,密钥作为一个必不可少的差异化参数正起着关键性的作用。
如图1所示,移动终端100内具有中央处理单元102和片外存储芯片101。中央处理单元102是移动终端内部的核心处理芯片,主要包括模拟基带和数字基带两部分,负责完成移动终端的启动、操作***、用户界面、通信协议栈、各类数据业务,以及与其它应用模块、外设的接口通信等任务;中央处理单元102内具有片内存储单元103(如片内ROM)。受到移动终端基带处理芯片内存储空间的限制,除了必要的与***运行密切相关的软件存储在中央处理单元102中之外,大部分移动终端软件通常存储在基带处理芯片102以外的专用存储芯片当中。为了保护移动终端上所运行软件的安全,对软件进行加密是一种常见的解决办法。对软件进行加密的方式有很多种,通常分为以下两类:
1)对称加密方式;
2)非对称加密方式。
对称加密采用了对称密码编码技术,它的特点是文件加密和解密使用相同的密钥,即加密密钥也可以用作解密密钥。在对称加密算法中,使用的密钥只有一个,发收信双方都使用这个密钥对数据进行加密和解密,这就要求解密方事先必须知道加密密钥。对称加密算法的特点是算法公开、计算量小、加密速度快、加密效率高。不足之处是,交易双方都使用同样密钥,安全性得不到保证。采用对称加密方式保护移动终端软件,需要注意在终端芯片内部妥善保存解密密钥,否则密钥泄漏很容易被攻击者破译。
非对称加密算法需要两个密钥:公开密钥(Public key)和私有密钥(Private key)。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用其对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。非对称加密算法的保密性比较好,它消除了交换密钥的需要,但加密和解密花费时间长、速度慢,不适合于对文件加密而只适用于对少量数据进行加密。由于受到移动终端处理器能力的限制,应用非对称加密算法加密软件的例子比较小,通常利用非对称加密方式传输认证数据或交换对称加密密钥。
无论采用对称加密方式还是采用非对称加密方式,都需要密钥的生成和存储过程。出于安全的需要,不同的移动终端应该生成不同的加密解密密钥,即密钥具有唯一性。通常情况下,大部分密钥都存储在移动终端内部的非鲁棒性存储器中,即这类存储器可能由于意外原因造成所存储信息丢失的可能。因此,需要提供一种机制既能够保证移动终端加密密钥生成的唯一性,又能够保证其安全性。
发明内容
为解决上述技术问题,本发明提出一种电子设备软件的密钥生成装置,其利用电子设备芯片固有参数生成密钥,使得被加密过的软件仅能运行在所属电子设备上。
本发明还提出一种电子设备软件的加密方法,利用电子设备芯片固有参数生成的密钥进行软件加密。
本发明还提出一种电子设备软件的解密方法,利用电子设备芯片固有参数生成的密钥进行软件解密。
本发明提供一种电子设备软件的密钥生成装置,包括:一次性可编程存储器,其储存该电子设备的标识号;处理芯片,从该存储器中读取该标识号,并计算该标识号的具有唯一性和不可逆性的对应值作为密钥。
上述的电子设备软件的密钥生成装置中,该一次性可编程存储器是内置于该处理芯片,且该标识号是该处理芯片的芯片ID号。其中,该标识号是预先以烧录方式配置于该一次性可编程存储器中。
上述的电子设备软件的密钥生成装置中,该对应值是采用HASH算法计算获得的。
上述的电子设备软件的密钥生成装置中,该电子设备是移动终端,该处理芯片为该移动终端中的中央处理单元。
本发明提供一种电子设备软件的加密方法,包括以下步骤:提供一密钥生成装置,其具有一次性可编程存储器及处理芯片,其中该存储器储存该电子设备的标识号;以该处理芯片从该一次性可编程存储器中读取该标识号,并计算该标识号的具有唯一性和不可逆性的对应值;以及以该对应值作为加密密钥加密一软件。
上述的电子设备软件的加密方法中,该一次性可编程存储器是内置于该处理芯片,且该标识号是该处理芯片的芯片ID号。
上述的电子设备软件的加密方法,还包括以烧录方式将该标识号初始化配置于该一次性可编程存储器中。
上述的电子设备软件的加密方法中,计算该标识号的具有唯一性和不可逆性的对应值的方法包括HASH算法。
上述的电子设备软件的加密方法中,以该对应值作为加密密钥加密该软件的步骤之前还包括:将需要加密的软件下载至连接于该处理芯片的一片外存储器中;而且以该对应值作为加密密钥加密该软件的步骤之后还包括:将加密结果保存至该片外存储器中。
上述的电子设备软件的加密方法中,该电子设备是移动终端,该处理芯片为该移动终端中的中央处理单元。
本发明还提供一种电子设备软件的解密方法,包括以下步骤:提供一密钥生成装置,其具有一次性可编程存储器及处理芯片,该存储器储存该电子设备的标识号;以该处理芯片从该一次性可编程存储器中读取该标识号,并计算该标识号的具有唯一性和不可逆性的对应值;以及以该对应值作为解密密钥解密一被加密的软件。
本发明可以通过对一次性可编程存储器中的标识号进行计算,方便、快捷地产生加密电子设备软件所需的密钥,具有密钥唯一、不用保存、随时用随时产生的特点,从而有效保护电子设备软件的安全。
附图说明
图1是一种现有的移动终端的结构框图。
图2是本发明一个实施例的一种电子设备的结构框图。
图3是本发明一个实施例的电子设备软件加密方法流程图。
图4是本发明一个实施例的电子设备软件解密方法流程图。
具体实施方式
请参阅图2所示,这是根据本发明一个实施例的一种电子设备的结构框图。该电子设备200包括处理芯片202和片外存储器201。处理芯片202内具有片内存储单元203(如片内ROM)。该片外存储器201例如是非易失性存储器。作为本发明的一个示例性说明,该电子设备200例如是移动终端,其中处理芯片202例如是移动终端中的中央处理单元,如基带芯片。以下以中央处理单元202作为处理芯片为例进行说明。
本发明一个实施例的密钥生成装置包括中央处理单元202和一次性可编程(One Time Programming,OTP)存储器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号的一个对应值即可,因此提供了***的安全。
因此,通过本发明的密钥生成装置可以方便、快捷地产生加密移动终端软件所需的密钥,具有密钥唯一、不用保存、随时用随时产生的特点,从而有效保护移动终端软件的安全。
本发明并不限于应用在上述实施例中的移动终端中,任何其他需要软件加密的电子设备,均可根据上述实施例的教示应用本发明的密钥生成装置,这些应用的例子均在本发明的范围之内。
Claims (16)
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所述的电子设备软件的解密方法,其特征在于,该电子设备是移动终端,该处理芯片为该移动终端中的中央处理单元。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2007100475087A CN101425895A (zh) | 2007-10-29 | 2007-10-29 | 电子设备软件的密钥生成装置、加密方法和解密方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2007100475087A CN101425895A (zh) | 2007-10-29 | 2007-10-29 | 电子设备软件的密钥生成装置、加密方法和解密方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101425895A true CN101425895A (zh) | 2009-05-06 |
Family
ID=40616251
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2007100475087A Pending CN101425895A (zh) | 2007-10-29 | 2007-10-29 | 电子设备软件的密钥生成装置、加密方法和解密方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101425895A (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103562922A (zh) * | 2011-03-30 | 2014-02-05 | 耶德托公司 | 在芯片制造期间建立唯一秘钥 |
CN104270650A (zh) * | 2014-09-29 | 2015-01-07 | 广州创维平面显示科技有限公司 | 一种互联网电视的安全控制***及方法 |
CN105393257A (zh) * | 2014-05-07 | 2016-03-09 | 华为终端有限公司 | 一种数据加密方法及加密装置 |
CN106603227A (zh) * | 2016-12-12 | 2017-04-26 | 江苏宝丰新能源科技有限公司 | 应用于并网逆变器软硬件加密方法 |
CN107528692A (zh) * | 2016-06-16 | 2017-12-29 | Abb瑞士股份有限公司 | 工业智能电子装置的安全有效注册 |
CN109753770A (zh) * | 2019-01-07 | 2019-05-14 | 北京地平线机器人技术研发有限公司 | 确定烧录数据的方法及装置、烧录方法及装置、电子设备 |
CN112199730A (zh) * | 2020-11-17 | 2021-01-08 | 上海优扬新媒信息技术有限公司 | 一种终端上应用数据的处理方法、装置及电子设备 |
CN113434889A (zh) * | 2021-07-07 | 2021-09-24 | 数字广东网络建设有限公司 | 业务数据的访问方法、装置、设备和存储介质 |
CN116305221A (zh) * | 2023-05-18 | 2023-06-23 | 深圳曦华科技有限公司 | 图像处理芯片***的加密方法及相关装置 |
CN113434889B (zh) * | 2021-07-07 | 2024-07-26 | 数字广东网络建设有限公司 | 业务数据的访问方法、装置、设备和存储介质 |
-
2007
- 2007-10-29 CN CNA2007100475087A patent/CN101425895A/zh active Pending
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103562922A (zh) * | 2011-03-30 | 2014-02-05 | 耶德托公司 | 在芯片制造期间建立唯一秘钥 |
CN105393257A (zh) * | 2014-05-07 | 2016-03-09 | 华为终端有限公司 | 一种数据加密方法及加密装置 |
CN105393257B (zh) * | 2014-05-07 | 2018-09-21 | 华为终端(东莞)有限公司 | 一种数据加密方法及加密装置 |
CN104270650A (zh) * | 2014-09-29 | 2015-01-07 | 广州创维平面显示科技有限公司 | 一种互联网电视的安全控制***及方法 |
CN107528692A (zh) * | 2016-06-16 | 2017-12-29 | Abb瑞士股份有限公司 | 工业智能电子装置的安全有效注册 |
CN106603227A (zh) * | 2016-12-12 | 2017-04-26 | 江苏宝丰新能源科技有限公司 | 应用于并网逆变器软硬件加密方法 |
CN109753770A (zh) * | 2019-01-07 | 2019-05-14 | 北京地平线机器人技术研发有限公司 | 确定烧录数据的方法及装置、烧录方法及装置、电子设备 |
CN112199730A (zh) * | 2020-11-17 | 2021-01-08 | 上海优扬新媒信息技术有限公司 | 一种终端上应用数据的处理方法、装置及电子设备 |
CN113434889A (zh) * | 2021-07-07 | 2021-09-24 | 数字广东网络建设有限公司 | 业务数据的访问方法、装置、设备和存储介质 |
CN113434889B (zh) * | 2021-07-07 | 2024-07-26 | 数字广东网络建设有限公司 | 业务数据的访问方法、装置、设备和存储介质 |
CN116305221A (zh) * | 2023-05-18 | 2023-06-23 | 深圳曦华科技有限公司 | 图像处理芯片***的加密方法及相关装置 |
CN116305221B (zh) * | 2023-05-18 | 2023-08-29 | 深圳曦华科技有限公司 | 图像处理芯片***的加密方法及相关装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI750223B (zh) | 區塊鏈加密射頻晶片存儲設計方法 | |
CN101176125B (zh) | 完整性受保护的安全存储设备的实施 | |
CN1777097B (zh) | 加密数据发布方法、加密装置、解密装置 | |
CN101425895A (zh) | 电子设备软件的密钥生成装置、加密方法和解密方法 | |
CN106301774B (zh) | 安全芯片、其加密密钥生成方法和加密方法 | |
CN100468438C (zh) | 实现硬件和软件绑定的加密和解密方法 | |
CN102138300B (zh) | 消息认证码预计算在安全存储器中的应用 | |
CN101149768B (zh) | 一种专用处理器软件的加密和解密方法 | |
CN107070660B (zh) | 一种区块链加密射频芯片的存储设计方法 | |
US10650373B2 (en) | Method and apparatus for validating a transaction between a plurality of machines | |
CN107294709A (zh) | 一种区块链数据处理方法、装置及*** | |
CN103562922A (zh) | 在芯片制造期间建立唯一秘钥 | |
CN101350060B (zh) | 一种适合电子标签的数据安全存取方法 | |
CN103988461A (zh) | 用于对数据进行解密的设备和方法 | |
CN102236773A (zh) | 射频识别加密验证***和方法 | |
CN104253694A (zh) | 一种用于网络数据传输的保密方法 | |
CN105306194A (zh) | 供加密档案和/或通讯协定的多重加密方法与*** | |
CN102693385A (zh) | 基于sd可信计算模块的嵌入式终端及实现方法 | |
CN107665414A (zh) | 一种带加密射频识别有源数字线路板对货品追溯防伪方法 | |
CN105339995A (zh) | 解密装置、解密能力提供装置、其方法、以及程序 | |
US7657034B2 (en) | Data encryption in a symmetric multiprocessor electronic apparatus | |
CN108038392A (zh) | 一种智能卡加密方法 | |
CN102662874B (zh) | 双界面加密存储卡及其中的数据管理方法和*** | |
CN104919753B (zh) | 解密服务提供装置、处理装置、安全性评价装置、程序以及记录介质 | |
Pyrkova et al. | Compare encryption performance across devices to ensure the security of the IOT |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20090506 |