13 ms·
It's surprising to me that anyone could think that email signing was even vaguely in the ballpark of being comprehensible to the ordinary person.
by andrewstuart 8y ago
It's surprising to me that anyone could think that email signing was even vaguely in the ballpark of being comprehensible to the ordinary person.
- droithomme 8y agoIt can be a pain even for the dedicated expert.
- mikekchar 8y agoConceptually it's not hard at all. "When you send an email there is no proof that it came from you. It is easy to fake emails. When you press this button, it will 'digitally sign' the email. Now people can tell that it comes from you." It's the key exchange that's difficult. However, as the blog rightly points out, having companies sign their emails would be a massive step in the right direction. Every ordinary person uses an email service. If that email service handled the key exchange for those companies the it would be truly wonderful. It doesn't even need to be that difficult given that these companies almost certainly have certificates for their websites. Then all the service provider has to do is put this nice message when delivering the email: "This email was not signed by the company that it claims to be sent from. Beware." Not in any way difficult for an ordinary person to understand.
- duiker101 8y agoI think even conceptually it's hard. Your email address is your proof. You have to use a password to access it so it must mean only you can send emails with it.
- stephenr 8y agoI can write your name as the sender on a physical letter and send it, and I can do the same thing with an email. There, conceptually it's explained, to anyone who has any concept of what "writing" is.
- mehrdadn 8y agoI think the difference is people can envision how someone can write a fake sender on snail mail but they can't envision how it's done on email -- they need to log in first, after all. (Also I wonder if using the word "signature" only makes it harder to explain. Like, trying to explain to someone how an analog signature proves your identity. Because, well, it doesn't.)
- pilsetnieks 8y ago> they can't envision how it's done on email -- they need to log in first, after all By now every single email user with an email address that has been exposed to the internet has received untold amounts of spam emails with their own address spoofed as the sender. The only question is if they've ever noticed it.
- duiker101 8y agoProbably not, if they use any decent email provider 99% of spam gets correctly filtered and you never really see it unless you look in the spam folder, which most people don't anyway. Also, I don't think I ever received an email with the sender as one of my email addresses.
- hopler 8y agoNot really. I get a steady stream of replies to me from ignorant users who reply to "Joe job" spam, as do everyone I know. It's the most common way someone thinks "I've been hacked" when they get the fallout from one of these "Joe jobs"
- usrusr 8y agoWhat you are saying, put into more provocative words: email world be safer now if, from the beginning, every email client had a big, friendly button "send from different address". In the years of earthly mass adaption it would have been colloquially called "the Bill Gates button". It certainly would not be hard to explain the value of signatures in that timeline.
- andrewstuart 8y agoThis is a deeply ironic reply - is it intended to be? There's almost no words there that would gel into comprehension in any way for average Joe and Jill. I don't want this to come across the wrong way - but are you a Linux engineer/admin? I think when someone has deeply understood deeply technical things for a very long time, they lose touch with just how arcane their knowledge is and how much of a real expert they are - skyscrapers above the ordinary level of knowledge. This state leads them to think that what is obvious to them can't be hard for others to understand.
- mehrdadn 8y ago> are you a Linux engineer/admin? Reminds me of yesterday: https://news.ycombinator.com/item?id=19357573 https://news.ycombinator.com/item?id=19357573
- edelans 8y agoalso known as "curse of knowledge". See https://en.wikipedia.org/wiki/Curse_of_knowledge https://en.wikipedia.org/wiki/Curse_of_knowledge
- beobab 8y agoInteresting subject. I am now considering whether to do a video set "JT learns X", where a qualified developer (me) takes a subject I know nothing about, and video my learning, and see all the "well, this makes no sense" -> "how could I even have misunderstood that, it's so simple" moments. Would that be of interest to anyone other than myself?
- hrktb 8y agoThis could be interesting. Putting a stress on the "qualified developer" part would critical. We are so used to not understanding things (new frameworks every week, new code base to grok, stuff we wrote 3 weeks ago that is just spaghetti), that I think it won't be representative of how most people would enter a subject. I saw this when looking at other people learning languages, where some of them had a "I don't understand anything" reaction and just stop there, because it's just not a normal situation to them ('growing up' was part of securing that comfort zone for a lot of people)
- stock_toaster 8y ago> However, as the blog rightly points out, having companies sign their emails would be a massive step in the right direction. Isn't this what DKIM was supposed to be?
- gsich 8y agoYes. But my guess is that even wrong/no signatures will land in your inbox. For Thunderbird there is an addon which will show you the validity of DKIM signatures https://addons.thunderbird.net/thunderbird/addon/dkim-verifier/ https://addons.thunderbird.net/thunderbird/addon/dkim-verifi...
- repolfx 8y ago"It depends" There is a sister standard to DKIM called DMARC that lets a domain publish instructions for what to do if unsigned emails are received. It can run in allow, report and deny mode. Report is useful, it asks the recipient to send it back to the domain which is helpful for large networks that may have many people and services sending mail on their behalf. You can use this tool to compare gmail.com (ignore failed signatures) vs google.com (reject) https://dmarcian.com/dmarc-inspector/ https://dmarcian.com/dmarc-inspector/ Thus google.com i.e. Google employee / service email is protected from From header forgery, but consumer Gmail isn't (too many people sending mail from non-Google SMTP servers).
- Vendan 8y agoIt's worth noting that ignore/report is for the email server it's destined for. The server is supposed to send reports back to google (mailauth-reports@google.com specifically) about the failures and such.
- pilsetnieks 8y agoDKIM is for an entire domain, not individual addresses, though.
- Vendan 8y ago
- atoav 8y agoI get what signing is — but to the ordinary person it solves a problem they didn’t even knew they had. When you explain it like you did my first question would be why emails are not signed automatically if it is just about the press of a button? With things like signal or whatsapp you get encryption and signing automatically and everybody uses it. Why don’t people use signing with email then? Because it is not the default, not built in and not the standard everywhere. Blaming those people for it is wrong. Blame those who didn’t manage to implement the standards and stand in the way of making it the default
- tialaramex 8y agoIn either Signal or WhatsApp you have no verification whatsoever of the true sender unless you meet them out of band (preferably in person) and compare codes that summarise the public key identity value. Signal does make a bigger deal about trying to get you to verify, but in practice for both systems casual users don't do it. Most of my Signal contacts aren't verified. Without this step an attacker can MITM these protocols because the identity problem is hard and cannot be waved away.
- smichel17 8y agoMost of my signal contracts are also unverified (my nerd friends are). However, I am notified if their key changes, so unless our connection was MITM'd on first contact, I would at least have a warning and know to be more suspicious. Usually I'll follow up with people out of band to verify that they got a new phone or something. This happens infrequently enough that it is not a hardship. I'd prefer to verify all of my contacts but, given my security model, this is good enough and a huge step up from email.
- Frondo 8y agoAll of my Signal/Telegram/WhatsApp contacts are unverified in the app itself, but almost all of them are de facto verified by other means; we plan meeting up at bars and I know who I'm chatting with because the person I expect shows up. Or we send emails or communications via other means and the conversations match. I don't need to verify the code because everything else about the communication matches.
- contravariant 8y agoTo some extent this is happening, although not on the level of individual email addresses, rather it's the domains that are now checked (where possible), and services like Gmail warn when an email seems to come from a different origin.
- ngrilly 8y agoWe already have DKIM which does exactly what you describe.
- pilsetnieks 8y agoDKIM proves that it's someone with access to your domain, not you specifically.
- ngrilly 8y agoYes, and this is in line with the article we are commenting, which talks mostly about authentifying the sending organisations and not individuals.
- NoGravitas 8y agoActually it proves even less than that --- it proves that it's someone with access to the domain that it was sent from. And if that's not amazon.com, but instead amazon-account-services.ru, then DKIM will happily report that the message is valid.
- coldtea 8y ago>Conceptually it's not hard at all. "When you send an email there is no proof that it came from you. It is easy to fake emails. When you press this button, it will 'digitally sign' the email. Now people can tell that it comes from you." So, can they still my signature without me even knowing? Wouldn't that make it worse for the recipients, then, getting signed messages that give them a false sense of security? And what is this PGP thing? PGP Keychain? Hey, I updated my computer and I made a new key, and I can't read the encrypted messages they sent me anymore.
- rjmunro 8y agoThis is not about encryption, only signing. When PayPal or your bank or another large organisation send you an email it should be signed. Then you can verify it is from them. Encryption would be a nice to have, but, while it uses the same technology, it's a whole different can of worms.
- coldtea 8y ago>When PayPal or your bank or another large organisation send you an email it should be signed. Then you can verify it is from them. The problem for the layman user though is that PayPals.com (fraudulent) can also sign their emails -- and they'd be conditioned to equate "signed = legit" (and can easily miss misspells, alternative domains, etc).
- BeetleB 8y agopaypals.com's signature would likely not be in any of the online keyrings my mail program is supposed to query.
- loup-vaillant 8y agoI see only one way around that, and it's prohibitively expensive: have the user assign aliases to public key signatures, and mark everything else with a big scary "UNKNOWN". And I'm not even sure it would work: many users would just click the "yes I know them, please trust" button on first use. An alternative would have "unknown" be a little, not very scary warning (with easy TOFU), and the "this handle looks like this other one, they may be trying to scam you" blinking red warning. Then it would be on the developers to detect typos and look alikes.
- pmoriarty 8y ago"It's the key exchange that's difficult." That's just the tip of the iceberg in difficulty. There's also: 0 - understanding the web of trust 1 - verifying that the key you exchanged actually belongs to the person/entity it purports to be from (ie. verifying identities of keyholders and verifying key fingerprints over an out-of-band communications channel). 2 - keeping your own secret keys secure 3 - making and keeping offline backups of your keys 4 - understanding why, how, and when to issue and use key revocations
- BeetleB 8y agoDo you need to understand any of that for SSL on the Web? What the person is proposing is comparable (albeit only in one direction). The user doesn't need to understand any of this. The user does not need to sign his emails. He just needs a mail software that can handle signatures from well known organizations, and can warn you when the signature doesn't match. Just like my browser puts a green or red symbol when there's a problem with the certificate. Everything you list is mostly orthogonal to the submission.
- freeone3000 8y agoSSL on the web verifies that the sender is who they've verified to a third party that they are. It does not verify that they're trustworthy in any way, shape, or form. What makes an organization "well-known" enough to be on this list? What happens if an organization is not on this list? What if I'm a completely-legitimate (S-Corp paperwork filed!) organization called amazorn.com? And what problem does this solve that the current DMARC system does not?
- jerf 8y agoFor this specific task, we can collapse a lot of that on the web. Adding a gpg key ring or some other suitable structure to the .well-known URL list [1] wouldn't be that big a deal. This is easier than solving the problem of securing all emails. For verifying signatures you don't need any keys of your own, so 2 & 3 are irrelevant, and the .well-known URL can have revocations in it too. But it's still plenty hard to ensure that we don't show an email as validated as definitely being from amazorn.com, along with some other funny business that could be pulled. It does tend to get the problem down to an already existing set of problems, though. It could also be the "killer app" for GPG emails. [1]: https://tools.ietf.org/html/rfc5785 https://tools.ietf.org/html/rfc5785
- huhtenberg 8y ago> It is easy to fake emails. "Just as it's easy to fake regular mail, but it's never been a real issue for anyone. You don't really see me notarizing every mail I sent, do you?"
- otikik 8y ago> When you press this button, That has not been my experience signing anything. I cant judge about the math behind the encryption, but the interface side of things has always seemed ... lacking. Use PGP for this. No, now it is called GPG instead. We thought it was funny. Pass this optional command line argument if you want extra security. Why would we want that as a default?. Enter a passphrase - it is recommended! Except no one uses them. Or they do. Have you installed gpg-agent? Ok so you have a public key now. Before you send stuff to this person you should celebrate a Key ceremony with them and interchange keys physically. Now add your key to your program. Ok so your commits are signed using your key now. If you want to sign a tag, however, you will need to pass this extra flag when creating the tag. To be fair, that last one is mostly git CLI being consistently inconsistent [1]. But it still another spoke on the wheels. Encryption needs to be easy in order to be mainstream. Otherwise it will be relegated to the minority which can jump through its interface hoops. [1] Yes, I am going to be eaten by a hobgoblin any second now http://stevelosh.com/blog/2013/04/git-koans/#the-hobgoblin http://stevelosh.com/blog/2013/04/git-koans/#the-hobgoblin
- rjmunro 8y agoYou don't need to encrypt or sign anything. Organisations who email you like your bank and Paypal need to. You just need your email client to show a tick when it has verified a signature, which many already do with S/MIME.
- c22 8y agoIsn't this what DMARC is supposed to give us? Big companies like my bank and paypal run their own domains so they can use SPF/DKIM to authenticate their communications (and TLS to protect them in transit). Individually signed emails are only really useful for individuals.
- rakoo 8y agoNo, because SPF/DKIM/DMARC only says that the mail server at bank.com did send this email. What I want to know as a recipient is if it was the correct bank.com, and not baank.com. Because baank.com can also have SPF/DKIM/DMARC.
- jonathanstrange 8y agoFirst, I generally prefer if people do not have a proof that I sent the email. Second, I'd be worried that someone stole my private keys and impersonated me in those cases when signing makes sense. Endpoint security is almost nonexistent with current PCs, no matter how hard you try to harden your system. In the end, the risk of being impersonated for malicious purposes outweighs the advantages of signing.
- hopler 8y agoProof is good for you, as it protects you from friendly recipients from following instructions that hurt you from imposters. If you want to deny your own actual actions to an unfriendly recipient, refusing to sign your emails won't help. It's not symmetric.
- Vendan 8y agoThis is a thing: DKIM. Lets email servers and domain owners attest that a message was sent by them. For instance, gmail can apply a DKIM to all outbound emails, to verify that it's sent by gmail, and that they authenticated the person that it was sent as. For example, here's one of gmail's DKIM public keys: k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAviPGBk4ZB64UfSqWyAicdR7lodhytae+EYRQVtKDhM+1mXjEqRtP/pDT3sBhazkmA48n2k5NJUyMEoO8nc2r6sUA+/Dom5jRBZp6qDKJOwjJ5R/OpHamlRG+YRJQqRtqEgSiJWG7h7efGYWmh4URhFM9k9+rmG/CwCgwx7Et+c8OMlngaLl04/bPmfpjdEyLWyNimk761CX6KymzYiRDNz1MOJOJ7OzFaS4PFbVLn0m5mf0HVNtBpPwWuCNvaFVflUYxEyblbB6h/oWOPGbzoSgtRA47SHV53SwZjIsVpbq4LxUW9IxAEwYzGcSgZ4n5Q8X8TndowsDUzoccPFGhdwIDAQAB If you get email from a domain that uses DKIM (you can use DMARC to tell), then you can reject that email if it's not signed, or if the signature is invalid. Companies can set this up on their mail servers, so it just works for every email client effortlessly.
- jccooper 8y agoDKIM can verify the domain, but most email scams are already done from cousin domains, which DKIM doesn't solve... and will happily report as valid, providing the scammers have set it up on their domain. Organization signing would be a whole different thing. Something like Extended Validation for SSL/TLS.
- massaman_yams 8y agoBIMI is... sort of what you're looking for. https://authindicators.github.io/rfc-brand-indicators-for-message-identification/ https://authindicators.github.io/rfc-brand-indicators-for-me...
- rstuart4133 8y ago> This is a thing: DKIM. I'm with you, purely for selfish reasons. The first thing I do when I suspect phishing is look in the raw email source for the DKIM signature. It would be trivial to expose the DKIM signature in the UI. Things like whether the signature was good, what domain(s) signed the email, and what was signed would be very handy.
- Carpetsmoker 8y agoAlmost no one comprehends https either. Yet it seems to work well enough to protect people. The user-visible part of this is very limited. Remember, no one is expected to sign their own emails: just verify that the signature is correct (which the software will do). It's not that different from verifying a handwritten signature.
- coldtea 8y ago>Almost no one comprehends https either. Yet it seems to work well enough to protect people. That's because it's entirely up to site operators (and browser/os vendors to add trusted registries) and not to the user. If it was to the end user to install something and manage certs for https, it wouldn't work at all...
- detaro 8y agoPrivate use? yeah, not so great with the current state of software for it. Company environments: that's what sysadmins are for. You see the occasional company where everything is signed with S/MIME.
- pard68 8y agoArticle author seems to be suggesting that Gmail et al. manage the key signing though, so still the same as https in that regard.
- seanwilson 8y ago> Almost no one comprehends https either. Yet it seems to work well enough to protect people. HTTPS is notoriously difficult for users to understand. Most people don't even know what a server is. At least with emails you have analogies to do with sending paper letters to letterboxes that map pretty well. I think the big push for HTTPS from the last few years is in part because Google claim they now give you an SEO benefit from it, HTTP2 (i.e. for better performance) requires it and Google + Firefox show more scary user visible warnings than they used to for non-HTTPS sites.
- jhasse 8y agoBut HTTPS equivalent for email would be DKIM, not PGP.
- chrischen 8y agoNo reason why it cannot work like https. It’s uo to email clients to build user-facing support and they simply do not.
- blablabla123 8y agoActually there are some solutions which work almost automagically. For instance if you combine Apple Mail with GPGTools. By default it signs your messages. That's quite a contrast to Thunderbird with Enigma which really feels just like a UI for gpg.
- tmalsburg2 8y agoThat's why I stopped signing my e-mails. Too many people got confused about these strange attachements that they couldn't open in Word.
- hopler 8y agoYes, mail software needs to support it first. Gmail does, at least for hosted domains.
- black-tea 8y agoThat's sadly why I had to stop inline quoting and use the retarded bottom quoting style. Some readers actually stopped showing my message at all because they "cleverly" hid the very quote that their own program puts there. Microsoft have done so much damage to email and made it worse for everyone.
- sliken 8y agoAgreed, seems like people are just too scared to reject potentially broken email. If your mail server receives an email that claims to be from paypal.com, but it's not dkim signed (by paypal.com) it should be rejected. But even paypal.com, likely one of the top phisher targets publishes their DKIM signature with: DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mail.paypal.com; I'm surprised that even internal email systems inside of companies regularly accept email from allegedly inside the company, that are forgeries. You'd think ibm.com (just an example) would A) sign ALL outgoing email B) check DKIM for all incoming email C) reject anything claiming ibm.com, but without the ibm.com signature. Seems insane that it's so easy to send email as a companies/organizations management.
- toast0 8y agoRelaxed in DKIM allows for non signficant changes in headers (ex case of the header names, extraneous whitespace, line folding) and for changes in trailing whitespace in the body. Headers and body are configured separately, but relaxed/relaxed ends up being fairly necessary. What you want to look at is their DMARC record: v=DMARC1; p=reject; rua=mailto:d@rua.agari.com; ruf=mailto:d@ruf.agari.com Which says they'd like servers to reject mail unless it passes SPF or DKIM. (There's no way to say it should pass both, although I guess if your SPF record was -all, you would need to pass DKIM)
- sliken 8y agoAh, that should teach me to post before checking the spec. Thanks.
- koonsolo 8y agoEven for programmers like me it makes no sense (to use it, not to comprehend ;)). I don't sign my emails, and I don't expect my contacts to sign their emails. I also don't see how the effort would bring a proper "return on investment". It would basically change nothing for me or my contacts. This is an infrastructural problem, and needs to be solved at that level. The user has nothing to do with it, doesn't understand it, doesn't know what problem it solves.
- wccrawford 8y agoActually, just the title of this article got me a little excited about making it happen for my emails. So I Googled how to make it happen for GMail. The options seem to be some browser plugins, or switching to another service. It is not handled by Google at all. That's a non-starter then, because I access my GMail account from the app some of the time, and there's no point in "some of the time security". Once GMail supports something like this, it'll take off a lot faster.
- deleted 8y ago[deleted]
- black-tea 8y agoIt's probably easier than learning how to drive, it's just that nobody does learn it. We have a huge problem with people not actually learning to use technology. Almost everyone you meet can barely type properly.
- MockObject 8y agoOrdinary people like green checkmarks. They don't need to know anything about public key encryption. They would get accustomed to seeing green checkmarks on emails coming from big businesses, and then possibly notice their absence on phishing emails.
- scott_s 8y agoEmail signing is trivial with the right email program. My work email is signed, and all I had to do was tick a checkbox.
- luckycharms810 8y agoA similar argument could be made for the implementation of HTTPS a few years ago. The goal should be to empower trusted software to inform a user. In the case of HTTPS, that trusted software is your browser, in the case of signed emails, that trusted software is your email provider.
- the_jeremy 8y agoIt's in the ballpark. "It's a second email password so that no one can listen in on your emails". The problem is implementation. Even one where your client / provider knew the private key is better than cleartext everywhere.
- nerdponx 8y agoThis is solely because email clients don't have a good UI for it.