硬件加密装置、嵌入式系统版权保护系统及方法与流程

文档序号:20082365发布日期:2020-03-13 05:48阅读:158来源:国知局
硬件加密装置、嵌入式系统版权保护系统及方法与流程

本发明涉及版权保护领域,尤其涉及一种硬件加密装置、嵌入式系统版权保护系统及方法。



背景技术:

嵌入式系统的硬件电路和软件算法总是面临着版权被侵害的危险,竞争对手,山寨厂商总是使用各种手段剽窃、仿制嵌入式系统的硬件电路和软件算法,这些知识产权安全问题无疑会对开发者的创新动力带来巨大打击,同时也会影响市场经济的正常运转。

现有的嵌入式系统的版权保护方法,一般有两个方法。第一个是通过加密算法对软件程序或数据进行加密存储,只有使用正确的密钥,才能对软件程序或数据进行解密,从而进行工作。这种方法的好处是简单易用,但是缺点是不能对硬件电路起到保护的作用,当整个嵌入式系统被抄袭仿制后,只需要对存储器存储的密钥进行暴力破解,从而获取软件程序算法和数据,即可实现抄袭再生产。

另外一个常用的方法是利用另外一个软件加密装置来对嵌入式系统进行加密保护。该方法事前产生一个加密密钥授权给嵌入式系统,然后当嵌入式系统需要执行算法和运行硬件电路时,将会使用密钥,在系统中和加密装置内执行加密验证算法,进行验证。若验证成功,电子产品正常运作,否则停止工作。这样即使抄袭者将电子产品的硬件及其核心程序抄袭破解,由于缺少了软件加密装置,电子产品也因此没法通过验证而无法进行工作,最后达到保护电子产品硬件电路和核心程序的目的。这种方法提高了被抄袭的难度,但是这样的加密保护方案,加密密钥一般都是存放在存储器中,因此有一定几率密钥被抄袭者破解得到,另外由于需要额外的存储器进行存储密钥,因此生产制造成本也相应增加。



技术实现要素:

为了解决上述技术问题之一,本发明的目的是提供一种安全性更高的硬件加密装置、嵌入式系统版权保护系统及方法。

本发明所采用的第一技术方案是:

一种硬件加密装置,所述硬件加密装置与嵌入式系统的软件之间采用软硬件协同工作模式;

所述硬件加密装置用于接收到嵌入式系统发送的认证请求后,根据认证请求获得密钥,根据密钥对嵌入式系统的硬件电路、软件版权、算法或数据进行加密授权;

其中,所述密钥不进行通讯传输。

进一步,所述硬件加密装置存储有嵌入式系统的算法或数据;

所述硬件加密装置还用于当接收到认证请求并授权成功后,执行存储的算法,将运行结果返回嵌入式系统的主程序;

当接收到认证请求并授权成功后,将存储的数据进行加密后返回嵌入式系统中;

其中,所述算法以机器码的形式移植存储在硬件加密装置中。

本发明所采用的第二技术方案是:

一种嵌入式系统版权保护系统,包括硬件加密装置与嵌入式系统,所述硬件加密装置与嵌入式系统的软件之间采用软硬件协同工作模式;

所述嵌入式系统用于发送认证请求;

所述硬件加密装置用于接收认证请求后,根据认证请求获得密钥,根据密钥对嵌入式系统的硬件电路、软件版权、算法或数据进行加密授权;

其中,所述密钥不进行通讯传输。

进一步,还包括硬件外设系统,所述硬件外设系统与嵌入式系统连接,所述硬件外设系统上设有加密认证算法的触发函数入口。

本发明所采用的第三技术方案是:

一种嵌入式系统版权保护方法,包括以下步骤:

接收嵌入式系统发送的认证请求;

根据认证请求获得密钥,根据密钥对嵌入式系统的硬件电路、软件版权、算法或数据进行加密授权;

其中,所述密钥不进行通讯传输。

进一步,对嵌入式系统的硬件电路进行加密授权的步骤,具体包括以下步骤:

接收到硬件电路发送的认证请求后,触发执行认证步骤,所述认证请求包括激励和检验码;

根据激励和检验码获取密钥,以及产生随机明文;

根据密钥对明文进行加密后获得到加密密文,并将明文和加密密文发送至硬件电路,以使硬件电路在接收到加密密文后进行解密,结合解密结果和接收到的明文判定授权是否成功。

进一步,对嵌入式系统的软件版权进行加密授权的步骤,具体包括以下步骤:

接收到嵌入式系统的软件系统发送的认证请求后,获取一组随机数作为初始明文并返回软件系统,以使软件系统结合初始明文和预设的第一密钥获取加密密文,并发送加密密文;

采用第二密钥对加密密文进行解密,获得解密明文;

将解密明文与初始明文进行比对,若比对结果一致,授权成功,执行预存储的算法并将运算结果返回软件系统;反之,授权失败,不执行预存储的算法。

进一步,对嵌入式系统数据进行加密授权的步骤,具体包括以下步骤:

接收嵌入式系统发送的认证请求,所述认证请求包括激励、校验码、密文和获取数据请求;

根据接收到的激励和校验码获取密钥,采用密钥对接收到的密文进行解密,获得解密明文;

将解密明文与预设的随机明文进行比对,若比对结果一致,授权成功,将预存储的数据进行加密后返回嵌入式系统;反之,授权失败。

本发明所采用的第四技术方案是:

一种嵌入式系统版权保护方法,包括以下步骤:

嵌入式系统发送认证请求;

硬件加密装置接收到认证请求后,根据认证请求获得密钥,根据密钥对嵌入式系统的硬件电路、软件版权、算法或数据进行加密授权;

其中,所述密钥不进行通讯传输。

进一步,所述嵌入式系统还用于接收硬件外设系统发送的触发信息,当嵌入式系统接收到硬件外设系统发送的触发信息后,嵌入式系统与硬件加密装置之间进行加密授权的步骤,具体包括以下步骤:

嵌入式系统向硬件加密装置发起认证请求;

硬件加密装置接收到认证请求后,采用密钥对随机明文进行加密,获得加密密文,并将加密密文和随机明文发送至嵌入式系统;

嵌入式系统根据预存储的密钥对密文进行解密,获得解密明文,将解密明文与接收到的随机明文进行比对;

若比对结果一致,授权成功,嵌入式系统继续工作;反之,嵌入式系统停止与硬件外设系统之间的工作。

本发明的有益效果是:本发明的加密过程中的密钥是由硬件加密装置产生获得,密钥与加密装置唯一相关,极大地提高了安全性;另外,密钥在加密认证过程中不需要在嵌入式系统和硬件加密装置之间进行通信,因此避免了密钥在传输过程中被窃取的可能,间接地提高了安全性。

附图说明

图1是本发明一种嵌入式系统版权保护方法的步骤流程图;

图2是具体实施例中一种嵌入式系统版权保护方法第一种实施方式的示意图;

图3是具体实施例中一种嵌入式系统版权保护方法第二种实施方式的示意图;

图4是具体实施例中一种嵌入式系统版权保护方法第三种实施方式的示意图;

图5是具体实施例中一种嵌入式系统版权保护方法第四种实施方式的示意图。

具体实施方式

如图1所述,本实施例提供了一种嵌入式系统版权保护方法,包括以下步骤:

s101、接收嵌入式系统发送的认证请求;

s102、根据认证请求获得密钥,根据密钥对嵌入式系统的硬件电路、软件版权、算法或数据进行加密授权;其中,所述密钥不进行通讯传输。

本实施例的方法由硬件加密装置来执行,当接收到嵌入式系统的认证请求后,获取密钥,所述密钥由相应的算法计算产生,所述相应的算法可以为des加密算法、3des加密算法、aes加密算法或者自定义算法,在本实施例中并不对加密算法进行定义。由于加密过程中的密钥是由硬件加密装置产生得到,密钥与加密装置唯一相关,因此安全性极强。另外,密钥在加密认证过程中不需要在嵌入式系统和硬件加密装置之间进行通信,因此避免了密钥在传输过程中被窃取的可能。其中,嵌入式系统和硬件加密装置之间的通信可采用iic协议进行通信。

参照图2,本实施例还提供了一种基于aes加密算法的软硬件协同工作模式的版权保护方法,图2中左侧是受保护的嵌入式系统的软硬件系统,该实施例以嵌入式soc作为示例,右侧是硬件加密装置,两者之间以iic协议进行通信。该方法的步骤包括:

s201、嵌入式soc通过iic通信将自身存储的激励和校验码发送给硬件加密装置,并对硬件加密装置发起加密认证请求;

s202、硬件加密装置接收到认证请求后,开始工作。硬件加密装置采用puf模块利用接收到的激励产生一组对应的16位响应值,并发送给纠错译码器;

s203、纠错译码器利用响应值和嵌入式soc发送的校验码进行纠错译码,产生一组aes加密过程所需要的128位密钥,并发送给aes加密模块;

s204、真随机数发生器模块产生一组128位随机明文,并发送给aes加密模块;

s205、aes加密模块利用密钥对128位随机明文进行加密得到密文,并将明文和密文发回给嵌入式soc;

s206、嵌入式soc接收到一组明文和密文数据后,利用自身存储的密钥执行一段aes加密验证比对程序,该程序对接收到的密文进行解密,将结果与接收到的明文进行比对,若二者一致,说明认证成功,嵌入式soc继续工作,否则说明认证失败,嵌入式soc停止工作。

进一步作为优选的实施方式,所述步骤s206中,若认证比对成功,硬件加密装置根据嵌入式soc发起的请求判断是否需要产生新的一组密钥、激励和校验码,若请求为加密认证及更新密钥请求,则产生新的一组密钥、激励和校验码并返回给嵌入式soc,替换原有的密钥、激励和校验码,嵌入式soc继续工作。若请求为加密认证请求,嵌入式soc直接继续工作,无需替换原有的密钥、激励和校验码。

参照图3,本实施例还提供了一种对嵌入式soc中软件算法的版权保护方法的实施案例。

其具体实施步骤为:

s301、预先将嵌入式soc中软件系统的部分核心算法以机器码的形式存储到硬件加密装置中,并获取与授权密钥,以及相关的激励和校验码;

s302、当软件系统工作,运行到核心算法时,soc向硬件加密装置发起请求。硬件加密装置接收到请求后,随机数发生器产生一组随机数作为初始明文,发送回给嵌入式soc;

s303、嵌入式soc接收到初始明文,使用授权密钥,对初始明文进行aes加密得到加密密文。将加密密文发送给硬件加密装置;

s304、硬件加密装置接收到加密密文,密钥产生器模块产生密钥,利用产生的密钥对加密密文进行aes解密,得到解密明文;

(4)加密装置对解密明文和初始随机明文比对,若比对结果一致,说明授权成功,加密装置中执行预先存储的软件算法,并将结果返回给嵌入式soc,soc根据运算结果进行下一步程序。若比对不一致,则停止工作,嵌入式soc因无法获得核心算法的运行结果,因此嵌入式soc运行失败。

参照图4,本实施例还提供了一种对嵌入式系统的核心数据保护的实施案例。该实施方案分为数据加密存储,和请求数据两个部分,具体方法步骤为:

s401、嵌入式系统将算法程序所需要保护的核心数据存储到硬件加密装置当中,进行加密存储,并向硬件加密装置获取密钥,激励和校验码;

s402、当嵌入式系统运行程序时,向加密装置发送激励和校验码,并发送一段随机明文和对应的使用密钥加密得到的密文,并发起获取数据请求;

s403、当硬件加密装置接收到请求后,利用激励和校验码产生密钥。利用密钥对加密密文进行解密。对解密明文和随机明文进行比对,若比对一致,说明认证成功,加密装置将程序存储在装置中的经过加密的核心数据返回给嵌入式系统;

s404、嵌入式系统对返回的核心数据进行解密,得到核心数据,参与到下一步的程序运行当中。

参照图5,本实施例还提供了一种结合软硬件协同工作的版权保护实施方案,该方案,结合软件算法和硬件算法,交叉融合调用加密认证算法进行加密认证,充分利用外设系统触发加密认证动作,降低加密认证算法被反编译的可能性,提高版权保护的安全性,具体实施方案为:

s501、将加密认证算法的触发函数入口移植于外设系统中,如usb,音视频编解码,adc/dac或gpio中。当这些外设使用工作时,根据实际需求,调用加密认证算法触发函数,向嵌入式soc发起加密认证请求。

s502、soc接收到外设系统向soc发起的加密认证请求,暂停当前工作,启动加密认证算法。soc通过iic通信对硬件加密装置发起加密认证请求;

s503、硬件加密装置接收到认证请求后,产生一组随机明文和加密密文,发送回给嵌入式soc;

s504、嵌入式soc接收到明文和密文数据后,执行一段aes加密验证比对程序,该程序利用授权密钥对接收到的密文进行解密,将结果与接收到的明文进行比对,若二者一致,说明认证成功,嵌入式soc继续工作,否则说明认证失败,嵌入式soc停止工作。

本实施例还提供了一种对硬件电路方案的版权保护方法,通过硬件电路与硬件加密装置之间利用授权密钥进行加密认证,加密认证过程中密钥不会进行传输。其具体实施步骤为:

s601、硬件电路根据各种硬件控制开关,例如电路控制开关,定时器开关等触发硬件加密装置的加密认证动作;

s602、硬件电路通过数据通信将自身存储的激励和检验码发送给硬件加密装置,并对硬件加密装置发起认证请求;

s603、硬件加密装置接收到认证请求后,密钥产生器模块根据激励和检验码产生密钥,真随机数发生器模块产生随机明文,加密模块对明文进行加密得到密文,将明文和密文发回给硬件电路;

s604、硬件电路根据自身存储的密钥对接收到的密文进行解密,将结果与接收到的明文进行比对,若结果一致,说明认证成功,硬件电路系统继续工作,否则说明认证失败,硬件电路停止工作。

进一步作为优选的实施方式,所述激励、校验码和密钥是在通过对硬件加密装置发起密钥初始化请求获得的。硬件加密装置接收到密钥初始化请求后,产生一组密钥、激励和检验码,并返回给软件系统或硬件电路。

进一步作为优选的实施方式,该密钥由硬件加密装置根据接收到的激励产生的一个与装置唯一相关的响应,然后通过纠错编译码器根据校验码对响应进行译码获得的。

本实施例还提供了一种对嵌入式soc中软件系统的版权保护方法,通过软件系统与硬件加密装置之间进行加密认证,将嵌入式系统中的软件程序的部分算法以机器码的形式移植存储在硬件加密装置中。当软件程序需要执行工作时,需要提供经过授权密钥加密后的密文给硬件加密装置,同时发起工作请求。当加密装置接收到请求并且授权成功时,执行预先存储的算法,将运行结果返还给soc主程序。在此过程中,软件核心算法存储和运行都在加密装置中进行,有效避免软件算法的泄露和反编译。其具体方法步骤为:

s701、预先将嵌入式soc中软件系统的部分核心算法以机器码的形式存储到硬件加密装置中,并获取与授权密钥;

s702、当软件系统工作时,向硬件加密装置发起授权请求。硬件加密装置接收到请求后,随机数发生器产生一组随机数作为初始明文,发送回给嵌入式soc;

s703、嵌入式soc接收到初始明文,使用授权密钥,产生一组加密密文。将加密密文发送给硬件加密装置;

s704、硬件加密装置接收到加密密文,密钥产生器模块根据产生密钥,利用产生的密钥对加密密文进行解密,得到解密明文;

s705、加密装置对解密明文和初始明文比对,若比对结果一致,说明授权成功,加密装置中执行预先存储的软件算法,并将结果返回给嵌入式soc。若比对不一致,则停止工作,嵌入式soc因无法获得核心算法的运行结果,因此嵌入式soc运行失败。

本实施例还提供了一种对嵌入式系统的核心算法或数据保护的方法,通过硬件加密装置来对嵌入式系统的核心算法或数据进行加密保护,其加密密钥与加密装置唯一相关。当嵌入式系统使用密钥获得加密装置的授权后,才能获得核心算法或数据,参与其到程序的运行。

其具体方法步骤为:

s801、嵌入式系统将算法程序所需要保护的核心算法或数据存储到硬件加密装置当中,进行加密存储,并向硬件加密装置获取密钥,激励和校验码;

s802、当嵌入式系统运行程序时,向加密装置发送激励和校验码,并发送一段随机明文和对应的使用密钥加密得到的密文,并发起获取数据请求;

s803、当硬件加密装置接收到请求后,利用激励和校验码产生密钥。利用密钥对加密密文进行解密。对解密明文和随机明文进行比对,若比对一致,说明认证成功,加密装置将程序存储在装置中的经过加密的核心数据返回给嵌入式系统;

s804、嵌入式系统对返回的核心算法或数据进行解密,得到核心算法或数据,参与到下一步的程序运行当中。

本实施例还提供了一种基于软硬件协同工作模式的版权保护方法,通过嵌入式系统中的软件系统和硬件电路协同工作来与硬件加密装置进行加密认证,通过软硬件的交叉调用进行加密认证,加强版权保护系统对反编译破解的抵御,对硬件电路和软件系统进行版权保护。

其具体方法步骤为:

s901、利用嵌入式系统中的硬件外设系统,如usb,gpio,定时器电路等硬件装置来触发硬件加密装置的加密认证动作;

s902、软件系统当接收到触发后,调用加密认证函数库,向硬件加密装置发起认证请求;

s903、硬件加密装置接收到认证请求后,密钥产生器模块根据产生密钥,真随机数发生器模块产生随机明文,加密模块对明文进行加密得到密文,将随机明文和加密密文发回给软件系统;

s904、软件系统调用认证算法,根据自身存储的密钥,对接收到的密文进行解密,将结果与接收到的明文进行比对,若结果一致,说明认证成功,软件系统和硬件电路继续工作,否则说明认证失败,软件系统和硬件电路停止工作。

综上所述,本实施例的方法至少包括以下有益效果:

(1)、加密过程中的密钥是由硬件加密装置产生得到,密钥与加密装置唯一相关,安全性极强。另外,密钥在加密认证过程中不需要在软硬件系统和硬件加密装置之间进行通信,因此避免了密钥在传输过程中被窃取的可能。

(2)、对于某些程序算法,将其核心算法部分由加密装置来代为执行,可以有效破除了嵌入式系统中软件程序被破解抄袭的可能。

(3)、本实施例中可以将软件程序中所需的核心数据存储在硬件加密装置中,起到了对核心数据的保护。

本实施例还提供了一种硬件加密装置,所述硬件加密装置与嵌入式系统的软件之间采用软硬件协同工作模式;

所述硬件加密装置用于接收到嵌入式系统发送的认证请求后,根据认证请求获得密钥,根据密钥对嵌入式系统的硬件电路、软件版权、算法或数据进行加密授权;

其中,所述密钥不进行通讯传输。

进一步作为优选的实施方式,所述硬件加密装置存储有嵌入式系统的算法或数据;

所述硬件加密装置还用于当接收到认证请求并授权成功后,执行存储的算法,将运行结果返回嵌入式系统的主程序;

当接收到认证请求并授权成功后,将存储的数据进行加密后返回嵌入式系统中;

其中,所述算法以机器码的形式移植存储在硬件加密装置中。

本实施例的一种硬件加密装置,可执行本发明方法实施例所提供的一种嵌入式系统版权保护方法,可执行方法实施例的任意组合实施步骤,具备该方法相应的功能和有益效果。

本实施例还提供了一种嵌入式系统版权保护系统,包括硬件加密装置与嵌入式系统,所述硬件加密装置与嵌入式系统的软件之间采用软硬件协同工作模式;

所述嵌入式系统用于发送认证请求;

所述硬件加密装置用于接收认证请求后,根据认证请求获得密钥,根据密钥对嵌入式系统的硬件电路、软件版权、算法或数据进行加密授权;

其中,所述密钥不进行通讯传输。

进一步作为优选的实施方式,还包括硬件外设系统,所述硬件外设系统与嵌入式系统连接,所述硬件外设系统上设有加密认证算法的触发函数入口。

本实施例的一种嵌入式系统版权保护系统,可执行本发明方法实施例所提供的一种嵌入式系统版权保护方法,可执行方法实施例的任意组合实施步骤,具备该方法相应的功能和有益效果。

以上是对本发明的较佳实施进行了具体说明,但本发明创造并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1