[apps-discuss] AppsDir review of draft-ietf-dane-protocol-19

Alexey Melnikov <alexey.melnikov@isode.com> Tue, 24 April 2012 16:14 UTC

Return-Path: <alexey.melnikov@isode.com>
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 0543821F87D8; Tue, 24 Apr 2012 09:14:01 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.511
X-Spam-Level:
X-Spam-Status: No, score=-102.511 tagged_above=-999 required=5 tests=[AWL=0.088, 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 ijVfdIg0D9MY; Tue, 24 Apr 2012 09:14:00 -0700 (PDT)
Received: from rufus.isode.com (cl-125.lon-03.gb.sixxs.net [IPv6:2a00:14f0:e000:7c::2]) by ietfa.amsl.com (Postfix) with ESMTP id E644921F87C6; Tue, 24 Apr 2012 09:13:59 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1335284038; d=isode.com; s=selector; i=@isode.com; bh=tuK+87IdECyx8g1ceSSw87kIOH54xvLgX2zRQoz7GuM=; h=From:Sender:Reply-To:Subject:Date:Message-ID:To:Cc:MIME-Version: In-Reply-To:References:Content-Type:Content-Transfer-Encoding: Content-ID:Content-Description; b=awuhaqwUM+WUlTXuD7TVYmc4P40mXUjdGP4m5lUoDpG+zwnFwkIlJXWPIxAcUuGDwpjqLU AumbpMDW1TAB6WT58ZDiY+uo1ILrIqybL+9GDJjdZchx27hZS0M2o87pG9LlXYM0SCEdoF L5+P9oPa5YdMeXjIZQGTzqJZgQDEZT4=;
Received: from [172.16.1.29] (shiny.isode.com [62.3.217.250]) by rufus.isode.com (submission channel) via TCP with ESMTPSA id <T5bRRgAg22r5@rufus.isode.com>; Tue, 24 Apr 2012 17:13:58 +0100
X-SMTP-Protocol-Errors: PIPELINING
Message-ID: <4F96D157.7020504@isode.com>
Date: Tue, 24 Apr 2012 17:14:15 +0100
From: Alexey Melnikov <alexey.melnikov@isode.com>
User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:10.0.2) Gecko/20120216 Thunderbird/10.0.2
To: "apps-discuss@ietf.org" <apps-discuss@ietf.org>, dane@ietf.org, iesg@ietf.org
MIME-Version: 1.0
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
Subject: [apps-discuss] AppsDir review of draft-ietf-dane-protocol-19
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: Tue, 24 Apr 2012 16:14:01 -0000

This is a supplemental AppsDir review of draft-ietf-dane-protocol (for
background on AppsDir, please see
<http://trac.tools.ietf.org/area/app/trac/wiki/ApplicationsAreaDirectorate>).

Although Murray Kucherawy has already reviewed this I-D on behalf of
the AppsDir, folks in the Applications Area realize that wide
deployment of the TLSA Resource Record might have a significant impact
on applications, so we are performing additional reviews. Please treat
these comments just as you would any other Last Call feedback.

Document: draft-ietf-dane-protocol
Title: "The DNS-Based Authentication of Named Entities (DANE) Protocol
for Transport Layer Security (TLS)"
Reviewer: Peter Saint-Andre
Review Date: 2012-04-24
IETF Last Call Date: 2012-04-25
IESG Telechat: not yet scheduled


Summary: This draft is almost ready for publication as an Standards
Track RFC but has a few issues that should be fixed before publication.


Major Issue: none, although a) I am agreeing with Peter Saint-Andre's 
major issue and b) I would like to see a reply to my minor issues

Minor Issues:

2.2.  TLSA RR Presentation Format

    The presentation format of the RDATA portion is as follows:

Presentation for what purpose? In management UIs? Is this a required 
presentation format for DNS tools that can retrieve and update TLSA records?

  [...]

    o  The certificate association data field MUST be represented as a
       string of hexadecimal characters.  Whitespace is allowed within
       the string of hexadecimal characters.

Please define what you mean by whitespace here? CR & LFs allowed?
Examples in the Section 2.3 seem to suggest that.

3.  Domain Names for TLS Certificate Associations

    2.  The protocol name of the transport on which a TLS-based service
        is assumed to exist is prepended with an underscore character
        ("_") to become the second left-most label in the prepared domain
        name.  The transport names defined for this protocol are "tcp",
        "udp" and "sctp".

DCCP? Should there be a registry?

4.  Use of TLSA Records in TLS

    Section 2.1 of this document defines the mandatory matching rules for
    the data from the TLSA certificate associations and the certificates
    received from the TLS server.

    The TLS session that is to be set up MUST be for the specific port
    number and transport name that was given in the TLSA query.

So this will not work for any type of DNS indirection mechanism, such as 
MX, SRV, etc? Or does DNS retrieval of such records also requires DNSSec?


Nits:

4.  Use of TLSA Records in TLS

    If a TLSA record has usage type 2 for the certifcate, the

typo: certificate

    corresponding TLS server SHOULD send the certificate that is
    referenced just like it currently sends intermediate certificates.


    If an application receives zero usable certificate associations from
    a DNS request or from its cache, it processes TLS in the normal
    fashion without any input from the TLSA records.

Just to double check: if TLS client receives some TLSA records, but none
of them are usable, is this considered to be the above case?

    If an application
    receives one or more usable certificate associations, it attempts to
    match each certificate association with the TLS server's end entity
    certificate until a successful match is found.  During the TLS
    handshake, if none of the certificate associations matches the
    certificate given by the TLS server, the TLS client MUST abort the
    handshake.