【技术实现步骤摘要】
一种软件保护方法、装置、系统、CPU芯片及电子设备
[0001]本专利技术涉及软件安全
,尤其涉及一种软件保护方法、装置、系统、CPU芯片及电子设备。
技术介绍
[0002]目前,计算机技术高速发展,计算机软件种类及其功能也越来越丰富,能够满足现代人生活和工作中的各种需求。然而,与此同时,计算机软件安全性问题也日益凸显。计算机软件开发商通常会面对对于软件本身和软件版权的威胁,比如:软件被反编译、软件授权被非法拷贝等。对于所述威胁,目前主流的防御方案有如下两种实现方式:
[0003]一、基于软件的保护方式,此方式主要通过保存在软件内部的密钥对证书或注册码进行验证,但是容易被破解;
[0004]二、基于硬件的保护方式,此方式下的保护设备通常被称作加密狗或加密锁,是一种插在计算机USB(Universal Serial Bus,通用串行总线)口或并口上的软硬件结合的加密产品,通过在软件执行过程中和加密狗交换数据来实现加密。
[0005]目前,常用的硬件保护方式,如图1所示。加密狗插在计算机的USB口,通过USB串行总线与CPU(central processing unit,中央处理器)相连,软件运行过程中与加密狗交换数据实现软件的加解密功能。然而,此种保护方式通常存在以下缺点:成本上,外接加密狗需要使用额外的硬件,增加了硬件成本;安全性上,加密狗完全通过串行总线与CPU相连,增加了暴露面,容易受总线类物理攻击。
技术实现思路
[0006]有鉴于此,本专利技术实施例提供一种软件 ...
【技术保护点】
【技术特征摘要】
1.一种软件保护方法,其特征在于,应用于用户设备的中央处理器CPU芯片中的运算核心,所述方法包括:检测到用户对软件使用的触发操作后,指示安全处理器SP进行用户设备的身份识别,其中所述身份识别包括:利用签名证书中的公钥对用户证书进行验签,以及,利用CPU芯片身份密钥派生的私钥对用户证书中的公钥进行校验;如果SP识别用户设备身份成功,则允许用户使用软件。2.根据权利要求1所述的软件保护方法,其特征在于,所述方法还包括:向证书管理服务器发送包含用户设备的CPU芯片标识的证书请求;接收证书管理服务器根据证书请求下发的用户证书和签名证书,并进行存储;其中,用户证书包括利用与CPU芯片标识对应的CPU芯片身份密钥派生的公钥,且由与签名证书中的公钥对应的私钥签名。3.根据权利要求1所述的软件保护方法,其特征在于,指示安全处理器SP进行用户设备的身份识别,还包括:指示SP验证用户证书是否在有效期内。4.根据权利要求1所述的软件保护方法,其特征在于,在允许用户使用软件后,所述方法还包括:在用户使用软件的过程中,指示SP使用用户证书中的公钥对软件的设定关键代码和数据进行加密保护;检测到对所述设定关键代码和数据的使用需求时,指示SP使用CPU芯片身份密钥派生的私钥对软件的设定关键代码和数据进行解密。5.一种软件保护方法,其特征在于,应用于用户设备的中央处理器CPU芯片中的安全处理器SP,所述方法包括:接收到CPU芯片中的运算核心发送的用户设备身份识别指示;对用户设备进行身份识别,其中所述身份识别包括:利用签名证书中的公钥对用户证书进行验签,以及,利用CPU芯片身份密钥派生的私钥对用户证书中的公钥进行校验;将身份识别结果发送给CPU芯片中的运算核心,以使CPU芯片中的运算核心判断是否允许用户使用软件。6.根据权利要求5所述的软件保护方法,其特征在于,在对用户设备进行身份识别之前,所述方法还包括:接收CPU芯片中的运算核心导入的用户证书和签名证书。7.根据权利要求5所述的软件保护方法,其特征在于,对用户设备进行身份识别,还包括:验证用户证书是否在有效期内。8.根据权利要求5所述的软件保护方法,其特征在于,所述方法还包括:接收到CPU芯片中的运算核心发送的加密保护指示;使用用户证书中的公钥对软件的设定关键代码和数据进行加密保护;接收到CPU芯片中的运算核心发送的解密指示;使用CPU芯片身份密钥派生的私钥对软件的设定关键代码和数据进行解密。9.根据权利要求8所述的软件保护方法,其特征在于,对软件的设定关键代码和数据进行加密保护,包括:从安全非易失存储器FLASH获取用户证书中的公钥;
将用户证书中的公钥发送给密码协处理器,以使密码协处理器执行以下操作:从系统内存中读取软件的设定关键代码和数据;利用用户证书中的公钥对该读取结果进行加密保护,将加密保护结果存储至系统内存。10.根据权利要求8所述的软件保护方法,其特征在于,对软件的设定关键代码和数据进行解密,包括:从安全非易失存储器FLASH获取CPU芯片身份密钥派生的私钥;将CPU芯片身份密钥派生的私钥发送给密码协处理器,以使密码协处理器执行以下操作:从系统内存中读取加密保护后的软件的设定关键代码和数据;利用CPU芯片身份密钥派生的私钥对该读取结果进行解密,将解密结果存储至系统内存。11.一种软件保护方法,其特征在于,应用于证书管理服务器,所述方法包括:接收用户设备发送的包含用户设备的CPU芯片标识的证书请求;获取与证书请求中的CPU芯片标识对应的CPU芯片身份密钥,根据CPU芯片身份密钥派生的公钥构建用户证书;利用与签名证书中的公钥对应的私钥签名用户证书;将签名证书和签名后的用户证书下发给用户设备...
【专利技术属性】
技术研发人员:方保顺,应志伟,冯浩,
申请(专利权)人:海光信息技术股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。