[Endymail] How an endymail eco-system might incorporate web of trust features
Phillip Hallam-Baker <phill@hallambaker.com> Thu, 04 September 2014 16:52 UTC
Return-Path: <hallam@gmail.com>
X-Original-To: endymail@ietfa.amsl.com
Delivered-To: endymail@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1])
by ietfa.amsl.com (Postfix) with ESMTP id 488C91A8747
for <endymail@ietfa.amsl.com>; Thu, 4 Sep 2014 09:52:55 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.422
X-Spam-Level: *
X-Spam-Status: No, score=1.422 tagged_above=-999 required=5
tests=[BAYES_50=0.8, DKIM_SIGNED=0.1, DKIM_VALID=-0.1,
FM_FORGED_GMAIL=0.622, FREEMAIL_FROM=0.001, SPF_PASS=-0.001]
autolearn=no
Received: from mail.ietf.org ([4.31.198.44])
by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024)
with ESMTP id 22dIXgp43y8J for <endymail@ietfa.amsl.com>;
Thu, 4 Sep 2014 09:52:53 -0700 (PDT)
Received: from mail-lb0-x229.google.com (mail-lb0-x229.google.com
[IPv6:2a00:1450:4010:c04::229])
(using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits))
(No client certificate requested)
by ietfa.amsl.com (Postfix) with ESMTPS id B128D1A8789
for <endymail@ietf.org>; Thu, 4 Sep 2014 09:51:30 -0700 (PDT)
Received: by mail-lb0-f169.google.com with SMTP id p9so1389025lbv.14
for <endymail@ietf.org>; Thu, 04 Sep 2014 09:51:27 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
h=mime-version:sender:date:message-id:subject:from:to:content-type;
bh=LVl6Jz6MBphKopVCv+4G8Awims6b4bOIgwzapDDSVwQ=;
b=WlIDusf5TLwDjpcKU8RnNU8YlpHiBSEtghGsxvsKulMwSFCHhPUY30AZKDROBwIrKs
XAN8cWnGA1pwzKOL3SnbL+n1orUY5d47WmBflXRbr+yoiAGA/RhodnLL2cAv92Ym0eK6
bpbhG21NmStU0UPQKECO4qTfUOjrZPTqthcWZ/flrHlk8MBLbK6O1boZ77Jqag7yycZ4
BPor/QFMjyrFvhn7aMuyfe+e+TFjC1no+6xW4HVIUJ3xHLA5BBSx9AmJsCPM9a6sjSGw
aWVx1H207R5IZZGI+FlPDLSEeWaLxk/uU3u+csHxCJCKj7cRm8W+RqQ4k94IGZ8UEpUE
apug==
MIME-Version: 1.0
X-Received: by 10.153.4.39 with SMTP id cb7mr5831695lad.19.1409849487533; Thu,
04 Sep 2014 09:51:27 -0700 (PDT)
Sender: hallam@gmail.com
Received: by 10.112.122.50 with HTTP; Thu, 4 Sep 2014 09:51:27 -0700 (PDT)
Date: Thu, 4 Sep 2014 12:51:27 -0400
X-Google-Sender-Auth: xiK1NkSV1Cp-URtuba-OPGpOwfI
Message-ID: <CAMm+Lwg2wucmrFgbuT3KDxu5N9EU+hU8Kxm5+XGx=OZmCNTKvw@mail.gmail.com>
From: Phillip Hallam-Baker <phill@hallambaker.com>
To: endymail <endymail@ietf.org>
Content-Type: text/plain; charset=UTF-8
Archived-At: http://mailarchive.ietf.org/arch/msg/endymail/ofQqpqbN_M_YShoZKXZZxHkxDKU
Subject: [Endymail] How an endymail eco-system might incorporate web of
trust features
X-BeenThere: endymail@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: <endymail.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/endymail>,
<mailto:endymail-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/endymail/>
List-Post: <mailto:endymail@ietf.org>
List-Help: <mailto:endymail-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/endymail>,
<mailto:endymail-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 04 Sep 2014 16:52:55 -0000
[We don't have a name for the person sending Alice spam, I suggest Spaulding] As I see it, we are a long way away from deciding on a trust model. If in fact we ever do chose the one perfect trust model. But it does keep coming up so this is the way I think web of trust models and TTP models might interact in an endymail ecosystem. First off, I assume that each participant has at least one personal PKI which for the purposes of this discussion we can consider to last their lifetime. [In practice of course some people will have more than one, some people will screw up and lose control of their master secret, some people will go into witness protection programs, etc. etc. But the starting point for sanity is that we don't force unnecessary changes onto people.] One of the core principles of PPE is that sending encrypted mail is as easy to do as sending regular mail. So there is a usability layer on top of the raw crypto. But in order to set up the requirements for that usability layer I have to first explain the security requirements in raw crypto. So please suspend disbelief for the usability side of things as you read, it will become clear as we go along. So Alice has her personal PKI and the phingerprint of her master key, how might someone use that to communicate with Alice? The first point of departure from conventional PKI is that how Bob communicates with Alice might not be the same as how Carol communicates. Alice and Bob have known each other 40 years now. They are very very good friends. So I think it rather likely that Alice would be prepared to whitelist Bob as not a spammer. Also they spend so much time exchanging secret info, Alice is probably rather more concerned about the confidentiality of her emails from Bob than from Carol. And as for Spaulding, she does not want him to be sending endymail at all. So lets imagine Alice has a couple of laptops, a mobile phone, a couple of tablets and three desktops she has configured to read mail from. And now lets imagine she works for the National Security Bureau (NSB) which is the little heard about US agency charged with competently keeping government secrets secret. Does Alice really want every one of those devices to be able to read her Tippy-Top Secret messages? I think not. But she wants to be able to access 'Somewhat Secret' messages on all of them. So in practice Alice has the following mail confidentiality configuration, some of which is configured for her by her employers at the NSB and some of which she has set up: NSB Bulk Key: 'alice@nsb.gov' The encryption key of the NSB spam filter. NSB Alice key: 'alice@nsb.gov' An endymail key for Alice, the decryption key is on all her devices. NSB Alice confidential key: 'alice-tts@nsb.gov' An endymail key for Alice, the decryption key is only on her phone. Personal Alice Key: 'alice@webmail.com' An endymail key Alice uses for personal correspondence. Only some of these keys are publicly visible. And use of certain keys likely requires a message to be signed and meet specific access controls. Alice has four keys but only three accounts. This is because the choice between using the NSB bulk key and the NSB alice key can and therefore MUST be taken by the infrastructure. A mail sender knows if they have been pre-approved to send endymail or not. The choice of using one of the other accounts has to be left to the sender because they have distinct semantics. Bob knows that sending a message to Alice in her NSB role is different to sending her personal mail. Hence a different account is required. In other words, we are using three different email accounts to represent three different email security policies. Alice has four mail accounts but only one life long phingerprint. And that phingerprint could in theory be used with any of her email addresses. If Bob wants to be absolutely sure that the message goes to Alice he should be using her phingerprint. But this is not the only consideration. If Bob is sending a message on official business he would be at least as concerned that the message is going to someone who is currently employed at the NSB as that it goes to Alice. So in this case it is more appropriate to use the phingerprint of the NSB to determine the governing policy. Authenticating organizations such as the NSB or banks is something we already have an infrastructure built out to perform, its the WebPKI. I would very much like to go further and make use of PKIX logotypes and EV certificates with authenticated logos inside them to really nail down this relationship. Authenticating Alice in her personal capacity is rather more challenging. This is because corporations are not people, they only exist through government action. Thus government issued credentials are perfect for authenticating them. People do not exist as a result of government action, government credentials can be forged and there is a vast underground industry dedicated to forging them. Many people do go through events where we might potentially checkpoint their credentials however. Let us imagine that Alice creates her personal PKI at 18 when she starts college. Her name at this point is Alice Splunge. The college issues her an email account and she creates an encryption key to use with it. The college provided PKI gateway issues her a certificate in the college hierarchy and checkpoints it against the global TRANS notary infrastructure. [Note here that the use of the definite article in talking about catenate notary infrastructures is a recognition of the inevitability that there can be only one. Wherever there are two infrastructures it is inevitable that data objects from infrastructure A will be cross registered in infrastructure B and vice versa. And it is mutually beneficial that they do. And when they do so the two infrastructures become equivalent in terms of trustworthiness] At this point we have an assertion about the identity of Alice that might have been forged very cheaply when she was a student in 1984. But an attacker who decides that they want to impersonate Alice today, 30 years later would need a time machine or a way to break the encryption. The work factor for an attacker goes to essentially infinity after the notarization takes place. So it is my belief that we will establish a significant population of people with keys that have been enrolled in a notary service at some point in the past and this will create a significant work factor for an attacker trying to impersonate one of those people. Many of those users will have keys that have been enrolled numerous times. We are not going to get 100% coverage this way but we can probably get to 10% without too much difficulty. Now lets imagine I am one of the 90%, how do I get a key established? One way would be to find a member of the 10% and get them to endorse my key. Or better find several members. Here is how endymail is a huge advance on PGP. In the PGP web of trust, who you get endorsed by determines who you can communicate with. If you live in Kansas then it is highly unlikely you will find a trust path to someone in Siberia. This limitation goes away in the endymail scheme because the attacker can't feasibly impersonate a 30 year established key. An attacker can be a person with a 30 year established key but making fraudulent or negligent endorsements opens them up to accountability. As for mechanisms for endorsement, QR codes are only one mechanism that might be used. It is a pretty good one however. I recently bought a cell phone for my children. $5 each. They have two cameras. I don't see getting a smart phone would be an unreasonable requirement for endymail even if it was essential but it isn't. The way I see endymail working for an end user is that their mail client would have the following as information stores: 1) Contacts directory with entries for strong email addresses (i.e. address plus phingerprint) of people I know 2) A Web Service provider chosen by the user that provides key discovery services. 3) A local cache of previous queries to the Web Service (including negative results). The email client is going to periodically scan its contacts directory to attempt to pre-fetch keys. This activity improves performance and reduces the value of traffic analysis. Whenever an email message is sent, the client attempts to apply encryption if possible. This means: 1) It can find an endymail encryption key for the recipient. 2) The recipient has asserted that they prefer mail encrypted. The key discovery Web Service is going to be accumulating information from multiple sources: 1) The notary service log files 2) Public directories (possibly including DANE) 3) Policy information taken from SMTP headers. One of the big problems a lot of people seem to have is distinguishing the risk introduced in a 'first contact' situation from future risks. Imagine that we have a large square sheet of plywood, 2 meters on each side and a hole 2cm in diameter in the middle. The plywood is held roughly horizontal by a series of motors that are tilting and twisting it constantly causing several thousand marbles 1cm in diameter to roll across the surface. Given that set up it would probably take a very long time for the marbles to all drop through the hole. Now rout some channels in a spiraling pattern ending at the hole into the plywood. The marbles drain a lot faster. The point here is to capture as much Internet email traffic as possible and put it on rails that guide it to the endymail hole.
- [Endymail] How an endymail eco-system might incor… Phillip Hallam-Baker
- Re: [Endymail] How an endymail eco-system might i… Leo Vegoda
- Re: [Endymail] How an endymail eco-system might i… Phillip Hallam-Baker
- Re: [Endymail] How an endymail eco-system might i… Natanael
- Re: [Endymail] How an endymail eco-system might i… Phillip Hallam-Baker
- Re: [Endymail] How an endymail eco-system might i… Arnt Gulbrandsen
- Re: [Endymail] How an endymail eco-system might i… Phillip Hallam-Baker
- Re: [Endymail] How an endymail eco-system might i… Alex Elsayed