一种基于可信执行环境的密钥烧录系统及方法与流程

文档序号:14683756发布日期:2018-06-12 22:55阅读:300来源:国知局
一种基于可信执行环境的密钥烧录系统及方法与流程

本发明涉及数据安全技术领域,尤其涉及一种基于可信执行环境的密钥烧录系统及方法。



背景技术:

随着机顶盒、手机等智能设备的普及,在线支付、数字权限管理技术(Digital rights management,DRM)等应用也越来越广泛,随之而来,终端需要预置大量的密钥来保证应用中数据的安全性。终端厂商通过工厂烧录方式,提供烧录程序以及密钥,将密钥预置在终端内。而应用厂商通过在线获取密钥并烧录至终端内。

现有的烧录方式有诸多不足,主要体现在,终端厂商提供的工厂烧录方式容易导致人为泄露密钥,并且终端厂商和应用厂商在REE(富执行环境)烧录的密钥容易遭到破解泄露。一旦密钥遭到泄露,应用内的数据安全受到严重威胁。



技术实现要素:

针对现有技术中存在的问题,本发明提供了一种基于可信执行环境的密钥烧录系统及方法。

本发明采用如下技术方案:

一种基于可信执行环境的密钥烧录系统,包括后台设备和终端设备,所述后台设备用于对原始密钥数据进行加密以获得待烧录密钥数据并输出,所述终端设备具有基于TrustZone技术的微处理器,所述微处理器物理的内核划分为虚拟的安全核和普通核,所述微处理器提供可信执行环境和富执行环境,所述可信执行环境提供基于所述安全核的安全操作系统,所述富执行环境提供基于所述普通核的普通操作系统,所述微处理器基于自身的监控模式在所述安全操作系统和所述普通操作系统之间切换;

所述终端设备开启后启动所述普通操作系统,所述终端设备预置的客户端应用程序接收所述待烧录密钥数据并向所述普通操作系统发出请求,所述普通操作系统输出切换信号和所述待烧录密钥数据,所述微处理器监控模式接收所述切换信号并从所述普通操作系统切换至所述安全操作系统,所述安全操作系统启动后接收所述待烧录密钥数据并使用预置的密钥数据通过解密操作对所述待烧录密钥数据进行解密,并在解密成功后获得相应的所述原始密钥数据并将所述原始密钥数据写入所述安全操作系统的安全存储区,以及在失败后输出失败信息。

优选的,后台设备可以是专用的硬件安全模块(Hardware Security Module)或者一台能够保证安全的普通计算机,包括:

存储模块,所述存储模块用于存储所述原始密钥数据,所述终端设备的预置的密钥数据,以及生成的待烧录密钥数据;

加密模块,所述加密模块用于使用所述终端设备的预置的所述密钥数据对所述原始密钥数据进行加密操作以获得所述待烧录密钥数据,以及用于输出所述待烧录密钥数据。

优选的,所述普通操作系统包括:

客户端应用(Client Application,CA)模块,所述客户端应用用于接收所述待烧录密钥数据,以及用于输出所述切换信号和所述待烧录密钥数据。

优选的,所述硬件模块包括:

监控模式模块,所述监控模式模块用于接收所述切换信号并将所述微处理器在所述普通操作系统和所述安全操作系统之间进行切换。

优选的,所述安全操作系统包括:

可信应用端(Trust Application,TA)模块,所述可信应用端模块用于接收所述待烧录密钥数据,并获取预置的密钥数据通过解密操作对所述待烧录密钥数据进行解密,并在解密成功后获得相应的所述原始密钥数据并将所述原始密钥数据写入所述安全操作系统的安全存储区,并在失败后输出失败信息。

优选的,所述可信应用端在解密成功后通过调用所述安全操作系统的文件系统接口将所述原始密钥数据写入所述安全存储区。

一种基于可信执行环境的密钥烧录方法,基于上述基于可信执行环境的密钥烧录系统,包括:

步骤S1、后台设备对所述终端设备预置的所述原始密钥数据进行加密操作以获得所述待烧录密钥数据并输出;

步骤S2、所述终端设备开启后启动所述普通操作系统,客户端应用程序接收所述待烧录密钥数据;

步骤S3、所述普通操作系统启动后获取所述待烧录密钥数据,并输出切换信号和所述待烧录密钥数据;

步骤S4、所述微处理器接收所述切换信号并启动所述安全操作系统;

步骤S5、所述安全操作系统启动后接收所述待烧录密钥数据并根据预置的密钥数据通过解密操作对所述待烧录密钥数据进行解密,并判断是否解密成功:

若判断结果为是,则转步骤S6;

若判断结果为否,则转步骤S7;

步骤S6、所述安全操作系统在解密成功后获得相应的所述原始密钥数据并将所述原始密钥数据写入所述安全操作系统的安全存储区;

步骤S7、所述安全操作系统在失败后输出失败信息。

优选的,所述步骤S3中,所述普通操作系统通过所述客户端应用模块接收所述待烧录密钥数据,并输出所述切换信号和所述待烧录密钥数据。

优选的,所述步骤S4中,所述微处理器通过所述监控模式模块接收所述切换信号,并开启所述监控模式以启动所述安全操作系统。

优选的,所述步骤S5、所述步骤S6及所述步骤S7中,所述安全操作系统通过所述可信应用端模块接收所述待烧录密钥数据,并根据预置的密钥数据通过解密操作对所述待烧录密钥数据进行解密,并在解密成功后获得相应的所述原始密钥数据并将所述原始密钥数据写入所述安全操作系统的安全存储区,并在失败后输出失败信息。

本发明的有益效果:通过使用基于可信执行环境的密钥烧录,不仅可以保证密钥的烧录、存储及使用的安全性,另外由于使用了密码学的手段,可以防止传输过程中的意外损坏,保证完整性。

附图说明

图1为本发明的一种优选实施例中,基于可信执行环境的密钥烧录系统的功能模块示意图;

图2为本发明的一种优选实施例中,基于可信执行环境的密钥烧录方法的流程图。

具体实施方式

需要说明的是,在不冲突的情况下,下述技术方案,技术特征之间可以相互组合。

下面结合附图对本发明的具体实施方式作进一步的说明:

如图1所示,一种基于可信执行环境的密钥烧录系统,包括后台设备1和终端设备2,上述后台设备1用于对原始密钥数据进行加密以获得待烧录密钥数据并输出,上述终端设备2具有基于TrustZone技术的微处理器,上述微处理器物理的内核划分为虚拟的安全核和普通核,上述微处理器提供可信执行环境和富执行环境,上述可信执行环境提供基于上述安全核的安全操作系统,上述富执行环境提供基于上述普通核的普通操作系统,上述微处理器基于自身的监控模式在上述安全操作系统和上述普通操作系统之间切换;

上述终端设备2开启后启动上述普通操作系统,客户端应用获取上述待烧录密钥数据并请求上述普通操作系统输出切换信号和上述待烧录密钥数据,上述微处理器监控模式接收上述切换信号,从普通操作系统切换至安全操作系统,上述安全操作系统启动后接收上述待烧录密钥数据并使用预置的密钥数据通过解密操作对上述待烧录密钥数据进行解密,并在解密成功后获得相应的上述原始密钥数据并将上述原始密钥数据写入上述安全操作系统的安全存储区,以及在失败后输出失败信息。

在本实施例中,通过使用基于可信执行环境的密钥烧录,不仅可以保证密钥的烧录、存储及使用的安全性,另外由于使用了密码学的手段,可以防止传输过程中的意外损坏,保证完整性。

较佳的实施例中,后台设备1可以是专用的硬件安全模块(Hardware Security Module)或者一台能够保证安全的普通计算机,包括:

加密模块4,上述加密模块4用于对上述原始密钥数据进行加密操作以获得上述待烧录密钥数据,以及用于输出上述待烧录密钥数据。

较佳的实施例中,上述普通操作系统包括:

客户端应用(Client Application,CA)模块,上述客户端应用用于接收上述待烧录密钥数据,以及用于输出上述切换信号和上述待烧录密钥数据。

较佳的实施例中,上述硬件设备包括:

监控模式模块5,上述监控模式模块5用于接收上述切换信号并将上述微处理器切换至上述安全操作系统。

较佳的实施例中,上述安全操作系统包括:

可信应用端(Trust Application,TA)模块,上述可信应用端模块7用于接收上述待烧录密钥数据,并根据预置的密钥数据通过解密操作对上述待烧录密钥数据进行解密,并在解密成功后获得相应的上述原始密钥数据并将上述原始密钥数据写入上述安全操作系统的安全存储区,并在失败后输出失败信息。

较佳的实施例中,上述可信应用端在解密成功后通过调用安全操作系统的文件系统接口将上述原始密钥数据写入上述安全存储区。

在本实施例中,基于TEE环境烧录,通过在后台设备1端对原始密钥数据进行加密以得到待烧录密钥数据即加密所有需要烧录的密钥,在TA内解密密钥,并烧录至安全存储区即TEE数据分区内,可以保证密钥的安全。提供给工厂的终端设备2的密钥数据都是经过加密的,可以有效防止工厂内密钥泄露。在TA内解密密钥,所有数据在安全内存中,可以防止数据被破解。

烧录密钥至TEE数据分区,TEE数据分区一般有隔离性,并且由REE端未知的密钥加密,可以保证只有指定的TA进行访问,即使外界能够访问到,也不能获取到原始数据,并且在刷机等操作过后,密钥等关键信息仍然存在。

如图2所示,一种基于可信执行环境的密钥烧录方法,采用上述的基于可信执行环境的密钥烧录系统,包括:

步骤S1、后台设备1使用所述终端设备的预置密钥对上述原始密钥数据进行加密操作以获得上述待烧录密钥数据并输出;

步骤S2、上述终端设备2开启后启动上述普通操作系统并接收上述待烧录密钥数据;

步骤S3、上述普通操作系统启动后获取上述待烧录密钥数据并输出切换信号和上述待烧录密钥数据;

步骤S4、上述微处理器接收上述切换信号并启动上述安全操作系统;

步骤S5、上述安全操作系统启动后接收上述待烧录密钥数据并根据预置的密钥数据通过解密操作对上述待烧录密钥数据进行解密并判断是否解密成功:

若判断结果为是,则转步骤S6;

若判断结果为否,则转步骤S7;

步骤S6、上述安全操作系统在解密成功后获得相应的上述原始密钥数据并将上述原始密钥数据写入上述安全操作系统的安全存储区;

步骤S7、上述安全操作系统在失败后输出失败信息。

较佳的实施例中,上述步骤S3中,上述普通操作系统通过上述客户端应用模块6接收上述待烧录密钥数据,并由上述普通操作系统输出上述切换信号和上述待烧录密钥数据。

较佳的实施例中,上述步骤S4中,上述微处理器通过上述监控模式模块5接收上述切换信号并切换至上述安全操作系统。

较佳的实施例中,上述步骤S5、上述步骤S6及上述步骤S7中,上述安全操作系统通过上述可信应用端模块7接收上述待烧录密钥数据并根据预置的密钥数据通过解密操作对上述待烧录密钥数据进行解密,并在解密成功后获得相应的上述原始密钥数据并将上述原始密钥数据写入上述安全操作系统的安全存储区,并在解密失败后输出失败信息,如果写入失败也可以输出失败信息。

在本实施例中,CA将待烧录密钥数据即加密密钥数据发送给TA(REE端只能访问加密后的数据,无法获取原始数据);

TA使用预置的密钥解密密钥数据,并验证数据的完整性,获取到密钥原始数据(此步骤运行于TEE环境下,所有数据在REE环境不能访问);

TA调用Secure OS的文件系统接口,将解密后的数据写入安全存储区(Secure Storage,实现基于一定的安全机制,REE无法访问原始数据)。

通过说明和附图,给出了具体实施方式的特定结构的典型实施例,基于本发明精神,还可作其他的转换。尽管上述发明提出了现有的较佳实施例,然而,这些内容并不作为局限。

对于本领域的技术人员而言,阅读上述说明后,各种变化和修正无疑将显而易见。因此,所附的权利要求书应看作是涵盖本发明的真实意图和范围的全部变化和修正。在权利要求书范围内任何和所有等价的范围与内容,都应认为仍属本发明的意图和范围内。

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