[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.:
- "<zname>-<encode(zk)>"
+ 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.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [lsd0001] branch master updated: zoneid,
gnunet <=