<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.31 (Ruby 3.2.3) -->
<?rfc rfcedstyle="yes"?>
<?rfc tocindent="yes"?>
<?rfc strict="yes"?>
<?rfc comments="yes"?>
<?rfc text-list-symbols="-o*+"?>
<?rfc docmapping="yes"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-duda-dnsop-dns-did-00" category="info" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.31.0 -->
  <front>
    <title abbrev="DNS-DID">A DNS-Based Framework for Privacy-Preserving Identity</title>
    <seriesInfo name="Internet-Draft" value="draft-duda-dnsop-dns-did-00"/>
    <author initials="A." surname="Duda" fullname="Andrzej Duda">
      <organization>Univ. Grenoble Alpes, CNRS, Grenoble INP, LIG</organization>
      <address>
        <email>Andrzej.Duda@imag.fr</email>
      </address>
    </author>
    <author initials="M." surname="Korczynski" fullname="Maciej Korczynski">
      <organization>Univ. Grenoble Alpes, CNRS, Grenoble INP, LIG</organization>
      <address>
        <email>maciej.korczynski@grenoble-inp.fr</email>
      </address>
    </author>
    <author initials="O." surname="Hureau" fullname="Olivier Hureau">
      <organization>Univ. Grenoble Alpes, CNRS, Grenoble INP, LIG</organization>
      <address>
        <email>olivier@hureau.com</email>
      </address>
    </author>
    <author initials="J." surname="Zhang" fullname="Jun Zhang">
      <organization>Huawei Technologies France S.A.S.U.</organization>
      <address>
        <email>junzhang1@huawei.com</email>
      </address>
    </author>
    <author initials="H." surname="Labiod" fullname="Houda Labiod">
      <organization>Huawei Technologies France S.A.S.U.</organization>
      <address>
        <email>houda.labiod@huawei.com</email>
      </address>
    </author>
    <date/>
    <area>Operations and Management Area</area>
    <workgroup>DNSOP</workgroup>
    <abstract>
      <?line 54?>
<t>This document presents a framework for privacy-preserving identity management based on DNS, supporting large-scale management of users, IoT devices, and AI agents. It introduces Self-Certifying Identifiers (SIDs), User/Service Trustees as trusted proxies, and leverages DNSSEC-secured TXT records to bind public keys to identities. The framework enables privacy-by-design, where real identities are hidden behind trusted entities, 
through privacy-preserving intermediarie. Credentials bound to SIDs support role-based access control, while ephemeral tokens ensure short-lived authorization. Although initially DNS-dependent, the model can extend to other directories like DIDs or IPFS. This approach aligns with zero-trust architectures and supports automated, AI-driven interactions in future networks.</t>
    </abstract>
  </front>
  <middle>
    <?line 60?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>In this draft, we present a framework for Privacy-Preserving Identity Management based on DNS supporting large scale management of users, IoT devices, or AI agents. It defines new entities involved in Identity Management, specifies Self-Certifying Identifiers based on public keys, and offers public keys stored in DNS as trust anchors. This design draws inspiration from the architecture of Decentralized Identifiers (DIDs) [W3C.DID-Core], particularly in the use of cryptographic derivation of identifiers, though this document focuses on DNS as the initial resolution layer.</t>
    </section>
    <section anchor="sec-framework">
      <name>Framework for DNS-Based Identity</name>
      <t>We can observe that the standard Self-Sovereign Identity frameworks place the User at the center and gives the user the control over unveiling its personal information. However, there is a tension between Privacy and Trust:</t>
      <t>•       the User wants to remain anonymous and do not unveil its personal information, which may end up in the situation in which other entities in the system will not trust its - nobody wants to interact with an anonymous interlocutor;</t>
      <t>•       if the User discloses its real identity, other entities in the system may trust him.
The conclusion is that we need an entity that separates the User from other entities, hides its private attributes or personal information, and represents him with respect to other actors.  Such an intermediary—referred to as a Trustee—acts as a privacy-preserving proxy. It manages identifiers and credentials on behalf of users or services, enabling authentication without exposing real identities. Unlike centralized identity providers, this framework relies on cryptographic identifiers and DNSSEC to ensure trust without depending on any single administrative authority.</t>
      <t>The proposed architecture for management of identities includes the following entities:</t>
      <t>•       <strong>Users</strong> – Identity Owners – correspond to persons or device owners who use and control their identifiers. They may also control the identifiers of devices/agents they own. The User entity may delegate the management of its identifiers to a trusted entity: a User Trustee entity.</t>
      <t>•       <strong>User Trustee</strong> – provides support for registering identifiers on behalf of Users. It takes care of the credentials and acts as a trusted proxy with respect to other entities. The advantage of introducing the User Trustee entity is double: i) this kind of organisms or companies may gain reputation and be recognized as a trust provider, so trusted by relying parties (for example, the User entity, the Service entity, and the Service Trustee), ii) it hides the User from all interactions and unveiling its personal information, thus providing privacy-by-design.  The User Trustee operates based on technical transparency and auditable operations, rather than legal mandates. Its trustworthiness stems from cryptographic proofs and operational accountability, not state-granted privileges.</t>
      <t>•       <strong>Service (or Server)</strong> – the entity with respect to which persons and devices/agents want to authenticate and access authorized resources - the User entity may request access to a Service provided by the Service entity.  It uses identifiers and public keys to authenticate and authorize an Identity Owner or her devices/agents. The Service needs to trust either a User, a User Trustee, or Credential Issuers (in the simplest case, the Service Trustee).</t>
      <t>•       <strong>Service Trustee</strong> – provides support for registering identifiers and public keys on behalf of Service entities. In a symmetric way to the User Trustee entity, the Service Trustee entity may help the Service entity to manage its identities and the relationship with User entities and other Trustee entities. The Service Trustee may create, update, and cancel Service identifiers stored in an appropriate form. The Service Trustee entity may also be configured to issue the Credential to the User entity. Its role to verify the Credential on behalf of the Service entity and the Service entity is configured to authorize the access further based on the verification result provided by the Service Trustee entity. Instead of presenting Credentials directly to the Service entity, the User entity may first authenticate to the User Trustee entity. Upon successful authentication, the User Trustee entity presents the Credential either to the Service entity or to the Service Trustee entity, facilitating secure and privacy-respecting interactions. The Service entity may verify the Credential and authorize access to the requested Service based on the role or attributes indicated in the Credential. In this process, the Service entity interacts with the User Trustee entity rather than the User entity directly, thus balancing privacy and trust of user identity.
Entities store all public information on Identities (Identifiers and Public Keys) in DNS in the TXT record associated with the given Identifier.</t>
    </section>
    <section anchor="sec-self">
      <name>Self-Certifying Identifiers, Credentials, and Ephemeral Tokens</name>
      <t>A Self-Certifying Identifier (SID) is a concatenation of the Context and the Context-dependent Identifier. We assume that the User generates a pair of keys: public key P and secret key S. The Context-dependent Identifier (CI) is derived from a public key - it is the hash of public key P:
SID = Context | CI,
CI = base32(RIPEMD160(SHA256(P))), 
where SHA256 and RIPEMD160 are hash functions resulting in 256 and 160 bits, respectively, and base32 is a binary-to-text encoding scheme. The Context provides the information about the type of the cryptographic system used for generating the keys. 
The identifiers of all entities may be represented as follows:</t>
      <t>•       User entity:  sid_u, derived from the pair of keys (P_u and S_u),</t>
      <t>•       Service entity:  sid_s, derived from the pair of keys (P_s and S_s),</t>
      <t>•       User Trustee entity:  sid_tu, derived from the pair of keys (P_tu and S_tu),</t>
      <t>•       Service Trustee entity:  sid_ts, derived from the pair of keys (P_ts and S_ts).</t>
      <t>The User Trustee keeps the following information on behalf of the User entity: sid_u, sid_c and C, where sid_u is the identifier of the user entity, sid_c is the identifier of the Credential, and C is the Credential. The user identifier is for a given connection to the Service entity with the Credential.</t>
      <t>The Credential is defined as follows:</t>
      <t>C =[sid_u, sid_c, role, SHA256(sidu, sidc, role)S_ts],</t>
      <t>where sid_u is the user identifier, sid_c is the credential ID, role is an attribute of the user entity (e.g., role=admin), and the hash on this information is signed by the Service Trustee entity (in a case where the credential issuer is the Service Trustee entity) with its secret key S_ts. The Credential is kept secret by the User Trustee entity and presented to the Service entity in a form encrypted by the public key of the Service entity upon connection so only the Service entity may read it.</t>
      <t>The Service entity is configured to authorize the access by generating an Ephemeral Token (ET) based on the Credential, and authorizing the access based on the ET.</t>
      <t>ET is a short-lived token that enforces security by leaving attackers with a tiny window exploit, for example, stolen credentials. The idea is that SID identifiers are persistent (which may be stored in DNS) and only ET is used in the actual connection request to a service entity to authorize access by the user entity. ET is defined as follows:</t>
      <t>ET = [SHA256(T, L, sid_u, sid_c, K_s)]S_ts,</t>
      <t>where T is the timestamp, L is the token lifetime, sid_u is the user identifier, sid_c is the credential ID, K_s is a shared key, and the hash on this information is signed by the service trustee entity with its secret key S_ts.</t>
    </section>
    <section anchor="sec-dns">
      <name>DNS as a Public Directory of Identifiers</name>
      <t>For the main entities of the framework: User, User Trustee, Server, and Server Trustee, their identifiers and the corresponding public keys are stored in DNS and are publicly available. The identifiers and the corresponding public keys stored in the TXT record are cryptographically signed in DNS and when an entity receives a public key associated with a given identifier, DNSSEC provides trust comparable to conventional Public Key Infrastructures (PKI) used in HTTPS.</t>
      <t>Assume that the identifier of the user entity sid_u  is registered under a user trustee-controlled domain, e.g., trustee.id. So, sid_u may exist as the following fully qualified domain name (FQDN):
1exq5yqbl6l48pf0fu7juhltjkrbu2rxf.trustee.id.</t>
      <t>Other identifiers and keys may be stored in the TXT DNS record associated with the FDQN in the format based on request for comments (RFC) 6376 used for domain keys identified mail (DKIM), which uses DNS TXT records to store lists of tag/value pairs encoded in the form of tag=value separated by a semi-colon (;).</t>
      <t>So, for a given SID user identifier: 
1exq5yqbl6l48pf0fu7juhltjkrbu2rxf,</t>
      <t>its associated identifiers and keys may be stored as the following TXT record:</t>
      <t>1exq5yqbl6l48pf0fu7juhltjkrbu2rxf TXT
"sid=1exq5yqbl6l48pf0fu7juhltjkrbu2rxf;
key=1caac9c64711f66e6ed71b37dc...;
tid=16ed71b37dc5e69c5124fe93ee12446e1;
cid=1g43wxdm35yxtjyuje72j64esenyneplk"</t>
      <t>Such publicly available and trusted information may allow other entities to authenticate the User entity, whose identifier being 1exq5yqbl6l48pf0fu7juhltjkrbu2rxf, having the public key 1caac9c64711f66e6ed71b37dc..., with respect to the Service entity represented by the Service Trustee entity 16ed71b37dc5e69c5124fe93ee12446e1, using the Credential with the credential ID 1g43wxdm35yxtjyuje72j64esenyneplk.</t>
    </section>
    <section anchor="sec-dns-agent">
      <name>DNS-Based Identities for Agents</name>
      <t>The identity framework can also support automated entities such as software agents or autonomous services. These entities can be assigned SIDs and managed through User or Service Trustees, enabling secure and auditable interactions without human intervention. Use cases include IoT automation, network management, and machine-to-machine (M2M) coordination, where accountability and role-based access control are required.</t>
    </section>
    <section anchor="conclusions">
      <name>Conclusions</name>
      <t>We have presented a framework for Privacy-Preserving Identity Management based on DNS supporting large scale management of users, IoT devices, or AI agents. Our approach to anchor trust is to rely on DNS as a directory of identities with DNSSEC guaranteeing the integrity of responses. Note that this document is intended as an informational overview of a possible architecture. It does not mandate any specific implementation, nor does it promote any commercial model. Alternative directories such as DIDs or IPFS may also be used to store identifiers and public keys, enabling deployment in decentralized environments. This framework is compatible with modern identity standards such as [W3C.DID-Core] and supports compact, secure token formats like [RFC8392], while leveraging DNSSEC in a manner consistent with [RFC8552].</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>TODO</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
    </section>
    <section anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>TODO</t>
    </section>
    <section anchor="normative-references">
      <name>Normative References</name>
      <ol spacing="normal" type="1"><li>
          <t><strong>[W3C.DID-Core]</strong> W3C, "Decentralized Identifiers (DIDs)", W3C Recommendation 10 July 2022, &lt;<eref target="https://www.w3.org/TR/did-core/">https://www.w3.org/TR/did-core/</eref>&gt;.</t>
        </li>
        <li>
          <t><strong>[RFC8392]</strong> Jones, M., Lengyel, T., and S. Erdtman, "CBOR Web Token (CWT)", RFC 8392, DOI &lt;<eref target="https://doi.org/10.17487/RFC8392">https://doi.org/10.17487/RFC8392</eref>&gt;, May 2018.</t>
        </li>
        <li>
          <t><strong>[RFC8552]</strong> Finch, T., "SMTP Security via DANE TLS", RFC 8552, DOI &lt;<eref target="https://doi.org/10.17487/RFC8552">https://doi.org/10.17487/RFC8552</eref>&gt;, April 2019.</t>
        </li>
      </ol>
    </section>
  </middle>
  <back>








  </back>
  <!-- ##markdown-source:
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
zTE3NptOSoF5bBPl5I45udPct/0KqpkhY1Z3g9isKBHU17JGEfe76YO2tvBR
0V6rRdCqYYMhpTrWhSJVoijB7JSEjoOMJC5th1MBnkt+cGU9/K4lRe90xOJz
Hwv6tYQynHZItFPbmJ3LYs7QE6yKigw6EC/rrf63OB0NdndOR3hGYXB40Psw
ujx/d7Z/tNe7en1y8PSod9nv96mLbTvg9iGLX4+0bXBab1pljtdarLRxLPwX
NHaC7DfwhAz7SB2Vtstb80x0JvPNsDRDlhIc1TDrLWJygZaqGmJgm3ONO8sJ
1cP0tNwsg4InZKWurVIRABChcMbzRQvZjZx1fLNopBiqY4WQiEsQh5q2BrEV
cbcMDqL6WIAhJZ+rQduktHLoOaJ3+bliHV19rvqD9nRtqHEzFt8xY+FmLLoz
boEmN235PZKWXtTyVlm3T/49Qpde6rLo152LlsDXSi27DYkOyLUpRMsezhz0
r5hXOvUnP/zGx1bjC36WKqwW7ee3jm2QzXr+qR8a5pWxnzT4nvpFlJocoALE
MsXhdks6rgE4mNgrLciWDCl0qNDyWsboU/Hyl1AnA86PA4cCPTyzb9yLPhnm
E1t9i9Y62+noKQ7KiDM7HYNB1qTiLcoWPRXNIjv8Jfe4+k1lbiHQJejQCfCT
aub7KBzXMZKLF+cFHUGZ2uZ+B9sn6VszEOcP8f6zr7vahrhWy9KPc7JtowqW
Mnms2W59lp32TPhJqNdsN8gJ24l0Rawx8C/wepOl2wpVV+eC5uqydq4/xL8h
WwC/sHsn4Yve+bjfJmvdSPLzevz2M4ffnI9ZzPOxTTXhsSgfmNp0rshbqLBn
jkqbgHipktxohkPK+JpbkXwEICAxRVuWmDX1hVOjy4FodZRAvFIK2YbUWOsj
HGTdtqfc3Cpj4XHUqKAaF1Sg1xxzTFT7+K1vi0Mykd0YZzTHzsA8KygxMKfv
S3BDorhRpt6gzs5tgriL3DpbgMNp96X4xaHEeCDeDkQbRt4g73yiIAjAYuwD
qdQLSAfN4cP6Gdsm1VNFbwd/AlmwtDe9JA0iCv4IZHi1le3IvDXY7c2Oh/4o
UXo+feYOzzkUAwbc0NsEdIrZ7SuTu7azzhry4SK4Pkk4dq2adqPG9sfsRu3f
zbsbzfNaHU1HnmuNoKVCvtk5AaYAzD24wBPlSuqUOoq1q/8f5m/m7hYYeYfE
8X0FZ5tAFPhUFhyA4WvFh58twtytVnxqDX3JHbg0PJOrLO5J59wvLfl0YUVf
cE+zKZRQHcIsBb5w9xp6l2/A4X1wvh6PL69sMXTSKSXuZBjO+cknfQdMURc5
4UadPdm1th26Y49U0WEq+c1A2ITpBkQ6icSV8fHER6hfNTUYuiRqWpGefwWS
kFh+Or4UJXqv/n72vo/I31dff326+XWSHqVPflhO96bVsy/VPC2/XOeT6iD/
Oo2CdW1EXHDR23UO9oEbSOddgWx8R7356uzv7/1wG8FNCvDQN7XnCny/T/Q+
vDrti6PDZ0dNKeD2x4LU0iUUe6nonb0Zvev7c2fu0pJInbtHttim64I2SOXs
8UqmlWW1ha1qmn1xprbDXtph/riWIYdweqFhzxSb6L2w7JcMFzJCSiAdLCQe
d69VBuyDmo9+anV+h0luOEmjAU4D9y5MH+zuPIDzvbx37IvdHYjwcj+WMn4e
Hz15tr8/PTpSRyp5tj85fJbEURS9oPuwmKt5+FQdPY+f7h88marnh0rhjydH
ah/jYho3e3K4/posDp9uvpZfNtUX9ezgy9ET4lWbTC3T6wesZTqmvolqTcuF
jdikCtsKhUa6Z/ndbv2NY6b13BSt2J8o0up32G9umUmH3N2pq8GNo5Et7C4s
ae/myvfqfADX9DIGpLeO2laaFveaxuKmy6jtSzakawqLEz7eaCXSIR952HTa
JKXwFg3fwuFOtj9pqO+fNZYs+OYC/m2m5Zoykjs7oljE6MzwdRB/mYDzX9G0
63mJCfePbNriG37kTvaAgHKjvTHI3uFOt8J7kcH1hKCJ2hzhtY4Y/dWAebXw
ly1csopoAa5v6sN8vn3mdswNYnejLjjrHjhRYzrzoyaN+1P03h286wNVEf46
q6/mELVrH/PZqyK3XWTkDE8wDWKU1LTptL7lUrjbUnB5FRRB/49u6V1UeXPf
kYKer8T5S0XuuhOgpLlYJus7lJvOHQsOD0dBZpXkQ1Hlw4hsOePqBB9ZIlWQ
u703Zc0lwhtt2l5RyhJ3SJ6FuCXtHbCVVmtucImlgX8y0AU3QuwdREMXEE3p
D4PtRRN7xRC0m0oeWs97EGdTvlFELGph3AecfvOYAp7vlvJFVJVn9oZKeKnU
h1t4r7R14sRZu065dxwFBoGTAEXMxuolw6/wvo7KVjo32UK549HWTR0uZ8H+
SlYOG4jkz7MGTfylvUb09q3F9gVXni2mW5o2lm2tYw3jbtT+Aobyw+Hzg0/+
mq+7AE0bcd7B9T4MQue8CCVfNbJ8/PnTpwefouaSOfXfXW17SsMTf+rP2Hhx
duGHjU7en2wZQq9O4uvMrMEubXi45/7jh3BEd41dfKBLXaA8yo3Zj+ist62V
R48Efg/Eg/vugD4Y0EDMaRlcYvPu/p74qUJYHewdHAzEX9LyxS/zslwWx48f
r9fraH0YmXz2ePzhMf2/WMBR1ONPvXsG9P8yK19AZwdWWm8ECPqTySjw3yGN
vlXZbKPSgRhHrr5CdZwnJWyBvZz+9eKD+Kgmvolx+nFM8mMqQXOhvrgYtYVN
jGZB9vei/WdPfnj22C/bu28EiwuhJClh/wcIftgITuaH4K8A9HMr64Ord+PL
xgtWWoqzk/fnYvz2ykuIj75XQpr/bgkxwkl4ssxBoyHj82jn3xzXs2vGNAAA

-->

</rfc>
