GPG 与我 (2015)
GPG and Me (2015)

原始链接: https://moxie.org/2015/02/24/gpg-and-me.html

作者发现自己越来越不愿回复来自陌生人的GPG加密邮件,尽管他们已经公开了自己的密钥。这并非因为邮件内容——这些邮件是真诚的,并非恶意——而是因为作者逐渐意识到*谁*会选择使用GPG。这表明对方拥抱了一个复杂的系统来解决日常隐私问题,而作者现在认为这是“一条哲学上的死路”。 GPG诞生于20世纪90年代普及加密的愿景,它优先考虑了力量和灵活性,而非易用性。它的复杂性——以一万六千字的说明书为例——阻碍了它的广泛采用,在二十年后,用户群仍然出乎意料地小。此外,这项技术本身已经过时,缺乏前向保密等现代安全特性,并被大量的历史遗留问题所困扰。 虽然GPG在特定用例中仍然有价值,例如记者与消息来源的通信,但其固有的困难使其无法实现真正普遍的加密。作者认为现在是时候超越GPG了,从它的局限性中学习,并在未来的隐私工具中优先考虑简单性——理想情况下,可以完全卸载GPG。

这个Hacker News讨论围绕着GPG(GNU隐私卫士)在现代安全实践中持续存在但令人沮丧的问题。尽管Sigstore、Age和minisign等新工具出现,用户仍然难以完全取代GPG,因为它在各种系统中的事实标准化——Linux软件包签名、Maven软件包发布,甚至与YubiKey等硬件的兼容性。 虽然替代方案在特定领域提供了改进(例如Age用于密码管理),但它们缺乏GPG的广泛支持和既定基础设施。人们担心如果社区分裂到多个新标准中,会造成碎片化。 一个关键点是用户控制:GPG允许个人管理自己的密钥,这与许多容易受到政府请求影响的应用程序加密解决方案不同。然而,GPG的复杂性也得到了承认,一些人认为专用工具更可取。最终,共识是,虽然替代方案受欢迎,但“不用PGP”目前不现实。
相关文章

原文

I receive a fair amount of email from strangers. My email address is public, which doesn’t seem to be a popular choice these days, but I’ve received enough inspiring correspondence over the years to leave it be.

When I receive a GPG encrypted email from a stranger, though, I immediately get the feeling that I don’t want to read it. Sometimes I actually contemplate creating a filter for them so that they bypass my inbox entirely, but for now I sigh, unlock my key, start reading, and – with a faint glimmer of hope – am typically disappointed.

I didn’t start out thinking this way. After all, my website even has my GPG key posted under my email address. It’s a feeling that has slowly crept up on me over the past decade, but I didn’t immediately understand where it came from. There’s no obvious unifying theme to the content of these emails, and they’re always written in earnest – not spam, or some form of harassment.

Eventually I realized that when I receive a GPG encrypted email, it simply means that the email was written by someone who would voluntarily use GPG. I don’t mean someone who cares about privacy, because I think we all care about privacy. There just seems to be something particular about people who try GPG and conclude that it’s a realistic path to introducing private communication in their lives for casual correspondence with strangers.

Increasingly, it’s a club that I don’t want to belong to anymore.

A philosophical dead end

In 1997, at the dawn of the internet’s potential, the working hypothesis for privacy enhancing technology was simple: we’d develop really flexible power tools for ourselves, and then teach everyone to be like us. Everyone sending messages to each other would just need to understand the basic principles of cryptography.

GPG is the result of that origin story. Instead of developing opinionated software with a simple interface, GPG was written to be as powerful and flexible as possible. It’s up to the user whether the underlying cipher is SERPENT or IDEA or TwoFish. The GnuPG man page is over sixteen thousand words long; for comparison, the novel Fahrenheit 451 is only 40k words.

Worse, it turns out that nobody else found all this stuff to be fascinating. Even though GPG has been around for almost 20 years, there are only ~50,000 keys in the “strong set,” and less than 4 million keys have ever been published to the SKS keyserver pool ever. By today’s standards, that’s a shockingly small user base for a month of activity, much less 20 years.

A technology dead end

In addition to the design philosophy, the technology itself is also a product of that era. As Matthew Green has noted, “poking through an OpenPGP implementation is like visiting a museum of 1990s crypto.” The protocol reflects layers of cruft built up over the 20 years that it took for cryptography (and software engineering) to really come of age, and the fundamental architecture of PGP also leaves no room for now critical concepts like forward secrecy.

All of this baggage has been distilled into a ballooning penumbra of OpenPGP specifications and notes so prolific that the entire picture is almost impossible to grasp. Even projects that are engaged in the process of writing a simplified experience on top of GPG suffer from this legacy: Mailpile had to write 1400 lines of python code just to interface with a native GnuPG installation for basic operations, and it still isn’t rock solid.

What we have

Today, journalists use GPG to communicate with sources securely, activists use it to coordinate world wide, and software companies use it to help secure their infrastructure. Some really heroic people have put in an enormous amount of effort to get us here, at substantial personal cost, and with little support.

Looking forward, however, I think of GPG as a glorious experiment that has run its course. The journalists who depend on it struggle with it and often mess up (“I send you the private key to communicate privately, right?”), the activists who use it do so relatively sparingly (“wait, this thing wants my finger print?”), and no other sane person is willing to use it by default. Even the projects that attempt to use it as a dependency struggle.

These are deep structural problems. GPG isn’t the thing that’s going to take us to ubiquitous end to end encryption, and if it were, it’d be kind of a shame to finally get there with 1990’s cryptography. If there’s any good news, it’s that GPG’s minimal install base means we aren’t locked in to this madness, and can start fresh with a different design philosophy. When we do, let’s use GPG as a warning for our new experiments, and remember that “innovation is saying ‘no’ to 1000 things.”

In the 1990s, I was excited about the future, and I dreamed of a world where everyone would install GPG. Now I’m still excited about the future, but I dream of a world where I can uninstall it.

联系我们 contact @ memedata.com