One document matched: draft-josefsson-keyassure-tls-00.xml
<?xml version="1.0"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd"[
<!ENTITY RFC4033 SYSTEM
"http://xml.resource.org/public/rfc/bibxml/reference.RFC.4033.xml">
<!ENTITY RFC4398 SYSTEM
"http://xml.resource.org/public/rfc/bibxml/reference.RFC.4398.xml">
<!ENTITY RFC5246 SYSTEM
"http://xml.resource.org/public/rfc/bibxml/reference.RFC.5246.xml">
<!ENTITY RFC5280 SYSTEM
"http://xml.resource.org/public/rfc/bibxml/reference.RFC.5280.xml">
<!ENTITY RFC5081 SYSTEM
"http://xml.resource.org/public/rfc/bibxml/reference.RFC.5081.xml">
<!ENTITY SHA256 SYSTEM
"http://xml.resource.org/public/rfc/bibxml2/reference.FIPS.180-2.2002.xml">
<!ENTITY TLSIDCHECK SYSTEM
"http://xml.resource.org/public/rfc/bibxml3/reference.I-D.draft-saintandre-tls-server-id-check-09.xml">
]>
<!-- Copyright (C) 2010 Simon Josefsson -->
<?rfc compact="yes"?>
<?rfc toc="yes"?>
<?rfc symrefs="yes"?>
<rfc category="info" ipr="trust200902"
docName="draft-josefsson-keyassure-tls-00"
category="std">
<front>
<title abbrev="DNSSEC TLS Certificate">
Confirming the Certificate structure in TLS with Secure DNS
</title>
<author initials="S." surname="Josefsson" fullname="Simon Josefsson">
<organization abbrev="SJD AB">
Simon Josefsson Datakonsult AB
</organization>
<address>
<postal>
<street>Hagagatan 24</street>
<city>Stockholm</city>
<code>113 47</code>
<country>Sweden</country>
</postal>
<email>simon@josefsson.org</email>
<uri>http://josefsson.org/</uri>
</address>
</author>
<date year="2010" month="August"/>
<abstract>
<t>TLS supports X.509 and OpenPGP certificate based mechanisms
to authenticate a server. Users want their applications to
verify that the certificate provided by the TLS server is in
fact associated with the domain name they expect. Instead of
trusting a certificate authority to have made this association
correctly, and an X.509/OpenPGP implementation to validate that
properly, the user might instead trust the authoritative DNS
server for the domain name to make that association. This
document describes how to use secure DNS to associate the
certificate chain transferred by TLS with the intended domain
name.</t>
</abstract>
</front>
<middle>
<section title="Introduction and Background">
<t>This document provides <xref target="RFC5246">Transport Layer
Security (TLS)</xref> clients with an alternative way to
authenticate the binding between the server's certificate
and the domain name expected by the user.</t>
<t>TLS transfers the certificate from the server to the client
using the Certificate structure, see section 7.4.2 of RFC
5246. We treat this structure as an opaque value, which
results in that we support both X.509 and OpenPGP certificates
directly.</t>
<t>Normally the binding between certificate and domain name is
verified by using the
normal <xref target="RFC5280">PKIX</xref>
or <xref target="RFC5081">OpenPGP</xref> validation algorithm,
possibly together with an application protocol profile. A
good overview of the current state is given by
<xref target="I-D.saintandre-tls-server-id-check"/>.</t>
<t>This document specify a way to directly authenticate the
server certificate provided by a TLS server
using <xref target="RFC4033">DNSSEC</xref> using
the <xref target="RFC4398">CERT record</xref>. We specify a
new CERT RR type to hold a hash of the Certificate structure
sent by a TLS server to a client.</t>
</section>
<section title="The TLSCERT Certificate Type of the CERT RR">
<t>The CERT RR [RFC4398] allows expansion by defining new
certificate types. The new certificate type "TLSCERT" is
defined here. A query on a domain name for the CERT RR may
return records of the type CERT, and zero or more of those
CERT responses can be of type TLSCERT.</t>
<t>The format of the TLSCERT certificate type is binary. The
record contains
the <xref target="FIPS.180-2.2002">SHA-256</xref> hash of the
Certificate structure as transferred from the TLS server to
the client, including the length field.</t>
<t>[[Rationale: Use of the SHA-256 provides an yet unbroken hash
of the data, and stronger hashes are of questionable utility
with this method given that Secure DNS normally has other
weaker parts due to performance reasons. Of course this
approach is open for discussion.]]</t>
<t>The protocol (TCP or UDP) and port number is specified as
part of the resource domain name as follows:</t>
<figure>
<artwork>
_443._tcp.example.com. IN CERT TLSCERT 0 0
IN1eoUHi9eb9nkCeROH5FmkdTKXQ/hmOM0mXjC2LM/I=
_5060._udp.example.com. IN CERT TLSCERT 0 0
R4UWsL/fwtOZp62gFHspEQY5v8iczDI20ZBOwMBQ1Hw=
</artwork>
</figure>
<t>[[Rationale: Letting the protocol and port number be part of
the owner name reduces transfer sizes of the CERT record in
situations where there would otherwise be multiple CERT
records for unrelated services on the same domain name.]]</t>
</section>
<section title="IANA Considerations">
<t>The IANA is requested to register and allocate a number for a
new CERT RR certificate type TLSCERT.</t>
</section>
<section title="Acknowledgements">
<t>Inspiration for this solution was drawn on earlier works in
this area. Further, text were borrowed from
draft-hoffman-keys-linkage-from-dns-00.</t>
</section>
<section title="Security Considerations">
<t>TBW</t>
</section>
</middle>
<back>
<references title="Normative References">
&RFC4033;
&RFC4398;
&RFC5246;
&SHA256;
</references>
<references title="Informative References">
&RFC5280;
&RFC5081;
&TLSIDCHECK;
</references>
</back>
</rfc>
| PAFTECH AB 2003-2026 | 2026-04-21 18:15:23 |