[发明专利]用于执行混淆算术的电子计算设备在审
申请号: | 201580053184.0 | 申请日: | 2015-09-30 |
公开(公告)号: | CN106716345A | 公开(公告)日: | 2017-05-24 |
发明(设计)人: | L.马林;A.A.M.L.布鲁克斯;P.M.H.M.A.戈里斯森 | 申请(专利权)人: | 皇家飞利浦有限公司 |
主分类号: | G06F7/72 | 分类号: | G06F7/72 |
代理公司: | 中国专利代理(香港)有限公司72001 | 代理人: | 张同庆,陈岚 |
地址: | 荷兰艾*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 执行 混淆 算术 电子 计算 设备 | ||
技术领域
本发明涉及电子计算设备、环编码设备、环解码设备、表演算方法、电子计算方法、计算机程序以及计算机可读介质。
背景技术
在白箱密码术中以及更一般地在软件混淆(obfuscation)中,通常在编码值而非明文值上执行演算。如果在编码的值而非在明文值自身上执行演算,混淆的软件的逆向工程更加困难。
在编码之后,像加法或乘法那样的常规运算可能不再使用计算机内置本原执行。编码值的简单相加在正常情况下并不导致这些值的相加的编码。这同样适用于乘法。在公式中,对于大多数x和y,;E表示编码函数。
此问题的解决方案是引入加法(A)和乘法(M)表。所述表把两个编码值当作输入,并且产生一个编码值作为对应于加法或乘法运算的编码的输出。所述表可以被定义为: 。这些表允许直接在编码值上执行算术。
使用表的混淆加法和乘法遭受至少两个缺陷。首先,所述表可能变得相当大。如果x和y被表示为l位,每个表需要22ll 位。
其次,这样的大表可能在软件中容易被发现。更坏的是,这些表可能仍然被标识为加法或乘法运算,即使它们被编码了;例如凭借在编码中保留的这些函数的属性。例如,乘法表满足。攻击者可以使用此属性和类似属性来猜测所述表表示哪种运算。
发明内容
将会有利的是,具有一种执行混淆算术的改进的方式。提供了如权利要求1中限定的一种计算设备。
发明人发现,在某些情况下,在编码值上的乘法和加法可以使用单个表执行,而不必将多个值编码成单个编码值。因为相同的表被用于加法和乘法,所以在逆向工程期间将难以领会是加法还是乘法被执行。因为从外部观看时加法和乘法表现为相同的运算,所以发明人把这个方法叫做“同质(homogeneous)混淆”。即使攻击者能够发现使用的表,并且即使他能够以某种方式算出其作为增量表的功能,他仍然不会知晓是加法还是乘法运算被执行。该表作用于整数列表的元素的方式对加法和乘法而言是不同的,然而这可以容易使用诸如代码混淆、白箱实现方式等之类的传统混淆来隐藏。
此外,使用的单个表也小于在背景技术中所讨论的表:需要大约2ll位。即使只使用加法,混淆加法所需的表小于背景技术中所建议的表。
本发明适用于许多不同的交换环R,尽管不是每个和每一个环都允许作为整数列表编码。交换环是一种数学概念,其包括许多不同的常见数学结构,例如整数模某数字 () 或者多项式模某数字和某多项式 ()。域是交换环的特殊情况。如本文将会描述,技术人员可以验证给定的环是否允许混淆。
例如,环元素可以被编码为两个整数(a,b)。可以使用增量表在该编码上直接执行算术,该增量表将编码的环元素映射到该编码的环元素加增量值。例如,该表将(a,b)映射到(c,d),如果。加法和乘法二者都通过增量表的反复应用而执行。
如本文将会更充分地讨论的,存在许多其他可能性和变形。典型地对攻击者而言将未知的是,在任意给定的实现方式中选择了许多个变形中的哪一种。
所述计算设备是电子设备并可以是移动电子设备,例如移动电话、机顶盒、计算机、智能卡等。
如本文所描述的混淆算术可以应用于范围广泛的实际应用中。这样的实际应用包括运行在私有硬件上的安全应用,例如银行业应用等,在所述安全应用中逆向工程将被防止。其他应用包括其中将要防止数据的无意泄露的应用。如果程序被诱骗释放私有数据,那么若泄露的数据被编码的话,这不用太过担忧。混淆算术也可以应用于运行应用的服务器。如果用户以编码形式发送和接收数据,则私密性增强。
一种依照本发明的方法可以作为计算机实现的方法在计算机上或在专用硬件中或在二者的组合中实现。用于依照本发明的方法的可执行代码或其部分可以存储在计算机程序产品上。计算机程序产品的示例包括存储器设备、光学存储设备、集成电路、服务器、在线软件等。优选地,计算机程序产品包括存储在计算机可读介质上的非临时性程序代码构件,以用于在所述程序产品在计算机上执行时执行依照本发明的方法。
在一个优选实施例中,计算机程序包括适于当该计算机程序在计算机上运行时执行依照本发明的方法的所有步骤的计算机程序代码构件。优选地,计算机程序体现在计算机可读介质上。
附图说明
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于皇家飞利浦有限公司,未经皇家飞利浦有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201580053184.0/2.html,转载请声明来源钻瓜专利网。