Skip to content

EppLib secDNS (DNSSEC) extension not handling all elements in RFC #31

Closed

Description

@ManoManiac

It is now only possible to add and remove the most basic secDNS (EPP DNSSEC) elements usting EppLib.
The following examples are from http://www.rfc-editor.org/rfc/rfc5910.txt

Example use of the secDNS-1.1 DS Data Interface for a create: (EppLib handles this)

   <secDNS:dsData>
     <secDNS:keyTag>12345</secDNS:keyTag>
     <secDNS:alg>3</secDNS:alg>
     <secDNS:digestType>1</secDNS:digestType>
     <secDNS:digest>49FD46E6C4B45C55D4AC</secDNS:digest>
   </secDNS:dsData>

Example use of secDNS-1.1 DS Data Interface with option key data for a create: (Not handled in EppLib)

   <secDNS:dsData>
     <secDNS:keyTag>12345</secDNS:keyTag>
     <secDNS:alg>3</secDNS:alg>
     <secDNS:digestType>1</secDNS:digestType>
     <secDNS:digest>49FD46E6C4B45C55D4AC</secDNS:digest>
     <secDNS:keyData>
       <secDNS:flags>257</secDNS:flags>
       <secDNS:protocol>3</secDNS:protocol>
       <secDNS:alg>1</secDNS:alg>
       <secDNS:pubKey>AQPJ////4Q==</secDNS:pubKey>
     </secDNS:keyData>
    </secDNS:dsData>

Example use of the secDNS-1.1 Key Data Interface for a create: (Not handled in EppLib)

    <secDNS:keyData>
      <secDNS:flags>257</secDNS:flags>
      <secDNS:protocol>3</secDNS:protocol>
      <secDNS:alg>1</secDNS:alg>
      <secDNS:pubKey>AQPJ////4Q==</secDNS:pubKey>
    </secDNS:keyData>

An OPTIONAL secDNS:maxSigLife element is also not handled in EppLib:
<secDNS:maxSigLife>604800</secDNS:maxSigLife>

Activity

  1. ademar commented on Sep 25, 2026

    @ademar
    Member

    Thanks for the detailed report, and sorry it took so long. This is fixed in EppLib 1.7.0 (#61), which covers everything you listed from RFC 5910:

    • DNSKEY data with the new SecDNSKeyData, either on its own (SecDNSCreate.KeyData, SecDNSUpdate.KeyDataToAdd / KeyDataToRemove) or inside a DS record (SecDNSData.KeyData).
    • maxSigLife on create, and changing it through SecDNSUpdate.MaxSigLife.
    • Update options: SecDNSUpdate.RemoveAll and Urgent.
    • Reading DNSSEC data from domain info responses with SecDNSInfData.FromResponse(response).

    It also fixes key tags above 32767 and lets you set DigestType (for example SHA256). Note that KeyTag is now an int, so rebuild after upgrading. The upgrading notes have the details.

  2. added a commit that references this issue on Oct 8, 2026
    ab13ad8
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions