[发明专利]基于最近执行的程序代码的程序代码模糊处理有效
申请号: | 201510245908.3 | 申请日: | 2015-05-14 |
公开(公告)号: | CN105095698B | 公开(公告)日: | 2018-05-18 |
发明(设计)人: | 简·胡格布鲁格;W·P·A·J·米歇尔斯 | 申请(专利权)人: | 恩智浦有限公司 |
主分类号: | G06F21/14 | 分类号: | G06F21/14 |
代理公司: | 中科专利商标代理有限责任公司 11021 | 代理人: | 王波波 |
地址: | 荷兰艾*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 最近 执行 程序代码 模糊 处理 | ||
1.一种对包括多个指令的软件代码进行掩盖的方法,包括:
由处理器确定针对当前指令的N个先前指令;
基于第一函数、第二函数和所述N个先前指令对所述当前指令进行编码;
确定在所述N个先前指令或所述当前指令中存在连接点;
当存在连接点时,针对所述连接点之前的每个先前指令产生掩码值,其中所述掩码是基于所述连接点之前的并行指令中的公共比特设置的;以及
将所述掩码与所述当前指令相关联;
其中所述第二函数基于所述N个先前指令,以及
所述第一函数基于所述当前指令和所述第二函数的输出。
2.根据权利要求1所述的方法,还包括:
确定在所述N个先前指令或所述当前指令中存在连接点;
当存在连接点时,在所述连接点之前插入I个NOOP指令,其中I是所述连接点之前的先前指令的数量。
3.根据权利要求1所述的方法,还包括:
确定在所述N个先前指令或所述当前指令中存在连接点;
当存在连接点时,将所述连接点下移I个指令,其中I是所述连接点之前的先前指令的数量。
4.根据权利要求1所述的方法,还包括:
接收采用更高级语言的软件代码;以及
将所接收的软件代码编译成机器可执行指令。
5.根据权利要求1所述的方法,还包括:
接收采用更高级语言的软件代码;以及
将所接收的软件代码解译成机器可执行指令。
6.根据权利要求1所述的方法,还包括:产生密钥,其中所述密钥与针对第一当前指令的N个先前指令相对应。
7.根据权利要求1所述的方法,其中,所述N个先前指令是N个先前经编码的指令。
8.根据权利要求1所述的方法,还包括:
由处理器确定与当前指令之前的所述N个先前指令相关联的M个先前数据值;以及
其中对所述当前指令进行编码还基于所述M个数据值,其中所述第二函数还基于所述M个先前数据值。
9.根据权利要求8所述的方法,还包括:产生密钥,其中所述密钥与针对第一当前指令的N个先前指令和M个先前数据值相对应。
10.一种编码有用于由处理器执行的指令的非瞬时机器可读存储介质,所述指令用于对包括多个指令的软件代码进行掩盖,所述非瞬时机器可读存储介质包括:
用于确定针对当前指令的N个先前指令的指令;
用于基于第一函数、第二函数和所述N个先前指令对所述当前指令进行编码的指令;
用于确定在所述N个先前指令或当前指令中存在连接点的指令;以及
用于当存在连接点时在所述连接点之前插入I个NOOP指令的指令,其中I是所述连接点之前的先前指令的数量;
其中所述第二函数基于所述N个先前指令,以及
所述第一函数基于所述当前指令和所述第二函数的输出。
11.根据权利要求10所述的非瞬时机器可读存储介质,还包括:
用于确定在所述N个先前指令或当前指令中存在连接点的指令;
用于当存在连接点时针对所述连接点之前的每个先前指令产生掩码值的指令,其中所述掩码是基于所述连接点之前的并行指令中的公共比特设置的;以及
用于将所述掩码与当前指令相关联的指令。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于恩智浦有限公司,未经恩智浦有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510245908.3/1.html,转载请声明来源钻瓜专利网。