[发明专利]实现硬件和软件绑定的加密和解密方法有效
| 申请号: | 200610116253.0 | 申请日: | 2006-09-20 |
| 公开(公告)号: | CN101149775A | 公开(公告)日: | 2008-03-26 |
| 发明(设计)人: | 吕玲;缪晖 | 申请(专利权)人: | 展讯通信(上海)有限公司 |
| 主分类号: | G06F21/24 | 分类号: | G06F21/24 |
| 代理公司: | 上海浦一知识产权代理有限公司 | 代理人: | 丁纪铁 |
| 地址: | 201203上海市浦东新*** | 国省代码: | 上海;31 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 实现 硬件 软件 绑定 加密 解密 方法 | ||
技术领域
本发明涉及一种实现在带有中央处理器的终端系统的硬件和软件绑定的加密方法。本发明还涉及一种对上述加密方法进行解密的方法。
背景技术
目前在带有中央处理器的终端系统中,对软件的保护方法主要分为三类:上网注册、许可证(License)保护、软件加密。
前两类保护方法需要借助网络等外部途径来取得软件的正常使用权,适宜在连入网络的设备中使用。软件加密的方法主要有两种:加密狗和钥匙盘。加密狗是插在并口上的软硬件结合的软件加密产品。它一般都有几十或几百字节的非易失性存储空间可供读写,有的内部还增添了一个单片机。软件运行时通过向并口写入一定数据,判断从并口返回密码数据正确与否来检查加密狗是否存在。钥匙盘方式就是在特殊磁道里写入一定信息,软件在运行时通过校验这些信息判断其合法性。两者共同的特点都需要利用外部设备验证软件的合法性。对于很多功能简单、结构灵巧的便携设备(如手机等智能终端),采用上网注册或添加外设的方法就显得既不方便也不实用。
发明内容
本发明要解决的技术问题是提供一种实现硬件和软件绑定的加密方法,可实现软件产品和硬件产品的绑定,从而提高软件产品和硬件产品的安全性。为此,本发明还提供一种对上述加密方法进行解密的方法。
为解决上述技术问题,本发明提供一种实现硬件和软件绑定的加密方法,包括以下步骤:
(1)将硬件序列号经过散列函数HASH变换得到一软件序列号;
(2)由所述软件序列号构成对称密钥,并通过对称加密算法对软件明文进行加密;
(3)使用一公用密钥通过非对称加密算法对所述对称密钥进行加密;
(4)将加密后的软件明文和对称密钥放在一起下载到存储器中。
同时,本发明还提供一种对所述加密方法进行解密的方法,包括步骤:
(1)使用一私用密钥对加密后的对称密钥进行解密,得到一第一软件序列号;
(2)芯片对硬件序列号计算HASH值得到一第二软件序列号;
(3)对第一软件序列号和第二软件序列号进行比较,如果相同则进入步骤(4),否则进入步骤(5);
(4)利用第二软件序列号对加密后的软件明文进行解密,得到实际的软件明文;
(5)验证失败,终止程序,发出告警信息。
本发明由于采用了上述技术方案,具有这样的有益效果,即通过利用硬件序列号的某种变换作为软件加密的密钥,实现了软件产品和硬件产品的绑定,从而提高软件产品和硬件产品的安全性。
附图说明
下面结合附图与具体实施方式对本发明作进一步详细的说明:
图1是根据本发明的加密端的实现过程;
图2是根据本发明的解密端的实现过程。
具体实施方式
本发明包括加密和解密两部分。首先,硬件芯片中存储有一个代表芯片身份的唯一序列号(HW_UID),该序列号的长短由生产厂家自行决定,但绝对不能有重复。下面将从加密和解密两个方面详细介绍如何利用这个唯一序列号实现软、硬件的绑定。
如图1所示的实施例为根据本发明的加密端的实现过程。图中,Key_pub表示公共密钥,用来进行非对称加密;Key_sym表示对称密钥,用来进行对称加密;Plain text表示要进行加密的软件明文;SW_UID表示软件的唯一序列号。该软件加密的过程可通过以下四个步骤来实现:
(1)将HW_UID经过散列函数HASH变换得到SW_UID;
(2)由SW_UID构成Key_sym,通过对称加密算法对软件明文进行加密;
(3)Key_pub通过非对称加密算法对Key_sym进行加密;
(4)加密后的Plain text和Key_sym放在一起下载到存储器中。
如图2所示的实施例为根据本发明的解密端的实现过程。其中,Key_prv表示私有密钥,用来进行非对称解密,它同HW_UID一起存储于芯片的内部,并禁止任何外部设备的访问。该软件解密的过程可通过以下五个步骤来实现:
(1)用Key_prv对加密后的Key_sym进行解密,得到SW_UID’;
(2)芯片对HW_UID计算HASH值得到SW_UID;
(3)比较SW_UID’和SW_UID,如果相同则进入步骤(4),否则进入步骤(5);
(4)利SW_UID对加密后的Plain text进行解密,得到Plain text;
(5)验证失败,终止程序,发出告警信息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于展讯通信(上海)有限公司,未经展讯通信(上海)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200610116253.0/2.html,转载请声明来源钻瓜专利网。





