Re: [Curdle] AlgorithmIdentifier parameters in draft-ietf-curdle-pkix-03

Ilari Liusvaara <ilariliusvaara@welho.com> Sun, 19 February 2017 22:14 UTC

Return-Path: <ilariliusvaara@welho.com>
X-Original-To: curdle@ietfa.amsl.com
Delivered-To: curdle@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C180E1295BE for <curdle@ietfa.amsl.com>; Sun, 19 Feb 2017 14:14:08 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.901
X-Spam-Level:
X-Spam-Status: No, score=-1.901 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_NONE=-0.0001, RP_MATCHES_RCVD=-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 woo_spYqi_Gh for <curdle@ietfa.amsl.com>; Sun, 19 Feb 2017 14:14:07 -0800 (PST)
Received: from welho-filter4.welho.com (welho-filter4.welho.com [83.102.41.26]) by ietfa.amsl.com (Postfix) with ESMTP id DDCCA1295BD for <curdle@ietf.org>; Sun, 19 Feb 2017 14:14:06 -0800 (PST)
Received: from localhost (localhost [127.0.0.1]) by welho-filter4.welho.com (Postfix) with ESMTP id DAFEF1FD73; Mon, 20 Feb 2017 00:14:04 +0200 (EET)
X-Virus-Scanned: Debian amavisd-new at pp.htv.fi
Received: from welho-smtp2.welho.com ([IPv6:::ffff:83.102.41.85]) by localhost (welho-filter4.welho.com [::ffff:83.102.41.26]) (amavisd-new, port 10024) with ESMTP id n6KS_hbXyUPl; Mon, 20 Feb 2017 00:14:04 +0200 (EET)
Received: from LK-Perkele-V2 (87-92-51-204.bb.dnainternet.fi [87.92.51.204]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by welho-smtp2.welho.com (Postfix) with ESMTPSA id 941CF21C; Mon, 20 Feb 2017 00:14:04 +0200 (EET)
Date: Mon, 20 Feb 2017 00:14:00 +0200
From: Ilari Liusvaara <ilariliusvaara@welho.com>
To: str4d <str4d@i2pmail.org>
Message-ID: <20170219221400.GA13539@LK-Perkele-V2.elisa-laajakaista.fi>
References: <20170218131518.D515DADF18@smtp.postman.i2p> <20170218222709.493F3ADF01@smtp.postman.i2p> <20170219172559.1E86EADF00@smtp.postman.i2p>
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Disposition: inline
In-Reply-To: <20170219172559.1E86EADF00@smtp.postman.i2p>
User-Agent: Mutt/1.5.23 (2014-03-12)
Sender: ilariliusvaara@welho.com
Archived-At: <https://mailarchive.ietf.org/arch/msg/curdle/qMZ2aKawzEaPomYCH2ydOZuBnso>
Cc: curdle@ietf.org
Subject: Re: [Curdle] AlgorithmIdentifier parameters in draft-ietf-curdle-pkix-03
X-BeenThere: curdle@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: "List for discussion of potential new security area wg." <curdle.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/curdle>, <mailto:curdle-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/curdle/>
List-Post: <mailto:curdle@ietf.org>
List-Help: <mailto:curdle-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/curdle>, <mailto:curdle-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 19 Feb 2017 22:14:08 -0000

On Sun, Feb 19, 2017 at 05:25:59PM +0000, str4d wrote:
> On 02/19/2017 11:27 AM, Ilari Liusvaara wrote:
> > On Sat, Feb 18, 2017 at 01:15:18PM +0000, str4d wrote:
> >> Hi all,
> >>
> >> The problem is that the Sun AlgorithmId class always adds a NULL when
> >> encoding if there are no parameters, for compatibility with Solaris [4].
> >> So AFAICT it is presently impossible for me to write an implementation
> >> that simultaneously:
> >>
> >> - follows draft-ietf-curdle-pkix-03 correctly
> >> - can retrieve EdDSA keys from a default Java keystore
> >>
> >> Is anyone in the WG aware of a workaround for this, or have links to
> >> past WG discussion on this point? I would think that Oracle should at
> >> least be made aware of this issue, but even if they changes this in Java
> >> 10, that doesn't help my implementation run on earlier Java versions.
> >> The only alternatives I see at this point are:
> > 
> > AlgorithmId.encodeAbsentParametersAsNull(boolean)?
> > 
> > (The first javadoc for AlgorithmId I found has that method).
> > 
> > 
> > -Ilari
> > 
> 
> If I'm looking at the same JavaDoc as you [0], that method is for
> iaik.asn1.structures.AlgorithmID, which is part of the proprietary
> IAIK-JCE Provider. I am referring to sun.security.x509.AlgorithmId from
> the Sun Provider bundled with Oracle Java, which does not have this method.

Ah, I found what I presume is code for the correct class.

The problematic method (derEncode) looks like it can take an override
from subclass.

 

-Ilari