<div dir="ltr">Polite strangers don't spam<br>------------------------------------------------<br><br>Trying for "The simplest thing that could possibly work":<br><br>- Friends don't spam you.<br>- You don't converse with spammers.<br><br>=> No need for spam filtering for friends and<br>people whose emails you choose to reply to.<br><br>(In the context of an assumed<br>email-address-spoofing-proof<br>e2e encrypted email exchange.)<br><br>=> Before Stranger is allowed to exchange encrypted emails<br>with you, he has to perform a "polite handshake" with you<br>over normal unencrypted email.<br><br>This cleartext semi-automated challenge-response exchange<br>is guarded by your provider's spam filtering.<br><br>Just like in the real world, Stranger first<br>needs to quickly introduce himself and briefly tell<br>you why he thinks you might want to converse with him.<br><br>This handshake is like a "friend-request" (E2E crypto request)<br>with a human-generated captcha (a "pitch for your attention"<br>written by the stranger) which you solve/accept by reading and<br>simply replying to it if convinced.<br><br>After successful completion, you assume Stranger is legit<br>(unlikely to send spam) and authorize him to communicate<br>with you over an encrypted channel. There's a blacklist if<br>you change your mind.<br><br><br>I. Example [POLITELY] email handshake:<br>------------------------------------------------<br><br>Stranger wants you to authorize him for e2e encrypted email<br>and kicks off with a special (see 2/a below) email message:<br><br>---Email-1---><br>|<br>| From: Stranger<br>| To: You<br>| Subject: [politely] We met at LeWeb 2013<br>|<br>| I was wearing a pink dress, we discussed libertarian<br>| science fiction, you said you hated bitcoin. I promised<br>| to send you details about project xyz.<br><br><---Email-2---<br>|<br>| In-Reply-To: Email-1<br>| Date: < at least 7 hours after receipt of Email-1 ><br>| From: You<br>| To: Stranger<br>| Subject: Re: [politely] We met at LeWeb 2013<br>|<br>| This is an automated reply<br>| generated by a polite email client,<br>| on behalf of "from".<br>|<br>| "from" has not yet been shown your original email message.<br>| If the message shown below was not sent by you,<br>| please excuse and ignore this reply.<br>|<br>| Otherwise,<br>| simply REPLY to this<br>| to enable "from" to see your original message.<br>|<br>| ----- Your Original Message:<br>|<br>| I was wearing a pink dress, we discussed libertarian<br>| science fiction, you said you hated bitcoin. I promised<br>| to send you details about project xyz.<br>|<br>| <anti-spoof-random-string><br><br>---Email-3---><br>|<br>| In-Reply-To: Email-2<br>| From: Stranger<br>| To: You<br>| Subject: Re: Re: [politely] We met at LeWeb 2013<br>| ...<br>| <anti-spoof-random-string><br><br><---Email-4---<br>|<br>| In-Reply-To: Email-1 (not Email-3)<br>| From: Stranger<br>| To: You<br>| Subject: Re: We met at LeWeb 2013<br>|<br>| Thanks for being polite. Let's do e2e crypto.<br><br><br>II. Details:<br>------------------------------------------------<br><br>Stranger wants you to authorize him for e2e encrypted email.<br><br>1/ Stranger sends you Email-1<br><br>2/ Your email client intercepts this email and<br>detects that the subject is prefixed with "[politely]",<br>which indicates that the sender agrees to execute<br>the polite challenge-response dance/protocol.<br><br>Your email client (any [politely]-enabled client)<br>MUST NOT & WILL NOT show this email to you just yet<br>=> Stranger must be 100% certain that he cannot<br>possibly get your attention until he has proved<br>ownership of his email address, see 2/c).<br><br>Instead:<br><br>2/a It checks if the message is a proper [politely] message:<br><br>- it must be text-only,<br>- it should be one paragraph only<br>- there must be no attachments (no embedded images etc)<br>- it must have a maximum of +-413 characters (whatever, 627?)<br>- [and maybe it must not contain any urls -> 99.9% spam-proof?]<br><br>If the message fails this check, your client [may reply<br>with an explanation of why it rejects it before it]<br>deletes the message.<br><br>If the message passes:<br><br>2/b. It waits for some random time between 7 and 17 hours<br>(proper suggestions welcome, this is to force Stranger to<br>prove control over his email address for "long enough", maybe<br>you can configure your email client to your liking, 5 seconds<br>should do for the first 100 million e2e users...)<br>before...<br><br>2/c. ...it replies with the auto-generated "challenge" Email-2<br>to figure out if Stranger did not spoof his address, and<br>to force him to monitor it for "long enough".<br><br>3/ Stranger receives Email-2 and simply hits reply to it (Email-3).<br><br>4/ Your email client intercepts Email-3, checks its validity,<br>and deletes it.<br><br>4/a If Email-3 is faked (no anti-spoof-random-string): abort.<br><br>Instead of the anti-spoof-random-string a simply check<br>for In-Reply-To: Email-2 would do, provided stranger's<br>client does generate this header, and message-ids are<br>reasonable.<br><br>4/b Otherwise, your client WILL FINALLY SHOW you Email-1.<br><br>(possibly only in your client's spam folder if either the original<br>or the just-deleted one were classified as spam by your provider).<br>Your email client might show you a separate twitter-like<br>"stream" of "fully opened" one-paragraph [politely] requests<br>which you can process very fast whenever you have a minute.<br><br>5/ If you have the time to read and like Stranger's pitch,<br>simply reply to him (your client could simply let you tap<br>the pitch in the twitter-like stream to send an auto-generated<br>reply.<br><br>Your reply will cause your email client to whitelist Stranger<br>for e2e crypto.<br><br>From now on your client accepts e2e emails from Stranger.<br><br>If Stranger starts sending stuff you consider SPAM after<br>decryption, "blacklist" him.<br> <br><br>III. Hand-waving:<br>------------------------------------------------<br><br>This is really meant as a general "politely requesting<br>your attention" protocol which can be used by anyone<br>using a normal email client to communicate with someone<br>using a "polite" email client.<br><br>If it is used to authorize e2e, Stranger would probably<br>use an e2e enabled client which would automate some<br>of the steps for him above.<br><br>Also, some kind of DH key exchange could be piggy-backed<br>on top of the handshake so that by Email-4 (or Email-3)<br>both sides are ready to go dark. Automated MITM detection<br>would be insanely great.<br><br> <br>IV. Will it work?<br>------------------------------------------------<br><br>And if it does work, would it work even without the provider's<br>spam filters?<br><br>[Mike Hearn:] are there reasonable restrictions on the<br>format of the "pitch for attention" email (2/a) which<br>[coupled with a long enough delay before Email-2 is sent]<br>would make any kind of spam filtering needless because it<br>would disgust spammers enough not to be polite?<br><br><br>-carlo<br><br></div>