混淆程序:代码最安全的加密方式
几十年来,计算机科学家一直都想验证是否存在绝对安全的方法来加密计算机程序,让人们在使用计算机的同时却无法破解其程序。
在2020年底,几位学者成功找到了一种加密方式,让计算机用户无法通过获取代码破解程序。
加密程序代码
首先要对其进行混淆
不可区分混淆(indistinguishabilityobfuscation,简称IO)是一种强大的加密算法,它不仅能隐藏数据集,还能隐藏程序本身,从而实现几乎所有的加密协议。
要想知道不可区分混淆是什么,我们不妨先来看一看混淆是什么。
对于程序员来说,最宝贵的自然是代码,一旦源代码被人获取,基本上就等于程序员编写代码花费的心血付诸东流,还会涉及到知识产权纠纷。为了保护代码,有的程序员会在导出程序之前采取一些手段来混淆程序。
当前程序混淆有两种方式,第一种是全文替换关键词,把整段代码中所有的“命名”全部替换成数字(例如将ui_controller替代为a0123456);第二种是直接输出编译过后的代码,将人们可以看懂的源代码转换成电脑看得懂的机器码,这样别人就没法直接打开这个文件看到原本的代码了。
这两种方式的目的都是在导出程序的时候,把标注性的符号摘除。从而达到不暴露源码信息的效果。
但这两种方式并不是真正意义上的混淆,因为虽然人类难以理解这串代码到底要做什么,但如果把这样的代码放入编译器中,让编译器去分析整个编程语言的语法结构,把每一行指令所要做的事情都归纳出来的话,那么很容易就能看出些端倪。
真正意义上的混淆被称作虚拟黑盒(Virtual BlackBoxObfuscation,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的潜在途径,希望能抵挡住量子攻击。
鸿蒙官方战略合作共建——HarmonyOS技术社区
推荐系统
windows11中文版镜像 微软win11正式版简体中文GHOST ISO镜像64位系统下载
语言:中文版系统大小:5.31GB系统类型:Win11windows11中文版镜像 微软win11正式版简体中文GHOST ISO镜像64位系统下载,微软win11发布快大半年了,其中做了很多次补丁和修复一些BUG,比之前的版本有一些功能上的调整,目前已经升级到最新版本的镜像系统,并且优化了自动激活,永久使用。windows11中文版镜像国内镜像下载地址微软windows11正式版镜像 介绍:1、对函数算法进行了一定程度的简化和优化
微软windows11正式版GHOST ISO镜像 win11下载 国内最新版渠道下载
语言:中文版系统大小:5.31GB系统类型:Win11微软windows11正式版GHOST ISO镜像 win11下载 国内最新版渠道下载,微软2022年正式推出了win11系统,很多人迫不及待的要体验,本站提供了最新版的微软Windows11正式版系统下载,微软windows11正式版镜像 是一款功能超级强大的装机系统,是微软方面全新推出的装机系统,这款系统可以通过pe直接的完成安装,对此系统感兴趣,想要使用的用户们就快来下载
微软windows11系统下载 微软原版 Ghost win11 X64 正式版ISO镜像文件
语言:中文版系统大小:0MB系统类型:Win11微软Ghost win11 正式版镜像文件是一款由微软方面推出的优秀全新装机系统,这款系统的新功能非常多,用户们能够在这里体验到最富有人性化的设计等,且全新的柔软界面,看起来非常的舒服~微软Ghost win11 正式版镜像文件介绍:1、与各种硬件设备兼容。 更好地完成用户安装并有效地使用。2、稳定使用蓝屏,系统不再兼容,更能享受无缝的系统服务。3、为
雨林木风Windows11专业版 Ghost Win11官方正式版 (22H2) 系统下载
语言:中文版系统大小:4.75GB系统类型:雨林木风Windows11专业版 Ghost Win11官方正式版 (22H2) 系统下载在系统方面技术积累雄厚深耕多年,打造了国内重装系统行业的雨林木风品牌,其系统口碑得到许多人认可,积累了广大的用户群体,雨林木风是一款稳定流畅的系统,一直以来都以用户为中心,是由雨林木风团队推出的Windows11国内镜像版,基于国内用户的习惯,做了系统性能的优化,采用了新的系统
雨林木风win7旗舰版系统下载 win7 32位旗舰版 GHOST 免激活镜像ISO
语言:中文版系统大小:5.91GB系统类型:Win7雨林木风win7旗舰版系统下载 win7 32位旗舰版 GHOST 免激活镜像ISO在系统方面技术积累雄厚深耕多年,加固了系统安全策略,雨林木风win7旗舰版系统在家用办公上跑分表现都是非常优秀,完美的兼容各种硬件和软件,运行环境安全可靠稳定。win7 32位旗舰装机版 v2019 05能够帮助用户们进行系统的一键安装、快速装机等,系统中的内容全面,能够为广大用户
番茄花园Ghost Win7 x64 SP1稳定装机版2022年7月(64位) 高速下载
语言:中文版系统大小:3.91GB系统类型:Win7欢迎使用 番茄花园 Ghost Win7 x64 SP1 2022.07 极速装机版 专业装机版具有更安全、更稳定、更人性化等特点。集成最常用的装机软件,集成最全面的硬件驱动,精心挑选的系统维护工具,加上独有人性化的设计。是电脑城、个人、公司快速装机之首选!拥有此系统
番茄花园 Windows 10 极速企业版 版本1903 2022年7月(32位) ISO镜像快速下载
语言:中文版系统大小:3.98GB系统类型:Win10番茄花园 Windows 10 32位极速企业版 v2022年7月 一、系统主要特点: 使用微软Win10正式发布的企业TLSB版制作; 安装过程全自动无人值守,无需输入序列号,全自动设置; 安装完成后使用Administrator账户直接登录系统,无需手动设置账号。 安装过程中自动激活
新萝卜家园电脑城专用系统 Windows10 x86 企业版 版本1507 2022年7月(32位) ISO镜像高速下载
语言:中文版系统大小:3.98GB系统类型:Win10新萝卜家园电脑城专用系统 Windows10 x86企业版 2022年7月 一、系统主要特点: 使用微软Win10正式发布的企业TLSB版制作; 安装过程全自动无人值守,无需输入序列号,全自动设置; 安装完成后使用Administrator账户直接登录系统,无需手动设置账号。 安装过程
相关文章
- 8年开发,连登陆接口都写这么烂...
- 为什么在XP/WIN7系统总是提示提交错误报告?
- Win7本地连接经常掉线的解决办法
- 多云管理与安全架构迁移
- 预告:微软漏洞贡献榜中国第一人黄正——如何用正确的姿势挖掘浏览器漏洞|硬创公开课
- vista系统下手动添加配置文件连接无线网络的方法(图文教程)
- 如何手动清除那些利用了映像劫持技术的病毒
- 流量劫持有多泛滥?打开浏览器,劫持就找上门了
- McAfee的服务器常用杀毒软件下载及安装升级设置图文教程 McAfee杀毒软件防病毒规则设
- Mercury水星无线路由器怎么设置无线网络及拨号上网
- AIR 025 | 360 首席科学家颜水成:有关机器视觉的六个洞见
- 笔记本搜不到无线网络怎么办 笔记本搜不到无线网络解决方法【详解】
- FireEye出资1.86亿美元收购Respond Software
- 成功抵御DDoS攻击的7个要素
- 利用启动脚本特性 更换Windows XP密码
- 奔驰E级存在漏洞,黑客可以远程控制汽车,中国200万辆奔驰受影响
- 网络安全攻防:Web安全之HTTP协议
- 228万名MeetMindful用户的数据被泄露
热门系统
- 1华硕笔记本&台式机专用系统 GhostWin7 32位正式旗舰版2018年8月(32位)ISO镜像下载
- 2深度技术 Windows 10 x86 企业版 电脑城装机版2018年10月(32位) ISO镜像免费下载
- 3电脑公司 装机专用系统Windows10 x86喜迎国庆 企业版2020年10月(32位) ISO镜像快速下载
- 4雨林木风 Ghost Win7 SP1 装机版 2020年4月(32位) 提供下载
- 5深度技术 Windows 10 x86 企业版 六一节 电脑城装机版 版本1903 2022年6月(32位) ISO镜像免费下载
- 6深度技术 Windows 10 x64 企业版 电脑城装机版2021年1月(64位) 高速下载
- 7新萝卜家园电脑城专用系统 Windows10 x64 企业版2019年10月(64位) ISO镜像免费下载
- 8新萝卜家园 GhostWin7 SP1 最新电脑城极速装机版2018年8月(32位)ISO镜像下载
- 9电脑公司Ghost Win8.1 x32 精选纯净版2022年5月(免激活) ISO镜像高速下载
- 10新萝卜家园Ghost Win8.1 X32 最新纯净版2018年05(自动激活) ISO镜像免费下载
热门文章
- 1迅雷云播“手机看片神器”使用教程(随时随地秒速离线云播放)
- 2微信公众号怎么年审? 微信公众号年审流程及所需材料介绍
- 3i7 6700主频是多少 i7-6700参数详解
- 4Win10怎么设置网络按流量计费 Win10网络设置流量收费教程
- 5Steam提示“需要在线进行更新,请确认您的网络连接正常”怎么办?
- 6安卓手机安装运行win7系统教程 安卓手机装win7系统教程
- 7win7蓝屏代码7f指什 怎么解决 很严重
- 8华硕b460主板装win7系统及bios设置教程 10代CPU安装Win7教程 BIOS设置 U盘启动 完美支持USB驱动
- 9腾讯全民wifi内测资格申请教程 腾讯全民WIFI申请活动及地址详情
- 10bitlocker是什么
常用系统
- 1番茄花园Ghost Win8.1 x32 安全纯净版2018年04(永久激活) ISO镜像快速下载
- 2深度技术 Ghost Win7 x64 Sp1 电脑城纯净版2020年3月(64位) ISO镜像高速下载
- 3新萝卜家园 Ghost Win7 x64 SP1 极速版201810月(64位) 好用下载
- 4笔记本系统Ghost Win8.1 (X64) 全新纯净版2021年4月(永久激活) 提供下载
- 5雨林木风Ghost Win7 x64 SP1 极速装机版2021年6月(64位) 高速下载
- 6电脑公司Ghost Win8.1 X64位 元旦特别 纯净版2020年1月(自动激活) ISO镜像快速下载
- 7深度技术 GHOSTXPSP3 新春特别 电脑城极速装机版 2020年2月 ISO镜像高速下载
- 8新萝卜家园 Ghost XP SP3系统 电脑城极速纯净版 2019年4月 ISO镜像下载
- 9华硕笔记本&台式机专用系统GhostWin7 64位旗舰版2018年4月(64位) 提供下载
- 10电脑公司Ghost Win8.1 X64位 纯净版2022年5月(自动激活) ISO镜像快速下载