[发明专利]一种应用程序可信编译及运行方法在审
| 申请号: | 202210900088.7 | 申请日: | 2022-07-28 |
| 公开(公告)号: | CN115292746A | 公开(公告)日: | 2022-11-04 |
| 发明(设计)人: | 汤成俊;李洪池;纪陵;檀庭方;高飞;戴光宇 | 申请(专利权)人: | 南京国电南自电网自动化有限公司 |
| 主分类号: | G06F21/62 | 分类号: | G06F21/62;G06F21/64;G06F8/41;G06F9/445 |
| 代理公司: | 南京纵横知识产权代理有限公司 32224 | 代理人: | 董建林 |
| 地址: | 211106 江*** | 国省代码: | 江苏;32 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 应用程序 可信 编译 运行 方法 | ||
1.一种应用程序可信编译方法,其特征在于:由可信编译器执行,所述方法包括以下步骤:
将应用程序源码进行编译得到初始应用程序;
计算初始应用程序的特征码;
将初始应用程序和特征码融合形成应用程序;
使用用户私钥证书,通过SM3算法对应用程序进行计算得到第一Hash签名值;
将应用程序、第一Hash签名值及可信标记融合形成可信可执行程序。
2.根据权利要求1所述的一种应用程序可信编译方法,其特征在于:第一Hash签名值计算包括:
读取用户私钥证书,得到私钥pkey值;
将私钥pkey值、用户自定义的id字符串、应用程序内容以及应用程序内容长度作为SM3算法输入,计算得到第一Hash签名值及其长度。
3.一种应用程序可信运行方法,其特征在于:由可信处理器执行,所述应用程序可信运行方法基于权利要求1或2所述应用程序可信编译方法执行,包括以下步骤:
使用用户公钥证书,通过SM3算法对可信可执行程序中应用程序进行计算得到第二Hash签名值,并将第一Hash签名值与第二Hash签名值进行比较:如果两者不一致,则拒绝运行可信可执行程序;如果两者一致,则将可信可执行程序分解后运行其中的应用程序。
4.根据权利要求3所述的一种应用程序可信运行方法,其特征在于:第二Hash签名值计算以及比较第一Hash签名值与第二Hash签名值是否一致包括:
读取用户公钥证书,得到公钥pkey值;
将公钥pkey值、用户自定义的id字符串、应用程序内容、应用程序内容长度以及第一Hash签名值及长度作为SM3算法输入,计算得到第一Hash签名值与第二Hash签名值是否一致的结果。
5.根据权利要求4所述的一种应用程序可信运行方法,其特征在于:所述方法还包括在计算得到第二Hash签名值之前,对输入的执行程序进行有无可信标记判断,如果没有可信标记则按照普通执行程序解释并运行,如果有可信标记则执行可信可执行程序处理流程。
6.一种可信编译器,其特征在于:包括:
源码编译模块:用于将应用程序源码进行编译得到初始应用程序;
特征码计算模块:用于计算初始应用程序的特征码;
融合模块:用于将初始应用程序和特征码融合形成应用程序;
第一计算模块:用于使用用户私钥证书,通过SM3算法对应用程序进行计算得到第一Hash签名值;
可信融合模块:用于将应用程序、第一Hash签名值及可信标记融合形成可信可执行程序。
7.一种可信处理器,其特征在于:包括:
可信标记判断模块:用于对输入的执行程序进行有无可信标记判断;
第二计算模块:用于使用用户公钥证书,通过SM3算法对可信可执行程序中应用程序进行计算得到第二Hash签名值,并将第一Hash签名值与第二Hash签名值进行比较。
8.一种终端,其特征在于:包括处理器及存储介质;
所述存储介质用于存储指令;
所述处理器用于根据所述指令进行操作以执行根据权利要求1~5任一项所述方法的步骤。
9.计算机可读存储介质,其上存储有计算机程序,其特征在于:该程序被处理器执行时实现权利要求1~5任一项所述方法的步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京国电南自电网自动化有限公司,未经南京国电南自电网自动化有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210900088.7/1.html,转载请声明来源钻瓜专利网。





