【技术实现步骤摘要】
验证方法及相关装置
[0001]本申请涉及软件
,尤其涉及一种验证方法及相关装置。
技术介绍
[0002]随着软件技术的不断发展,软件可以实现的功能越来越多,这给人们的生活带来了极大的便利。但是,软件存在被篡改的风险,这容易导致该软件无法正常运行,甚至导致用户的敏感信息泄露。采用软件防篡改技术可以有效降低软件被篡改的风险。
[0003]例如,可以利用一个可信的远程验证者对不可信平台上运行的软件进行验证。可信的远程验证者对不可信平台上运行的软件提出完整性验证请求。软件根据收到的完整性验证请求进行校验和计算,并将校验和发送给远程验证者。远程验证者确定校验和与其预先存储的预期值一致,则确定该软件没有被篡改。
[0004]上述方法虽然可以有效降低软件被篡改的风险,但是需要一个可信的远程验证者对软件的完整性进行验证,便捷度不高。而且,在远程验证者提出完整性验证请求之前,远程验证者不会对软件进行验证,因此,上述方法很难及时发现软件是否被篡改,敏感度不高。
技术实现思路
[0005]本申请提供了一种验 ...
【技术保护点】
【技术特征摘要】
1.一种验证方法,其特征在于,包括:电子设备执行第一可执行文件中代码段的第一函数,所述第一函数包括第一内部校验单元;所述电子设备通过所述第一内部校验单元确定所述第一函数的第一校验值;所述电子设备通过所述第一内部校验单元从所述第一可执行文件的只读数据rodata段确定所述第一函数的第一校验预期值;所述电子设备通过所述第一校验预期值和所述第一校验值确定所述第一函数的完整性。2.根据权利要求1所述的方法,其特征在于,所述电子设备通过所述第一内部校验单元确定所述第一函数的第一校验值,具体包括:所述电子设备通过所述第一内部校验单元从所述rodata段确定所述第一元数据,所述第一元数据用于指示所述第一函数的起始存储地址以及数据长度;所述电子设备基于所述第一元数据确定所述第一函数在所述第一可执行文件中的位置;所述电子设备基于所述第一函数在所述第一可执行文件中的位置确定所述第一函数的第一校验值。3.根据权利要求1或2中所述的方法,其特征在于,所述第一可执行文件被划分为多个区域,一个外部校验单元对应一个区域,所述外部校验单元用于校验所述外部校验单元对应区域的完整性;所述方法还包括:所述电子设备执行第一可执行文件中代码段的第二函数,所述第二函数包括第一外部校验单元;所述电子设备通过所述第一外部校验单元校验所述多个区域中第一区域的完整性。4.根据权利要求3所述的方法,其特征在于,所述第一区域包括所述第一函数;所述方法还包括:当所述电子设备通过所述第一外部校验单元确定所述第一区域完整时,所述电子设备确定所述第一函数完整。5.根据权利要求3所述的方法,其特征在于,所述第一区域包括所述第一函数的第一部分;所述方法还包括:当所述电子设备通过所述第一外部校验单元确定所述第一区域完整时,所述电子设备确定所述第一函数的第一部分完整。6.根据权利要求5所述的方法,其特征在于,所述方法还包括:所述电子设备执行第一可执行文件中代码段的第三函数,所述第三函数包括第二外部校验单元;所述电子设备通过所述第二外部校验单元校验所述多个区域中第二区域的完整性,所述第二区域包括所述第一函数的第二部分;当所述电子设备通过所述第二外部校验单元确定所述第二区域完整时,所述电子设备确定所述第一函数的第二部分完整。7.根据权利要求2所述的方法,其特征在于,所述电子设备基于所述第一内部校验单元从所述rodata段确定所述第一元数据,具体包括:
所述电子设备基于所述第一内部校验单元调用第一保护函数,通过所述第一保护函数从所述rodata段确定所述第一元数据;所述电子设备基于所述第一元数据确定出所述第一函数在所述第一可执行文件中的位置,具体包括:所述电子设备通过所述第一保护函数基于所述第一元数据确定出所述第一函数在所述第一可执行文件中的位置;所述电子设备基于所述第一函数在所述第一可执行文件中的位置确定所述第一函数的第一校验值,具体包括:所述电子设备通过所述第一保护函数基于所述第一函数在所述第一可执行文件中的位置确定所述第一函数的第一校验值。8.根据权利要求7所述的方法,其特征在于,所述电子设备执行到所述第一函数中的所述第一内部校验单元时,确定所述第一函数的第一校验值,具体包括:所述电子设备执行到所述第一函数中的所述第一内部校验单元时,所述电子设备通过...
【专利技术属性】
技术研发人员:罗武,章张锴,陈谋,陆成刚,
申请(专利权)人:华为技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。