[发明专利]一种混淆代码的运行方法和装置有效
申请号: | 201810394451.6 | 申请日: | 2018-04-27 |
公开(公告)号: | CN108804883B | 公开(公告)日: | 2020-06-19 |
发明(设计)人: | 陈钢;陈赫 | 申请(专利权)人: | 北京奇艺世纪科技有限公司 |
主分类号: | G06F21/14 | 分类号: | G06F21/14 |
代理公司: | 北京润泽恒知识产权代理有限公司 11319 | 代理人: | 莎日娜 |
地址: | 100080 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 混淆 代码 运行 方法 装置 | ||
1.一种混淆代码的运行方法,其特征在于,包括:
计算预设运算函数中参数的每个取值与所述预设运算函数中已知数值的运算结果;
将所述参数的每个取值和对应的运算结果存储至新建的数据表;
接收运行所述预设运算函数的目标输入,所述目标输入包括所述参数的目标取值;
响应于所述目标输入,在所述数据表中查找所述目标取值对应的目标运算结果并输出所述目标运算结果。
2.根据权利要求1所述的方法,其特征在于,当所述参数的数据类型对应的数据长度M大于预设数据长度时;
所述计算预设运算函数中参数的每个取值与所述预设运算函数中已知数值的运算结果,包括:
对预设运算函数中的已知数值进行按位分割,得到对应N个数据位范围的N个数值段,其中,每个数值段的数据长度为4位,N=M/4;
对所述预设运算函数中的参数构成的未知数进行所述按位分割,得到对应N个数据位范围的N个子未知数,其中,每个子未知数的数据长度为4位,N=M/4;
针对所述N个子未知数,计算目标数据位范围对应的目标子未知数的每个取值与对应所述目标数据位范围的目标数值段之间的子运算结果,得到对应目标数据位范围的多个子运算结果,其中,所述目标数据位范围为所述N个数据位范围中的每个数据位范围;
所述将所述参数的每个取值和对应的运算结果存储至新建的数据表,包括:
新建对应N个数据位范围的N个数据表,每个对应目标数据位范围的目标数据表包括子未知数字段和子运算结果字段,所述子未知数字段用于存储对应目标数据位范围的子未知数的每个取值,所述子运算结果字段用于存储对应所述目标数据位范围的多个子运算结果;
将对应目标数据位范围的子未知数的每个取值存储至对应目标数据范围的目标数据表中子未知数字段下的多个第一数据项中;
将对应所述目标数据位范围的多个子运算结果存储至所述目标数据表中子运算结果字段下的对应所述子未知数的每个取值的多个第二数据项中。
3.根据权利要求2所述的方法,其特征在于,当所述预设运算函数包括乘法运算函数和/或加法运算函数时,所述目标数据表还包括第一进位字段和第二进位字段,所述第一进位字段用于存储目标数据表中每个子运算结果的第一进位数,所述第二进位字段用于存储第一数据表中每个子运算结果的第二进位数,其中,所述第一数据表为所述N个数据表中数据位范围与所述目标数据表的目标数据位范围相邻且低于所述目标数据位范围的数据表。
4.根据权利要求2所述的方法,其特征在于,所述响应于所述目标输入,在所述数据表中查找所述目标取值对应的目标运算结果,包括:
响应于所述目标输入,对所述目标取值进行按位分割,得到对应N个数据位范围的N个子目标取值,其中,每个子目标取值的数据长度为4位,N=M/4;
按照数据位范围从低到高的顺序依次在所述N个数据表中查找每个子目标取值对应的子运算结果,得到对应N个数据位范围的N个目标子运算结果;
对所述N个目标子运算结果进行按位重组,得到所述目标取值对应的目标运算结果。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇艺世纪科技有限公司,未经北京奇艺世纪科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810394451.6/1.html,转载请声明来源钻瓜专利网。