安卓系统中磁盘镜像文件的签名方法、装置和设备的制造方法

文档序号:9790746阅读:806来源:国知局
安卓系统中磁盘镜像文件的签名方法、装置和设备的制造方法
【技术领域】
[0001]本公开涉及计算机技术,尤其涉及一种安卓系统中磁盘镜像文件的签名方法、装置和设备。
【背景技术】
[0002]安卓(Android)系统是一种基于Linux的自由及开放源代码的操作系统,主要应用于移动设备,如智能手机或平板电脑等。Android系统包含很多项目,并对这些项目一起进行编译得到一个完整的包,叫做只读存储器镜像(Read Only Memory image,简称ROM)包;ROM包中包含很多磁盘镜像文件。其中,boot.1mg和recovery, img为ROM包中的两个磁盘镜像文件,为了防止这两个文件被篡改,需要增加对这两个磁盘镜像文件的签名校验。
[0003]相关技术中,预先生成公钥和私钥,并将公钥和私钥转换成对应的格式保存在硬盘上,以便根据所述公钥和私钥对磁盘镜像文件签名;可见,私钥保存在硬盘上,有泄露的风险。

【发明内容】

[0004]为克服相关技术中存在的问题,本公开提供一种安卓系统中磁盘镜像文件的签名方法、装置和设备。
[0005]根据本公开实施例的第一方面,提供一种安卓系统中磁盘镜像文件的签名方法,包括:
[0006]根据硬盘中的第一公钥获取签名算法;其中,签名算法包括:摘要算法和加密算法;
[0007]根据所述摘要算法计算待签名的磁盘镜像文件的摘要,并将所述摘要发送给硬件加密机,以使所述硬件加密机采用所述硬件加密机内部存储的第一私钥计算所述磁盘镜像文件的签名值;其中,所述第一私钥对应所述第一公钥;
[0008]接收所述硬件加密机发送的所述签名值,并将所述签名值附加在所述磁盘镜像文件的末尾。
[0009]本公开的实施例提供的技术方案可以包括以下有益效果:通过根据硬盘中的第一公钥获取签名算法;进一步地,根据所述签名算法中的摘要算法计算待签名的磁盘镜像文件的摘要,并将所述摘要发送给硬件加密机,以使所述硬件加密机采用所述硬件加密机内部存储的第一私钥计算所述磁盘镜像文件的签名值;进一步地,接收所述硬件加密机发送的所述签名值,并将所述签名值附加在所述磁盘镜像文件的末尾;可见,磁盘镜像文件的签名值的生成过程在硬件加密机中实现的,其中,私钥保存于所述硬件加密机中,因此,签名过程非常迅速而且安全。
[0010]进一步地,所述根据硬盘中的公钥获取签名算法之前,还包括:
[0011]从所述硬件加密机中获取所述第一公钥,并将所述第一公钥分别保存在Linuxkerne I中和所述硬盘中。
[0012]进一步地,所述根据所述摘要算法计算待签名的磁盘镜像文件的摘要之前,还包括:
[0013]读取所述待签名的磁盘镜像文件。
[0014]进一步地,所述将所述签名值附加在所述磁盘镜像文件的末尾之后,还包括:
[0015]根据所述Linuxkernel中的所述第一公钥对所述磁盘镜像文件的签名值进行校验。
[0016]根据本公开实施例的第二方面,提供一种安卓系统中磁盘镜像文件的签名方法,包括:
[0017]接收所述移动设备发送的待签名的磁盘镜像文件的摘要;
[0018]采用硬件加密机内部存储的第一私钥计算所述磁盘镜像文件的签名值;
[0019]将所述签名值发送给所述移动设备,以使所述移动设备将所述签名值附加在所述磁盘镜像文件的末尾。
[0020]本公开的实施例提供的技术方案可以包括以下有益效果:通过接收所述移动设备发送的待签名的磁盘镜像文件的摘要;进一步地,采用硬件加密机内部存储的第一私钥计算所述磁盘镜像文件的签名值,并将所述签名值发送给所述移动设备,以使所述移动设备将所述签名值附加在所述磁盘镜像文件的末尾;可见,磁盘镜像文件的签名值的生成过程在硬件加密机中实现的,其中,私钥保存于所述硬件加密机中,因此,签名过程非常迅速而且安全。
[0021]进一步地,所述接收所述移动设备发送的待签名的磁盘镜像文件的摘要之前,还包括:
[0022]通过加密算法生成一对密钥;所述一对密钥包括:第一公钥和所述第一私钥;
[0023]将所述第一公钥发送至所述移动设备,以使所述移动设备将所述第一公钥分别保存在Linux kernel中和硬盘中。
[0024]根据本公开实施例的第三方面,提供一种安卓系统中磁盘镜像文件的签名装置,包括:
[0025]获取模块,被配置为根据硬盘中的第一公钥获取签名算法;其中,签名算法包括:摘要算法和加密算法;
[0026]计算模块,被配置为根据所述摘要算法计算待签名的磁盘镜像文件的摘要,并将所述摘要发送给硬件加密机,以使所述硬件加密机采用所述硬件加密机内部存储的第一私钥计算所述磁盘镜像文件的签名值;其中,所述第一私钥对应所述第一公钥;
[0027]附加模块,被配置为接收所述硬件加密机发送的所述签名值,并将所述签名值附加在所述磁盘镜像文件的末尾。
[0028]进一步地,所述安卓系统中磁盘镜像文件的签名装置还包括:
[0029]保存模块,被配置为从所述硬件加密机中获取所述第一公钥,并将所述第一公钥分别保存在Linux kernel中和所述硬盘中。
[0030]进一步地,所述安卓系统中磁盘镜像文件的签名装置还包括:
[0031]读取模块,被配置为读取所述待签名的磁盘镜像文件。
[0032]进一步地,所述安卓系统中磁盘镜像文件的签名装置还包括:
[0033]校验模块,被配置为根据所述Linuxkernel中的所述第一公钥对所述磁盘镜像文件的签名值进行校验。
[0034]根据本公开实施例的第四方面,提供一种安卓系统中磁盘镜像文件的签名装置,包括:
[0035]接收模块,被配置为接收所述移动设备发送的待签名的磁盘镜像文件的摘要;
[0036]计算模块,被配置为采用硬件加密机内部存储的第一私钥计算所述磁盘镜像文件的签名值;
[0037]第一发送模块,被配置为将所述签名值发送给所述移动设备,以使所述移动设备将所述签名值附加在所述磁盘镜像文件的末尾。
[0038]进一步地,所述安卓系统中磁盘镜像文件的签名装置还包括:
[0039]生成模块,被配置为通过加密算法生成一对密钥;所述一对密钥包括:第一公钥和所述第一私钥;
[0040]第二发送模块,被配置为将所述第一公钥发送至所述移动设备,以使所述移动设备将所述第一公钥分别保存在Linux kernel中和硬盘中。
[0041]根据本公开实施例的第五方面,提供一种移动设备,包括:处理器以及用于存储处理器可执行指令的存储器;
[0042]所述处理器被配置为:
[0043]根据硬盘中的第一公钥获取签名算法;其中,签名算法包括:摘要算法和加密算法;
[0044]根据所述摘要算法计算待签名的磁盘镜像文件的摘要,并将所述摘要发送给硬件加密机,以使所述硬件加密机采用所述硬件加密机内部存储的第一私钥计算所述磁盘镜像文件的签名值;其中,所述第一私钥对应所述第一公钥;
[0045]接收所述硬件加密机发送的所述签名值,并将所述签名值附加在所述磁盘镜像文件的末尾。
[0046]根据本公开实施例的第六方面,提供一种硬件加密机,包括:处理器以及用于存储处理器可执行指令的存储器;
[0047]所述处理器被配置为:
[0048]接收所述移动设备发送的待签名的磁盘镜像文件的摘要;
[0049]采用硬件加密机内部存储的第一私钥计算所述磁盘镜像文件的签名值;
[0050]将所述签名值发送给所述移动设备,以使所述移动设备将所述签名值附加在所述磁盘镜像文件的末尾。
[0051]本公开的实施例提供的技术方案可以包括以下有益效果:提供一种安卓系统中磁盘镜像文件的签名方法、装置和设备,通过硬件加密机生成公钥和私钥,并在所述硬件加密机中生成待签名的磁盘镜像文件的签名值,其中,私钥保存于所述硬件加密机中,因此,签名过程非常迅速而且安全。
[0052]应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
【附图说明】
[0053]此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1