commit 50aa3ac520fb753aa76abf0125af623c02694ca7
parent c4769120c135ff88cc653a8725f5ee043e928b28
Author: Bernd Fix <brf@hoi-polloi.org>
Date: Wed, 28 Jun 2023 22:43:13 +0200
test vectors: corrected missing RDATA padding and record flags/expiration.
Diffstat:
1 file changed, 80 insertions(+), 91 deletions(-)
diff --git a/draft-schanzen-gns.xml b/draft-schanzen-gns.xml
@@ -3799,6 +3799,7 @@ H e l l o W o r l d
This includes labels with UTF-8 characters to demonstrate
internationalized labels.
</t>
+ <t>(1) PKEY with ASCII label and one record</t>
<artwork name="" type="" align="left" alt="">
<![CDATA[
Zone private key (d, big-endian):
@@ -3823,22 +3824,19 @@ Storage key (q):
73 32 72 5a 6c 8a fb bb b0 f7 ec 9a f1 cc 42 64
12 99 40 6b 04 fd 9b 5b 57 91 f8 6c 4b 08 d5 f4
-Number of records (integer): 1
-
-Record #0 {
- EXPIRATION: 00 08 c0 6f b9 28 15 80
- DATA_SIZE: 00 20
- TYPE: 00 01 00 00
- FLAGS: 00 01
- DATA: 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:
- 00 08 c0 6f b9 28 15 80 00 20 00 01 00 01 00 00
+RDATA {
+ // Record #1
+ 00 08 c0 6f b9 28 15 80 // expiration
+ 00 20 // data size
+ 00 01 // flags
+ 00 01 00 00 // GNS type
+ // data:
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
+
+ // padding
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+}
Encryption specs {
NONCE: e9 0a 00 61
@@ -3868,6 +3866,7 @@ RRBLOCK:
68 59 6b 4d cb 8b c2 c1 1b b1 84 d5 90 56 13 e8
]]>
</artwork>
+ <t>(2) PKEY with UTF-8 label and three records</t>
<artwork name="" type="" align="left" alt="">
<![CDATA[
Zone private key (d, big-endian):
@@ -3892,41 +3891,35 @@ Storage key (q):
c0 99 1d ef 91 fc 3e 10 90 9f 87 02 c0 be 40 43
67 78 c7 11 f2 ca 47 d5 5c f0 b5 4d 23 5d a9 77
-Number of records (integer): 3
-
-Record #0 {
- EXPIRATION: 00 08 c0 6f b9 28 15 80
- DATA_SIZE: 00 10
- TYPE: 00 00 00 1c
- FLAGS: 00 00
- DATA: 00 00 00 00 00 00 00 00 00 00 00 00 de ad be ef
-}
-
-Record #1 {
- EXPIRATION: 00 b0 0f 81 b7 44 9b 40
- DATA_SIZE: 00 06
- TYPE: 00 01 00 01
- FLAGS: 80 00
- DATA: e6 84 9b e7 a7 b0
-}
-
-Record #2 {
- EXPIRATION: 00 00 00 01 6b 59 71 08
- DATA_SIZE: 00 0b
- TYPE: 00 00 00 10
- FLAGS: 40 04
- DATA: 48 65 6c 6c 6f 20 57 6f 72 6c 64
-}
-
-RDATA:
- 00 08 c0 6f b9 28 15 80 00 10 00 00 00 00 00 1c
+RDATA {
+ // Record #1
+ 00 08 c0 6f b9 28 15 80 // expiration
+ 00 10 // data size
+ 00 00 // flags
+ 00 00 00 1c // GNS type
+ // data:
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 00 00 01 6b 59 71 08 00 0b
- 40 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
+
+ // Record #2
+ 00 b0 0f 81 b7 44 9b 40 // expiration
+ 00 06 // data size
+ 80 00 // flags
+ 00 01 00 01 // GNS type
+ e6 84 9b e7 a7 b0 // data
+
+ // Record #3
+ 00 05 db 3b cd bd 65 55 // expiration
+ 00 0b // data size
+ 00 04 // flags
+ 00 00 00 10 // GNS type
+ // data:
+ 48 65 6c 6c 6f 20 57 6f 72 6c 64
+
+ // padding
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 spec {
NONCE: ee 96 33 c1
@@ -3963,6 +3956,7 @@ RRBLOCK:
49 76 98 61 34 75 a1 ad 14 b7 87 7f 94 55 b0 ec
]]>
</artwork>
+ <t>EDKEY with ASCII label and one record</t>
<artwork name="" type="" align="left" alt="">
<![CDATA[
Zone private key (d, big-endian):
@@ -3987,28 +3981,25 @@ Storage key (q):
cd d4 7f c7 f5 1d 78 6d c2 e0 b1 ec e7 60 37 c0
a1 57 8c 38 4e c6 1d 44 56 36 a9 4e 88 03 29 e9
-Number of records (integer): 1
-
-Record #0 {
- EXPIRATION: 00 08 c0 6f b9 28 15 80
- DATA_SIZE: 00 20
- TYPE: 00 01 00 00
- FLAGS: 00 01
- DATA: 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:
- 00 08 c0 6f b9 28 15 80 00 20 00 01 00 01 00 00
+RDATA {
+ // Record #1
+ 00 08 c0 6f b9 28 15 80 // expiration
+ 00 20 // data size
+ 00 01 // flags
+ 00 01 00 00 // GNS type
+ // data:
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
+
+ // padding
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+}
Encryption spec {
- NONCE: 98 13 2e a8 68 59 d3 5c 88 bf d3 17 fa 99 1b cb
- EXPIRATION: 00 08 c0 6f b9 28 15 80
- Key (k): 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
+ NONCE: 98 13 2e a8 68 59 d3 5c 88 bf d3 17 fa 99 1b cb
+ EXPIRATION: 00 08 c0 6f b9 28 15 80
+ Key (k): 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
}
BDATA:
@@ -4016,6 +4007,7 @@ BDATA:
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
+ 52 b0 cd b4 64 54 62 1e 3c 97 0f b0 a5 cb c4 ee
RRBLOCK:
00 00 00 b0 00 01 00 14 9b f2 33 19 8c 6d 53 bb
@@ -4029,8 +4021,10 @@ RRBLOCK:
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
+ 52 b0 cd b4 64 54 62 1e 3c 97 0f b0 a5 cb c4 ee
]]>
</artwork>
+ <t>EDKEY with UTF-8 label and three records</t>
<artwork name="" type="" align="left" alt="">
<![CDATA[
Zone private key (d, big-endian):
@@ -4057,39 +4051,34 @@ Storage key (q):
Number of records (integer): 3
-Record #0 {
- EXPIRATION: 00 08 c0 6f b9 28 15 80
- DATA_SIZE: 00 10
- TYPE: 00 00 00 1c
- FLAGS: 00 00
- DATA: 00 00 00 00 00 00 00 00 00 00 00 00 de ad be ef
-}
-
-Record #1 {
- EXPIRATION: 00 b0 0f 81 b7 44 9b 40
- DATA_SIZE: 00 06
- TYPE: 00 01 00 01
- FLAGS: 80 00
- DATA: e6 84 9b e7 a7 b0
-}
-
-Record #2 {
- EXPIRATION: 00 00 00 01 6b 59 71 08
- DATA_SIZE: 00 0b
- TYPE: 00 00 00 10
- FLAGS: 40 04
- DATA: 48 65 6c 6c 6f 20 57 6f 72 6c 64
-}
-
RDATA:
- 00 08 c0 6f b9 28 15 80 00 10 00 00 00 00 00 1c
+ // Record #1
+ 00 08 c0 6f b9 28 15 80 // expiration
+ 00 10 // data size
+ 00 00 // flags
+ 00 00 00 1c // GNS type
+ // data:
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 00 00 01 6b 59 71 08 00 0b
- 40 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
+
+ // Record #2
+ 00 b0 0f 81 b7 44 9b 40 // expiration
+ 00 06 // data size
+ 80 00 // flags
+ 00 01 00 01 // GNS type
+ e6 84 9b e7 a7 b0 // data
+
+ // Record #3
+ 00 00 00 01 6b 59 71 08 // expiration
+ 00 0b // data size
+ 40 04 // flags
+ 00 00 00 10 // GNS type
+ // data:
+ 48 65 6c 6c 6f 20 57 6f 72 6c 64
+
+ // padding
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 spec {
NONCE: bb 0d 3f 0f bd 22 42 77 50 da 5d 69 12 16 e6 c9