<?xml version="1.0" encoding="UTF-8"?>

<!-- draft submitted in xml v3 -->

<!DOCTYPE rfc [
 <!ENTITY nbsp    "&#160;">
 <!ENTITY zwsp   "&#8203;">
 <!ENTITY nbhy   "&#8209;">
 <!ENTITY wj     "&#8288;">
]> 

<rfc xmlns:xi="http://www.w3.org/2001/XInclude" submissionType="IETF" category="std" consensus="true" docName="draft-moskowitz-ipsecme-ipseckey-eddsa-09" number="9373" ipr="trust200902" obsoletes="" updates="" xml:lang="en" tocInclude="true" symRefs="true" sortRefs="true" version="3">

<front> <title abbrev="IPSECKEY EdDSA">EdDSA Value for IPSECKEY</title>
        <seriesInfo name="RFC" value="9373"/>
	<author fullname="Robert Moskowitz" initials="R" surname="Moskowitz">
    <organization>HTT Consulting</organization>
    <address>
      <postal> 
	<street></street>
        <city>Oak Park</city>
        <region>MI</region>
        <code>48237</code>
        <country>United States of America</country>
      </postal>
      <email>rgm@labs.htt-consult.com</email>
	</address>
	</author>
	<author fullname="Tero Kivinen" initials="T" surname="Kivinen">
    <address>
      <email>kivinen@iki.fi</email>
	</address>
	</author>
	<author fullname="Michael C. Richardson" initials="M." surname="Richardson">
	<organization abbrev="Sandelman">Sandelman Software Works</organization>
	<address>
	  <email>mcr+ietf@sandelman.ca</email>
	  <uri>https://www.sandelman.ca/</uri>
	</address>
	</author>
	<date year="2023" month="March" />
	<area>sec</area>
	<keyword>IPSECKEY EdDSA</keyword>
<abstract>
<t>
	This document assigns a value for Edwards-Curve Digital Signature Algorithm (EdDSA) Public Keys to the "IPSECKEY Resource Record Parameters" registry.
</t>
</abstract>
</front>
<middle>   
<section numbered="true" toc="default"> <name>Introduction</name>
<t> 
	IPSECKEY <xref target="RFC4025"/> is a resource record (RR) for the Domain Name 
	System (DNS) that is used to store public keys for use in IP 
	security (IPsec) systems. The IPSECKEY RR relies on the IPSECKEY 
	"Algorithm Type Field" registry <xref target="IANA-IPSECKEY" 
	format="default"/> to enumerate the permissible formats for the 
	public keys.
</t>
<t>
	This document adds support for Edwards-Curve Digital Security 
	Algorithm (EdDSA) public keys in the format defined in <xref 
	target="RFC8080" format="default"/> to the IPSECKEY RR.
</t>
</section>
<section anchor="IPSECKEY" numbered="true" toc="default"> <name>IPSECKEY Support for EdDSA</name>
<t>
	When using the EdDSA public key in the IPSECKEY RR, the value 
	4 is used as an algorithm and the public key is formatted as 
	specified in "Edwards-Curve Digital Security 
	Algorithm (EdDSA) for DNSSEC" (<xref target="RFC8080" 
	sectionFormat="of" section="3"/>).
</t>
<table anchor="table1">
  <name></name> 
  <thead>
    <tr>
      <th>Value</th> 
      <th>Description</th>
      <th>Format Description</th>
      <th>Reference</th>
    </tr>
  </thead>
  <tbody> 
    <tr>
      <td>4</td>
      <td>An EdDSA Public Key</td>
      <td><xref target="RFC8080" sectionFormat="comma" section="3"/></td>
      <td>This RFC</td>
    </tr>
  </tbody>
</table>

</section>
<section anchor="IANA" numbered="true" toc="default"> <name>IANA Considerations</name>
<section anchor="IANA_IPSECKEY_reg" numbered="true" toc="default"> <name>Update to the IANA IPSECKEY Registry</name>
<section anchor="IANA_IPSECKEY_Alg_format" numbered="true" toc="default"> <name>Reformat the Algorithm Type Field Registry</name>
<t>
	Per this document, IANA has added the "Format 
	Description" field to the "Algorithm Type Field" registry of the 
	"IPSECKEY Resource Record Parameters" <xref target="IANA-IPSECKEY" 
	format="default"/>. In addition, IANA has updated the 
	"Description" field in existing entries of that registry to 
	explicitly state that they are for "Public" keys:
</t>
<table anchor="table2"> 
  <name></name>   
  <thead>
    <tr>
      <th>Value</th>    <!-- <th>:  headings -->
      <th>Description</th>
      <th>Format Description</th>
      <th>Reference</th>
    </tr>
  </thead>
  <tbody>          <!-- The rows -->
    <tr>
      <td>0</td>
      <td>No Public key is present</td>
      <td></td>
      <td><xref target="RFC4025"/></td>
    </tr>
    <tr>
      <td>1</td>
      <td>A DSA Public Key</td>
      <td><xref target="RFC2536" sectionFormat="comma" section="2"/></td>
      <td><xref target="RFC4025"/></td>
    </tr>

    <tr>
      <td>2</td>
      <td>An RSA Public Key</td>
      <td><xref target="RFC3110" sectionFormat="comma" section="2"/></td>
      <td><xref target="RFC4025"/></td>
    </tr>
    <tr>
      <td>3</td>
      <td>An ECDSA Public Key</td>
      <td><xref target="RFC6605" sectionFormat="comma" section="4"/></td>
      <td><xref target="RFC8005"/></td>
    </tr>
  </tbody>
</table>

<t>
	IANA added a reference to this document to the "Algorithm Type Field" registry. 
</t>
</section>
<section anchor="IANA_IPSECKEY_Alg_add" numbered="true" toc="default"> <name>Add to the Algorithm Type Field Registry</name>
<t>
	Further, IANA has made the following addition 
	to the "Algorithm Type Field" registry within the "IPSECKEY Resource Record Parameters" <xref 
	target="IANA-IPSECKEY" format="default"/>:
</t>

<table anchor="table3">
  <name></name>
  <thead>
    <tr>
      <th>Value</th> 
      <th>Description</th>
      <th>Format Description</th>
      <th>Reference</th>
    </tr>
  </thead>
  <tbody>  
    <tr>
      <td>4</td>
      <td>An EdDSA Public Key</td>
      <td><xref target="RFC8080" sectionFormat="comma" section="3"/></td>
      <td>This RFC</td>
    </tr>
  </tbody>
</table>
</section>
</section>
</section>
<section anchor="security-considerations" numbered="true" toc="default"> <name>Security Considerations</name>

<t>
   The security considerations discussed in <xref target="RFC4025" format="default"/> apply.  This document 
   does not introduce any new security considerations. 
</t>
</section>
</middle>
<back>
<references> <name>References</name>
<references title="Normative References">
	<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8080.xml"/>

	<reference anchor="IANA-IPSECKEY"  target="https://www.iana.org/assignments/ipseckey-rr-parameters">
		<front>
			<title>IPSECKEY Resource Record Parameters</title>
			<author><organization>IANA</organization></author>
		</front>
	</reference>
</references>
<references title="Informative References">
	<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4025.xml"/>
	<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.3110.xml"/>
	<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6605.xml"/>
	<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2536.xml"/>
	<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8005.xml"/>

</references>
</references>
<section numbered="true" toc="default"> <name>IPSECKEY EdDSA Example</name>

<t> 
The following is an example of an IPSECKEY RR with no gateway, and an
  EdDSA public key.  It uses the IPSECKEY presentation format which is base64.
</t>
	<artwork name="" type="" align="left" alt="">
<![CDATA[
   foo.example.com. IN IPSECKEY (
         10 0 4 . 3WTXgUvpn1RlCXnm80gGY2LZ/ErUUEZtZ33IDi8yfhM= )
]]>
	</artwork> 
<t> 
	The associated EdDSA private key (in hex) is as follows:
</t>
	<artwork name="" type="" align="left" alt="">
<![CDATA[
   c7be71a45cbf87785f639dc4fd1c82637c21b5e02488939976ece32b9268d0b7
]]>
	</artwork> 
</section>
<section numbered="false" toc="default"> <name>Acknowledgments</name>
<t>
	Thanks to the Security Area Director, <contact fullname="Paul Wouters"/>, for his initial review. Also, thanks to Security Area Director, <contact fullname="Roman Danyliw"/>, for his final reviews and document shepherding.
</t>
</section>
</back>
</rfc>
