Re: [apps-discuss] [pkix] PKIX text encodings
Paul Hoffman <paul.hoffman@vpnc.org> Sat, 28 January 2012 04:29 UTC
Return-Path: <paul.hoffman@vpnc.org>
X-Original-To: apps-discuss@ietfa.amsl.com
Delivered-To: apps-discuss@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id B1BC621F8508; Fri, 27 Jan 2012 20:29:30 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.554
X-Spam-Level:
X-Spam-Status: No, score=-102.554 tagged_above=-999 required=5 tests=[AWL=0.045, BAYES_00=-2.599, USER_IN_WHITELIST=-100]
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 a--o+5S0Gyju; Fri, 27 Jan 2012 20:29:30 -0800 (PST)
Received: from hoffman.proper.com (IPv6.Hoffman.Proper.COM [IPv6:2605:8e00:100:41::81]) by ietfa.amsl.com (Postfix) with ESMTP id 2DA4A21F84FF; Fri, 27 Jan 2012 20:29:30 -0800 (PST)
Received: from [10.20.30.103] (50-0-66-4.dsl.dynamic.fusionbroadband.com [50.0.66.4]) (authenticated bits=0) by hoffman.proper.com (8.14.5/8.14.3) with ESMTP id q0S4TRt7084777 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Fri, 27 Jan 2012 21:29:28 -0700 (MST) (envelope-from paul.hoffman@vpnc.org)
Mime-Version: 1.0 (Apple Message framework v1251.1)
Content-Type: text/plain; charset="iso-8859-1"
From: Paul Hoffman <paul.hoffman@vpnc.org>
In-Reply-To: <201201280037.q0S0bjqe004577@fs4113.wdf.sap.corp>
Date: Fri, 27 Jan 2012 20:29:27 -0800
Content-Transfer-Encoding: quoted-printable
Message-Id: <6A5293F6-83A7-48CB-BAA6-FF85F0D6A903@vpnc.org>
References: <201201280037.q0S0bjqe004577@fs4113.wdf.sap.corp>
To: mrex@sap.com
X-Mailer: Apple Mail (2.1251.1)
Cc: simon@josefsson.org, apps-discuss@ietf.org, pkix@ietf.org
Subject: Re: [apps-discuss] [pkix] PKIX text encodings
X-BeenThere: apps-discuss@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: General discussion of application-layer protocols <apps-discuss.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/apps-discuss>, <mailto:apps-discuss-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/apps-discuss>
List-Post: <mailto:apps-discuss@ietf.org>
List-Help: <mailto:apps-discuss-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/apps-discuss>, <mailto:apps-discuss-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 28 Jan 2012 04:29:30 -0000
On Jan 27, 2012, at 4:37 PM, Martin Rex wrote: > Paul Hoffman wrote: >> >> Martin Rex wrote: >>> >>> the Label that is used within '-----BEGIN <some-label>----' >>> should be ignored on the receiver side, and all implemented formats >>> should be tried, that are applicable for the requested operation. >> >> This would cause things like private keys and public keys to be mixed up. > > Not necessarily. If your ASN.1 decoder can not distinguish your private > from your public key, then you have a whole different kind of problem. Indeed, but it is a new problem that you probably didn't plan for. There is no need to introduce the problem at this late date. >> I propose this is not a good idea from a security perspective. > > Huh? That textual label is not integrity protected in any way, > so how should this be a security problem? These blobs are often handed around out-of-band, so removing a bit of information can indeed introduce a security problem. > This is really only about convenience for admins. That's one view, but not the only one. >> Instead, Simon might add some text saying that some applications >> sometimes ignore the label in order to be more liberal, but in doing >> so can cause problems with systems that assume those labels are important. > > HUH? How could being liberal on *INPUT* possibly cause problems? > > Any reasonable ASN.1 decoder can reliably tell apart > - X.509 certificates > - private keys > - encrypted private keys > - pkcs10 requests > - crls > - pkcs7/cms > - pkcs7/cms as certificate bag > - pkcs7/cms as crl bag > - pkcs12 > > So any implementation that is ignoring the explicit label, will have to > use the implicit label from successfuly ASN.1 decode of the types > of objects that are applicable for the requested operation. You are assuming, I believe incorrectly, that the ASN.1 decoding is happening in the same part of the system as the base64 decoding. That's not a safe assumption. In your code, it might be fine; it is probably not fine in all code. Why throw away valuable information? > Microsoft seems to ignore the label. If you double-click on > a pkcs7 file (extension .p7s or .p7b) it will be PEM-decoded independent > of what label is used. Same for certificate (.cer). Um, so? That's one implementation. > I find it much more confusing when only a few, but non-unique labels > are accepted: > OpenSSL seems to accept certs with "X509 CERTIFICATE" and "CERTIFICATE" > and PKCS7 as "PKCS7" or "CERTIFICATE" but _not_ "X509 CERTIFICATE" Fully agree. That's why it is good that someone (Simon!) is doing this work. >> Just a thought: we define *new* labels that do what we think everyone >> should do, such as multiple items in the block. There would not be much >> uptake on those new labels in the short run, but could become the >> standard 20 years from now. > > For OUTPUT we should try to find an reuse the most commonly used label, > because the installed base is going to be with us another 10+ years. You and I live in different universes. --Paul Hoffman
- [apps-discuss] PKIX text encodings Simon Josefsson
- Re: [apps-discuss] [pkix] PKIX text encodings Sean Turner
- Re: [apps-discuss] [pkix] PKIX text encodings Paul Hoffman
- Re: [apps-discuss] [pkix] PKIX text encodings Martin Rex
- Re: [apps-discuss] [pkix] PKIX text encodings Martin Rex
- Re: [apps-discuss] [pkix] PKIX text encodings Paul Hoffman
- Re: [apps-discuss] [pkix] PKIX text encodings Miller, Timothy J.