阿尔贝蒂在其著作《论密码》中提出的核心概念“formula”,长期以来被解读为一种物理装置,即密码盘本身。然而,通过对《论密码》文本的细致分析及其密码算法的系统梳理,本文指出,这一传统理解未能充分揭示阿尔贝蒂的真实意图。研究表明,“formula”并非仅指代密码盘的硬件结构,而是一个具有多种映射关系和多层映射关系的密码算法。该算法通过动态调整字母与数字的对应关系,实现了加密过程的复杂性与安全性,体现了阿尔贝蒂对数学映射思想的深刻运用。本文通过探求“formula”的涵义对阿尔贝蒂的密码装置与相应算法做了澄清,为西方密码学的机械化和算法化进程提供了参考。
引言
信息的传递与接收,是人类社会运转过程中的关键活动;尤其是在战争爆发、重大危机出现等特殊时期,这一行为的重要性更是被成倍的放大。此时,信息的传递和接收不仅要迅速、准确和全面,有时还需要具有保密性。因此,在人类社会文明发展进程中,很早就开始了密码的研究和使用。不过,在人类社会早期,人们主要是通过手工操作来加密和解密,大约到文艺复兴时期才开始使用机械来进行加密和解密,相应的密码算法也随之逐渐发展起来。密码学机械化与算法化的过程中,意大利著名建筑学家、艺术家和数学家莱昂·巴蒂斯塔·阿尔贝蒂(Leon Battista Alberti)发明了密码盘并给出了相应的密码算法,为之后系统的密码算法与精密的密码装置的发展与兴盛做出重要贡献。
阿尔贝蒂于1466年出版《论密码》(De Cifris)一书,首次介绍了其发明的一种新的密码工具—密码盘,并详细说明了这种工具的制作和使用方法。阿尔贝蒂的方法与前人的方法明显不同,具有明显的优越性,因此,在当时引起了很大的反响,受到广泛关注。后人依据其描述制作了许多做工精美的密码盘,例如收藏于伽利略博物馆中的17世纪的一盘1(见图1)。后世出现的很多密码机械装置都是受此启发而创造出来的。因此,阿尔贝蒂的《论密码》一书也经常被人研究和分析。
图1 一盘
在分析和研究《论密码》一书的时候,阿尔贝蒂给出的关键词“formula”经常被人提及,且基本都认为阿尔贝蒂的“formula”指的是他给出的密码盘,也就是说“formula”是一个名词,所指的是一个物理硬件。这其中最具代表性的是Rathidevi等的观点,他们明确指出:“formula”就是密码盘本身。其实,这种理解存在争议。本文拟就这个问题进行讨论,并深入剖析其中蕴含的密码算法,以期进一步推动关于“formula”的研究。
前人关于“formula”的理解
阿尔贝蒂的《论密码》自出版以来,不断被人研究。Williams等于2010年出版了Mathematical Works of Leon Battista Alberti一书,专门对阿尔贝蒂的《论密码》进行了评论。书中指出“formula”中的圆分成24份,这是23个拉丁字母所要求的。在构造密码盘时,阿尔贝蒂用红色标记了外圈上的20个大写字母(A、B、C、D、E、F、G、I、L、M、N、O、P、Q、R、S、T、V、X、Z),并将它们按以上字母顺序排序;用黑色数字1、2、3、4填充剩下的4个“房子”。这就完成了“formula”的固定圆盘。Scherff等于2023年出版了Media Technologies And The Digital Humanities In Medieval And Early Modern Studies一书,其中对阿尔贝蒂的加密方法进行了分析。Scherff等指出,阿尔贝蒂提出了一种名为“formula”的装置,可以将字母或数字的形式从接收到的内容中分离出来,并在两者之间进行动态重组。只有拥有相同设备的人才能够推导出这种形式和内容之间的新关系,从而解密消息。Rathidevi等于2017年发表文章“Trends of Cryptography Stepping from Ancient to Modern”,也对阿尔贝蒂的加密技术进行了分析。文中直接指出阿尔贝蒂密码盘也被称为“formula”。Singh等于2015年发表文章“Evolution of Encryption Techniques and Data Security Mechanisms”,对阿尔贝蒂的加密装置做了说明:密码盘这个设备被称为“formula”,且由2个圆盘和1个指针组成。
由此可见,他们都认为阿尔贝蒂所说的“formula”是一个物理硬件,其实就是密码盘本身。仔细看上述文献中的分析可知,他们之所以这样理解,依据的主要是阿尔贝蒂在《论密码》第13节中的一段话和第17节中给出的一个关于“formula”的图式,如图2所示。
图2 《论密码》中的图式
阿尔贝蒂的《论密码》由19个小节组成。其中第1节和第2节叙述了做此密码盘研究的原因,第3节提供了研究的思路,第4~10节说明了对拉丁语元音和辅音字母的顺序和组合的研究,第11节总结了之前关于字母、音节、单词的加密方法,第12节总结了前人关于“隐写术”的研究,第13~18节详细阐述了阿尔贝蒂发明的密码系统,第19节说明了密码盘的用途。
在第13节中,阿尔贝蒂写道:“我们通过以下这种方式进行配置,将较小的移动圆盘放在稳定的较大圆盘上方,以便用同一根针穿过两者中心,并将这根针作为轴,转动圆盘使其可绕轴旋转。我们将这样组合的2组仪器称为‘formulam’。而且你必须有2个这样的‘formula’,一个由你保存,另一个由要与你通信的朋友保存,这2个‘formula’在字母的位置、数量和顺序上完全相同,没有任何区别。”2
由此看出,前人认为阿尔贝蒂所说的“formula”是一个物理硬件,就是密码盘本身。March等的理解是有一定道理和依据的。但是,也很明显,他们的理解并不全面,也可以说,他们并没有完全明白阿尔贝蒂心目中关于“formula”的真正涵义。这是因为,如果完整地读过《论密码》全书会发现,阿尔贝蒂不仅在这一个地方提到了“formula”,他关于“formula”还有其他的解释。
在《论密码》的第14、15节中,阿尔贝蒂解释了如何使用索引(或索引字母),即在2个盘上分别选择一个字母,使其位置相对−找出明文字母所对应的密文字母。为了更加详细地说明上述方法,在第16节,阿尔贝蒂阐述了大盘上4个数字的用法——将4个数字进行排列组合,令它们分别对应不同的词句。
在这里,阿尔贝蒂有一段话再次提到了“formula”:“因此,在给你写信时,我首先在表格中查找我想使用的短语,并在相应的首字母下找到它,查看记下的数字,并使用我们的加密‘formula’,将表示这些数字的短语插入信中。如我所说,你可以从这些数字中推断出这个短语。”3
很明显,阿尔贝蒂这里所说的“formula”指的是数字与短语的对应表格,而不是前面提及的密码盘。阿尔贝蒂用4个数字排列组合后得到了336种情况,每一种情况都对应一个短语。当加密时,在密文中写下短语对应的数字组合,而当解密时,在明文中找到数字组合对应的短语即可。
另外,阿尔贝蒂的《论密码》自1466年问世以来,迄今有13个不同语言和形式的版本。仔细对比这些版本可以发现,在不同版本的手稿中,“formula”的图式差异巨大。例如在基吉家族图书馆收藏本(Chigi M II 49)中,“formula”图式密码盘的外圈符号为ABCDEFGILMNOPQRSTVXZ1234;而在梵蒂冈图书馆收藏本(Vaticanus Latinus 5118)中,“formula”图式密码盘的外圈符号为ABCDEFGHIKLMNOPQRSTVXYZ2,显然没有按照原文的说明进行绘图。还有,在马基雅维利图书馆收藏本(Marcianus 4702)中,“formula”图式密码盘的内圈符号为VSQOMKHFDBACEGILNP-RTXZ7;而在Chigi M II 49版本的书中,“formula”图式密码盘的内圈文字为zyxuronmilhgedcba&qtpsfk;在Bartoli的版本中,甚至直接忽略了内圈的符号。由此可知,关于“formula”的上述图式都是出版者根据自己的理解添加上去的,并不是阿尔贝蒂的原意。由此可知,基于上述图式的关于阿尔贝蒂“formula”的理解就不够准确。
阿尔贝蒂的密码算法与“formula”涵义
想要理解阿尔贝蒂《论密码》“formula”的真实涵义,就需要对阿尔贝蒂提出的密码盘的构造以及其给出的加密和解密算法进行梳理。
阿尔贝蒂的密码盘构造基本与图1相同:有2个圆盘,较大的称为固定圆盘,较小的称为转动圆盘。固定圆盘的直径比转动圆盘的大1/9。将2个圆周分别分成24个相等的部分。在大圆盘上按照拉丁字母表中的字母顺序书写,颜色为红色,即第1个A,第2个B,第3个C,……,忽略字母H、I、J、K、U、V。4这样,这些大写字母有20个。剩下的4个部分填上黑色的数字1、2、3、4。小圆盘也被分成24个部分,其中是按任意顺序书写的黑色小写字母和符号“&”。
在加密开始之前,首先需要确定一个大写字母和一个小写字母作为索引。确定索引字母的方法有2种:一种是先固定一个小写字母之后再挑选大写字母与其对齐;另一种与之相反,固定一个大写字母之后再挑选小写字母与其对齐。同时,还需要确定不同的数字组合所表示的含义。密码盘的大圆盘上有1、2、3、4这4个数字,若将其进行2位数、3位数和4位数的排列组合,可以得到336种情况(42+43+44=336)。将每一种数字组合的情况对应于一个短语或句子,那么就得到了对应数表。
接下来是正式加密操作。加密人须先使用大写字母明文(加密前的原文),然后,通过索引字母确定密码盘上2个盘的对应位置。通过对应关系寻找明文大写字母对应的小写字母,即为密文(加密后的文字)字母。如果明文中出现了对应数表中的短语或句子,则将明文中的原文替换成对应的数字组合,之后再对每个数字进行映射加密。需要注意的是,阿尔贝蒂强调每写三四个字母就要更改一次索引字母。若选择的是第一种索引方法,则更换对应的大写字母;若是第二种方法,则更换对应的小写字母。
解密过程与加密过程恰恰相反,解密人需要根据密码盘的对应关系找到密文对应的明文。阿尔贝蒂在此处指出,一种对应数表应该有2张,分别是按照数字排列的和按照短语首字母顺序排列的,前者用于解密,后者用于加密。
以上是通过密码盘进行加密和解密的原理和方法,目前可以通过计算机技术实现更直观的演示。
由上面分析可知,阿尔贝蒂密码学的思想的本质是数学中的映射思想。其“formula”所指的正是一套拥有深层和多样映射的密码系统。
明文和密文之间存在双射关系。也就是当任意选定一个明文字母或一个明文短语时,必然存在一个密文字母而不是多个密文字母与之对应,这就是明文与密文之间的单射。这一点与同音异字加密法不同5;反之,任意选定一个密文字母时,必然存在明文字母或短语与之对应,这就是明文与密文之间的满射。
在阿尔贝蒂的加密过程中,确定和更换“索引字母”是非常关键的步骤。一对索引字母表示的正是明文符号和密文符号的映射关系。当索引字母确定后,明文和密文之间的映射关系随之确定;当索引字母更换后,明文和密文的映射关系也发生了变化。
阿尔贝蒂用单个数字标记明文与密文之间映射关系的改变,他指出:假设我们已经确定了将字母B作为索引,我写给您的信件中出现的第一个字母将是您想要的任何小写字母,例如q;设置“formula”,使得q在B下……当需要修改编码字母和“formula”时,我会在信件中适当的地方插入一个并且只有一个数字,即表示大写字母下面小圆盘上的字母,数字3或4等。6
使用不同的映射关系大大提高了密文破解的难度。在西方古代和中世纪广泛使用的是单表替代加密算法,即用另一套符号替代已有的字母,由此产生一串看似杂乱无章的文字。单表替代法仅是一次映射,很容易破解,8世纪的学者针对此发明了一种破解方法——频率分析法。由于书写时每个字母使用的频率相对固定,所以人们可以通过统计密文中每个符号出现的频率,进而推测它们对应的明文字母。然而,根据阿尔贝蒂的密码盘结构可以推测明文和密文之间至少有24种映射关系,且还可以随时更换,导致任意明文字母在不同映射关系下对应的密文不同,这极大降低了频率分析法破解的可能。相比另一种加密算法——同音异字法,阿尔贝蒂的算法在加密经常出现的字母组合中有更多的可能性。
阿尔贝蒂密码学的映射思想不仅具有多样性,还具有多层性。阿尔贝蒂在密码盘的大圆盘上填入了4个数字,并将它们排列组合得到336种情况,每一种情况对应一个短语或句子。在加密时,加密人首先查明文对应的数字,然后将数字对应到密文。这个过程进行了2次映射(如图3所示)。在阿尔贝蒂之前,多层映射的加密算法始终没有提出,也许是因为过于复杂,或者,更有可能是因为人们还没有深刻地理解映射思想。
图3 阿尔贝蒂运用对应数表对明文短语加密过程
阿尔贝蒂多层映射的中间层元素是数字而不是字母,这使得密码符号的多样性进一步增加。不仅如此,阿尔贝蒂还将这些数字进行排列组合,将数字串映射到字母,大大增加了被映射的元素。
若将加密的过程看作一个映射,那么解密过程就是其逆映射。由于阿尔贝蒂的加密比较复杂,解密人应该知道加密映射过程的所有信息,包括密码盘上的字母数量和顺序,对应数表的内容。因此,2个用密码盘通信的人应该有2个一模一样的密码盘和相同的对应数表。另外,解密人还应该知道何时更换索引以及新的索引是什么,这也是更改逆映射的关键。总体来说,解密人和加密人在加密或解密映射上达成一致。
另外,由后来人们对于阿尔贝蒂“formula”的学习和应用,也可以知道阿尔贝蒂心目中的“formula”是一种密码算法。
阿尔贝蒂《论密码》写成之后,本不想公开发表。在《论密码》的结尾,他明确说:“我希望我的这份工作留给我们的朋友们,而不公开,以便不亵渎君主的任何一位宝贵的臣民,而是留给致力于最重要事务的政治家们。”7但是,关于密码盘的使用很快就遍布了罗马、佛罗伦萨、威尼斯、巴黎和伦敦等地区。
法国外交官、密码学家维吉尼亚(Blaise de Vigenère)在罗马执行任务期间学习了阿尔贝蒂的手稿和其中的“formula”,于1586出版了《论密码或秘密的写作方式》(Traicté des chiffres ou secrètes manières d'escrire),给出了维吉尼亚加密方法。该方法是列出一个方表,在加密时先密钥寻找明文字母对应的行数,然后在此行中确定明文字母对应的密文字母,如图4所示。
图4 维吉尼亚的方表
维吉尼亚密码算法以表格的方式呈现——很明显脱离了密码盘装置。但其与阿尔贝蒂的密码盘在本质上是相同的,因为在对每个明文字母加密的过程中,如果对应的行数发生变化,它们之间的映射关系也发生了变化,这个过程相当于阿尔贝蒂密码盘的一次旋转过程。
阿尔贝蒂的密码盘装置在密码机械化的进程中也具有重要地位,它与近现代众多密码装置具有相似的巧思。在第二次世界大战期间,很多国家都出现了加密机械,如日本的RED加密机、德国的Enigma加密机、Lorenz加密机等,这些机械在军事领域贡献巨大。这些加密机的形状和阿尔贝蒂的密码盘明显不同,但它们都是通过转子旋转实现明文到密文的转换——它们都模仿了阿尔贝蒂的“formula”方法。以Enigma为例,封装的机器中具有多个转子,当一个明文字母输入时,其中的转子依次对其进行替换,原理图如图5所示。此加密过程实现了对明文的多次映射,正是运用了阿尔贝蒂多层映射的思想。被多次映射后,明文中的字母规律已被打乱,故破解起来非常困难。
图5 Enigma加密机原理图
结束语
阿尔贝蒂于1466年出版的《论密码》一书给后世关于密码学的研究带来许多启发,因此,不少学者对阿尔贝蒂的书进行研究。在这个过程中,很多人认为阿尔贝蒂提出的关键词“formula”指的是一个物理硬件,也就是密码盘本身。其实,全面分析阿尔贝蒂的书中关于“formula”的说明和算法可以知道,上述理解并不是阿尔贝蒂的本意。阿尔贝蒂心目中的“formula”不仅仅是密码盘本身,更是一套具有多种映射关系和多层映射关系的密码算法,这可以从其加密的具体方法和此后人们对其“formula”的学习中得出。8由此,阿尔贝蒂在发明其加密方法时应用的其实是数学思想和方法,其加密方法其实就是数学思想和方法结合字母与数字的具体应用。
注:
1伽利略博物馆密码盘,编号1312,https://catalogue.museogalileo.it/object/CipheringDevice.html
2 原文为:“His ita configuratis imponimus tabellam mobilem minoris circuli supra stabilem maiorem ut idem acus per amborum centra penetrans utrorumque sit axis, circa quem mobilis tabella invertatur. Ex circulis istis ambobus ita compositum instrumentum hoc ‘formulam’ nuncupamus. Et formulam hanc geminatam habere oportet, ut sit earum altera apud te, altera vero apud amicum in provincia ad quem tu scripturus sis, eruntque ambae formulae sthaec penitus similes positionibus litterarum et numero earum et ordine ita ut in nullo discrepent.”
3 原文为“Scripturus ergo ad te quam instituerim orationem eam ex tabula disquiro qua inventa sub litterarum titulo cui supposita est, specto ex fine numeros annotatos. Hos ea re ipse ex formula cyfrae nostris litteris illic eos numeros significantibus pono in epistola. Tu uti dixi ex numeris illico explicatas habebis orationes.”
4阿尔贝蒂认为H和K不常用,J同I,V同U,故不书写
5加密方式可见网站:https://goto.pachanka.org/crypto/alberti-cipher-disk/
6 原文为“Prima omnium in epistola quam ad te scribam erit littera ex minoribus quae libuerit, puta q; eam igitur conversione tabellarum in formula locabis sub ipsa indice B.…Cum autem erit immutanda cifrae tabella et formulae habitus, tum inscribam loco in epistola unicam non plures ex litteris numeralibus, hoc est ex his quae sub numeris aderunt constitutae minoris quae significet puta 3 aut 4 et eiusmodi.”
7 原文为“Hoc opusculum velim apud amicos nostros observari ne in vulgus imperitorum prodeat et profanetur digna res principe et maximis rebus agendis dedito.”
8 阿尔贝蒂对斐波那契(Leonardo Bonacci, 1170—1250)的《计算之书》(Liber Abaci)、花剌子模(al-Khwārizmī,780—850)的《代数学》(al-Kitāb al-Mukhtaṣar fī Ḥisāb al-Jabr wal-Muqābalah)与萨瓦索达(Abraham Savasorda,1070—1136)的《面积之书》(Liber Embadorum)都非常熟悉,并在其《论绘画》(Della Pittura)中展现出了非凡的数学才能。阿尔贝蒂的“formula”思想也许正是受到了这些数学书籍中内容的启发−这对阿尔贝蒂这个勤奋的天才实际上不算一件难事,因为他的座右铭一直是“下一步是什么?”(Quid tum?)
杨欣童
CCF学生会员。北京大学博士研究生。主要研究方向为西方数学史与计算技术史。
(本文发表于2026年第2期《计算》)
点击“阅读原文”,加入CCF。
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……




还没有评论,来说两句吧...