与公钥基础设施之父的对话
作者:Jason Taylor
发布日期:2020年1月8日
阅读时间:17分钟
在今天的文章中,我想向大家介绍我的老朋友Loren Kohnfelder。我在90年代末的微软认识了Loren,当时我们共同承担了改进Internet Explorer安全性的艰巨任务。那是一段既激动人心又充满挑战的时光。虽然我们取得了长足的进步,但令人惊讶的是,二十年前我们面临的许多安全挑战至今仍然存在。
我采访Loren是因为他拥有全球最具启发性和重要性的安全视角。在1978年的学士论文中,他发明了公钥基础设施(PKI),包括证书和证书撤销列表的概念,并为我们今天使用的互联网信任模型奠定了基础。我觉得自己是个老手,因为我已经思考安全问题超过二十年了。但Loren思考安全问题已经超过四十年了!
以下是我们就一系列安全相关话题进行的自由讨论。希望您能喜欢并觉得有趣。
对话内容
Jason:
感谢您今天抽时间与我交谈。我很期待听到您的想法。我想从您在软件安全领域的悠久历史开始谈起。是什么启发了您的学士论文?当时您知道它会有多大的影响力吗?
Loren:
在MIT,我非常幸运能够经常出入计算机科学实验室,那里有RSA算法的三位发明者中的两位的办公室。那时他们的论文即将发表,Len Adelman和Ron Rivest都非常慷慨地花时间向我讲解数学原理。
RSA算法在签名加密消息时存在一个技术问题,因为两个不同的密钥对(签名者和接收者的)会有不同的模基,其中一个的结果可能比另一个大。(详情请参见他们的论文第X节“避免‘重新分块’”。)我记得,当Ron解释这个问题时,我指出通过反转顺序(因为它是可交换的,所以总是可以这样做),问题就解决了;他立即叫来Len,看他们是否可能忽略了这一点,于是他们注意到了我。论文已经来不及修改,所以我给《ACM杂志》写了一封信,并在RSA作者的支持下发表了。
Len成了我的论文导师,为了确定一个主题,我们很快决定探索RSA的实际应用。在1970年代末,计算机又大又贵,所以我们能想到的RSA应用只有银行间交易安全或军事通信等场景。加速RSA计算的专用印刷电路板要花费数千美元,而且速度仍然很慢,只能使用非常小的密钥大小。此外,NSA actively discouraging密码学研究,软件实现有出口限制,要求我们像对待军火一样对待它们。
密钥分发是下一个明显要解决的大问题,所以我专注于这一点。公钥的想法改变了游戏规则。首先,我们假设可以发布一个“黄页”式的密钥目录,但这当然不是一个很好的解决方案。首先,转录那些长数字是不可行的。当时,我认为数字证书是一个相当明显的解决方案:数字而不是纸质,由权威机构而不是电话公司颁发。尽管我们很清楚摩尔定律,但没有人预见到这项技术有一天会出现在每个人的口袋或钱包里。我专注于毕业,所以没有想到为这个想法申请专利,事后看来,我认为这样更好。
Jason:
这是一个迷人的故事。对我来说尤其令人兴奋,因为我相信您以前从未这样公开讲过。我们在这里捕捉到了一小段但重要的计算历史!
关于您发明的想法在现实世界中的应用,有什么让您感到惊讶的吗?
Loren:
从数字证书的概念到HTTPS协议首次提出(RFC2818)花了超过二十年时间。今天——又过了将近二十年——我们终于有超过一半的网络流量通过HTTPS保护,并且刚刚开始看到DNS over HTTPS的推出。我可以说,保护数字通信的漫长时间线告诉我们世界对互联网信息安全的重视程度。
Jason:
感谢您指出这一点,因为想想真是不可思议。自从证书概念提出以来,四十年过去了,我们仍然没有生活在一个所有敏感流量(更不用说所有网络流量)都被加密的世界里。不久前我们还在争论是否到处使用HTTPS有意义。现在看起来有点傻。当然,我们应该优先考虑安全。
关键是,我们仍然经常让安全的工作变得比应有的更困难,因为做错的成本在您成为攻击受害者之前是看不见的。如果您从未受到攻击,那么也许性能优于安全是有意义的——成本/效益倾向于那个方向。一旦您遭受攻击,成本/效益就会迅速向另一个方向倾斜。
从您的角度来看,安全领域还有哪些方面没有像您预期的那样改变?例如,我在之前的文章中指出,令我惊讶的是,内存相关的漏洞仍然在CWE最危险的25个漏洞列表中名列前茅。
回顾您在这个领域的所有学习和经历,还有什么让您感到惊讶?
Loren:
关于混合HTTPS作为进步如何演变的例子,这是一个很好的观察,这与科学进步的方式类似。人们很容易安于现状,所以当新想法被提出时,人们分成阵营,起初会有激烈的挑战。这些严厉的批评可以帮助完善新想法,除非反对意见变得 overwhelming。老派通常过分捍卫他们的旧方式太久,直到最终 resistance collapses,新想法迅速获得广泛接受。
针对您的具体问题:我可以毫不夸张地说,一切都让我感到惊讶。我最大的收获是逐渐认识到软件是一项非常人性化的工作,那些主观因素几乎完全涵盖了工作的技术方面。别误会:技术也至关重要,但我们只能通过自己的经验和优先级来创建或评估技术。这是一个很大很难的话题,我还没有找到好的方式来谈论它,但这就是我在被问及为什么在实践中实施网络连接安全花了这么长时间时所暗示的。
几年前,我通过Dan Ariely的工作了解了行为经济学,这让我大开眼界。经济学总是假设市场上的人是理性的行为者,最大化自身利益——但如果你做实验,结果发现这几乎从来不是真的。事实证明,广告和许多商业策略长期以来一直在利用人类思维的怪癖。
最具挑战性的是,我们很难看到自己身上的这些缺点,尽管科学告诉我们没有人能免疫。我会说,软件人员,在可以想象的最逻辑的工作类别中,特别无法看到他们不那么客观的决定和行动。所以,虽然让安全成为高度优先事项似乎完全合理,但现实非常不同,这不应该让我们感到惊讶。
我推测,人们进化到非常精确地要求他们能逃脱的最低安全程度(显然风险厌恶程度因人而异),而这正是我们今天所拥有的。作为安全专业人士,我们高度重视更好的安全,不可避免地与那些与我们看法不同的人发生冲突。这类似于 endowment effect,我们对自己拥有的物品估价很高,而如果别人拥有同样的物品,估价就会低一些。我还没有想出如何应用这一点来改善情况,但当我看到令人困惑的事情时,这是我首先考虑解释的事情之一。
为了让这种 wild speculation 落地,考虑一些遗留计算机和软件有多老的极端情况。根据美国政府问责办公室(2016年)的数据,许多关键系统已经超过五十年历史,其中一些没有具体的更新计划。这种“没坏就别修”的心态非常强烈。例如,如果一个系统已经55年了,再坚持56年似乎几乎是合理的。如果说有什么的话,似乎系统功能越关键,替换它就越令人望而生畏。这意味着通常最难处理最需要现代化的最重要系统。
安全可能也被类似地看待:如果我们现有的代码已经存活了这么久,为什么要折腾它?鉴于我们无法找到所有安全漏洞,我们永远不知道我们实际承担了多少风险,所以现状一天天地延续下去,ad infinitum。
虽然有些人可能认为这个想法很疯狂,但我惊讶的是没有人(据我所知)曾经尝试过销售提供任何质量保证的软件。否认适销性是对产品设定的最低可能标准:我必须相信至少有可能做得更好。你会认为有人会尝试以某种保证来销售安全——但没有。我只能假设这意味着市场为零。也许,就像防野熊一样,人们满足于 simply run faster than the other potential victims。
Jason:
我见过要求漏洞响应时间的合同,所以我知道这是可以做到的。在安全保证方面,我不确定该怎么做。你可以保证正常运行时间,但如何确保没有安全问题?或者你可以保证数据的隐私(这已经在隐私声明中部分实现了),但公司已经面临丢失数据的责任。在几乎不可避免的违规情况下,他们是否愿意增加更多成本?
如果我们从经济学的角度谈论,我认为问题可以很容易地总结为:敏感数据对窃贼的价值比保护它的公司更高。想一想。除了网络安全,我们生活的任何其他领域还有这种动态吗?
我最近参加了Motorola Mobility的CISO Richard Rush的演讲,他解释说你的数据在暗网上的价值从22美元(信用卡号)到1000美元(医疗记录)不等。与此同时,Facebook将你的个人数据估价在0.20美元到0.40美元之间。这是一个巨大的价值差异,影响了公司可以花多少钱保护你的数据,而攻击者愿意花多少钱窃取它。
网络犯罪的成本是每分钟700万美元,并以指数级速度增长,而网络安全预算继续以线性速度增长。我交谈过的每一位CISO都觉得自己落后了,并且继续失去阵地。
在这种环境下,好人很难赢。攻击是大规模发起的,任何自动化攻击只需要很小的命中率就能为攻击者带来正投资回报。因此,违规变得越来越普遍,成功违规的比率正在增加。
最大的问题是,下一步是什么?竞争环境不公平,而且越来越不公平。我们每年在安全上花费更多,但仍然落后。我们可以从哪里寻找解决方案?
Loren:
让我明确一点,我从未见过这种安全增强的产品合同或保证产品,但我发现它在主流市场中的缺失是显著的。我非常相信主动安全(“左移”)的价值,而从操作系统制造商推卸责任开始的模型与提前投资安全的激励相反。从客户的角度来看,如果我们认真构建更安全的系统,那么期望为此付费是公平的。
如果你要求一家大型操作系统制造商为更安全版本的产品付费,我猜他们不会认真对待你。然而,政府确实有巨大的影响力,显然他们没有尝试过要求:所以他们要么没有非常努力,要么我的想法完全是疯狂的。即使这是一个疯狂的想法,我也不明白为什么至少不值得探索。有很多关于遥远军事研发的报告——为什么没有更安全的软件?我希望很清楚我根本不是