返回第286章 破解坏苹果(第1/3页)  重生学神有系统首页

关灯 护眼     字体:

上一章 目录 下一页

    江寒用python设计了一个程序,将“弹性碰撞”算法实现了出来。

    所谓“弹性碰撞”,通俗的说法就是“碰瓷儿”。

    首先准备一个种子函数,然后让算法随机修改函数的参数和结构,衍生出各种各样的函数。

    在极其罕见的情况下,有的函数可能与81个核心方程中的某一个,在某些特征上表现出足够的相似度。

    当到了这样的函数,就将其替换到“苹果核”上去。

    众所周知,两个同阶微分方程,如果结构、系数等方面,并不完全相同,那么通常来说,就是两个完全不同的方程,理论上来说,是不能互相替换的。

    但在计算机中,有的时候这样做却是可行的。

    这是因为,任何计算机的精度都是有限的,只能近似地体现出方程或函数的部分特征,而非全部。

    所以,如果两个函数或方程,在某些方面可以重合,尤其是上下文中需要体现的那部分特征,只要没有出现任何出入,那么就可以在计算机内部,将两者等同看待。

    当然,单靠人力计算,想要进行这样的碰瓷儿,几乎是不可能的。

    但现在嘛……

    有了“弹性碰撞”算法,就为机器求解提供了实施的途径。

    相比于穷举法,“弹性碰撞”的优点是可以节省大量时间,缺点就是可能存在漏解。

    而且,这是一种碰运气的算法,可能一秒钟就能找到答案,也可能一辈子都找不到。

    那么,如何提高碰瓷成功的概率,缩短等待的时间呢?

    答案很简单,可以采用并行计算。

    好,说实话,这个时候,江寒就深刻地认识到量子计算机的优越性了。

    而在只有经典计算机的当下,解决这种大规模计算,只能靠人多力量大……

    江寒将“弹性碰撞”程序上传到了自己布置在车库中的ibm服务器和五台工作站中,让它们同步运行了起来。

    随后,他就拿出一本《密码学算法》,看了起来。

    每隔大约1个小时,江寒就通过笔记本电脑,远程检查一下服务器和各个工作站,看看“弹性碰撞”的运行情况。

    事实证明,他今天的运气还真不错。

    仅仅在第3次例行巡查中,江寒就欣喜地发现,居然有三台工作站,找到了可用数据。

    碰瓷成功!

    接下来,就比较简单了。

    将这3条数据中的任意一条,替换到“苹果核”上去,都会让原本完美无瑕的坏苹果,产生一条细微的裂隙。

    如果将3条数据全部换上去……

    江寒这样做完之后,欣赏着遍体鳞伤的“苹果核”,不禁满意地一笑。

    随后他就开始抽丝剥茧,手工拆解“苹果核”。

    这个过程异常繁琐,持续了足足10个小时。

    晚上8点左右,夏如虹回来了。

    江寒就捧着笔记本,回到了自己的房间,然后继续操作。

    直到天色蒙蒙亮,他才终于将苹果核中,那些冗余的方程和参数,全部手工合并、排除掉。

    现在只剩下了一条高阶微分方程,只是经过多次变形,看起来已经十分丑陋,且臃肿不堪……

    接下来,就是设计一个穷举算法,为这个方程求出一组近似解,再以这组数值解为核心,打造出一把“削皮刀”,给“坏苹果”脱壳……

    凌晨5点,被彻底洗白白,焕然一新的“坏苹果”,终于再次出现在了江寒的眼前。

    先将其写入坏苹果基板,试着运行了一下。

    结果十分令人欣喜,程序运行完全正常。

    这说明在脱壳的过程中,

『加入书签,方便阅读』

上一章 目录 下一页