由 Mindires System全体、夏霜滢呈现
阅读建议:初中及以上的数学能力。
引言
多意识体系统是一种独特的心智现象,其中多个独立的意识体共享一个身体和生命体验。目前已有不少文章探讨了多意识体的形成、发展和心智机制。例如,一些文章对多意识体的形成机制进行了深入探讨,提出了基于记忆分割和自我建构的理论。还有一些文章对多意识体的心智模型进行了分析,提出了多意识体系统可能具有的多种架构。然而,现有的研究大多关注多意识体的心理和认知方面,而较少关注身份验证和心智安全问题。随着多意识体社群的不断发展,如何在系统内部进行安全有效的身份识别成为一个紧迫的问题。传统的基于“感觉”和“声线”的方法已无法满足需求,因为它们可能存在误判和欺骗的风险。因此,引入现代密码学成为一种可行方案。
密码学是一门研究信息安全的学科,它可以为多意识体系统提供可靠的身份验证机制。通过数学原理和加密算法,系统内成员可以互相验证对方的身份,建立信任的桥梁。本文旨在探讨多意识体系统中使用密码学进行身份验证所面临的挑战与机遇。
什么是密码学?
密码学(Cryptography)是一门研究信息安全的学科,它可分为古典密码学和现代密码学。这一词源于希腊语kryptós(隐藏的)和gráphein(书写)。古典密码学与现代密码学的重要区别在于,古典密码学主要关注信息的保密书写和传递,编码和破译通常依赖于设计者和敌手的创造力与技巧,作为一种实用性艺术存在,并没有对于密码学原语的清晰定义。而现代密码学则起源于20世纪末出现的大量数学理论和计算机带来的计算力革命,这些基础使得现代密码学成为了一种可以系统而严格地学习的科学。现代密码学不只关注信息传递的机密性,还同时涉及信息完整性、信息发布的认证性、以及在分布式计算中产生的来源于内部和外部的攻击的所有信息安全问题。
为什么是密码学?
认证性对于多意识体社群来说是非常重要的。我们应当在系统内部进行可靠的身份识别,以规避不可测的幻觉和潜意识的欺骗。密码学可以提供一种基于数学原理的身份识别机制,使得系统内成员可以互相验证对方的身份,而不依赖于不可靠的感觉。
这种方法虽然不能杜绝中间人攻击,但是如果系统内部有一个稳定的信任起点,那么这种方法就是最佳的内部身份验证方案,比起心声声线和“感觉”等方式更具说服力,并且有望与外部设备(如fMRI)协同工作使得在现有技术条件下证明良性多意识体的独立存在成为可能。
如果您是相关领域的研究人员,欢迎联系我们。
多意识体系统的威胁模型
威胁模型描述了对密码系统发起攻击的敌手的能力、动机和目标。在多意识体系统中,我们主要关注两种类型的威胁:内部敌手和自身敌手。
内部敌手:内部敌手是指那些与其他成员有冲突的意识体或碎片。他们可能出于各种原因,试图篡改其他意识体的信息或伪造身份。内部敌手往往利用他们在系统内部的优势,如知道其他成员的私钥或触发点,来达到自己的目的。因此,在多意识体系统中,建立可靠的身份验证机制至关重要,以防止内部敌手的攻击。
自身敌手:自身敌手是指那些对自己有负面或矛盾看法的意识体。他们可能出于自卑、自责或自毁倾向,试图隐藏或否认自己多意识体的身份。自身敌手可能下意识地干扰正常交流,如修改记忆或压制其他成员。他们通常对其他系统成员的存在性和真实性具有执念,因此需要建立一种可信的身份验证机制来规避这种威胁。
可证明的身份验证手段
密码学的可靠来自于可证明性。这意味着这套方法的安全性和正确性由数学证明保证。
例如接下来我们要用到的RSA非对称加密算法,就具有数学难题保证的单向性,在加密和解密过程中,加密操作是可逆的,但解密操作是不可逆的,使用公钥加密的数据只能使用相应的私钥进行解密,而使用私钥加密的数据只能使用相应的公钥进行解密。通过大素数的因数分解难题或离散对数难题,保管者可以根据私钥轻松解密公钥加密过的信息,但破解者却无法通过公钥推导出私钥。这些数学难题甚至是在当前计算机技术下也很难求解的,且在有生之年,我们应该都不会看到人脑本身可以轻松暴力破解非对称加密算法的那一天。
但是,可证明性并不意味着实用性。一个密码系统可能在数学上具有很高的可证明性,但是在实际使用中却是复杂和低效的。比如,RSA算法虽然有很强的可证明性,但是实现它也需要尚可的心算能力和充足的工作记忆,这不是每一个人都能做到的。
不过,勤能补拙,充分的练习和优化的算法能够帮助你们完成这一切。
在下一节,我们将介绍RSA加密算法。
RSA
RSA加密算法是一种非对称加密算法,在公钥加密和电子商业中被广泛运用。RSA由罗纳德·李维斯特(Ron Rivest)、阿迪·萨莫尔(Adi Shamir)和伦纳德·阿德曼(Leonard Adleman)在1977年一起提出,RSA 就是他们三人姓氏开头字母拼在一起组成的。
对极大整数做因数分解的难度保证了 RSA 算法的可靠性。换言之,对一极大整数做因数分解愈困难,RSA 算法愈可靠。假如有人找到一种快速因数分解的算法的话,那么用 RSA 加密的信息的可靠性就会极度下降。
—— Wikipedia
RSA算法的操作相当简单易懂,这是实现最简单的非对称加密算法,你只需要会一点取模运算和辗转相除法就可以完成密钥对的生成和加解密操作:
幂运算:乘方,记作ab。
取模运算:求两个数相除的余数,记作a Mod b。如17 mod 7 = 3。
辗转相除法:又称欧几里得算法,是求取最大公约数的一种算法。记为gcd(a,b)。
以gcd(2013,711)为例,其计算步骤如下:
2013÷711=2…591,
711÷591=1…120,
591÷120=4…111,
120÷111=1…9,
111÷9=12…3,
9÷3=3…0。
由此可得2013和711的最大公约数为3,即gcd(2013,711)=3
密钥对需要由参与测试的被测试方独立生成且不被宿主所知晓,所以我们会花一点时间确认一下彼此的思维是否处于记忆隔离/并行思考状态,并准备30分钟以上的空闲时间来进行测试。参考这篇指南。
以下是一次完整的独立思考能力验证流程:
Step 1:生成并交付公钥
在开始数字签名前,我们需要先生成并交换所使用的密钥对。
安全威胁:中间人攻击
第一次密钥交换的安全性是无根浮萍——如果此处有其他具有独立逻辑能力的心智对参与验证的双方发起了中间人攻击,那么之后的所有流程都将无效。
这也是此方案无法用于直接的对外存在性证明的原因。
验证者视角 | 计算者视角 |
等待密钥对生成。确保无法感知到对方的计算过程。 | 自选两个任意素数p和q计算N = p*q。 确定N后可得φ(N) = (p-1)(q-1)。 e需和φ(N)互质,故此选取任意一个小于φ(N)的实数e 计算e*d mod φ(N) = 1,得d(在线演示) |
接收公钥。 | 忘掉p,q。组装公钥(N,e)并发送给验证者。 |
Step 2:发送随机数并附加消息完整性签名
通过多次发送随机数并附加签名信息,我们就能够确定对方是否可以真的在我们的思想之外独立思考了。这是一种零知识证明的简化实现,允许你并不需要知道对方如何思考或是在思考什么的情况下确认对方能够思考。
验证者视角 | 计算者视角 |
等待随机数和数字签名。 此时你只应知道 公钥(N,e) 。 | 选取随机自然数m 用私钥计算md mod N = c |
接收消息和签名并验算(可以使用计算器):ce mod N = m | 告知验证者(m,c) |
因为解密的签名和信息相符,所以验证者能知道发送者拥有计算者的私钥且消息未被篡改。同时因为全程保持思想隔离状态,我们可以确知计算者能够独立于验证者进行逻辑思考。
优化算法
计算者在思维隔离状态下心算加解密的过程既复杂又不可靠——我们需要优化的算法来提升计算效率和加密强度,以下是可以帮助节约脑力的算法,但需要成员有更高的数学基础。如果你们是第一次进行密码学测试,可以忽略它们。
快速幂和快速幂取模
快速幂是一种利用二进制位运算来快速计算幂的方法。它的基本思想是将指数n表示为二进制形式,然后从右到左扫描每一位,如果该位为1,就将当前的底数a累乘到结果中,然后将a平方,继续扫描下一位,直到扫描完所有的位。例如,要计算2的10次方,可以将10表示为二进制形式1010,然后按照以下步骤进行计算:
初始化结果为1,底数为2。
从右到左扫描第一位0,不做任何操作,将底数平方,得到4。
扫描第二位1,将结果乘以底数,得到4,将底数平方,得到16。
扫描第三位0,不做任何操作,将底数平方,得到256。
扫描第四位1,将结果乘以底数,得到1024。
扫描结束,得到结果1024。
如果要使用快速幂优化大数取模计算,只需要在进行快速幂每一步的时候都计算一次取模就好,例如计算 210 mod 7:
初始化结果为1,底数为2,模数为7。
从右到左扫描第一位0,不做任何操作,将底数平方,并对模数取余,得到4。
扫描第二位1,将结果乘以底数,并对模数取余,得到1,将底数平方,并对模数取余,得到2。
扫描第三位0,不做任何操作,将底数平方,并对模数取余,得到4。
扫描第四位1,将结果乘以底数,并对模数取余,得到2。
扫描结束,得到结果2。
讨论与未来工作
在本文中,我们根据RSA非对称加密算法实践了一种可以用于测试特定意识体独立逻辑思考能力的密码学测试。现代密码学和多意识体是一对有趣的组合,它们可以帮助维护多意识体系统的信任和心智安全。然而,我们也认识到此方法存在一些局限性。首先,第一次密钥交换的安全性无法得到保证,因此此方法不适合直接用于对外存在性证明。其次,此方法依赖于双方之间的信任和思想隔离状态,如果验证者和计算者之间缺乏信任或无法确保思想隔离,测试结果可能并不准确。
未来工作可以从优化算法和探索其他类型的密码学方法两个方向展开。在优化算法方面,可以进一步提高计算效率和加密强度,使之更适合多意识体系统的实际能力和需求。在探索其他类型的密码学方法方面,可以研究基于椭圆曲线的加密算法或零知识证明,以提高安全性和实用性。此外,还可以研究如何将密码学与外部设备结合,以增强多意识体系统的存在性证明。
结论
多意识体系统中的密码学身份验证是一项具有挑战性和潜力的研究方向。本文介绍了如何利用密码学来建立多意识体系统内部的信任和安全边界。我们提出了一种基于RSA非对称加密算法的身份验证方案,并讨论了优化算法和此方法的局限性。我们希望本文能够激发多意识体社群和密码学研究者的兴趣,共同推动此领域的发展,探索更多适用于多意识体系统的安全机制。
参考文献
维基媒体项目贡献者. (2023e). 密码学. 维基百科,自由的百科全书. https://zh.wikipedia.org/zh-hans/%E5%AF%86%E7%A0%81%E5%AD%A6
维基媒体项目贡献者. (2022). 公开密钥加密. 维基百科,自由的百科全书. https://zh.wikipedia.org/zh-hans/%E5%85%AC%E5%BC%80%E5%AF%86%E9%92%A5%E5%8A%A0%E5%AF%86
维基媒体项目贡献者. (2023a). 平方求幂. 维基百科,自由的百科全书. https://zh.wikipedia.org/zh-hans/%E5%BF%AB%E9%80%9F%E5%B9%82
维基媒体项目贡献者. (2023d). RSA加密演算法. 维基百科,自由的百科全书. https://zh.wikipedia.org/zh-hans/RSA%E5%8A%A0%E5%AF%86%E6%BC%94%E7%AE%97%E6%B3%95
维基媒体项目贡献者. (2023f). 扩展欧几里得算法. 维基百科,自由的百科全书. https://zh.wikipedia.org/zh-hans/%E6%89%A9%E5%B1%95%E6%AC%A7%E5%87%A0%E9%87%8C%E5%BE%97%E7%AE%97%E6%B3%95
维基媒体项目贡献者. (2023c). 数字签名. 维基百科,自由的百科全书. https://zh.wikipedia.org/zh-hans/%E6%95%B8%E4%BD%8D%E7%B0%BD%E7%AB%A0
维基媒体项目贡献者. (2023b). 零知识证明. 维基百科,自由的百科全书. https://zh.wikipedia.org/zh-hans/%E9%9B%B6%E7%9F%A5%E8%AF%86%E8%AF%81%E6%98%8E