Conflux研究总监杨光:从现代密码学到区块链
- 时间:
- 浏览:0
“它不一定是秘密的,而且它必须是能够在没有不安全的情况下落入敌人的手中。”这是密码学中著名的柯克霍夫之一。由于美国政府可能进行监管,软件的开源和安全问题最近引起了广泛的讨论和关注。区块链是与开源最相关的技术之一,而区块链的起源之一--密码学--实际上已经有了答案。简介/Lin
当我们谈论密码学或密码学时,许多人可能会想到两种不同的图像。福尔摩斯在冒险过程中遇到的跳舞小人(The Dancing门)和《达芬奇密码》的密码等神秘色彩在大众文学和电影中很常见。
另一个是,例如,根据短密码,计算机程序会将好的文件转换成无法识别的“乱码”列。这是一个密码,实际上我们周围的各种电子设备一直在使用。为什么我们会对同一个概念产生两种不同的印象?媒体真的在撒谎吗?答案不是一个或另一个。虽然两种密码学描述都是正确的,但前者通常被称为“经典密码学”,后者被称为“现代密码学”,这是当今研究和使用的密码学。虽然“密码学”这个名字是一样的,但在“经典密码学是艺术,现代密码学是科学”的意义上,它们本质上是完全不同的。经典密码学的安全性源于密码学设计者的知识和创造力,以及设计方案的保密性。例如,在第二次世界大战期间,美国军方利用学习和理解纳瓦霍语的困难,建立了一个以纳瓦霍语为基础的交流术语系统,并招募纳瓦霍人作为密码破译者(这在2002年的电影《巫师》中有所体现)
日本人只有两种方法可以破解加密系统。第一步是从头开始学习纳瓦霍语。第二,知道密码是基于纳瓦霍语的,并要求纳瓦霍人破译它。事实上,这个密码直到战争结束才被破解。但是,如果敌人更好,那么过于依赖秘密设计的加密系统可能会自我毁灭。图灵帮助盟军破解德国Enigma密码的故事就是一个很好的例子(1)
经典密码学是一种有数千年历史的军事技术,在大多数情况下都表现得非常好,但为什么它已经发展到被现代密码学所取代的地步呢?这是因为经典密码学,像许多其他高贵的艺术一样,是一种艺术形式,不能满足公众的需要。简单地说,这是因为它太贵了,普通人无法使用。对于国家政府、军队或某些强大的黑人组织来说,为其成员设计一个统一的加密系统并不难。对于普通人来说,设计一个特殊密码的成本已经很昂贵了,而更昂贵的是,它往往还不够。例如,Alice希望与Bob和Chris进行单独的秘密通信,因此Alice必须使用两种不同的加密系统来与两个人进行通信,以确保Bob无法破解Alice和Chris之间的通信。想象一下,银行需要为每个用户单独设计一个加密货币,用于用户和银行之间的通信。密码学专业的毕业生很容易在银行找到工作,除非他们因为成本太高而破产。事实上,随着计算机的广泛使用,即使是像美国政府这样的富裕个人也无法支付为每个使用计算机的部门维护专用加密系统的费用。因此,美国国家标准局(NIST的前身)于1972年开始呼吁建立一个加密系统,以加密政府内部的非敏感信息。在1974年的第二次公开募股中,IBM提交了一种名为DES的加密算法提案。DES是英文数据加密标准的缩写。DES密码算法是现代密码学的创始人和代表,它遵循Kirkhoff的原理。这一原则要求加密系统的安全性完全依赖于安全存储的安全密钥,而不是依赖于加密系统本身细节的机密性。用信息论的发明者克劳德·香农的话来说,“敌人知道系统是什么。“根据科尔库霍夫的原则,只需对不同的通信频道保管各自的密码,就可以使用相同的密码系统在所有的频道上安全地进行通信。“密码系统只用钥匙就不能改变”的特点大大降低了密码学的使用成本,并将密码学从一件艺术品转变为一种廉价、可大量供应的工业产品。现代加密技术终于在以金融为代表的商业应用中获得了巨大的机遇。DES是一种非常好的加密算法,但对DES的信任不是天生的。早在1975年,当国家标准局就DES计划征求公众意见时,国家安全局(臭名昭著的国家安全局)干预了DES算法的设计,特别是DES算法中S盒的特定选择。有人提出,它(应该是随机选择的)可能秘密地削弱了算法的安全性,并为NSA植入了后门,使其能够更容易地破解加密信息。因此,DES受到了学术界的严格审查,并为密码分析技术的发展做出了直接贡献。关于S-box隐藏弱点的怀疑直到20世纪90年代初才消失,因为NSA基于Eli Biham和Adi Shamir发现并发表的差分密码分析技术对S-box的修改大大提高了DES算法对差分密码攻击的抵抗力,而IBM和NSA早在1974年就已经知道了。但另一方面,也有资料显示NSA说服IBM缩短了DES算法的密钥长度,这可能是为了将DES算法的安全性限制在NSA能够破译的范围内。从对DES加密算法的公开征集和讨论,到学术界怀疑NSA介入并试图发现DES的弱点,整个过程都表明DES算法不仅没有降低其安全性,而且通过广泛深入的研究证明了其安全性和可靠性。使用三次加密来克服密钥太短的缺点的3DES算法仍然存在于Firefox等软件中,直到2018年12月,微软的Office365仍在使用。NIST在对DES的审查中指出,DES可以被称为非军事研究和开发密码算法的“第一推动力”。在20世纪70年代,军事和情报机构以外的密码学家对密码学的学术研究很少。目前,学术界有许多活跃的密码学家,大学提供高质量的密码课程,市场上有商业信息安全公司和咨询公司。整整一代的密码学家都试图分析,或者更准确地说,破解DES算法。用密码学家Bruce Schneier的话来说,“DES在促进密码学世界的发展方面做的比其他任何东西都多。学者们分析的算法DES密码算法成功的一个重要原因是它的算法设计从一开始就完全公开,任何有兴趣的人都可以尝试分析。这与军事和情报机构使用的秘密密码系统有着根本的不同。由于其公开性,DES已经被大规模商业使用,消除了由于NSA干扰而植入后门的怀疑。DES算法为现代密码学树立了标杆,从那时起,所有的私有密码算法都遵循Kirkhoff的原则,所有的算法设计都公开用于加密对等体的研究,只有能够抵御对等体分析和攻击的加密算法才被认为是安全的。有些人可能会认为,通过公开加密算法,恶意攻击者更容易破解密码。然而,在实践中,我们从来没有听说过加密算法被破坏而导致损失的案例。绝大多数安全事件都是由非加密因素引起的,程序员在编写代码的情况下不了解加密算法本身的设计和错误。(例如,索尼PS3的ECDSA签名算法的实现在使用随机数的位置使用固定编号)、使用错误的算法(例如,存在使用MD5或SHA算法进行“加密”的程序员)或由于其他原因而错误地泄漏密钥(例如,即使是在密码学范围内的攻击,其中有人将包含用于测试的明文密钥的文件上传到GitHub,也经常通过侧通道攻击来实现,例如测量程序的执行时间或芯片的功耗,这基本上是算法实现的缺陷。事实上,现代密码破解技术需要非常先进的数学技能,因此最好的分析师通常来自学术界。他们更愿意通过发表他们的研究成果来获得学术声誉,而不是发起真正的攻击。此外,在理论上的漏洞被发现后,技术上利用漏洞并发起攻击可能需要相当长的时间,这为用户及时升级提供了宝贵的缓冲期。例如,2005年,王晓云教授就指出了当时广泛商业使用的SHA-1哈希函数中的一个安全漏洞。虽然该漏洞并不意味着可以直接破解使用SHA-1的系统,但它足以证明SHA-1的安全性明显低于预期,这促使NIST直接选择一个新的SHA-2哈希函数(包括SHA-256,SHA-512等变体)来代替SHA-1。然而,SHA-1死亡的真正宣告要等到2017年,也就是谷歌团队完成了SHA-1的彻底破解十多年后。目前,对于可靠的项目来说,SHA-1的替代升级工作应该已经完成。密码学研究对量子计算攻击也或多或少具有类似的“备用轮胎”意义,一旦量子计算机技术取得重大突破,人们应该能够在量子计算机真正用于攻击RSA或ECDSA之前切换到新的密码系统。因此,公共加密算法的设计使用户能够获得有关漏洞的早期警告,或者在实际被利用之前的缓冲期内升级到新算法。这比在没有准备的情况下被攻击要好得多。相比之下,将密码设计保密,只会阻止善意的研究人员分析和提高其安全性,而对于故意攻击密码的敌人,无论是逆向工程还是社会工程,都需要突破秘密机制,获得相应的设计,并在用户不知情的情况下秘密解密。总有一种方法可以攻击,直到攻击开始。例如,在第二次世界大战期间,德国人并不知道他们的密码已经被图灵领导的团队破解了,但他们使用破解的密码来传递敏感信息,为盟军的胜利做出了重大贡献。密码学家还珍视和捍卫他们发布密码的权利,讨论,研究和使用。特别是在信息时代和互联网时代的背景下,密码学是保护人们信息不“裸露”的关键技术。从这个角度来看,密码学家坚持为普通人学习和使用密码的权利,感觉就像是普罗米修斯为人类偷了火。1991年,Phil Zimmermann编写了一个名为PGP的强大加密软件,其密钥长度超过128位。
Yang Guang Yang Guang毕业于清华大学姚班,并在清华大学跨信息研究所获得计算机科学博士学位。在加入Conflux团队之前,他曾在丹麦奥胡斯大学、中国科学院计算研究所和比特大陆从事研究。他的研究兴趣包括密码学、博弈论和区块链。他的博士论文获得了中国密码学会优秀博士论文奖。