gnunet-svn
[Top][All Lists]
Advanced

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

[lsd0001] branch master updated: zoneid


From: gnunet
Subject: [lsd0001] branch master updated: zoneid
Date: Sun, 06 Sep 2020 10:20:55 +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 91d8559  zoneid
91d8559 is described below

commit 91d8559eb5b5202fa7ba0e755511ac66c0710261
Author: Martin Schanzenbach <mschanzenbach@posteo.de>
AuthorDate: Sun Sep 6 10:14:25 2020 +0200

    zoneid
---
 draft-schanzen-gns.xml | 105 +++++++++++++++++++++++++++++--------------------
 1 file changed, 62 insertions(+), 43 deletions(-)

diff --git a/draft-schanzen-gns.xml b/draft-schanzen-gns.xml
index 30fdcd7..25530b6 100644
--- a/draft-schanzen-gns.xml
+++ b/draft-schanzen-gns.xml
@@ -157,15 +157,15 @@
        <dd>
          is the public zone key.
        </dd>
-       <dt>zid</dt>
+       <dt>ztype</dt>
        <dd>
-         is the unique identitfier of the zone type as registered in
-         GANA.
+         is the unique type of the zone type as registered in
+         GANA. A 32-bit number.
        </dd>
-       <dt>zname</dt>
+       <dt>zid</dt>
        <dd>
-         is a string representation of the zone type as registered in
-         GANA.
+         is the unique identifier of a zone. It consists of the "ztype"
+         and the public zone key "zk".
        </dd>
        <dt>HDKD-Private(d) -> d'</dt>
        <dd>
@@ -177,16 +177,45 @@
          is a HDKD function which blinds a public zone key "zk" of the
          respective type.
        </dd>
-       <dt>GNS-Label(zk) -> zkl</dt>
+       <dt>TLD(zk) -> zkl</dt>
        <dd>
          is a function which defines a mapping from zone public key to
          a string "zkl" of the respective type.
-         It is string which consists of a prefix
-         that uniquely defines the zone type followed by a zone
-         type specific string encoding of the public key, e.g.:
-         "&lt;zname&gt;-&lt;encode(zk)&gt;"
+         It is string which encodes the "ztype" as well as the zone
+         key "zk" into one or more labels.
        </dd>
      </dl>
+     <t>
+       The "zid" wire format is defined as follows:
+     </t>
+     <figure anchor="figure_zid">
+       <artwork name="" type="" align="left" alt=""><![CDATA[
+0     8     16    24    32    40    48    56
++-----+-----+-----+-----+-----+-----+-----+-----+
+|       ZONE TYPE       |      PUBLIC ZONE KEY  /
++-----+-----+-----+-----+                       /
+/                                               /
+/                                               /
+         ]]></artwork>
+       <!--        <postamble>which is a very simple example.</postamble>-->
+     </figure>
+     <t>
+       The string representation of the "zid" is defined as:
+     </t>
+     <artwork name="" type="" align="left" alt=""><![CDATA[
+zkl := <Base32(zid)>
+     ]]></artwork>
+     <t>
+       If the resulting "zkl" should be longer than 63 characters, the
+       String must be divided into smaller labels separated by the label
+       separator ".". Where the most significant bytes of the "zid" be 
contained
+       in the rightmost label of the resulting string and the least significant
+       bytes in the leftmost label of the resulting string. For example,
+       assuming a "zkl" of 130 characters:
+     </t>
+     <artwork name="" type="" align="left" alt=""><![CDATA[
+zkl[126:129].zkl[63:125].zkl[0:62]
+     ]]></artwork>
      <!-- FIXME: We probably want to define more things here such as
        how zone types are registered and identified ? -->
      <section anchor="zone_types" numbered="true" toc="default">
@@ -223,14 +252,10 @@
                generator of the elliptic curve. The public key is used to 
uniquely
                identify a GNS zone and is referred to as the "zone key".
            </dd>
-           <dt>zid</dt>
+           <dt>ztype</dt>
            <dd>
              is registered with the value "0" in GANA.
            </dd>
-           <dt>zname</dt>
-           <dd>
-             is registered with the string "pkey" in GANA.
-           </dd>
            <dt>p</dt>
            <dd>
              is the prime of edwards25519 as defined in <xref target="RFC7748" 
/>, i.e.
@@ -299,13 +324,12 @@ zk' := h mod L * zk
            while the multiplication of "d" with "h" is a scalar multiplication.
            Signatures for PKEY zones are 512-bit ECDSA deterministic
            signatures compliant with <xref target="RFC6979" />.
-           Finally, the label representation of a PKEY public zone key is
-           the Base32-encoding of "zk" prefixed with "pkey-":
          </t>
-         <artwork name="" type="" align="left" alt=""><![CDATA[
-zkl := "pkey-<Base32(zk)>"
-         ]]></artwork>
-
+         <t>
+           The "zid" of a PKEY is 32 + 4 bytes in length. This means that
+           a Base32-encoded "zkl" will always fit into a single label and does
+           not need any further conversion.
+         </t>
        </section>
        <section anchor="zone_type_edkey" numbered="true" toc="default">
          <name>EDKEY Zone</name>
@@ -733,14 +757,13 @@ q := SHA512 (HDKD-Public(zk, label))
          <artwork name="" type="" align="left" alt=""><![CDATA[
 0     8     16    24    32    40    48    56
 +-----+-----+-----+-----+-----+-----+-----+-----+
-|                   ZONE TYPE                   |
-+-----+-----+-----+-----+-----+-----+-----+-----+
 |                   SIGNATURE                   |
 /                                               /
 /                                               /
 |                                               |
 +-----+-----+-----+-----+-----+-----+-----+-----+
-|                  PUBLIC KEY                   |
+|       ZONE TYPE       |    PUBLIC ZONE KEY    |
++-----+-----+-----+-----+                       |
 /                                               /
 /                                               /
 |                                               |
@@ -1270,10 +1293,10 @@ NICK: john (Supplemental)
 +-----------------------------------------------+
 |                   TIMESTAMP                   |
 +-----------------------------------------------+
-|                  PUBLIC KEY                   |
-|                                               |
-|                                               |
-|                                               |
+|       ZONE TYPE       |    PUBLIC ZONE KEY    |
++-----+-----+-----+-----+                       |
+/                                               /
+/                                               /
 +-----+-----+-----+-----+-----+-----+-----+-----+
            ]]></artwork>
        </figure>
@@ -1352,12 +1375,10 @@ NICK: john (Supplemental)
 |                                               |
 |                                               |
 +-----+-----+-----+-----+-----+-----+-----+-----+
-|                   ZONE TYPE                   |
-+-----+-----+-----+-----+-----+-----+-----+-----+
-|                  PUBLIC KEY                   |
-|                                               |
-|                                               |
-|                                               |
+|       ZONE TYPE       |    PUBLIC ZONE KEY    |
++-----+-----+-----+-----+                       |
+/                                               /
+/                                               /
 +-----+-----+-----+-----+-----+-----+-----+-----+
            ]]></artwork>
        </figure>
@@ -1397,9 +1418,9 @@ NICK: john (Supplemental)
          </dd>
          <dt>ZONE TYPE</dt>
          <dd>
-           The zone type ID (zid) corresponding to the zone public key.
+           The 32-bit zone type corresponding to the zone public key.
          </dd>
-         <dt>PUBLIC KEY</dt>
+         <dt>ZONE PUBLIC KEY</dt>
          <dd>
            is the public key "zk" of the zone which is being revoked and
            the key to be used to verify SIGNATURE.
@@ -1416,12 +1437,10 @@ NICK: john (Supplemental)
 +-----+-----+-----+-----+-----+-----+-----+-----+
 |         SIZE (0x30)   |       PURPOSE (0x03)  |
 +-----+-----+-----+-----+-----+-----+-----+-----+
-|                   ZONE TYPE                   |
-+-----+-----+-----+-----+-----+-----+-----+-----+
-|                  PUBLIC KEY                   |
+|       ZONE TYPE       |     ZONE PUBLIC KEY   |
++-----+-----+-----+-----+                       |
 /                                               /
 /                                               /
-|                                               |
 +-----+-----+-----+-----+-----+-----+-----+-----+
 |                   TIMESTAMP                   |
 +-----+-----+-----+-----+-----+-----+-----+-----+
@@ -1441,9 +1460,9 @@ NICK: john (Supplemental)
          </dd>
          <dt>ZONE TYPE</dt>
          <dd>
-           The zone type ID (zid) corresponding to the zone public key.
+           The 32-bit zone type corresponding to the zone public key.
          </dd>
-         <dt>PUBLIC KEY / TIMESTAMP</dt>
+         <dt>ZONE PUBLIC KEY / TIMESTAMP</dt>
          <dd>Both values as defined in the revocation data object above.</dd>
        </dl>
        <t>

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

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