首页 > 动态中心 > 技术文章  >  正文

混淆程序加密:代码最安全的加密方式

2023-06-15 00:00:00

文章摘要:几十年来,计算机科学家一直都想验证是否存在绝对安全的方法来加密计算机程序,让人们在使用计算机的同时却无法破解其程序。在2020年底,几位学者成功找到了一种加密方式,让计算机用户无法通过获取代码破解程序。加密程序代码首先要对其进行混淆不可区分混淆(indistinguishability obfuscation,简称IO)是一种强大的加密算法,它不仅能隐藏数据集,还能隐藏程序本身,从而实现几乎所有的

几十年来,计算机科学家一直都想验证是否存在绝对安全的方法来加密计算机程序,让人们在使用计算机的同时却无法破解其程序。

在2020年底,几位学者成功找到了一种加密方式,让计算机用户无法通过获取代码破解程序。

加密程序代码

首先要对其进行混淆

不可区分混淆(indistinguishability obfuscation,简称IO)是一种强大的加密算法,它不仅能隐藏数据集,还能隐藏程序本身,从而实现几乎所有的加密协议。

要想知道不可区分混淆是什么,我们不妨先来看一看混淆是什么。

对于程序员来说,最宝贵的自然是代码,一旦源代码被人获取,基本上就等于程序员编写代码花费的心血付诸东流,还会涉及到知识产权纠纷。为了保护代码,有的程序员会在导出程序之前采取一些手段来混淆程序。

当前程序混淆有两种方式,第一种是全文替换关键词,把整段代码中所有的“命名”全部替换成数字(例如将ui_controller替代为a0123456);第二种是直接输出编译过后的代码,将人们可以看懂的源代码转换成电脑看得懂的机器码,这样别人就没法直接打开这个文件看到原本的代码了。

这两种方式的目的都是在导出程序的时候,把标注性的符号摘除。从而达到不暴露源码信息的效果。

但这两种方式并不是真正意义上的混淆,因为虽然人类难以理解这串代码到底要做什么,但如果把这样的代码放入编译器中,让编译器去分析整个编程语言的语法结构,把每一行指令所要做的事情都归纳出来的话,那么很容易就能看出些端倪。

真正意义上的混淆被称作虚拟黑盒(Virtual Black Box Obfuscation,VBB),相当于将一个程序C嵌入一个黑盒中,我们可以在黑盒的一端输入x,另一头会输出C(x)。因为整个程序都藏在黑盒中,我们完全无法得知任何C的构造信息,也无法从输出反推输入。

如果实现虚拟黑盒,用户可以使用程序却无法理解程序本身,那么就能让开发的程序永远不被破解,并且加密程序的过程也会十分高效。

但虚拟黑盒的概念提出不久后,很快就被泼了一盆冷水。2001年,7位研究者联手提出了一种特殊构造的程序,并证明通用的VBB混淆是绝对不可能的。

不过,这7位研究者的成果中,提出了一种混淆的新型定义——如果一对程序A和B具有相同的功能性,能否通过一种新的混淆算法,使第三方无法区分两个程序呢?对于这样的混淆,我们称之为IO。

其利用的原理是:如果把相同值输入程序A和B,计算得到O(A)=P和O(B)=P,在无法进入程序A或B的情况下,在计算上分辨P来自于A还是B是不可行的。

有了强大的不可区分混淆,我们就能完美加密已有的程序,使其永远不会被破解。

IO存在性被证实

但还难以抵御量子计算

2013年,美国加州大学洛杉矶分校的阿米特·沙海教授联合其他5位学者提出一种IO协议,把一个程序拆分为几块,就像拼图游戏,单个碎片看上去毫无意义,但如果使用多线性配对方法将碎片正确地组合到一起,程序就能正常工作。

多线性配对本质上是一种利用多项式进行计算的方法,多项式是由不同变量和数字组成的数学表达式,如3xy+2yz2。为了保证其安全性,用户不能获知整个过程中任何参数。

多线性配对方法中,有一个重要的概念叫做“层数”,它可以理解为运算公式中变量的阶数,如3xy+2yz2为2阶多项式,即其层数为2;3xy+2yz4为4阶多项式,其层数为4。层数越多,多线性配对的安全性越差。

2016年,美国华盛顿大学副教授林惠嘉开始探索能否通过减少多线性配对的层数来实现IO。最初,她想出了如何用30层多线性配对构建IO。接下来,她和其他研究者逐渐实现了只用3层多线性配对来构建IO。

表面上看,这是一个巨大的进步。但有一个问题——从安全的角度来看,3层多线性配对和其他3层以上多线性配对一样不安全。

此前,研究人员只知道2层及以下的线性配对是绝对安全的。林惠嘉与阿米特·沙海联手,试图找出如何用2层线性配对构建IO,但是很长一段时间研究都没有突破。最终,他们想出了一个折中方案:既然实现IO需要3层线性配对,但为了安全需要减少到2层,那么中间是否存在2.5层呢?

研究人员设想了一个系统,使用户可以看到部分变量的值,这让整个机制不需要对太多变量进行加密。但多项式被隐藏的变量必须不能超过2阶,如3x2y+2yz4公式中,z的值可以让用户看到,而变量x、y的阶数由于没有超过2阶因此被隐藏。由此,研究人员在保证线性配对安全性的前提下,成功实现了IO。

虽然几位科学家联手证明了IO的存在性,但量子计算机的超强计算能力,会使得目前绝大部分加密算法都无法抵挡,这意味着所有的加密信息,都将会暴露在量子计算机的面前。现在研究者们正试图开发一条新的通往IO的潜在途径,希望能抵挡住量子攻击。[来源:科技日报]

上一篇 : 大数据时代如何防范数据泄露事件的发生
  • 相关推荐
  • 公司加密软件哪个好?2025年6款超好用公司加密软件分享推荐

    在当今数字化时代,公司文件包含着大量的机密信息,如商业计划、客户数据、技术专利等,这些都是公司的核心资产。一旦文件泄露,可能会给公司带来巨大的损失,甚至危及公司的生存与发展。因此给公司文件加密成为了企业信息安全管理的重要环节。2025 年有许多优秀的公司加密软件可供选择,它们各具特色,能为企业提供可靠的文件加密保护。下...

  • 2025企业加密神器!这六款超好用的公司加密软件必备

    在当今数字化飞速发展的商业世界中,企业数据犹如珍贵的宝藏,关乎着企业的生存与发展命脉。然而数据面临的泄密风险也与日俱增,这使得加密软件成为众多公司守护数据安全的必备利器。2025 年市场上涌现出了众多优秀的公司加密软件,它们各有所长,能从不同角度为企业的数据保驾护航。接下来就为大家推荐六款超好用的公司加密软件,并梳理出...

  • 图纸安全无忧:推荐七款顶尖图纸加密软件

    在当今竞争激烈的商业环境中,企业的设计创新能力已然成为核心竞争力之一,各类设计图纸承载着企业的智慧结晶与商业机密,其安全性不容忽视。对于众多企业而言,一款能够快速便捷地对图纸进行加密的软件,就如同守护设计宝藏的坚固盾牌,至关重要。随着 2025 年企业设计业务的蓬勃发展,市场上涌现出了不少优秀的图纸加密软件。今天就为大...

  • 2024年要如何对图纸进行加密?七种方法加密公司图纸!

    在当今竞争激烈的商业环境中,各类设计图纸往往承载着企业的核心创意、关键技术以及重要商业机密,一旦图纸被泄密,可能会给企业带来难以估量的损失。无论是建筑设计图纸、机械制造图纸,还是电子产品的设计图纸等,都需要严密的保护措施。因此掌握有效的图纸加密方法就显得尤为重要。接下来就为大家详细介绍七种实用的图纸加密技巧,帮助企业筑...

  • 文件加密软件排行榜TOP10(2025年十大好用的文件加密软件)

    如今,数据已然成为企业最宝贵的资产之一,每一份合同、方案、客户资料等文件背后都承载着企业的心血与未来的发展机遇。但随着网络环境日益复杂,信息窃取手段层出不穷,企业文件的安全面临着前所未有的挑战。作为企业的决策者,您肯定一直在寻觅可靠的防护手段。今天要给您介绍十款文件加密软件,就是能在这场信息安全保卫战中担当“定海神针”...

  • 如何防止数据泄密?数据防泄密的八种方法防范数据安全指南!

    在 2025 年这个数字化飞速发展的时代,数据已然成为企业乃至个人最为宝贵的资产之一。从商业机密、客户资料到个人隐私信息,每一份数据都承载着重要的价值,一旦发生泄密事件,其后果不堪设想,可能导致企业失去竞争优势、面临巨额损失,个人隐私也会遭受严重侵犯。因此如何实现数据的保密性成为了当下备受关注的焦点话题。在本文中,我们...

  • 数据防泄密软件哪款好?八款数据防泄密软件守护数据安全推荐!

    在当今数字化时代,数据已成为企业最为宝贵的资产之一,然而数据泄露事件却频频发生,给企业带来了巨大的损失和风险。如何有效保护企业的敏感数据,防止其泄露成为了企业管理者们最为关注的问题之一。数据防泄密软件作为保障数据安全的重要工具,其作用愈发凸显。本文将为您推荐 2025 年八款超好用的数据防泄密软件,帮助您全方位守护企业...

  • 图纸如何加密|五个简单好学的设计图纸加密方法分享,真的不学?

    在当今竞争激烈的设计领域,图纸承载着设计师们的智慧结晶以及企业的核心机密,无论是建筑设计图纸、机械制造图纸还是电子电路图纸等等,其重要性不言而喻。然而随着信息传播的便捷化,图纸面临着诸多泄密风险,这就使得对图纸进行有效加密成为每一位图纸设计者和相关企业必须重视的环节。今天就为大家介绍五种加密图纸的方法,带你领略图纸加密...

  • 图纸加密软件有哪些?2025年精选五款图纸加密软件,建议收藏

    在当今数字化时代,图纸作为企业重要的知识资产和核心竞争力所在,其安全性早已成为企业重点关注的问题。然而图纸加密绝非仅仅是对图纸文件进行简单的加密处理这么简单,它涉及到对图纸全生命周期的保护,包括存储、传输、使用过程中的安全保障,以及对不同用户访问权限的精细管理,防止内部泄露和外部攻击等多方面。为了帮助企业更好地保护图纸...

  • 七款公司加密软件推荐|2025年强大的公司加密软件排行榜

    在当今数字化时代,公司的各类数据,从关键商业机密、重要客户信息到核心技术资料等,都是企业的命脉,关乎着企业的生存与发展。然而随着网络技术的飞速发展,数据安全面临着诸多威胁,如黑客攻击、内部违规操作、数据意外丢失等。因此选择一款合适的加密软件,对于保护公司的数据安全至关重要,它就如同企业数据的 “守护神”,为企业筑起一道...

大家都在搜的词:

微信扫一扫联系售前工程师