公民学很无聊。所以,让我们加密一些东西!
IT 专业人士可以被动地忍受政治解决方案,或者参与到过程中以实现更好的结果。
这里提出的建议应该会让每个人都满意。执法部门将有办法访问通信,前提是他们能够说服法官这是必要的。重要的通信将能够继续使用与今天相同的加密强度。原本不需要加密的通信将能够使用足够的加密来防止琐碎的窃听,但如果法官认为有必要,则不会有足够强大的加密来阻止暴力破解。
不受保护的自由软件的代价
现在是 FOSS 维护者获得一些赞赏的时候了
在那些大人物设法解决问题之前,我们只需要尽我们所能来处理事情。我们能期望的最好的结果,当然是说服公司、机构和政府,为那些维护这些组织绝对依赖的软件的人每月开支票,这将是一个非常好的主意。
自由和开源软件 - 以及其他市场失灵
开源与其说是目标,不如说是达到目的的手段。
开源与其说是目标本身,不如说是达到目的的手段,这个目的是自由:修复损坏事物的自由,免受那些认为他们可以紧紧抓住源代码并利用我们对它的无知作为武器来迫使我们所有人付费并运行 Windows Vista 的人的自由。但是 FOSS 运动已经赢得了它想要的东西,无论老年人多么梦想他们作为年轻革命者的光辉岁月,它都不会回来了,因为 2024 年 IT 行业的挫败感和愤怒与 1991 年的完全不同。
不要“考虑互联网!”
没有人权是绝对的。
我不禁注意到很少有女性赞同电子隐私和匿名的绝对主义观点。难道只有那些在最容易的设置下玩生活的人才觉得不受限制的隐私和匿名是个好主意吗?
CSRB 的第一部作品
关于网络安全审查委员会 Log4j 事件报告的评论
我们 FOSS 人员需要更好地记录设计决策,以一种合适的方式和地点,以便合适的人员在对我们的代码做出不明智或完全愚蠢的事情之前找到它、阅读它并理解它。
线性地址空间
在任何速度下都不安全
线性地址空间作为一个概念,在任何速度下都不安全,并且它非常需要强制性的 CHERI 安全带。但更好的做法是完全摆脱线性地址空间,回到未来,就像 30 多年前在 Rational R1000 计算机中成功实现的那样。
监控廉价到无法计量
阻止老大哥将需要对整个系统进行昂贵的改革。
IT 书呆子倾向于为各种问题找到技术解决方案?经济、政治、社会学等等。大多数时候,这些解决方案不会使问题变得更糟,但是当问题本质上是纯经济性质时,只有影响局势经济状况的解决方案才有可能奏效。当根本问题是监控廉价到无法计量时,密码学和智能编程都无法稍微推动一下。
软件行业仍然是问题
IT 专业责任制(也)早就应该实施了
IT 工程师早就应该像几乎所有其他工程专业一样承担专业责任了。在您告诉我这是不可能的之前,请研究一下电力、飞机、起重机、火车、轮船、汽车、电梯、食品加工、建筑物以及驾驶汽车等行业是如何实现这一点的。
哪里出错了?
为什么我们需要一个 IT 事故调查委员会
政府应该出于与船舶、铁路、飞机以及许多情况下汽车相同的原因,设立 IT 事故调查委员会。丹麦设立铁路事故调查委员会是因为太多人因蒸汽火车而伤残和丧生。英国的航空事故调查处成立的原因也大致相同,但具体而言,是因为当航空公司自己调查时,没有人变得更聪明。这听起来有点熟悉吗?
更多加密意味着更少隐私
保持电子隐私需要更多的政治参与。
当爱德华·斯诺登向世界公开互联网上的几乎所有流量都被 NSA、GCHQ(英国政府通信总部)以及其他各国的秘密部门收集和搜索时,IT 和网络社区感到愤怒和背叛。
HTTP/2.0 - IETF 在敷衍了事
糟糕的协议,糟糕的政治
从长远来看,1989 年最令人难忘的事件可能是蒂姆·伯纳斯-李破解了 HTTP 协议,并将结果命名为“万维网”。蒂姆的 HTTP 协议运行在 10Mbit/s 的以太网和同轴电缆上,他的计算机是一台时钟频率为 25 MHz 的 NeXT Cube。26 年后,我的笔记本电脑 CPU 速度快了一百倍,RAM 是蒂姆的机器的一千倍,但 HTTP 协议仍然相同。
高质量软件需要花钱 - Heartbleed 是免费的
如何为 FOSS 筹集资金
世界运行在自由和开源软件(简称 FOSS)之上,并且在某种程度上,它已可预测地渗透到世界上几乎任何基于软件的产品中。
请将 OpenSSL 从痛苦中解脱出来
OpenSSL 必须消亡,因为它永远不会变得更好。
OpenSSL 软件包大约有 300,000 行代码,这意味着现在可能仍然存在大约 299 个错误,因为允许几乎任何人检索他们通常不应该访问的内部状态的 Heartbleed 漏洞已被修复。
以中心轮为中心取得成功
非我发明综合症并非 IT 世界独有。
当我第一次读到 Affordable Care Act 发起的网站 HealthCare.gov 创建成本为 5 亿美元的说法时,我不相信这个数字。没有办法让一个网站花费那么多钱。但实际数字似乎并没有低一个数量级,而且据我了解的报告,该网站在高成本方面在性能、功能或总体质量方面并没有太多可展示的东西。
更多加密不是解决方案
密码学作为隐私只有在双方都真诚地对待它时才有效。
最近对互联网流量的拖网式监控的曝光引发了一些回应,这些回应是“更多加密是解决方案”这一通用公式的变体。事实并非如此。事实上,更多的加密可能只会使隐私危机比现在更糟。
迷失在集市中的一代人
只有当有人对此负责时,才会发生质量。
十三年前,埃里克·雷蒙德的著作《大教堂与集市》(O’Reilly Media,2001 年)重新定义了我们的词汇,并且几乎预示着由于新的草根开源软件开发运动,瀑布模型和大型软件公司的终结。我发现这本书发人深省,但它并没有说服我。另一方面,由于我深入参与开源,我不禁想到如果他是对的,那将是很好的。
LinkedIn 密码泄露:给他们的密码加盐
如果计算密码哈希值不需要一整秒,那就太弱了。
650 万个未加盐的 SHA1 哈希 LinkedIn 密码已出现在犯罪地下。这句话中有两个词应该引起 LinkedIn 无尽的担忧:“未加盐”和“SHA1”。
我的编译器不理解我
在我们的编程语言赶上来之前,代码将充满恐怖。
直到最近,许多聪明的人才找到听众,对我们如何编码以及编码什么提出合理的观点。各种同事多年来一直在敲锣打鼓,试图确保关于编程的明智见解深入人心。本刊和其他出版物上关于编码风格的文章提供了此类倡导的进一步例子。
超维焦油坑
做一个猜测,将数字翻倍,然后移动到下一个更大的时间单位。
当我四分之一个多世纪前开始从事计算机工作时,一位和蔼的长者同事给了我一个经验法则,用于估计我何时才能正确完成一项任务:做一个猜测,将数字翻倍,然后移动到下一个更大的时间单位。这条规则以一种非常有趣的方式缩放任务:一分钟的任务会膨胀 120 倍,需要两个小时才能完成。一小时的工作会膨胀“仅” 48 倍,需要两天才能完成,而一天的工作会增长 14 倍,需要两周才能完成。
软件行业是问题
软件责任法的时候到了。
27 年前,肯·汤普森提出了一个新的问题,这个问题的产生源于思考,并且致力于这样一个命题:那些信任计算机的人们陷入了深深的麻烦之中。我当然指的是汤普森的图灵奖演讲“关于信任信任的反思”。除非您能用心记住这篇文章,否则您可能需要花点时间阅读一下,如果可能的话。
最昂贵的单字节错误
肯、丹尼斯和布莱恩在选择以 NUL 结尾的文本字符串时是否做错了?
IT 既驱动又实施了现代西式经济。因此,我们经常看到有关与 IT 错误相关的惊人巨额资金的头条新闻。哪个 IT 或 CS 决策导致了最昂贵的错误?
一秒战争(你会在什么时间死去?)
随着越来越多的系统关注秒和亚秒级的时间,找到闰秒问题的持久解决方案变得越来越紧迫。
由于一项主要在公众视线之下运作的秘密阴谋,您的死亡时间可能会比目前预期的晚一分钟。但是不要期望活得更久,除非您碰巧负责大型计算机网络中的时间同步,在这种情况下,这次政变将每隔一年左右稍微降低您的压力水平。我们正在谈论废除闰秒,这是 40 年前添加的一个粗糙的黑客行为,目的是掩盖行星与量子力学现象相比是糟糕的时钟这一事实。
自带代码 (已计数 1,342 次)
为什么我们不能都使用标准库来实现常用的算法?
尽管很少清晰地表达出来,甚至根本没有表达出来,但良好软件工程的基石思想之一是重用代码库,其中包含常用算法和功能的易于访问的实现。这种沉默寡言的原因可能是因为没有办法简洁地说明它,而不会听起来像对奥卡姆剃刀的廉价模仿:在少数人就足够的情况下,用几个人来做是毫无意义的。
先生,请远离 ASR-33!
为了推动编程语言的发展,我们需要摆脱 ASCII 的束缚。
我的 Varnish 软件的一个调皮的细节是,配置是用特定领域的语言编写的,该语言被转换为 C 源代码,编译成共享库,并以硬件速度执行。这显然使我成为一名编程语言语法设计师,同样显然,我已经开始更多地思考我们如何在这些语法中表达自己。
你做错了
认为您已经掌握了服务器性能的艺术?再想想。
如果我声称一种被认为“最优”长达 46 年的算法,这种算法已被像 Knuth 这样的天才进行了极其详细的分析,并在世界上所有计算机科学课程中教授过,可以优化到运行速度快 10 倍,您会相信我吗?几年前,我加入了一些有趣的公司,并成为一个名为 Varnish 的开源 HTTP 加速器的作者,Varnish 基本上是一个放在慢速 Web 服务器前面的 HTTP 缓存。