gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] [lsd0001] branch master updated: continue spec


From: gnunet
Subject: [GNUnet-SVN] [lsd0001] branch master updated: continue spec
Date: Sat, 05 Oct 2019 10:39:03 +0200

This is an automated email from the git hooks/post-receive script.

martin-schanzenbach pushed a commit to branch master
in repository lsd0001.

The following commit(s) were added to refs/heads/master by this push:
     new 50248ef  continue spec
50248ef is described below

commit 50248ef20609e793355f92cd76d25f381803a72e
Author: Schanzenbach, Martin <address@hidden>
AuthorDate: Sat Oct 5 10:36:52 2019 +0200

    continue spec
---
 draft-schanzen-gns.html | 110 ++++++++++++++++-------
 draft-schanzen-gns.txt  | 234 ++++++++++++++++++++++++------------------------
 draft-schanzen-gns.xml  |  27 +++++-
 3 files changed, 219 insertions(+), 152 deletions(-)

diff --git a/draft-schanzen-gns.html b/draft-schanzen-gns.html
index ca80214..d8e173a 100644
--- a/draft-schanzen-gns.html
+++ b/draft-schanzen-gns.html
@@ -1113,6 +1113,14 @@ async function addMetadata(){try{const 
e=document.styleSheets[0].cssRules;for(le
 </li>
           <li class="toc ulEmpty" id="section-boilerplate.3-1.6">
             <p id="section-boilerplate.3-1.6.1"><a href="#section-6" 
class="xref">6</a>.  <a href="#name-record-resolution" class="xref">Record 
Resolution</a><a href="#section-boilerplate.3-1.6.1" class="pilcrow">¶</a></p>
+<ul class="toc ulEmpty">
+<li class="toc ulEmpty" id="section-boilerplate.3-1.6.2.1">
+                <p id="section-boilerplate.3-1.6.2.1.1"><a href="#section-6.1" 
class="xref">6.1</a>.  <a href="#name-entry-zone" class="xref">Entry Zone</a><a 
href="#section-boilerplate.3-1.6.2.1.1" class="pilcrow">¶</a></p>
+</li>
+              <li class="toc ulEmpty" id="section-boilerplate.3-1.6.2.2">
+                <p id="section-boilerplate.3-1.6.2.2.1"><a href="#section-6.2" 
class="xref">6.2</a>.  <a href="#name-recursive-resolution" 
class="xref">Recursive Resolution</a><a href="#section-boilerplate.3-1.6.2.2.1" 
class="pilcrow">¶</a></p>
+</li>
+            </ul>
 </li>
           <li class="toc ulEmpty" id="section-boilerplate.3-1.7">
             <p id="section-boilerplate.3-1.7.1"><a href="#section-7" 
class="xref">7</a>.  <a href="#name-namespace-revocation" 
class="xref">Namespace Revocation</a><a href="#section-boilerplate.3-1.7.1" 
class="pilcrow">¶</a></p>
@@ -1232,11 +1240,18 @@ async function addMetadata(){try{const 
e=document.styleSheets[0].cssRules;for(le
 <a href="#section-3" class="section-number selfRef">3. </a><a 
href="#name-resource-records" class="section-name selfRef">Resource records</a>
       </h2>
 <p id="section-3-1">
+       A GNS implementor MUST provide a mechanism to create and manage resource
+       records for local zones. A local zone is established by creating a zone
+       key pair. Records may be added to each zone, hence a (local) persistency
+       mechanism for resource records and zones must be provided.
+       This local zone database is used by the GNS resolver implementation
+       and to publish record information.<a href="#section-3-1" 
class="pilcrow">¶</a></p>
+<p id="section-3-2">
        A GNS resource record holds the data of a specific record in a zone.
-       The resource record format is defined as follows:<a href="#section-3-1" 
class="pilcrow">¶</a></p>
+       The resource record format is defined as follows:<a href="#section-3-2" 
class="pilcrow">¶</a></p>
 <div id="figure_gnsrecord">
 <figure id="figure-1">
-        <div class="artwork art-text alignLeft" id="section-3-2.1">
+        <div class="artwork art-text alignLeft" id="section-3-3.1">
 <pre>
          0     8     16    24    32    40    48    56
          +-----+-----+-----+-----+-----+-----+-----+-----+
@@ -1252,47 +1267,47 @@ async function addMetadata(){try{const 
e=document.styleSheets[0].cssRules;for(le
 </div>
 <figcaption><a href="#figure-1" class="selfRef">Figure 
1</a></figcaption></figure>
 </div>
-<p id="section-3-3">where:<a href="#section-3-3" class="pilcrow">¶</a></p>
-<dl class="dlParallel" id="section-3-4">
-        <dt id="section-3-4.1">EXPIRATION</dt>
-        <dd id="section-3-4.2">
+<p id="section-3-4">where:<a href="#section-3-4" class="pilcrow">¶</a></p>
+<dl class="dlParallel" id="section-3-5">
+        <dt id="section-3-5.1">EXPIRATION</dt>
+        <dd id="section-3-5.2">
          denotes the absolute 64-bit expiration date of the record.
          In microseconds since midnight (0 hour), January 1, 1970 in network
-         byte order.<a href="#section-3-4.2" class="pilcrow">¶</a>
+         byte order.<a href="#section-3-5.2" class="pilcrow">¶</a>
 </dd>
-        <dt id="section-3-4.3">DATA SIZE</dt>
-        <dd id="section-3-4.4">
+        <dt id="section-3-5.3">DATA SIZE</dt>
+        <dd id="section-3-5.4">
          denotes the 32-bit size of the DATA field in bytes and in network byte
-         order.<a href="#section-3-4.4" class="pilcrow">¶</a>
+         order.<a href="#section-3-5.4" class="pilcrow">¶</a>
 </dd>
-        <dt id="section-3-4.5">TYPE</dt>
-        <dd id="section-3-4.6">
+        <dt id="section-3-5.5">TYPE</dt>
+        <dd id="section-3-5.6">
          is the 32-bit resource record type. This type can be one of the GNS 
resource
          records as defined in <a href="#rrecords" class="xref">Section 3</a> 
or a DNS record
          type as defined in <span>[<a href="#RFC1035" 
class="xref">RFC1035</a>]</span> or any of the
          complementary standardized DNS resource record types. This value must 
be
          stored in network byte order. Note that values
-         below 2^16 are reserved for allocation via IANA (<span>[<a 
href="#RFC6895" class="xref">RFC6895</a>]</span>).<a href="#section-3-4.6" 
class="pilcrow">¶</a>
+         below 2^16 are reserved for allocation via IANA (<span>[<a 
href="#RFC6895" class="xref">RFC6895</a>]</span>).<a href="#section-3-5.6" 
class="pilcrow">¶</a>
 </dd>
-        <dt id="section-3-4.7">FLAGS</dt>
-        <dd id="section-3-4.8">
-         is a 32-bit resource record flags field (see below).<a 
href="#section-3-4.8" class="pilcrow">¶</a>
+        <dt id="section-3-5.7">FLAGS</dt>
+        <dd id="section-3-5.8">
+         is a 32-bit resource record flags field (see below).<a 
href="#section-3-5.8" class="pilcrow">¶</a>
 </dd>
-        <dt id="section-3-4.9">DATA</dt>
-        <dd id="section-3-4.10">
+        <dt id="section-3-5.9">DATA</dt>
+        <dd id="section-3-5.10">
          the variable-length resource record data payload. The contents are 
defined
          by the
-         respective type of the resource record.<a href="#section-3-4.10" 
class="pilcrow">¶</a>
+         respective type of the resource record.<a href="#section-3-5.10" 
class="pilcrow">¶</a>
 </dd>
       </dl>
-<p id="section-3-5">
+<p id="section-3-6">
        Flags indicate metadata surrounding the resource record. A flag
        value of 0 indicates that all flags are unset. The following
        illustrates the flag distribution in the 32-bit flag value of a
-       resource record:<a href="#section-3-5" class="pilcrow">¶</a></p>
+       resource record:<a href="#section-3-6" class="pilcrow">¶</a></p>
 <div id="figure_flag">
 <figure id="figure-2">
-        <div class="artwork art-text alignLeft" id="section-3-6.1">
+        <div class="artwork art-text alignLeft" id="section-3-7.1">
 <pre>
          ... 5       4         3        2        1        0
          ------+--------+--------+--------+--------+--------+
@@ -1302,31 +1317,31 @@ async function addMetadata(){try{const 
e=document.styleSheets[0].cssRules;for(le
 </div>
 <figcaption><a href="#figure-2" class="selfRef">Figure 
2</a></figcaption></figure>
 </div>
-<p id="section-3-7">
-       where:<a href="#section-3-7" class="pilcrow">¶</a></p>
-<dl class="dlParallel" id="section-3-8">
-        <dt id="section-3-8.1">SHADOW</dt>
-        <dd id="section-3-8.2">
+<p id="section-3-8">
+       where:<a href="#section-3-8" class="pilcrow">¶</a></p>
+<dl class="dlParallel" id="section-3-9">
+        <dt id="section-3-9.1">SHADOW</dt>
+        <dd id="section-3-9.2">
          If this flag is set, this record should be ignored by resolvers 
unless all (other)
          records of the same record type have expired.  Used to allow zone 
publishers to
          facilitate good performance when records change by allowing them to 
put future
          values of records into the DHT. This way, future values can propagate 
and may be
-         cached before the transition becomes active.<a href="#section-3-8.2" 
class="pilcrow">¶</a>
+         cached before the transition becomes active.<a href="#section-3-9.2" 
class="pilcrow">¶</a>
 </dd>
-        <dt id="section-3-8.3">EXPREL</dt>
-        <dd id="section-3-8.4">
+        <dt id="section-3-9.3">EXPREL</dt>
+        <dd id="section-3-9.4">
          The expiration time value of the record is a relative time (still in 
microseconds)
          and not an absolute time. This flag should never be encountered by a 
resolver
          for records obtained from the DHT, but might be present when a 
resolver looks up
-         private records of a zone hosted locally.<a href="#section-3-8.4" 
class="pilcrow">¶</a>
+         private records of a zone hosted locally.<a href="#section-3-9.4" 
class="pilcrow">¶</a>
 </dd>
-        <dt id="section-3-8.5">PRIVATE</dt>
-        <dd id="section-3-8.6">
+        <dt id="section-3-9.5">PRIVATE</dt>
+        <dd id="section-3-9.6">
          This is a private record of this peer and it should thus not be
          published in the DHT.  Thus, this flag should never be encountered by
          a resolver for records obtained from the DHT.
          Private records should still be considered just like
-         regular records when resolving labels in local zones.<a 
href="#section-3-8.6" class="pilcrow">¶</a>
+         regular records when resolving labels in local zones.<a 
href="#section-3-9.6" class="pilcrow">¶</a>
 </dd>
       </dl>
 <div id="gnsrecords_pkey">
@@ -1586,6 +1601,9 @@ async function addMetadata(){try{const 
e=document.styleSheets[0].cssRules;for(le
          block in the DHT.
          The contained resource records are encrypted using a symmetric
          encryption scheme.
+         A GNS implementation must publish resource record blocks in accordance
+         to the properties and recommendations of the underlying DHT. This may
+         include a periodic refresh publication.
          A GNS resource records block has the following format:<a 
href="#section-4.2-1" class="pilcrow">¶</a></p>
 <div id="figure_record_block">
 <figure id="figure-7">
@@ -1837,6 +1855,30 @@ async function addMetadata(){try{const 
e=document.styleSheets[0].cssRules;for(le
       </h2>
 <p id="section-6-1">
        TODO<a href="#section-6-1" class="pilcrow">¶</a></p>
+<div id="entry_zone">
+<section id="section-6.1">
+        <h3 id="name-entry-zone">
+<a href="#section-6.1" class="section-number selfRef">6.1. </a><a 
href="#name-entry-zone" class="section-name selfRef">Entry Zone</a>
+        </h3>
+<p id="section-6.1-1">
+         There are three sources from which the entry zone can be 
determined:<a href="#section-6.1-1" class="pilcrow">¶</a></p>
+<ul>
+<li id="section-6.1-2.1">Local zone store<a href="#section-6.1-2.1" 
class="pilcrow">¶</a>
+</li>
+          <li id="section-6.1-2.2">External prefix to zone key mappings<a 
href="#section-6.1-2.2" class="pilcrow">¶</a>
+</li>
+          <li id="section-6.1-2.3">Zone key TLD<a href="#section-6.1-2.3" 
class="pilcrow">¶</a>
+</li>
+        </ul>
+</section>
+</div>
+<div id="recursion">
+<section id="section-6.2">
+        <h3 id="name-recursive-resolution">
+<a href="#section-6.2" class="section-number selfRef">6.2. </a><a 
href="#name-recursive-resolution" class="section-name selfRef">Recursive 
Resolution</a>
+      </h3>
+</section>
+</div>
 </section>
 </div>
 <div id="revocation">
diff --git a/draft-schanzen-gns.txt b/draft-schanzen-gns.txt
index 46241a9..b44d435 100644
--- a/draft-schanzen-gns.txt
+++ b/draft-schanzen-gns.txt
@@ -62,9 +62,9 @@ Table of Contents
 
    1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
    2.  Zones . . . . . . . . . . . . . . . . . . . . . . . . . . . .   3
-   3.  Resource records  . . . . . . . . . . . . . . . . . . . . . .   3
+   3.  Resource records  . . . . . . . . . . . . . . . . . . . . . .   4
      3.1.  PKEY  . . . . . . . . . . . . . . . . . . . . . . . . . .   5
-     3.2.  GNS2DNS . . . . . . . . . . . . . . . . . . . . . . . . .   5
+     3.2.  GNS2DNS . . . . . . . . . . . . . . . . . . . . . . . . .   6
      3.3.  LEHO  . . . . . . . . . . . . . . . . . . . . . . . . . .   6
      3.4.  BOX . . . . . . . . . . . . . . . . . . . . . . . . . . .   7
    4.  Publishing records  . . . . . . . . . . . . . . . . . . . . .   8
@@ -73,12 +73,14 @@ Table of Contents
      4.3.  Block data encryption and decryption  . . . . . . . . . .  10
    5.  Internationalization and Character Encoding . . . . . . . . .  13
    6.  Record Resolution . . . . . . . . . . . . . . . . . . . . . .  13
+     6.1.  Entry Zone  . . . . . . . . . . . . . . . . . . . . . . .  13
+     6.2.  Recursive Resolution  . . . . . . . . . . . . . . . . . .  13
    7.  Namespace Revocation  . . . . . . . . . . . . . . . . . . . .  13
    8.  Security Considerations . . . . . . . . . . . . . . . . . . .  13
    9.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .  13
    10. Test Vectors  . . . . . . . . . . . . . . . . . . . . . . . .  13
-   11. Normative References  . . . . . . . . . . . . . . . . . . . .  15
-   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  16
+   11. Normative References  . . . . . . . . . . . . . . . . . . . .  16
+   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  17
 
 1.  Introduction
 
@@ -104,8 +106,6 @@ Table of Contents
 
    This document contains the GNU Name System (GNS) technical
    specification of the GNU Name System (GNS), a fully decentralized and
-   censorship-resistant name system.  GNS provides a privacy-enhancing
-   alternative to the Domain Name System (DNS).  The design of GNS
 
 
 
@@ -114,6 +114,8 @@ Schanzenbach, et al.     Expires 24 January 2020            
    [Page 2]
 Internet-Draft             The GNU Name System                 July 2019
 
 
+   censorship-resistant name system.  GNS provides a privacy-enhancing
+   alternative to the Domain Name System (DNS).  The design of GNS
    incorporates the capability to integrate and coexist with DNS.  GNS
    is based on the principle of a petname system and builds on ideas
    from the Simple Distributed Security Infrastructure (SDSI),
@@ -156,10 +158,8 @@ Internet-Draft             The GNU Name System             
    July 2019
       the elliptic curve.  The public key is used to uniquely identify a
       GNS zone and is referred to as the "zone key".
 
-3.  Resource records
 
-   A GNS resource record holds the data of a specific record in a zone.
-   The resource record format is defined as follows:
+
 
 
 
@@ -170,6 +170,18 @@ Schanzenbach, et al.     Expires 24 January 2020           
     [Page 3]
 Internet-Draft             The GNU Name System                 July 2019
 
 
+3.  Resource records
+
+   A GNS implementor MUST provide a mechanism to create and manage
+   resource records for local zones.  A local zone is established by
+   creating a zone key pair.  Records may be added to each zone, hence a
+   (local) persistency mechanism for resource records and zones must be
+   provided.  This local zone database is used by the GNS resolver
+   implementation and to publish record information.
+
+   A GNS resource record holds the data of a specific record in a zone.
+   The resource record format is defined as follows:
+
             0     8     16    24    32    40    48    56
             +-----+-----+-----+-----+-----+-----+-----+-----+
             |                   EXPIRATION                  |
@@ -206,6 +218,14 @@ Internet-Draft             The GNU Name System             
    July 2019
 
    Flags indicate metadata surrounding the resource record.  A flag
    value of 0 indicates that all flags are unset.  The following
+
+
+
+Schanzenbach, et al.     Expires 24 January 2020                [Page 4]
+
+Internet-Draft             The GNU Name System                 July 2019
+
+
    illustrates the flag distribution in the 32-bit flag value of a
    resource record:
 
@@ -218,14 +238,6 @@ Internet-Draft             The GNU Name System             
    July 2019
 
    where:
 
-
-
-
-Schanzenbach, et al.     Expires 24 January 2020                [Page 4]
-
-Internet-Draft             The GNU Name System                 July 2019
-
-
    SHADOW  If this flag is set, this record should be ignored by
       resolvers unless all (other) records of the same record type have
       expired.  Used to allow zone publishers to facilitate good
@@ -263,6 +275,13 @@ Internet-Draft             The GNU Name System             
    July 2019
 
                                   Figure 3
 
+
+
+Schanzenbach, et al.     Expires 24 January 2020                [Page 5]
+
+Internet-Draft             The GNU Name System                 July 2019
+
+
 3.2.  GNS2DNS
 
    It is possible to delegate a label back into DNS through a GNS2DNS
@@ -274,14 +293,6 @@ Internet-Draft             The GNU Name System             
    July 2019
    addresses, allowing the resolver to skip this step.  The DNS server
    names may themselves be names in GNS or DNS.  If the DNS server name
    ends in ".+", the rest of the name is to be interpreted relative to
-
-
-
-Schanzenbach, et al.     Expires 24 January 2020                [Page 5]
-
-Internet-Draft             The GNU Name System                 July 2019
-
-
    the zone of the GNS2DNS record.  Then, the DNS name from the GNS2DNS
    record is appended to the remainder of the name to be resolved, and
    resolved by querying the name server(s).  Multiple GNS2DNS records
@@ -316,6 +327,17 @@ Internet-Draft             The GNU Name System             
    July 2019
    single resource record with an IPv4 or IPv6 address.  A LEHO DATA
    entry has the following format:
 
+
+
+
+
+
+
+Schanzenbach, et al.     Expires 24 January 2020                [Page 6]
+
+Internet-Draft             The GNU Name System                 July 2019
+
+
               0     8     16    24    32    40    48    56
               +-----+-----+-----+-----+-----+-----+-----+-----+
               |                 LEGACY HOSTNAME               |
@@ -330,14 +352,6 @@ Internet-Draft             The GNU Name System             
    July 2019
    (e.g.  "Host:" header) it must be converted to a punycode
    representation [RFC3492].
 
-
-
-
-Schanzenbach, et al.     Expires 24 January 2020                [Page 6]
-
-Internet-Draft             The GNU Name System                 July 2019
-
-
 3.4.  BOX
 
    In GNS, every "." in a name delegates to another zone, and GNS
@@ -371,20 +385,6 @@ Internet-Draft             The GNU Name System             
    July 2019
    PROTO  the 16-bit protocol number, e.g. 6 for tcp.  In network byte
       order.
 
-   SVC  the 16-bit service value of the boxed record, i.e. the port
-      number.  In network byte order.
-
-   TYPE  is the 32-bit record type of the boxed record.  In network byte
-      order.
-
-   RECORD DATA  is a variable length field containing the "DATA" format
-      of TYPE as defined for the respective TYPE in DNS.
-
-
-
-
-
-
 
 
 
@@ -394,6 +394,15 @@ Schanzenbach, et al.     Expires 24 January 2020           
     [Page 7]
 Internet-Draft             The GNU Name System                 July 2019
 
 
+   SVC  the 16-bit service value of the boxed record, i.e. the port
+      number.  In network byte order.
+
+   TYPE  is the 32-bit record type of the boxed record.  In network byte
+      order.
+
+   RECORD DATA  is a variable length field containing the "DATA" format
+      of TYPE as defined for the respective TYPE in DNS.
+
 4.  Publishing records
 
    GNS resource records are published in a distributed hash table (DHT).
@@ -434,15 +443,6 @@ Internet-Draft             The GNU Name System             
    July 2019
    zk_h  is a 256-bit public key derived from the zone key "zk" using
       the keying material "h".
 
-   L  is the prime-order subgroup as defined in Section 2.
-
-   q  Is the 512-bit DHT key under which the resource records block is
-      published.  It is the SHA512 hash over the public key "zk_h"
-      corresponding to the derived private key "d_h".
-
-   We point out that the multiplication of "zk" with "h" is a point
-
-
 
 
 Schanzenbach, et al.     Expires 24 January 2020                [Page 8]
@@ -450,6 +450,13 @@ Schanzenbach, et al.     Expires 24 January 2020           
     [Page 8]
 Internet-Draft             The GNU Name System                 July 2019
 
 
+   L  is the prime-order subgroup as defined in Section 2.
+
+   q  Is the 512-bit DHT key under which the resource records block is
+      published.  It is the SHA512 hash over the public key "zk_h"
+      corresponding to the derived private key "d_h".
+
+   We point out that the multiplication of "zk" with "h" is a point
    multiplication, while the multiplication of "d" with "h" is a scalar
    multiplication.
 
@@ -457,8 +464,11 @@ Internet-Draft             The GNU Name System             
    July 2019
 
    GNS records are grouped by their labels and published as a single
    block in the DHT.  The contained resource records are encrypted using
-   a symmetric encryption scheme.  A GNS resource records block has the
-   following format:
+   a symmetric encryption scheme.  A GNS implementation must publish
+   resource record blocks in accordance to the properties and
+   recommendations of the underlying DHT.  This may include a periodic
+   refresh publication.  A GNS resource records block has the following
+   format:
 
               0     8     16    24    32    40    48    56
               +-----+-----+-----+-----+-----+-----+-----+-----+
@@ -489,6 +499,13 @@ Internet-Draft             The GNU Name System             
    July 2019
 
    where:
 
+
+
+Schanzenbach, et al.     Expires 24 January 2020                [Page 9]
+
+Internet-Draft             The GNU Name System                 July 2019
+
+
    SIGNATURE  A 512-bit ECDSA deterministic signature compliant with
       [RFC6979].  The signature is computed over the data following the
       PUBLIC KEY field.  The signature is created using the derived
@@ -498,14 +515,6 @@ Internet-Draft             The GNU Name System             
    July 2019
       SIGNATURE.  The wire format of this value is defined in [RFC8032],
       Section 5.1.5.
 
-
-
-
-Schanzenbach, et al.     Expires 24 January 2020                [Page 9]
-
-Internet-Draft             The GNU Name System                 July 2019
-
-
    SIZE  A 32-bit value containing the length of the signed data
       following the PUBLIC KEY field in network byte order.  This value
       always includes the length of the fields SIZE (4), PURPOSE (4) and
@@ -547,15 +556,6 @@ Internet-Draft             The GNU Name System             
    July 2019
 
 
 
-
-
-
-
-
-
-
-
-
 
 Schanzenbach, et al.     Expires 24 January 2020               [Page 10]
 
@@ -694,6 +694,18 @@ Internet-Draft             The GNU Name System             
    July 2019
 
    TODO
 
+6.1.  Entry Zone
+
+   There are three sources from which the entry zone can be determined:
+
+   *  Local zone store
+
+   *  External prefix to zone key mappings
+
+   *  Zone key TLD
+
+6.2.  Recursive Resolution
+
 7.  Namespace Revocation
 
    TODO
@@ -711,6 +723,13 @@ Internet-Draft             The GNU Name System             
    July 2019
    The following represents a test vector for a record of type MX with a
    priority of 10 and the mail hostname mail.example.com.
 
+
+
+Schanzenbach, et al.     Expires 24 January 2020               [Page 13]
+
+Internet-Draft             The GNU Name System                 July 2019
+
+
           label := "mail"
 
           d :=
@@ -722,14 +741,6 @@ Internet-Draft             The GNU Name System             
    July 2019
           zk (public zone key) :=
           dff911496d025d7e
           0885c03d19153e99
-
-
-
-Schanzenbach, et al.     Expires 24 January 2020               [Page 13]
-
-Internet-Draft             The GNU Name System                 July 2019
-
-
           4f213f23ea719eca
           17fc32dc410e082e
 
@@ -767,6 +778,14 @@ Internet-Draft             The GNU Name System             
    July 2019
 
           AES_IV :=
           a808b929bc9fad7a
+
+
+
+Schanzenbach, et al.     Expires 24 January 2020               [Page 14]
+
+Internet-Draft             The GNU Name System                 July 2019
+
+
           686bbe3432bed77a
 
           TWOFISH_KEY :=
@@ -779,13 +798,6 @@ Internet-Draft             The GNU Name System             
    July 2019
           071be189a9d236f9
           b4a3654bb8c281d4
 
-
-
-Schanzenbach, et al.     Expires 24 January 2020               [Page 14]
-
-Internet-Draft             The GNU Name System                 July 2019
-
-
           RDATA :=
           0000000100059412 RR COUNT | EXPIRA-
           09ddea0f00000014  -TION    | DATA SIZE (20)
@@ -823,6 +835,13 @@ Internet-Draft             The GNU Name System             
    July 2019
           001fd19a6406a721
           713f0a0d
 
+
+
+Schanzenbach, et al.     Expires 24 January 2020               [Page 15]
+
+Internet-Draft             The GNU Name System                 July 2019
+
+
 11.  Normative References
 
    [RFC1034]  Mockapetris, P., "Domain names - concepts and facilities",
@@ -833,15 +852,6 @@ Internet-Draft             The GNU Name System             
    July 2019
               specification", STD 13, RFC 1035, DOI 10.17487/RFC1035,
               November 1987, <https://www.rfc-editor.org/info/rfc1035>.
 
-
-
-
-
-Schanzenbach, et al.     Expires 24 January 2020               [Page 15]
-
-Internet-Draft             The GNU Name System                 July 2019
-
-
    [RFC3492]  Costello, A., "Punycode: A Bootstring encoding of Unicode
               for Internationalized Domain Names in Applications
               (IDNA)", RFC 3492, DOI 10.17487/RFC3492, March 2003,
@@ -880,6 +890,14 @@ Internet-Draft             The GNU Name System             
    July 2019
               for Security", RFC 7748, DOI 10.17487/RFC7748, January
               2016, <https://www.rfc-editor.org/info/rfc7748>.
 
+
+
+
+Schanzenbach, et al.     Expires 24 January 2020               [Page 16]
+
+Internet-Draft             The GNU Name System                 July 2019
+
+
    [RFC8032]  Josefsson, S. and I. Liusvaara, "Edwards-Curve Digital
               Signature Algorithm (EdDSA)", RFC 8032,
               DOI 10.17487/RFC8032, January 2017,
@@ -890,14 +908,6 @@ Internet-Draft             The GNU Name System             
    July 2019
 
 Authors' Addresses
 
-
-
-
-Schanzenbach, et al.     Expires 24 January 2020               [Page 16]
-
-Internet-Draft             The GNU Name System                 July 2019
-
-
    Martin Schanzenbach
    GNUnet e.V.
    Boltzmannstrasse 3
@@ -933,16 +943,6 @@ Internet-Draft             The GNU Name System             
    July 2019
 
 
 
-
-
-
-
-
-
-
-
-
-
 
 
 
diff --git a/draft-schanzen-gns.xml b/draft-schanzen-gns.xml
index 500ae5d..edf77f6 100644
--- a/draft-schanzen-gns.xml
+++ b/draft-schanzen-gns.xml
@@ -152,10 +152,17 @@
          as the "zone key".
        </dd>
      </dl>
-
    </section>
    <section anchor="rrecords" numbered="true" toc="default">
      <name>Resource records</name>
+     <t>
+       A GNS implementor MUST provide a mechanism to create and manage resource
+       records for local zones. A local zone is established by creating a zone
+       key pair. Records may be added to each zone, hence a (local) persistency
+       mechanism for resource records and zones must be provided.
+       This local zone database is used by the GNS resolver implementation
+       and to publish record information.
+     </t>
      <t>
        A GNS resource record holds the data of a specific record in a zone.
        The resource record format is defined as follows:
@@ -473,6 +480,9 @@
          block in the DHT.
          The contained resource records are encrypted using a symmetric
          encryption scheme.
+         A GNS implementation must publish resource record blocks in accordance
+         to the properties and recommendations of the underlying DHT. This may
+         include a periodic refresh publication.
          A GNS resource records block has the following format:
        </t>
        <figure anchor="figure_record_block">
@@ -713,6 +723,21 @@
      <t>
        TODO
      </t>
+     <section anchor="entry_zone" numbered="true" toc="default">
+       <name>Entry Zone</name>
+       <t>
+         There are three sources from which the entry zone can be determined:
+       </t>
+         <ul>
+           <li>Local zone store</li>
+           <li>External prefix to zone key mappings</li>
+           <li>Zone key TLD</li>
+         </ul>
+     </section>
+     <section anchor="recursion" numbered="true" toc="default">
+       <name>Recursive Resolution</name>
+     </section>
+
    </section>
    <section anchor="revocation" numbered="true" toc="default">
      <name>Namespace Revocation</name>

-- 
To stop receiving notification emails like this one, please contact
address@hidden.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]