commit 14c9eafbb7e927831f12e6382a942d6ca96adf3c
parent bab08efed4bca4840e11bec40fb4e85e7805a76e
Author: Martin Schanzenbach <schanzen@gnunet.org>
Date: Thu, 29 Jun 2023 12:32:09 +0200
Merge branch 'master' of git+ssh://git.gnunet.org/lsd0001
Diffstat:
1 file changed, 485 insertions(+), 461 deletions(-)
diff --git a/draft-schanzen-gns.xml b/draft-schanzen-gns.xml
@@ -125,10 +125,11 @@
target="RFC1035" />, GNS roughly follows the idea of a local
root zone deployment (see <xref target="RFC8806"/>), with the
difference that the design encourages alternative roots and
- does not expect all deployments use the same or any specific
+ does not expect all deployments to use the same or any specific
root zone. In the GNS reference implementation, users can
autonomously and freely delegate control of names to zones
through their local configurations.
+ In this model, users are expected to manage their local configurations, so as to avoid any confusion as to how names are resolved.
</t>
<t>
Name resolution and zone dissemination is based on the
@@ -216,10 +217,9 @@
<dt>Name</dt>
<dd>
- A name in GNS is a domain name as defined in <xref target="RFC8499"/>
- as an ordered list of labels.
- Names are UTF-8 <xref target="RFC3629" /> strings consisting of the
- list of labels concatenated with a label separator.
+ A name in GNS is a domain name as defined in <xref target="RFC8499"/>:
+ Names are UTF-8 <xref target="RFC3629" /> strings consisting of an
+ ordered list of labels concatenated with a label separator.
Names are resolved starting from the rightmost label.
GNS does not impose length restrictions on names or labels.
However, applications <bcp14>MAY</bcp14> ensure that name and label lengths are
@@ -595,6 +595,7 @@ example.pet.gns.alt
+-----+-----+-----+-----+ /
/ /
/ /
++-----+-----+-----+-----+-----+-----+-----+-----+
]]></artwork>
</figure>
<t>
@@ -1039,7 +1040,7 @@ zTLD[126..129].zTLD[63..125].zTLD[0..62]
the GANA "GNS Record Types" registry (see <xref target="GANA"/>).
Not supporting some zone types will result in resolution failures in case
the respective zone type is encountered.
- This is be a valid choice if some zone delegation record types have been
+ This can be a valid choice if some zone delegation record types have been
determined to be cryptographically insecure.
Zone delegation records <bcp14>MUST NOT</bcp14> be stored and published
under the apex label.
@@ -1089,7 +1090,8 @@ zTLD[126..129].zTLD[63..125].zTLD[0..62]
<t>
For PKEY zones the zone key material is derived using the
curve parameters of the twisted Edwards representation
- of Curve25519 <xref target="RFC7748" /> (a.k.a. Ed25519)
+ of Curve25519 <xref target="RFC7748" /> (the reasoning behind choosing
+ this curve can be found in <xref target="security_cryptography"/>)
with the ECDSA scheme <xref target="RFC6979" />.
The following naming convention is used for the cryptographic primitives of PKEY zones:
</t>
@@ -1109,7 +1111,7 @@ zTLD[126..129].zTLD[63..125].zTLD[0..62]
</dd>
<dt>G</dt>
<dd>
- is the group generator (X(P),Y(P)) of edwards25519 as defined in
+ is the group generator (X(P),Y(P)). With X(P),Y(P) of edwards25519 as defined in
<xref target="RFC7748" />.
</dd>
<dt>L</dt>
@@ -1287,7 +1289,7 @@ S-Decrypt(zk,label,expiration,ciphertext):
</dd>
<dt>G</dt>
<dd>
- is the group generator (X(P),Y(P)) of edwards25519 as defined in
+ is the group generator (X(P),Y(P)). With X(P),Y(P) of edwards25519 as defined in
<xref target="RFC8032" />.
</dd>
<dt>L</dt>
@@ -2011,6 +2013,7 @@ q := SHA-512 (ZKDF(zk, label))
+-----+-----+-----+-----+-----+-----+-----+-----+
/ PADDING /
/ /
++-----+-----+-----+-----+-----+-----+-----+-----+
]]></artwork>
</figure>
<dl>
@@ -3760,661 +3763,682 @@ Value Symbol Symbol
<section>
<name>Test Vectors</name>
<t>
- The following are test vectors for the Base32GNS encoding used for zTLDs.
- The strings are encoded without the zero terminator.
+ The following test vectors can be used by implementations to test
+ for conformance with this specification. Unless indicated otherwise,
+ the test vectors are provided as hexadecimal byte arrays.
</t>
- <artwork name="" type="" align="left" alt="">
- <![CDATA[
-Base32GNS-Encode:
- Input string: "Hello World"
- Output string: "91JPRV3F41BPYWKCCG"
+ <section>
+ <name>Base32GNS en-/decoding</name>
+ <t>
+ Encoding (⇀) converts a byte array into a string; decoding (↽) converts
+ a string into a byte array. Decoding fails if the input string has
+ characters outside the defined Base32GNS character set (<tt>[0..9][A-Z][a-z]</tt>).
+ (N.B.: Strings are encoded without <tt>\0</tt> terminator)
+ </t>
- Input bytes: 474e55204e616d652053797374656d
- Output string: "8X75A82EC5PPA82KF5SQ8SBD"
+ <artwork name="" type="" align="left" alt="">
+ <![CDATA[
+59 40 B3 2D B8 86 61 C2 ⇌ B50B6BDRGSGW4
-Base32GNS-Decode:
- Input string: "91JPRV3F41BPYWKCCG"
- Output string: "Hello World"
+48 65 6c 6c 6f 20 57 6f 72 6c 64 ⇌ 91JPRV3F41BPYWKCCG
+H e l l o W o r l d
- Input string: "91JPRU3F41BPYWKCCG"
- Output string: "Hello World"
+48 65 6c 6c 6f 20 57 6f 72 6c 64 ↽ 91JPRU3F4IBPYWKCCG
+H e l l o W o r l d
+
+**FAILURE** ↽ 91JPR+3F4!BPYWKCCG
]]>
- </artwork>
- <t>
- The following test vectors can be used by implementations to test
- for conformance with this specification.
- The test vectors include record sets with a variety
- of record types and flags for both PKEY and EDKEY zones.
- Unless indicated otherwise, the test vectors are provided as
- hex byte values.
- This includes labels as some test vectors contain UTF-8 multibyte
- characters to demonstrate internationalized labels.
- </t>
- <artwork name="" type="" align="left" alt="">
- <![CDATA[
+ </artwork>
+ </section>
+ <section>
+ <name>Record sets</name>
+
+ <t>
+ The test vectors include record sets with a variety
+ of record types and flags for both PKEY and EDKEY zones.
+ This includes labels with UTF-8 characters to demonstrate
+ internationalized labels.
+ </t>
+ <t><strong>(1) PKEY zone with ASCII label and one delegation record</strong></t>
+ <artwork name="" type="" align="left" alt="">
+ <![CDATA[
Zone private key (d, big-endian):
-50d7b652a4efeadf
-f37396909785e595
-2171a02178c8e7d4
-50fa907925fafd98
+98 fd fa 25 79 90 fa 50
+d4 e7 c8 78 21 a0 71 21
+95 e5 85 97 90 96 73 f3
+df ea ef a4 52 b6 d7 50
Zone identifier (ztype|zkey):
-00010000677c477d
-2d93097c85b195c6
-f96d84ff61f5982c
-2c4fe02d5a11fedf
-b0c2901f
+00 01 00 00 67 7c 47 7d
+2d 93 09 7c 85 b1 95 c6
+f9 6d 84 ff 61 f5 98 2c
+2c 4f e0 2d 5a 11 fe df
+b0 c2 90 1f
zTLD:
000G0037FH3QTBCK15Y8BCCNRVWPV17ZC7TSGB1C9ZG2TPGHZVFV1GMG3W
Label:
-7465737464656c65
-676174696f6e
+74 65 73 74 64 65 6c 65
+67 61 74 69 6f 6e
Number of records (integer): 1
Record #0 := (
-EXPIRATION:
-0008c06fb9281580
+EXPIRATION: 2463385894000000 us
+00 08 c0 6f b9 28 15 80
DATA_SIZE:
-0020
+00 20
TYPE:
-00010000
+00 01 00 00
-FLAGS: 0001
+FLAGS: 00 01
DATA:
-21e3b30ff93bc6d3
-5ac8c6e0e13afdff
-794cb7b44bbbc748
-d259d0a0284dbe84
+21 e3 b3 0f f9 3b c6 d3
+5a c8 c6 e0 e1 3a fd ff
+79 4c b7 b4 4b bb c7 48
+d2 59 d0 a0 28 4d be 84
)
RDATA:
-0008c06fb9281580
-0020000100010000
-21e3b30ff93bc6d3
-5ac8c6e0e13afdff
-794cb7b44bbbc748
-d259d0a0284dbe84
+00 08 c0 6f b9 28 15 80
+00 20 00 01 00 01 00 00
+21 e3 b3 0f f9 3b c6 d3
+5a c8 c6 e0 e1 3a fd ff
+79 4c b7 b4 4b bb c7 48
+d2 59 d0 a0 28 4d be 84
Encryption NONCE|EXPIRATION|BLOCK COUNTER:
-e90a00610008c06f
-b928158000000001
+e9 0a 00 61 00 08 c0 6f
+b9 28 15 80 00 00 00 01
Encryption key (K):
-864e7138eae7fd91
-a30136899c132b23
-acebdb2cef43cb19
-f6bf55b67db9b3b3
+86 4e 71 38 ea e7 fd 91
+a3 01 36 89 9c 13 2b 23
+ac eb db 2c ef 43 cb 19
+f6 bf 55 b6 7d b9 b3 b3
Storage key (q):
-4adc67c5ecee9f76
-986abd71c2224a3d
-ce2e917026c9a09d
-fd44cef3d20f55a2
-7332725a6c8afbbb
-b0f7ec9af1cc4264
-1299406b04fd9b5b
-5791f86c4b08d5f4
+62 42 2a 42 e2 7d ae 64
+91 9c e1 6a 94 af d0 96
+89 2b d4 55 1a 8a a2 d5
+79 ab 83 3d 93 1d a9 b6
+48 2c 21 c9 ac 9f 5d 12
+d3 69 c6 0c 5e df 27 e2
+bf 8d b2 44 f4 88 82 2f
+c3 14 c1 22 5d 94 b9 dc
BDATA:
-41dc7b5f2176ba59
-1998afb9e3c82579
-5050afc4b53d68e4
-1ed921da89de51e7
-da35a295b59c2b8a
-aea4399148d50cff
+41 dc 7b 5f 21 76 ba 59
+19 98 af b9 e3 c8 25 79
+50 50 af c4 b5 3d 68 e4
+1e d9 21 da 89 de 51 e7
+da 35 a2 95 b5 9c 2b 8a
+ae a4 39 91 48 d5 0c ff
RRBLOCK:
-000000a000010000
-182bb636eda79f79
-5711bc2708adbb24
-2a60446ad3c30803
-121d03d348b7ceb6
-01beab944aff7ccc
-51bffb212779c341
-87660c625d1ceb59
-d5a0a9a2dfe4072d
-0f08cd2ab1e9ed63
-d3898ff732521b57
-317a6c4950e1984d
-74df015f9eb72c4a
-0008c06fb9281580
-41dc7b5f2176ba59
-1998afb9e3c82579
-5050afc4b53d68e4
-1ed921da89de51e7
-da35a295b59c2b8a
-aea4399148d50cff
+00 00 00 a0 00 01 00 00
+18 2b b6 36 ed a7 9f 79
+57 11 bc 27 08 ad bb 24
+2a 60 44 6a d3 c3 08 03
+12 1d 03 d3 48 b7 ce b6
+01 be ab 94 4a ff 7c cc
+51 bf fb 21 27 79 c3 41
+87 66 0c 62 5d 1c eb 59
+d5 a0 a9 a2 df e4 07 2d
+0f 08 cd 2a b1 e9 ed 63
+d3 89 8f f7 32 52 1b 57
+31 7a 6c 49 50 e1 98 4d
+74 df 01 5f 9e b7 2c 4a
+00 08 c0 6f b9 28 15 80
+41 dc 7b 5f 21 76 ba 59
+19 98 af b9 e3 c8 25 79
+50 50 af c4 b5 3d 68 e4
+1e d9 21 da 89 de 51 e7
+da 35 a2 95 b5 9c 2b 8a
+ae a4 39 91 48 d5 0c ff
+ ]]>
+ </artwork>
+ <t><strong>(2) PKEY zone with UTF-8 label and three records</strong></t>
+ <artwork name="" type="" align="left" alt="">
+ <![CDATA[
Zone private key (d, big-endian):
-50d7b652a4efeadf
-f37396909785e595
-2171a02178c8e7d4
-50fa907925fafd98
+98 fd fa 25 79 90 fa 50
+d4 e7 c8 78 21 a0 71 21
+95 e5 85 97 90 96 73 f3
+df ea ef a4 52 b6 d7 50
Zone identifier (ztype|zkey):
-00010000677c477d
-2d93097c85b195c6
-f96d84ff61f5982c
-2c4fe02d5a11fedf
-b0c2901f
+00 01 00 00 67 7c 47 7d
+2d 93 09 7c 85 b1 95 c6
+f9 6d 84 ff 61 f5 98 2c
+2c 4f e0 2d 5a 11 fe df
+b0 c2 90 1f
zTLD:
000G0037FH3QTBCK15Y8BCCNRVWPV17ZC7TSGB1C9ZG2TPGHZVFV1GMG3W
Label:
-e5a4a9e4b88be784
-a1e695b5
+e5 a4 a9 e4 b8 8b e7 84
+a1 e6 95 b5
Number of records (integer): 3
Record #0 := (
-EXPIRATION:
-0008c06fb9281580
+EXPIRATION: 2463385894000000 us
+00 08 c0 6f b9 28 15 80
DATA_SIZE:
-0010
+00 10
TYPE:
-0000001c
+00 00 00 1c
-FLAGS: 0000
+FLAGS: 00 00
DATA:
-0000000000000000
-00000000deadbeef
+00 00 00 00 00 00 00 00
+00 00 00 00 de ad be ef
)
Record #1 := (
-EXPIRATION:
-00b00f81b7449b40
+EXPIRATION: 49556645701000000 us
+00 b0 0f 81 b7 44 9b 40
DATA_SIZE:
-0006
+00 06
TYPE:
-00010001
+00 01 00 01
-FLAGS: 8000
+FLAGS: 80 00
DATA:
-e6849be7a7b0
+e6 84 9b e7 a7 b0
)
Record #2 := (
-EXPIRATION:
-000000016b597108
+EXPIRATION: 43021688829000000 us
+00 98 d7 ff 80 4a 39 40
DATA_SIZE:
-000b
+00 0b
TYPE:
-00000010
+00 00 00 10
-FLAGS: 4004
+FLAGS: 00 04
DATA:
-48656c6c6f20576f
-726c64
+48 65 6c 6c 6f 20 57 6f
+72 6c 64
)
RDATA:
-0008c06fb9281580
-001000000000001c
-0000000000000000
-00000000deadbeef
-00b00f81b7449b40
-0006800000010001
-e6849be7a7b00000
-00016b597108000b
-4004000000104865
-6c6c6f20576f726c
-6400000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
+00 08 c0 6f b9 28 15 80
+00 10 00 00 00 00 00 1c
+00 00 00 00 00 00 00 00
+00 00 00 00 de ad be ef
+00 b0 0f 81 b7 44 9b 40
+00 06 80 00 00 01 00 01
+e6 84 9b e7 a7 b0 00 98
+d7 ff 80 4a 39 40 00 0b
+00 04 00 00 00 10 48 65
+6c 6c 6f 20 57 6f 72 6c
+64 00 00 00 00 00 00 00
+00 00 00 00 00 00 00 00
+00 00 00 00 00 00 00 00
+00 00 00 00 00 00 00 00
+00 00 00 00 00 00 00 00
+00 00 00 00 00 00 00 00
Encryption NONCE|EXPIRATION|BLOCK COUNTER:
-ee9633c10005db3b
-cdbd617c00000001
+ee 96 33 c1 00 08 c0 6f
+b9 28 15 80 00 00 00 01
Encryption key (K):
-fb3ab5de23bddae1
-997aaf7b92c2d271
-51408b77af7a41ac
-79057c4df5383d01
+fb 3a b5 de 23 bd da e1
+99 7a af 7b 92 c2 d2 71
+51 40 8b 77 af 7a 41 ac
+79 05 7c 4d f5 38 3d 01
Storage key (q):
-aff0ad6a44097368
-429ac476dfa1f34b
-ee4c36e7476d07aa
-6463ff20915b1005
-c0991def91fc3e10
-909f8702c0be4043
-6778c711f2ca47d5
-5cf0b54d235da977
+78 0a ea 93 75 f0 72 b7
+ec 11 66 70 b1 25 c8 d6
+41 c4 c4 ac 9d c9 90 1e
+bb 40 b4 3d 0e d2 6e 24
+ba f8 da 38 2e 80 70 29
+66 ed b9 b5 20 0c 02 c4
+f9 2b 81 57 2b 07 42 34
+4f d2 8f 50 46 8b 8d c0
BDATA:
-f8c5e4badf1649d4
-04da64df7d9d285f
-4072a5f7a2547d56
-74227e9b188eb2bb
-6b34532f61e08ffb
-d5bdea3741e60967
-b687f8d8c44c8f6f
-120a0f980f393b21
-60407be128a74a51
-51d6370be56a86ea
-e32fdc217596b13f
-6fea3fcfea0f4deb
-881a25458f505a8f
-cfca62d6da56073f
-497698613475a1ad
-14b7877f9455b0ec
+a1 f9 4f 65 c7 20 2b 86
+2b 75 0d 89 53 1c 66 5d
+1b 7f 5e 90 92 9b d8 a4
+d9 24 e6 52 5d bd 6b 2f
+81 8c 43 b2 2e 2a c7 08
+2b 6e 69 60 27 6f 41 ca
+cf 0b 27 b2 50 2b 58 90
+c8 03 9e b6 b5 74 22 06
+88 d5 43 b4 f4 51 9f 4a
+c4 76 d2 a5 77 e9 bd 59
+d6 f4 72 bc 93 a2 fe 66
+16 11 75 9c ca f2 d6 72
+60 c1 db 4a 03 53 1b 86
+7d fa 35 f7 bc 30 02 b8
+f4 00 0e 4e 7c 7d 91 7a
+d2 29 f7 9b 2a ee e3 f1
RRBLOCK:
-000000f000010000
-a51296df757ee275
-ca118d4f07fa7aae
-5508bcf512aa4112
-1429d4a0de9d057e
-05c095040b10c7f8
-187aa5da12287d1c
-2910ff04d6f50af1
-fa95382e9f007f75
-098f620d1ff7c971
-28f40d7458a2d3c7
-f048ca3820064bdd
-ee9413e9548ec994
-0005db3bcdbd617c
-f8c5e4badf1649d4
-04da64df7d9d285f
-4072a5f7a2547d56
-74227e9b188eb2bb
-6b34532f61e08ffb
-d5bdea3741e60967
-b687f8d8c44c8f6f
-120a0f980f393b21
-60407be128a74a51
-51d6370be56a86ea
-e32fdc217596b13f
-6fea3fcfea0f4deb
-881a25458f505a8f
-cfca62d6da56073f
-497698613475a1ad
-14b7877f9455b0ec
-
+00 00 00 f0 00 01 00 00
+a5 12 96 df 75 7e e2 75
+ca 11 8d 4f 07 fa 7a ae
+55 08 bc f5 12 aa 41 12
+14 29 d4 a0 de 9d 05 7e
+05 92 83 aa bf 02 a7 88
+54 d4 8b ee 22 43 6f ea
+f6 e5 9f b7 94 7a 44 d6
+cf aa 21 a0 a3 f2 e9 14
+0c fb d4 32 47 c4 9a 98
+e0 12 aa 50 53 d7 4d 3a
+0c b3 7d 11 73 b9 f4 f9
+b5 97 53 b8 d0 b4 8b 10
+00 08 c0 6f b9 28 15 80
+a1 f9 4f 65 c7 20 2b 86
+2b 75 0d 89 53 1c 66 5d
+1b 7f 5e 90 92 9b d8 a4
+d9 24 e6 52 5d bd 6b 2f
+81 8c 43 b2 2e 2a c7 08
+2b 6e 69 60 27 6f 41 ca
+cf 0b 27 b2 50 2b 58 90
+c8 03 9e b6 b5 74 22 06
+88 d5 43 b4 f4 51 9f 4a
+c4 76 d2 a5 77 e9 bd 59
+d6 f4 72 bc 93 a2 fe 66
+16 11 75 9c ca f2 d6 72
+60 c1 db 4a 03 53 1b 86
+7d fa 35 f7 bc 30 02 b8
+f4 00 0e 4e 7c 7d 91 7a
+d2 29 f7 9b 2a ee e3 f1
+ ]]>
+ </artwork>
+ <t><strong>(3) EDKEY zone with ASCII label and delegation record</strong></t>
+ <artwork name="" type="" align="left" alt="">
+ <![CDATA[
Zone private key (d):
-5af7020ee1916032
-8832352bbc6a68a8
-d71a7cbe1b929969
-a7c66d415a0d8f65
+5a f7 02 0e e1 91 60 32
+88 32 35 2b bc 6a 68 a8
+d7 1a 7c be 1b 92 99 69
+a7 c6 6d 41 5a 0d 8f 65
Zone identifier (ztype|zkey):
-000100143cf4b924
-032022f0dc505814
-53b85d93b047b63d
-446c5845cb48445d
-db96688f
+00 01 00 14 3c f4 b9 24
+03 20 22 f0 dc 50 58 14
+53 b8 5d 93 b0 47 b6 3d
+44 6c 58 45 cb 48 44 5d
+db 96 68 8f
zTLD:
000G051WYJWJ80S04BRDRM2R2H9VGQCKP13VCFA4DHC4BJT88HEXQ5K8HW
Label:
-7465737464656c65
-676174696f6e
+74 65 73 74 64 65 6c 65
+67 61 74 69 6f 6e
Number of records (integer): 1
Record #0 := (
-EXPIRATION:
-0008c06fb9281580
+EXPIRATION: 2463385894000000 us
+00 08 c0 6f b9 28 15 80
DATA_SIZE:
-0020
+00 20
TYPE:
-00010000
+00 01 00 00
-FLAGS: 0001
+FLAGS: 00 01
DATA:
-21e3b30ff93bc6d3
-5ac8c6e0e13afdff
-794cb7b44bbbc748
-d259d0a0284dbe84
+21 e3 b3 0f f9 3b c6 d3
+5a c8 c6 e0 e1 3a fd ff
+79 4c b7 b4 4b bb c7 48
+d2 59 d0 a0 28 4d be 84
)
RDATA:
-0008c06fb9281580
-0020000100010000
-21e3b30ff93bc6d3
-5ac8c6e0e13afdff
-794cb7b44bbbc748
-d259d0a0284dbe84
+00 08 c0 6f b9 28 15 80
+00 20 00 01 00 01 00 00
+21 e3 b3 0f f9 3b c6 d3
+5a c8 c6 e0 e1 3a fd ff
+79 4c b7 b4 4b bb c7 48
+d2 59 d0 a0 28 4d be 84
Encryption NONCE|EXPIRATION:
-98132ea86859d35c
-88bfd317fa991bcb
-0008c06fb9281580
+98 13 2e a8 68 59 d3 5c
+88 bf d3 17 fa 99 1b cb
+00 08 c0 6f b9 28 15 80
Encryption key (K):
-85c429a9567aa633
-411a9691e9094c45
-281672be586034aa
-e4a2a2cc716159e2
+85 c4 29 a9 56 7a a6 33
+41 1a 96 91 e9 09 4c 45
+28 16 72 be 58 60 34 aa
+e4 a2 a2 cc 71 61 59 e2
Storage key (q):
-abaabac0e1249459
-75988395aac0241e
-5559c41c4074e255
-7b9fe6d154b614fb
-cdd47fc7f51d786d
-c2e0b1ece76037c0
-a1578c384ec61d44
-5636a94e880329e9
+c0 e1 57 1a 06 ec 37 2f
+0f 9a 8f 69 a2 bb 2f 68
+ad 11 83 5c 4f 48 ef 0e
+19 1b 4b 8a 95 1c a5 e9
+89 1a 9c ed 93 5b b6 2c
+e0 b6 cf 22 9d c5 96 75
+64 56 1a e0 c5 c8 14 9e
+a1 3e ae 93 b4 cc 46 89
BDATA:
-9cc455a129331943
-5993cb3d67179ec0
-6ea8d8894e904a0c
-35e91c5c2ff2ed93
-9cc2f8301231f44e
-592a4ac87e4998b9
-4625c64af51686a2
-b36a2b2892d44f2d
+9c c4 55 a1 29 33 19 43
+59 93 cb 3d 67 17 9e c0
+6e a8 d8 89 4e 90 4a 0c
+35 e9 1c 5c 2f f2 ed 93
+9c c2 f8 30 12 31 f4 4e
+59 2a 4a c8 7e 49 98 b9
+46 25 c6 4a f5 16 86 a2
+b3 6a 2b 28 92 d4 4f 2d
RRBLOCK:
-000000b000010014
-9bf233198c6d53bb
-dbac495cabd91049
-a684af3f4051baca
-b0dcf21c8cf27a1a
-44d240d07902f490
-b7c43ef00758abce
-8851c18c70ac6df9
-7a88f79211cf875f
-784885ca3e349ec4
-ca892b9ff084c535
-8965b8e74a231595
-2d4c8c06521c2f0c
-0008c06fb9281580
-9cc455a129331943
-5993cb3d67179ec0
-6ea8d8894e904a0c
-35e91c5c2ff2ed93
-9cc2f8301231f44e
-592a4ac87e4998b9
-4625c64af51686a2
-b36a2b2892d44f2d
-
+00 00 00 b0 00 01 00 14
+9b f2 33 19 8c 6d 53 bb
+db ac 49 5c ab d9 10 49
+a6 84 af 3f 40 51 ba ca
+b0 dc f2 1c 8c f2 7a 1a
+44 d2 40 d0 79 02 f4 90
+b7 c4 3e f0 07 58 ab ce
+88 51 c1 8c 70 ac 6d f9
+7a 88 f7 92 11 cf 87 5f
+78 48 85 ca 3e 34 9e c4
+ca 89 2b 9f f0 84 c5 35
+89 65 b8 e7 4a 23 15 95
+2d 4c 8c 06 52 1c 2f 0c
+00 08 c0 6f b9 28 15 80
+9c c4 55 a1 29 33 19 43
+59 93 cb 3d 67 17 9e c0
+6e a8 d8 89 4e 90 4a 0c
+35 e9 1c 5c 2f f2 ed 93
+9c c2 f8 30 12 31 f4 4e
+59 2a 4a c8 7e 49 98 b9
+46 25 c6 4a f5 16 86 a2
+b3 6a 2b 28 92 d4 4f 2d
+ ]]>
+ </artwork>
+ <t><strong>(4) EDKEY zone with UTF-8 label and three records</strong></t>
+ <artwork name="" type="" align="left" alt="">
+ <![CDATA[
Zone private key (d):
-5af7020ee1916032
-8832352bbc6a68a8
-d71a7cbe1b929969
-a7c66d415a0d8f65
+5a f7 02 0e e1 91 60 32
+88 32 35 2b bc 6a 68 a8
+d7 1a 7c be 1b 92 99 69
+a7 c6 6d 41 5a 0d 8f 65
Zone identifier (ztype|zkey):
-000100143cf4b924
-032022f0dc505814
-53b85d93b047b63d
-446c5845cb48445d
-db96688f
+00 01 00 14 3c f4 b9 24
+03 20 22 f0 dc 50 58 14
+53 b8 5d 93 b0 47 b6 3d
+44 6c 58 45 cb 48 44 5d
+db 96 68 8f
zTLD:
000G051WYJWJ80S04BRDRM2R2H9VGQCKP13VCFA4DHC4BJT88HEXQ5K8HW
Label:
-e5a4a9e4b88be784
-a1e695b5
+e5 a4 a9 e4 b8 8b e7 84
+a1 e6 95 b5
Number of records (integer): 3
Record #0 := (
-EXPIRATION:
-0008c06fb9281580
+EXPIRATION: 2463385894000000 us
+00 08 c0 6f b9 28 15 80
DATA_SIZE:
-0010
+00 10
TYPE:
-0000001c
+00 00 00 1c
-FLAGS: 0000
+FLAGS: 00 00
DATA:
-0000000000000000
-00000000deadbeef
+00 00 00 00 00 00 00 00
+00 00 00 00 de ad be ef
)
Record #1 := (
-EXPIRATION:
-00b00f81b7449b40
+EXPIRATION: 49556645701000000 us
+00 b0 0f 81 b7 44 9b 40
DATA_SIZE:
-0006
+00 06
TYPE:
-00010001
+00 01 00 01
-FLAGS: 8000
+FLAGS: 80 00
DATA:
-e6849be7a7b0
+e6 84 9b e7 a7 b0
)
Record #2 := (
-EXPIRATION:
-000000016b597108
+EXPIRATION: 43021688829000000 us
+00 98 d7 ff 80 4a 39 40
DATA_SIZE:
-000b
+00 0b
TYPE:
-00000010
+00 00 00 10
-FLAGS: 4004
+FLAGS: 00 04
DATA:
-48656c6c6f20576f
-726c64
+48 65 6c 6c 6f 20 57 6f
+72 6c 64
)
RDATA:
-0008c06fb9281580
-001000000000001c
-0000000000000000
-00000000deadbeef
-00b00f81b7449b40
-0006800000010001
-e6849be7a7b00000
-00016b597108000b
-4004000000104865
-6c6c6f20576f726c
-6400000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
+00 08 c0 6f b9 28 15 80
+00 10 00 00 00 00 00 1c
+00 00 00 00 00 00 00 00
+00 00 00 00 de ad be ef
+00 b0 0f 81 b7 44 9b 40
+00 06 80 00 00 01 00 01
+e6 84 9b e7 a7 b0 00 98
+d7 ff 80 4a 39 40 00 0b
+00 04 00 00 00 10 48 65
+6c 6c 6f 20 57 6f 72 6c
+64 00 00 00 00 00 00 00
+00 00 00 00 00 00 00 00
+00 00 00 00 00 00 00 00
+00 00 00 00 00 00 00 00
+00 00 00 00 00 00 00 00
+00 00 00 00 00 00 00 00
Encryption NONCE|EXPIRATION:
-bb0d3f0fbd224277
-50da5d691216e6c9
-0005db3bcdbd7769
+bb 0d 3f 0f bd 22 42 77
+50 da 5d 69 12 16 e6 c9
+00 08 c0 6f b9 28 15 80
Encryption key (K):
-3df805bd6687aa14
-209628c244b11191
-88c3925637a41e5d
-76496c2945dc377b
+3d f8 05 bd 66 87 aa 14
+20 96 28 c2 44 b1 11 91
+88 c3 92 56 37 a4 1e 5d
+76 49 6c 29 45 dc 37 7b
Storage key (q):
-baf82177eec081e0
-74a7da47ffc64877
-58fb0df01a6c7fbb
-52fc8a31bef029af
-74aa0dc15ab8e2fa
-7a54b4f5f637f615
-8fa7f03c3fcebe78
-d3f9d640aac0d1ed
+6f a7 65 1a dc 01 79 e2
+64 36 e6 4b 58 6c bf 4f
+7b 23 5e 33 b6 34 ac fc
+91 b9 bc 68 53 34 05 bc
+2f dc a0 9a 6d cf 1a f6
+6b f3 29 5b 62 50 9c eb
+3f 13 47 e7 c3 75 c5 6b
+64 34 55 79 c9 5e 0a c0
BDATA:
-6f79a9fd28bc5e38
-2fc931ed22931797
-326fdd698129fc47
-8a639e902b411088
-0a45037c667ff769
-5f09c4a7f4f3471a
-b2365bf3af79e953
-697f1e35f93bd1ad
-876971ce70527a3b
-82c098d23fffd4a4
-0057b694bec43416
-4fb83c12b1f4570f
-69a28f3bc3b7d838
-b2619f6b8e1723ba
-78c4b7ce19ef3f39
-0405b63f7ce00216
-1bdd7f5e9b3622bc
-1af2d4ca84fd5fc5
+70 2a 19 6f 58 2b 72 94
+77 71 98 d0 a8 ab 30 09
+ef ca b8 15 be 77 a7 5c
+68 c8 00 aa 9f c2 58 8a
+e9 d7 c7 14 56 54 c4 41
+eb 2e 31 88 db 3d ce cd
+f3 33 33 25 64 b6 dd d3
+f0 37 a6 78 dd b7 42 27
+79 aa 89 09 d7 59 29 97
+02 1e 5f 7a 43 fa 9c bc
+73 e4 17 86 5b ec ae 97
+df c5 26 0f cc f5 3c ae
+3f b1 9b f1 18 93 17 de
+2f d9 e0 1a 73 ea 8e 48
+99 b4 54 d6 73 4c 92 b7
+42 5a 8b 87 16 1f d7 38
+21 c9 58 38 41 86 1d 4d
+5a e8 02 c4 14 14 ba 04
RRBLOCK:
-0000010000010014
-74f90068f1676953
-52a8a6c2eb984898
-c53acca0980470c6
-c81264cbdd78ad11
-13b6b78358a88de7
-3c5d22f73f1ad588
-ee6f07d13410a2f5
-15a074872608ec02
-ef9020fdeb4266bf
-1177c7e57e786059
-97032a3f71f7216c
-894e073ac77f2a0d
-0005db3bcdbd7769
-6f79a9fd28bc5e38
-2fc931ed22931797
-326fdd698129fc47
-8a639e902b411088
-0a45037c667ff769
-5f09c4a7f4f3471a
-b2365bf3af79e953
-697f1e35f93bd1ad
-876971ce70527a3b
-82c098d23fffd4a4
-0057b694bec43416
-4fb83c12b1f4570f
-69a28f3bc3b7d838
-b2619f6b8e1723ba
-78c4b7ce19ef3f39
-0405b63f7ce00216
-1bdd7f5e9b3622bc
-1af2d4ca84fd5fc5
+00 00 01 00 00 01 00 14
+74 f9 00 68 f1 67 69 53
+52 a8 a6 c2 eb 98 48 98
+c5 3a cc a0 98 04 70 c6
+c8 12 64 cb dd 78 ad 11
+84 61 91 1b 40 65 c1 08
+c6 5d 75 0a 60 d4 32 a3
+13 38 b2 02 6c 35 8c 2d
+62 15 e4 a9 0d 48 f1 8c
+f2 cf b1 8d 3d 11 10 41
+cc 0e ee 64 9c d9 08 b8
+28 0e 44 39 3f 4e bd 98
+7a d0 2a b8 4a 8c 61 06
+00 08 c0 6f b9 28 15 80
+70 2a 19 6f 58 2b 72 94
+77 71 98 d0 a8 ab 30 09
+ef ca b8 15 be 77 a7 5c
+68 c8 00 aa 9f c2 58 8a
+e9 d7 c7 14 56 54 c4 41
+eb 2e 31 88 db 3d ce cd
+f3 33 33 25 64 b6 dd d3
+f0 37 a6 78 dd b7 42 27
+79 aa 89 09 d7 59 29 97
+02 1e 5f 7a 43 fa 9c bc
+73 e4 17 86 5b ec ae 97
+df c5 26 0f cc f5 3c ae
+3f b1 9b f1 18 93 17 de
+2f d9 e0 1a 73 ea 8e 48
+99 b4 54 d6 73 4c 92 b7
+42 5a 8b 87 16 1f d7 38
+21 c9 58 38 41 86 1d 4d
+5a e8 02 c4 14 14 ba 04
]]>
</artwork>
+ </section>
+ <section>
+ <name>Zone revocation</name>
<t>
The following is an example revocation for a zone:
</t>
<artwork name="" type="" align="left" alt="">
<![CDATA[
Zone private key (d, big-endian scalar):
-6fea32c05af58bfa
-979553d188605fd5
-7d8bf9cc263b78d5
-f7478c07b998ed70
+70 ed 98 b9 07 8c 47 f7
+d5 78 3b 26 cc f9 8b 7d
+d5 5f 60 88 d1 53 95 97
+fa 8b f5 5a c0 32 ea 6f
Zone identifier (ztype|zkey):
-000100002ca223e8
-79ecc4bbdeb5da17
-319281d63b2e3b69
-55f1c3775c804a98
-d5f8ddaa
+00 01 00 00 2c a2 23 e8
+79 ec c4 bb de b5 da 17
+31 92 81 d6 3b 2e 3b 69
+55 f1 c3 77 5c 80 4a 98
+d5 f8 dd aa
-Encoded zone identifier (zTLD):
+Encoded zone identifier (zkl = zTLD):
000G001CM8HYGYFCRJXXXDET2WRS50EP7CQ3PTANY71QEQ409ACDBY6XN8
Difficulty (5 base difficulty + 2 epochs): 7
Signed message:
-0000003400000003
-0005d66da3598127
-000100002ca223e8
-79ecc4bbdeb5da17
-319281d63b2e3b69
-55f1c3775c804a98
-d5f8ddaa
+00 00 00 34 00 00 00 03
+00 05 fe b4 6d 86 5c 1c
+00 01 00 00 2c a2 23 e8
+79 ec c4 bb de b5 da 17
+31 92 81 d6 3b 2e 3b 69
+55 f1 c3 77 5c 80 4a 98
+d5 f8 dd aa
Proof:
-0005d66da3598127
-0000395d1827c000
-3ab877d07570f2b8
-3ab877d07570f332
-3ab877d07570f4f5
-3ab877d07570f50f
-3ab877d07570f537
-3ab877d07570f599
-3ab877d07570f5cd
-3ab877d07570f5d9
-3ab877d07570f66a
-3ab877d07570f69b
-3ab877d07570f72f
-3ab877d07570f7c3
-3ab877d07570f843
-3ab877d07570f8d8
-3ab877d07570f91b
-3ab877d07570f93a
-3ab877d07570f944
-3ab877d07570f98a
-3ab877d07570f9a7
-3ab877d07570f9b0
-3ab877d07570f9df
-3ab877d07570fa05
-3ab877d07570fa3e
-3ab877d07570fa63
-3ab877d07570fa84
-3ab877d07570fa8f
-3ab877d07570fa91
-3ab877d07570fad6
-3ab877d07570fb0a
-3ab877d07570fc0f
-3ab877d07570fc43
-3ab877d07570fca5
-000100002ca223e8
-79ecc4bbdeb5da17
-319281d63b2e3b69
-55f1c3775c804a98
-d5f8ddaa053b0259
-700039187d1da461
-3531502bc4a4eecc
-c69900d24f8aac54
-30f28fc509270133
-1f178e290fe06e82
-ce2498ce7b23a340
-58e3d6a2f247e92b
-c9d7b9ab
+00 05 fe b4 6d 86 5c 1c
+00 00 39 5d 18 27 c0 00
+e6 6a 57 0b cc d4 b3 93
+e6 6a 57 0b cc d4 b3 ea
+e6 6a 57 0b cc d4 b5 36
+e6 6a 57 0b cc d4 b5 42
+e6 6a 57 0b cc d4 b6 13
+e6 6a 57 0b cc d4 b6 5f
+e6 6a 57 0b cc d4 b6 72
+e6 6a 57 0b cc d4 b7 0a
+e6 6a 57 0b cc d4 b7 1a
+e6 6a 57 0b cc d4 b7 23
+e6 6a 57 0b cc d4 b7 47
+e6 6a 57 0b cc d4 b7 77
+e6 6a 57 0b cc d4 b7 85
+e6 6a 57 0b cc d4 b7 89
+e6 6a 57 0b cc d4 b7 cf
+e6 6a 57 0b cc d4 b7 dc
+e6 6a 57 0b cc d4 b9 3a
+e6 6a 57 0b cc d4 b9 56
+e6 6a 57 0b cc d4 ba 4a
+e6 6a 57 0b cc d4 ba 9d
+e6 6a 57 0b cc d4 bb 28
+e6 6a 57 0b cc d4 bb 5a
+e6 6a 57 0b cc d4 bb 92
+e6 6a 57 0b cc d4 bb a2
+e6 6a 57 0b cc d4 bb d8
+e6 6a 57 0b cc d4 bb e2
+e6 6a 57 0b cc d4 bc 93
+e6 6a 57 0b cc d4 bc 94
+e6 6a 57 0b cc d4 bd 0f
+e6 6a 57 0b cc d4 bd ce
+e6 6a 57 0b cc d4 be 6a
+e6 6a 57 0b cc d4 be 73
+00 01 00 00 2c a2 23 e8
+79 ec c4 bb de b5 da 17
+31 92 81 d6 3b 2e 3b 69
+55 f1 c3 77 5c 80 4a 98
+d5 f8 dd aa 04 4a 87 8a
+15 8b 40 f0 c8 41 d9 f9
+78 cb 13 72 ea ee 51 99
+a3 d8 7e 5e 2b db c7 2a
+6c 8c 73 d0 00 18 1d fc
+39 c3 aa a4 81 66 7b 16
+5b 58 44 e4 50 71 3d 8a
+b6 a3 b2 ba 8f ef 44 7b
+65 07 6a 0f
]]>
</artwork>
</section>
-
-
-
+</section>
<!-- Change Log
v00 2017-07-23 MS Initial version
-->