Re: [pkix] Gen-ART review of draft-ietf-pkix-rfc2560bis-15

"Piyush Jain" <piyush@ditenity.com> Mon, 08 April 2013 21:59 UTC

Return-Path: <piyush@ditenity.com>
X-Original-To: pkix@ietfa.amsl.com
Delivered-To: pkix@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 06DB621F8C3C for <pkix@ietfa.amsl.com>; Mon, 8 Apr 2013 14:59:44 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.725
X-Spam-Level:
X-Spam-Status: No, score=-2.725 tagged_above=-999 required=5 tests=[AWL=0.874, BAYES_00=-2.599, RCVD_IN_DNSWL_LOW=-1]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id nDXLfdfvgWqH for <pkix@ietfa.amsl.com>; Mon, 8 Apr 2013 14:59:42 -0700 (PDT)
Received: from mail-gh0-f179.google.com (mail-gh0-f179.google.com [209.85.160.179]) by ietfa.amsl.com (Postfix) with ESMTP id B085721F8BF8 for <pkix@ietf.org>; Mon, 8 Apr 2013 14:59:42 -0700 (PDT)
Received: by mail-gh0-f179.google.com with SMTP id z12so993830ghb.24 for <pkix@ietf.org>; Mon, 08 Apr 2013 14:59:42 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:from:to:cc:references:in-reply-to:subject:date :message-id:mime-version:content-type:x-mailer:thread-index :content-language:x-gm-message-state; bh=8rnEkOggHBWhzA2tEg2mr72XPdJMgNB6H3ao8w4vbVk=; b=axOBvOaJf+bOx/170I1Wq4sTR8+hvL0ht58pgo2pL+RFGuhGid3ypC98szEP6sVJW/ X0jPfy1/k9Wd+356x1PCraUKKP0PwVDRMh5aPam45BrgG3UtUaWPwpgqqiTZFvQLL6cM l/QKWCqPLs7wJ/4xpo89gpReMcPEH5+ipzxUoACa7gOBZDiG2u1yNQxIvzcRL4XezPBA MmkVD1kTbeXiWRHSTOgUTJp4wcdTw0O0r5p4/gNbwGAN8ZoBo+Z+ip6xklHtxyTxrSuM wztR/4SmEdHH4ELvnPJ/wOzD8TP+KmMfKceY1NRpa3yAzLZfh5lVsubyjUCI41huXycF SV5w==
X-Received: by 10.236.121.66 with SMTP id q42mr13866447yhh.48.1365458381977; Mon, 08 Apr 2013 14:59:41 -0700 (PDT)
Received: from hp13 (75-25-128-241.lightspeed.sjcpca.sbcglobal.net. [75.25.128.241]) by mx.google.com with ESMTPS id f70sm39879962yhi.12.2013.04.08.14.59.39 (version=TLSv1 cipher=RC4-SHA bits=128/128); Mon, 08 Apr 2013 14:59:41 -0700 (PDT)
From: Piyush Jain <piyush@ditenity.com>
To: 'Sean Turner' <turners@ieca.com>
References: <003e01ce3077$5b6329f0$12297dd0$@ditenity.com> <20130403160532.EB4FD1A68A@ld9781.wdf.sap.corp> <00a401ce3092$0a1415d0$1e3c4170$@ditenity.com> <5163270C.20300@ieca.com>
In-Reply-To: <5163270C.20300@ieca.com>
Date: Mon, 08 Apr 2013 14:59:27 -0700
Message-ID: <07af01ce34a4$582df1d0$0889d570$@ditenity.com>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="----=_NextPart_000_07B0_01CE3469.ABDFBBA0"
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQHHvIU0pEj95jqjILpXYwEgVOm34gLGPak8AXFeg0kBCCz4M5ivwB4A
Content-Language: en-us
X-Gm-Message-State: ALoCoQlb+EeYCHspXhyRBV/sMldCXEGbnWmeWNIwmuF/oNfLHNoDKwaRHDdcQ4KitJiBw+iZBAe6
X-Mailman-Approved-At: Sat, 20 Apr 2013 16:53:15 -0700
Cc: ambarish@gmail.com, slava.galperin@gmail.com, cadams@eecs.uottawa.ca, 'Stefan Santesson' <stefan@aaa-sec.com>, "'Black, David'" <david.black@emc.com>, sts@aaa-sec.com, pkix@ietf.org, gen-art@ietf.org
Subject: Re: [pkix] Gen-ART review of draft-ietf-pkix-rfc2560bis-15
X-BeenThere: pkix@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: PKIX Working Group <pkix.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/pkix>, <mailto:pkix-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/pkix>
List-Post: <mailto:pkix@ietf.org>
List-Help: <mailto:pkix-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/pkix>, <mailto:pkix-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 08 Apr 2013 21:59:44 -0000

Sean,

Thanks for your comments.
There are two points that I would like to cover separately. The first point
is a response to your comments below. The second point is a broader
objection to revoked for issued.

1) The text says - The "revoked" status is still optional in this context in
order to maintain backwards compatibility with deployments of RFC 2560.
This implies that making "revoked" status REQUIRED will break
interoperability between newer and older implementations. This is INCORRECT.

> Using the word "compliance" might set of an entirely new debate.
> Servers/clients can claim compliance if they want to but I'm not sure that
the
> primary goal was for a document to claim compliance with another set of
> RFCs.  
>These drafts for interoperability and that would lead me to
> compatibility and not conformance.
That is fair. I was just pointing at the intent of the author. If you make
"revoked" status REQUIRED it does not break compatibility of newer
implementations with older implementations, however it does break
conformance of older implementations with RFC 5019 and 2560.

2) Returning revoked for non-issued adds confusion without addressing any
real problem. "Allowing CAs to return revoked for non-issued" is a goal that
is vague and meaningless, given that CAs indicate issuance by signing the
certificate in question with their private key. If you question this basic
premise of x.509 that issuance is determined by signature, you should
question the signature on signed response as well. Who is to say that the
responder certificate that was used to sign a good response was issued by
the CA?

Henry nicely articulated the whole issue with this draft in his post
(attached). I second his view on not moving this draft forward.

-Piyush
> -----Original Message-----
> From: Sean Turner [mailto:turners@ieca.com]
> Sent: Monday, April 08, 2013 1:23 PM
> To: Piyush Jain
> Cc: ambarish@gmail.com; slava.galperin@gmail.com;
> cadams@eecs.uottawa.ca; 'Stefan Santesson'; 'Black, David'; sts@aaa-
> sec.com; pkix@ietf.org; gen-art@ietf.org
> Subject: Re: [pkix] Gen-ART review of draft-ietf-pkix-rfc2560bis-15
> 
> Piyush,
> 
> (David's on the "to:" line because the text in question showed up as a
result
> of the gen-art review and it's now in -16)
> 
> I've been following this thread trying to figure out what if anything
needs to
> be changed to address your concerns in -17.  (Note the thread forked
later,
> but I'm addressing the "times" issue in another thread.)
> 
> The sentence in questions was added to address the gen-art review is the
> following (it's in a "note" paragraph and there's actually more to it):
> 
>    The "revoked" status is still optional in this context in
>    order to maintain backwards compatibility with deployments
>    of RFC 2560.
> 
> 1) The first bit I'd like to discuss is this part of your concern:
> 
>    And it gives the impression that best course of action
>    for 2560bis responders is to start issuing revoked for
>    "not-issued", which is far from the originally stated
>    goal to provide a way for CAs to be able to return
>    revoked for such serial numbers.
> 
> and:
> 
>    I believe that Stefan is trying to convey that requiring
>    servers to return revoked in this context will make them
>    non-compliant with 2560 and 5019 as opposed to breaking
>    interoperability with legacy clients.
> 
> I honestly don't see how you get to your impression, because the 2119
> language about when a responder might used revoked for not-issued is:
> 
>   This state MAY also be returned if the associated
>   CA has no record of ever having issued a certificate with the
>   certificate serial number in the request, using any current or
>   previous issuing key (referred to as a "non-issued" certificate in
>   this document).
> 
> MAY being the operable word here.  That's clear to implementers because if
> you read 2119 for MAY it says:  This word, or the adjective "OPTIONAL",
> mean that an item is truly optional.  One vendor may choose to include the
> item because a particular marketplace requires it or because the vendor
feels
> that it enhances the product while another vendor may omit the same item.
> ...
> 
> For me this seems clear because the 2119 language trumps any note.
> 
> Even Stefan's response to David a couple of days earlier than when you
> posted this concerns includes:
> 
>    In theory we could possibly say that responding revoked
>    is optional, but if you choose between revoked and unknown
>    then you SHOULD favour revoked over unknown. But such nested
>    requirements just feels bad and impossible to test compliance
>    against. I'd much rather just leave it optional.
> 
> I'm not sure what else could be added to alliveate your concern on this
point.
> Maybe this one got over taken by events?
> 
> 2) The second bit of your concern is that this is not an accurate
> characterization of the WG's rationale for the choices made.  This concern
is
> easier to evaluate and I agree that it is important to capture the actual
> rationale.  I think you've suggested that the following:
> 
>    "maintain backwards compatibility with deployments of RFC 2560"
> 
> be replaced with:
> 
>    "maintain compliance with RFC 2560 and RFC 5019"
> 
> Using the word "compliance" might set of an entirely new debate.
> Servers/clients can claim compliance if they want to but I'm not sure that
the
> primary goal was for a document to claim compliance with another set of
> RFCs.  These drafts for interoperability and that would lead me to
> compatibility and not conformance.
> 
> spt
> 
> On 4/3/13 1:38 PM, Piyush Jain wrote:
> >> No, it does not make any sense at all.  An error code is unsigned and
> >> can
> > be
> >> easily inserted into the communication by an attacker.
> >
> > [Piyush] Funny that you make this argument. How does returning a
> > signed revoked address this? Attacker can still replace signed revoked
> > with an UNSIGNED TRY_LATER.
> >
> >> These kinds of argument are based on two very flawed premises:
> >>
> >>   (1) the premise that there exist only two possible states for a CA:
> >>        (a) safe and pristine
> >>        (b) full and thorough compromise of each and everything
> > [Piyush] NIST has addressed RA compromise and CA key compromise
> > separately so this is not true.
> > And you have not listed what other breaches you are trying to address
> > offering revoked for non-issued as the silver bullet for all those
> > unknown security breaches.
> >   You tendency to allude to vague problems to justify a particular
> > solution, couple with a reluctance to engage in a discussion regarding
> > the security implications continues to amuse me. List the other states
> > and have a discussion around how this solution solves those problems.>
> >>   (2) that a huge PKI (100k+ entities) can be nuked and
> >>       re-personalized after a CA compromise at close to zero cost and
> >>       within the blink of an eye
> >
> > and both premises exhibit a throrough cluelessness about security,
> > risk
> >> management and the real world.
> >
> > Let's get this right.
> > Only possible benefit of revoked for non-issued exists when there are
> > CA SIGNED certificates floating in the wild and CA has no clue that it
> > has issued it and therefore cannot revoke it.
> >
> > Now, to say that clients are secure and CA can continue to operate if
> > it issues revoked OCSP response for such certificate indicates
> > cluelessness about security.
> >
> > Customers pay a lot of money for certificates for which the marginal
> > cost of issuance is almost 0. CAs obligation is to make sure that they
> > are secure and to address any breach securely.
> > To say that customers will tolerate a CA security breach just because
> > it issues revoked for non-issued and continues to publish CRLs that
> > imply fraudulent certificates as good indicates cluelessness about
> > risk management and real world.
> >
> >
> > _______________________________________________
> > pkix mailing list
> > pkix@ietf.org
> > https://www.ietf.org/mailman/listinfo/pkix
> >
--- Begin Message ---
Actually, what I get from this and all the other discussions is that it's
unclear if the updated OCSP satisfies the "suitability for the intended
purpose" test.  Or at least it fails the KISS principle w.r.t. that.

Rephrasing:  an OCSP client should be able to tell from an OCSP response if:
a) the subject cert is on the CAs white list, b) the subject cert is on the
CAs black list, c) the subject cert is not on either list, or finally d) the
OCSP server is obsolete, and doesn't support making those distinctions.
It's not trivial to see how to parse 2560bis responses w.r.t. those cases,
therefore it's highly likely that computational complexity will prevent us
from doing so.  Even if that's not actually the case, then implementor
misunderstandings will prevent us from doing so in practice.

Therefore I vote against moving this draft forward.  I just don't see the
point.

If someone were to write an informational RFC which explained how to
determine which of the 4 cases an OCSP response fell into, AND if said RFC
also convinced me that the decision process was easy to understand, THEN I
would change my vote.  Obviously an appendix in 2560bis would serve just as
well.
_______________________________________________
pkix mailing list
pkix@ietf.org
https://www.ietf.org/mailman/listinfo/pkix
--- End Message ---