Re: [stir] Questions about stir-certificates

Paul Kyzivat <pkyzivat@alum.mit.edu> Mon, 23 October 2017 16:04 UTC

Return-Path: <pkyzivat@alum.mit.edu>
X-Original-To: stir@ietfa.amsl.com
Delivered-To: stir@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 13A2B139504 for <stir@ietfa.amsl.com>; Mon, 23 Oct 2017 09:04:46 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.201
X-Spam-Level:
X-Spam-Status: No, score=-4.201 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, SPF_PASS=-0.001] autolearn=ham autolearn_force=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 vng4SVdYt8cD for <stir@ietfa.amsl.com>; Mon, 23 Oct 2017 09:04:44 -0700 (PDT)
Received: from alum-mailsec-scanner-6.mit.edu (alum-mailsec-scanner-6.mit.edu [18.7.68.18]) by ietfa.amsl.com (Postfix) with ESMTP id CEDE71394F1 for <stir@ietf.org>; Mon, 23 Oct 2017 09:04:43 -0700 (PDT)
X-AuditID: 12074412-1e5ff7000000748d-f5-59ee13198328
Received: from outgoing-alum.mit.edu (OUTGOING-ALUM.MIT.EDU [18.7.68.33]) (using TLS with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by alum-mailsec-scanner-6.mit.edu (Symantec Messaging Gateway) with SMTP id D5.2D.29837.9131EE95; Mon, 23 Oct 2017 12:04:41 -0400 (EDT)
Received: from PaulKyzivatsMBP.localdomain (c-24-62-227-142.hsd1.ma.comcast.net [24.62.227.142]) (authenticated bits=0) (User authenticated as pkyzivat@ALUM.MIT.EDU) by outgoing-alum.mit.edu (8.13.8/8.12.4) with ESMTP id v9NG4caq027997 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT); Mon, 23 Oct 2017 12:04:40 -0400
To: Chris Wendt <chris-ietf@chriswendt.net>
Cc: "Gorman, Pierce A [CTO]" <Pierce.Gorman@sprint.com>, "stir@ietf.org" <stir@ietf.org>
References: <D60E0087.1EEE44%jon.peterson@neustar.biz> <CABkgnnV41djmwJ2A8WkLv1Qu_zxAKPb8EJnuoFS1Zeog3momyQ@mail.gmail.com> <6432f01322c74b1196075c4549f18a12@plswe13m04.ad.sprint.com> <4bbb6330-96e7-6317-cbae-07991075e776@alum.mit.edu> <171f91651e9e4a2eb7873fdbe1b9fcea@plswe13m04.ad.sprint.com> <4e1c72a3-4ae0-d424-8dfd-fff1c7049cdb@alum.mit.edu> <C0F0887C-F247-4B37-99DB-BF175943914C@chriswendt.net>
From: Paul Kyzivat <pkyzivat@alum.mit.edu>
Message-ID: <20d0f1d0-f4cc-2bed-b493-7cb4bfe746d1@alum.mit.edu>
Date: Mon, 23 Oct 2017 12:04:38 -0400
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:52.0) Gecko/20100101 Thunderbird/52.4.0
MIME-Version: 1.0
In-Reply-To: <C0F0887C-F247-4B37-99DB-BF175943914C@chriswendt.net>
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Language: en-US
Content-Transfer-Encoding: 7bit
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFprKKsWRmVeSWpSXmKPExsUixO6iqCsp/C7SYPEfQ4vpn3YzW5z49p/R YvnabUwOzB4T+taweixZ8pPJo+3SbuYA5igum5TUnMyy1CJ9uwSujJ2nNjMV7G5grGh+EdvA eCKji5GTQ0LARKK35yMjiC0ksINJ4smcwi5GLiD7IZPE/Wk9TCAJYQFTiRtn1rCB2CIC2hKH zzSANTALJEo03NjEDtEwl1mi5cpJZpAEm4CWxJxD/1lAbF4Be4lXG5+CNbMIqEq0bfoEFhcV SJO4M+MhE0SNoMTJmU/A4pwCThL9z5exQCwwk5i3+SEzhC0ucevJfCYIW15i+9s5zBMYBWYh aZ+FpGUWkpZZSFoWMLKsYpRLzCnN1c1NzMwpTk3WLU5OzMtLLdI108vNLNFLTSndxAgJa6Ed jOtPyh1iFOBgVOLhZTB8GynEmlhWXJl7iFGSg0lJlPd3DlCILyk/pTIjsTgjvqg0J7X4EKME B7OSCG/RT6Acb0piZVVqUT5MSpqDRUmc9+didT8hgfTEktTs1NSC1CKYrAwHh5IE703Bd5FC gkWp6akVaZk5JQhpJg5OkOE8QMOzQGp4iwsSc4sz0yHypxiNOXp6bvxh4ng283UDsxBLXn5e qpQ4bwxIqQBIaUZpHtw0WGp6xSgO9Jww7yeQKh5gWoOb9wpoFRPQKln7NyCrShIRUlINjP77 yjJ9TiocZHvAmpC5nbH2x+Ejl5au6pxlY8ry6UBiWW5pbKO77NXXk/g1LgjK/1kaN/du5Pvs Z/OL3dR3P7G6H7G25tX64hkCot13XRy330nRTcuSWhJg1d086+TSJauurjZr0fun83fXD8s/ Bz0qpNdI2OjoPog+8v71l4QJ+sGi+4y7QpVYijMSDbWYi4oTASSdkpAoAwAA
Archived-At: <https://mailarchive.ietf.org/arch/msg/stir/bhoUyrbi0IKxSBali_HDLnR8FFE>
Subject: Re: [stir] Questions about stir-certificates
X-BeenThere: stir@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Secure Telephone Identity Revisited <stir.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/stir>, <mailto:stir-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/stir/>
List-Post: <mailto:stir@ietf.org>
List-Help: <mailto:stir-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/stir>, <mailto:stir-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 23 Oct 2017 16:04:46 -0000

Chris,

On 10/23/17 10:35 AM, Chris Wendt wrote:
> Hi Paul,
> 
> The key thing is that on the telephone network, there will be a transition period between 10% calls being signed to 50% of calls being signed to 90% of calls being signed

Yes.

> and i think the indicators will need to evolve through those periods of time.  

Do you mean the indicators that are displayed to the end user? Or do you 
mean the indicators that are conveyed in the signaling to the UAC?

Hopefully you are talking about the indicators that are being displayed.

> If you start with both positive and negative indicators based entirely on STIR that may imply something different in all of those transitional periods, so the simple start is to have mostly positive indicators if STIR is your only tool.  The indications will also likely be mixed with call spam analytics tools and their determinations, so I think in most of the industry discussions we want to work collaboratively between service providers and Call Analytics apps and consumers to see how things evolve for the best display framework.
> The key thing is taking both the STIR signatures, analytics, and other tools together to build a robust way of determining both correct identity and intent of the calls being received.

IMO there can be many ways of doing these indications, and there is no 
real reason to be overyly restrictive about these. For the sake of 
consistency it may be worthwhile to come up with a dictionary of 
predefined iconography.

For suitably smart devices (e.g. mobile phones) I would hope that 
various apps and configuration options for those apps can provide the UI 
to users. Then app providers can compete on who does it better and users 
can choose. And these can evolve over time as the uptake on the signing 
increases. Maybe this is what you mean by Call Analytics apps.

It would be bad if all of this gets locked up in the FCC regulatory regime.

	Thanks,
	Paul

> -Chris
> 
>> On Oct 20, 2017, at 4:18 PM, Paul Kyzivat <pkyzivat@alum.mit.edu> wrote:
>>
>> On 10/20/17 3:49 PM, Gorman, Pierce A [CTO] wrote:
>>> Government agencies and financial institutions would not be given "Full" attestation under ordinary circumstances and so their calls would not get the green check (although Chris' TN PoP could help change that).
>>
>> That would be sad. Isn't that the goal of all this?
>>
>>> Remembering the originating telephone number of government agencies and financial institutions may be difficult for some consumers (and probably not a source of many calls for the average Joe in any case).
>>
>> When I get a call from somebody I expect to hear from again I am inclined to put them in my address book directly from the call history. If the call history remembered the level of attestation of the call then it could retain that in the address book as well, and update it on future calls if the attestation for the same caller gets stronger. (Perhaps remember all the different levels that have been observed for the number.)
>>
>> This doesn't require anything from the end user that he isn't already doing.
>>
>>> Challenges with the veracity of calling name information remain even in the presence of STIR/SHAKEN.  It's an area of opportunity for further study and development.
>>
>> I understand that the name is a whole different thing.
>>
>> 	Thanks,
>> 	Paul
>>
>>> Pierce
>>> -----Original Message-----
>>> From: Paul Kyzivat [mailto:pkyzivat@alum.mit.edu]
>>> Sent: Friday, October 20, 2017 12:46 PM
>>> To: stir@ietf.org
>>> Subject: Re: [stir] Questions about stir-certificates
>>> On 10/20/17 12:15 PM, Gorman, Pierce A [CTO] wrote:
>>>> Martin,
>>>>
>>>> I want to offer my compliments for your comments attempting to help improve the standard and make STIR more robust.
>>>>
>>>> You also observed, "PKI, this isn't that great a solution.  Every time we use some out-of-band mechanism, it turns out to be brittle.  When something is brittle, the immediate reaction is to make it non-blocking."
>>>>
>>>> The protocol and policy challenges of STIR and PKI are contributing factors to why I believe STIR/SHAKEN by itself will probably always be non-blocking.
>>>>
>>>> Even if we constrain our consideration to the Service Provider use case, there are many thousands of Service Providers and hundreds of government authorities and so SHAKEN/STIR may only ever be fragile and non-blocking in perpetuity.  If we consider non-network-centric end-user application and per-Telephone Number use cases, I think the already considerable policy, protocol, and operational challenges become even more significant.
>>>>
>>>> Furthermore, STIR/SHAKEN is a mechanism for conveying relative trustworthiness of the calling telephone number, and AFAIK consumer preference studies of VoIP-originated SPAM have so far been anecdotal and unscientific.  It is not yet clear whether a positive indication of trust such as a green check mark will be preferred (or acceptable), as compared to a negative indication of trust such as a red circle with a diagonal red slash across it on a white background.
>>>>
>>>> The majority of telephony consumers may prefer to only be alerted to suspicious call attempts.   SHAKEN's "Full" attestation provides the highest level of trust with regard to the originating telephone number not having been spoofed, but consumers may not want to be told, "here's another most likely benign call attempt".
>>>>
>>>> "Partial" and "Gateway" attestations as indications of relative untrustworthiness of the calling number may be usable as filters for secret-sauce analytics and/or post-processing forensic investigation.  IMHO they are not suited for at-a-glance indications of unwanted calling attempts to subscribers.   And, I assume no user, enterprise, or originating or transit service provider will volunteer "Fraudulent" or " SPAM" attestations although they would be undeniably more usable for an at-a-glance decision about whether to accept a call.
>>> Speaking strictly as a telephony consumer: I see value in *both* the positive and negative indicators. I am inclined to use the negative one when deciding whether to answer the call at all, and the positive one for whether to trust the call for sensitive matters, such as with government agencies and financial institutions.
>>> This can be coupled with per-number policy at my own end (in my address
>>> book) by remembering which numbers have previously received full attestation. That can raise the bar on future calls from the same number.
>>> 	Thanks,
>>> 	Paul
>>>> -----Original Message-----
>>>> From: Martin Thomson [mailto:martin.thomson@gmail.com]
>>>> Sent: Thursday, October 19, 2017 7:28 PM
>>>> To: Peterson, Jon <jon.peterson@team.neustar>
>>>> Cc: stir@ietf.org; Sean Turner <sean@sn3rd.com>
>>>> Subject: Re: [stir] Questions about stir-certificates
>>>>
>>>> Thanks for the response Jon,
>>>>
>>>> It took me a little while to revive state for this, so I hope that I'm at least consistent with before...
>>>>
>>>> On Fri, Oct 20, 2017 at 3:17 AM, Peterson, Jon <jon.peterson@team.neustar> wrote:
>>>>>> The first question is whether this delegation makes any sense for
>>>>>> service provider codes.  A service provider that signs a subordinate
>>>>>> (such as an enterprise that operates a PBX) is hardly going to allow
>>>>>> that subordinate to use their service provider code.  In light of
>>>>>> that, it seems like subjectAltName is entirely appropriate place to
>>>>>> put a service provider code.
>>>>>
>>>>> I think the use case for SPC delegation is probably not the
>>>>> enterprise case. A service bureau case makes more sense. We've also
>>>>> entertained cases where a large carrier, say, might have authority
>>>>> over multiple SPCs in one cert, but might want to delegate to some
>>>>> part of its own network a certificate for just one of those SPCs.
>>>>> I've also dimly envisioned, if this all takes off, use cases for
>>>>> selectively delegating applications associated with an SPC for a
>>>>> particular service, probably to a service
>>>>> bureau: like, Company A is doing the SMS for SPC 6166.
>>>>
>>>> That makes me more confident that you have the right model, as least with respect to subjectAltName.  I was concerned that a SPC was an identity of the entity doing the signing, but it seems like it is instead a proxy for a number range.  Cast in those terms, the model you have is OK.  But it really isn't that clear from the document that this is the model.  For a relative outsider, it might be useful to say that this is an assumption in your model.
>>>>
>>>>>> It's also unclear to me whether a certificate that includes AIA for
>>>>>> telephone numbers also effectively constrains subordinates to comply
>>>>>> with that set.
>>>>>
>>>>> I hope it does, yes. We can make sure the document does say that.
>>>>
>>>> I trust that you will do that :)
>>>>
>>>>>> The document doesn't say.  On the assumption that it does, what
>>>>>> happens when the resource identified in the AIA changes?
>>>>>
>>>>> This is supposed to be a feature, believe it or not. If the resource
>>>>> behind the AIA changes, the scope of the certificate changes. Part of
>>>>> resolving the chain of authority in this model would be dereferencing
>>>>> any such AIA's, yes, and making sure it still holds.
>>>>>
>>>>>> There's a possibility that changes in the referenced resource could
>>>>>> invalidate subordinates.  Doesn't this put AIA on the critical path?
>>>>>
>>>>> That last point is probably better for Sean to speak to than me.
>>>>
>>>> I just checked and RFC 5280 mandates AIA as a non-critical extension.
>>>> I think that's a bit of a deal-breaker.
>>>>
>>>> >From my (limited) experience with out-of-band information in the web
>>>> PKI, this isn't that great a solution.  Every time we use some out-of-band mechanism, it turns out to be brittle.  When something is brittle, the immediate reaction is to make it non-blocking.  That was the case with CRLs and OCSP.  That's why we have OCSP stapling.
>>>>
>>>> This might be a different story.  Maybe the sheer quantity of numbers will lead to the right incentives and people will insist on retrieving up-to-date information from these resources.  But nothing in the mechanism will require it unless this document does.
>>>>
>>>> If you need to use AIA, then you need to do something about it being non-critical.  I think that a strategic "MUST" might be all you need.
>>>> "MUST support AIA, retrieve an updated AIA, and use the information provided therein"
>>>>
>>>> For that to work, you need an MTI retrieval mechanism and format.  I assume that this is just a DER-encoded TNAuthList.  You probably want to write that down.  And then someone will end up asking whether you have a media type for it.
>>>>
>>>> And then there is the privacy story with these sorts of things.  Big lists of AIA are probably OK (K-anonymity with large K), but I can imagine the CA being able to use this as a way to track calls.  Not serious here because lists are generally long, but it was a problem with CRLs and OCSP on the web, so it's worth a brief mention at least.
>>>>
>>>>>> The draft is unclear on how uniqueness is managed for service
>>>>>> provider codes, or even if uniqueness is a requirement.  Is this a
>>>>>> property of the certification path in that a trust anchor will be
>>>>>> connected to a particular country prefix (or set thereof), or is
>>>>>> there something more concrete?
>>>>>
>>>>> The SPC as specified is admittedly a blank check we're writing at
>>>>> this point, but I think that's about where we are in deployment. The
>>>>> early adopters of this are North American carriers, there are already
>>>>> bodies who allocate codes for such carriers. I don't think the IETF
>>>>> is the right place to do that or to try to figure out how those
>>>>> identifiers should be internationally allocated or what should happen
>>>>> when signed messages pass into places where other sorts of SPCs might be in use.
>>>>> What's there now is good enough to let people kick the tires and get
>>>>> some experience; it will give national and international bodies
>>>>> enough leeway to define what they want for it, and we can point to that later.
>>>>
>>>> I think that you need more than that.  At least acknowledge that the service provider code is defined within a certain scope and that someone consuming the code needs to be aware of where the code is coming from.
>>>>
>>>>>> How does one add `count` to a number containing "*" or "#"?
>>>>>
>>>>> Don't get wrong: I won't pretend that every possible corner case
>>>>> involving "*" and "#" has been given adequate consideration. They are
>>>>> there in the syntax to cover a very small number of paranoid
>>>>> forward-compatibility use cases of the "To" header field, mostly ones
>>>>> that in turn will use the proposed "divert" extension. (For example,
>>>>> I'm dialing *69. That goes to a server that is going to retarget the call to the last party who called me.
>>>>> How should that retargeting server sign the "divert"?) I don't think
>>>>> count will be practically relevant to those cases, which will would
>>>>> have to use specialized certs anyway. I know we don't have all that
>>>>> fully specified, but kind of like SPC, we're trying to leave a bit of
>>>>> wiggle room in the syntax not to close doors on possibilities.
>>>>
>>>> Please define something.  Either say that addition of numbers that contain these digits is invalid, or that the count is added to any numeric digits to the right of these digits.  If this turns out to be a bad idea, then see my answer regarding prefixes.
>>>>
>>>>>> Does the addition of `count` treat the `start` as an integer?
>>>>
>>>> You missed this question.  I think that it's important.  It's the little things that can trip up implementations.
>>>>
>>>> "123" + 10 is probably "123", "124", "125", ..., "132", is that correct?
>>>> What about "123" + 1000?  It might pay to say that overflow into more digits isn't permitted, especially if you consider the case of "123*69" + 32.  Is this up to "154*69" or "123*100" or "124*00" or something else?  It might be easier to say that it's invalid.
>>>>
>>>>>> What does a `count` of 0 mean?
>>>>>
>>>>> I believe a count of '0' is disallowed.
>>>>
>>>> Indeed it is.
>>>>
>>>>>> How do I express that all numbers in the +1 prefix are covered?
>>>>>
>>>>> If it were up to me, probably, I wouldn't want the NANPA to publish a
>>>>> cert with authority for +1, but instead, for the valid set of 10,000
>>>>> blocks (done with "count") that cover the allocated +1NPANXX's. But
>>>>> to your bigger question...
>>>>>
>>>>>> (The NANP is perhaps a bad example, try finding solid information on
>>>>>> the numbering plan for +257).  Did the working group consider a
>>>>>> number prefix in addition to the range, to allow for saying "+1..."
>>>>>> as a single rule?
>>>>>
>>>>> I went back and forth a lot between count versus prefix a couple
>>>>> years ago, and honestly neither is perfect. Count can least
>>>>> theoretically do things prefix can't; but doing some that are ugly to
>>>>> do with count can be done very elegantly with prefix. Maybe the best
>>>>> thing for us to do is at least leave the door open in the syntax to
>>>>> specify another way to do number ranges? I think for our current
>>>>> purposes count is probably okay, but I wouldn't object to adding
>>>>> wiggle room so we could specify other options in the future.
>>>>
>>>> I would make sure that there is an extension point.  My ASN.1 is rusty, but I think that adding ... to TNEntry would be enough for that.
>>>>
>>>>
>>>>
>>>> ________________________________
>>>>
>>>> This e-mail may contain Sprint proprietary information intended for the sole use of the recipient(s). Any use by others is prohibited. If you are not the intended recipient, please contact the sender and delete all copies of the message.
>>>> _______________________________________________
>>>> stir mailing list
>>>> stir@ietf.org
>>>> https://www.ietf.org/mailman/listinfo/stir
>>>>
>>
>> _______________________________________________
>> stir mailing list
>> stir@ietf.org
>> https://www.ietf.org/mailman/listinfo/stir
> 
>