@@ -19,7 +19,7 @@ basis of the construction of the ballot documents in this specification only.
1919An original Jörmungandr blockchain's ` VoteCast ` transaction structure.
2020
2121<!-- markdownlint-disable max-one-sentence-per-line code-block-style -->
22- ??? note "V1 transaction definition: ` jorm.abnf ` "
22+ ??? note "Jormungandr transaction definition: ` jorm.abnf ` "
2323
2424 ```abnf
2525 VOTE-TX = SIZE-BYTES-32BIT %x00 %x0b VOTE-PAYLOAD
@@ -93,40 +93,41 @@ An original Jörmungandr blockchain's `VoteCast` transaction structure.
9393 SCALAR = SIZE-BYTES-32BYTE
9494 GROUP-ELEMENT = SIZE-BYTES-32BYTE ; ristretto255 group element
9595 ```
96- <!-- markdownlint-enable max-one-sentence-per-line code-block-style -->
97-
98- ### Example
99-
100- V1 transaction representation in hex:
10196
102- <!-- markdownlint-disable code-block-style -->
103- ``` hex
104- 0000037e000b36ad42885189a0ac3438cdb57bc8ac7f6542e05a59d1f2e4d1d38194c9d4ac7b00
105- 0203f6639bdbc9235103825a9f025eae5cff3bd9c9dcc0f5a4b286909744746c8b6fb0018773d3
106- b4308344d2e90599cd03749658561787eab714b542a5ccaf078846f6639bdbc9235103825a9f02
107- 5eae5cff3bd9c9dcc0f5a4b286909744746c8b6fc8f58976fc0e951ba284a24f3fc190d914ae53
108- aebcc523e7a4a330c8655b4908f6639bdbc9235103825a9f025eae5cff3bd9c9dcc0f5a4b28690
109- 9744746c8b6fb0018773d3b4308344d2e90599cd03749658561787eab714b542a5ccaf07884602
110- 1c76d0a50054ef7205cb95c1fd3f928f224fab8a8d70feaf4f5db90630c3845a06df2f11c881e3
111- 96318bd8f9e9f135c2477e923c3decfd6be5466d6166fb3c702edd0d1d0a201fb8c51a91d01328
112- da257971ca78cc566d4b518cb2cd261f96644067a7359a745fe239db8e73059883aece4d506be7
113- 1c1262b137e295ce5f8a0aac22c1d8d343e5c8b5be652573b85cba8f4dcb46cfa4aafd8d59974e
114- 2eb65f480cf85ab522e23203c4f2faa9f95ebc0cd75b04f04fef5d4001d349d1307bb5570af4a9
115- 1d8af4a489297a3f5255c1e12948787271275c50386ab2ef3980d882228e5f3c82d386e6a4ccf7
116- 663df5f6bbd9cbbadd6b2fea2668a8bf5603be29546152902a35fc44aae80d9dcd85fad6cde5b4
117- 7a6bdc6257c5937f8de877d5ca0356ee9f12a061e03b99ab9dfea56295485cb5ce38cd37f56c39
118- 6949f58b0627f455d26e4c5ff0bc61ab0ff05ffa07880d0e5c540bc45b527e8e85bb1da469935e
119- 0d3ada75d7d41d785d67d1d0732d7d6cbb12b23bfc21dfb4bbe3d933eaa1e5190a85d6e028706a
120- b18d262375dd22a7c1a0e7efa11851ea29b4c92739aaabfee40353453ece16bda2f4a2c2f86e6b
121- 37f6de92dc45dba2eb811413c4af2c89f5fc0859718d7cd9888cd8d813da2e93726484ea5ce5be
122- 8ecf1e1490b874bd897ccd0cbc33db0a1751f813683724b7f5cf750f2497953607d1e82fb5d142
123- 9cbfd7a40ccbdba04fb648203c91e0809e497e80e9fad7895b844ba6da6ac690c7ce49c10e0000
124- 0000000000000100ff00000000000000036d2ac8ddbf6eaac95401f91baca7f068e3c237386d7c
125- 9a271f5187ed909155870200000000e6c8aa48925e37fdab75db13aca7c4f39068e12eeb3af8fd
126- 1f342005cae5ab9a1ef5344fab2374e9436a67f57041899693d333610dfe785d32998873679795
127- 0d
128- ```
129- <!-- markdownlint-enable code-block-style -->
97+ ??? example "Jormungandr transaction representation in hex"
98+
99+ ```hex
100+ 0000037e000b36ad42885189a0ac3438cdb57bc8ac7f6542e05a59d1f2e4d1d
101+ 38194c9d4ac7b000203f6639bdbc9235103825a9f025eae5cff3bd9c9dcc0f5
102+ a4b286909744746c8b6fb0018773d3b4308344d2e90599cd03749658561787e
103+ ab714b542a5ccaf078846f6639bdbc9235103825a9f025eae5cff3bd9c9dcc0
104+ f5a4b286909744746c8b6fc8f58976fc0e951ba284a24f3fc190d914ae53aeb
105+ cc523e7a4a330c8655b4908f6639bdbc9235103825a9f025eae5cff3bd9c9dc
106+ c0f5a4b286909744746c8b6fb0018773d3b4308344d2e90599cd03749658561
107+ 787eab714b542a5ccaf078846021c76d0a50054ef7205cb95c1fd3f928f224f
108+ ab8a8d70feaf4f5db90630c3845a06df2f11c881e396318bd8f9e9f135c2477
109+ e923c3decfd6be5466d6166fb3c702edd0d1d0a201fb8c51a91d01328da2579
110+ 71ca78cc566d4b518cb2cd261f96644067a7359a745fe239db8e73059883aec
111+ e4d506be71c1262b137e295ce5f8a0aac22c1d8d343e5c8b5be652573b85cba
112+ 8f4dcb46cfa4aafd8d59974e2eb65f480cf85ab522e23203c4f2faa9f95ebc0
113+ cd75b04f04fef5d4001d349d1307bb5570af4a91d8af4a489297a3f5255c1e1
114+ 2948787271275c50386ab2ef3980d882228e5f3c82d386e6a4ccf7663df5f6b
115+ bd9cbbadd6b2fea2668a8bf5603be29546152902a35fc44aae80d9dcd85fad6
116+ cde5b47a6bdc6257c5937f8de877d5ca0356ee9f12a061e03b99ab9dfea5629
117+ 5485cb5ce38cd37f56c396949f58b0627f455d26e4c5ff0bc61ab0ff05ffa07
118+ 880d0e5c540bc45b527e8e85bb1da469935e0d3ada75d7d41d785d67d1d0732
119+ d7d6cbb12b23bfc21dfb4bbe3d933eaa1e5190a85d6e028706ab18d262375dd
120+ 22a7c1a0e7efa11851ea29b4c92739aaabfee40353453ece16bda2f4a2c2f86
121+ e6b37f6de92dc45dba2eb811413c4af2c89f5fc0859718d7cd9888cd8d813da
122+ 2e93726484ea5ce5be8ecf1e1490b874bd897ccd0cbc33db0a1751f81368372
123+ 4b7f5cf750f2497953607d1e82fb5d1429cbfd7a40ccbdba04fb648203c91e0
124+ 809e497e80e9fad7895b844ba6da6ac690c7ce49c10e0000000000000000010
125+ 0ff00000000000000036d2ac8ddbf6eaac95401f91baca7f068e3c237386d7c
126+ 9a271f5187ed909155870200000000e6c8aa48925e37fdab75db13aca7c4f39
127+ 068e12eeb3af8fd1f342005cae5ab9a1ef5344fab2374e9436a67f570418996
128+ 93d333610dfe785d329988736797950d
129+ ```
130+ <!-- markdownlint-enable max-one-sentence-per-line code-block-style -->
130131
131132<!-- markdownlint-disable line-length code-block-style -->
1321331 . Transaction size (u32): ` 0000037e `
@@ -151,12 +152,10 @@ b18d262375dd22a7c1a0e7efa11851ea29b4c92739aaabfee40353453ece16bda2f4a2c2f86e6b
151152 * number of inputs and witnesses (u8) (** always** ` 1 ` ): ` 01 `
152153 * number of outputs (u8) (** always** ` 0 ` ): ` 00 `
153154 * Inputs
154- 1 .
155155 * Jörmungandr specific tag: ` ff `
156156 * Jörmungandr specific value (u64) (* could be anything, not processed anymore* ): ` 0000000000000003 `
157157 * input pointer (32 byte): ` 6d2ac8ddbf6eaac95401f91baca7f068e3c237386d7c9a271f5187ed90915587 `
158158 * Witnesses
159- 1 .
160159 * Jörmungandr specific tag (u8): ` 02 `
161160 * Jörmungandr specific nonce (u32) (* could be anything, not processed anymore* ): ` 00000000 `
162161 * legacy signature (64 byte): ` e6c8aa48925e37fdab75db13aca7c4f39068e12eeb3af8fd1f342005cae5ab9a1ef5344fab2374e9436a67f57041899693d333610dfe785d329988736797950d `
@@ -184,16 +183,56 @@ Signature generated from the [BLAKE2b-256] hashed `VOTE-PAYLOAD` bytes except o
1841834 . ` %x00 `
1851845 . ` INPUT ` bytes
186185
187- Based on the on the transaction example, data to sign:
186+ <!-- markdownlint-disable max-one-sentence-per-line code-block-style -->
187+
188+ ??? example "Based on the on the transaction example, data to sign"
189+
190+ ```hex
191+ 36ad42885189a0ac3438cdb57bc8ac7f6542e05a59d1f2e4d1d38194c9d4ac7
192+ b000203f6639bdbc9235103825a9f025eae5cff3bd9c9dcc0f5a4b286909744
193+ 746c8b6fb0018773d3b4308344d2e90599cd03749658561787eab714b542a5c
194+ caf078846f6639bdbc9235103825a9f025eae5cff3bd9c9dcc0f5a4b2869097
195+ 44746c8b6fc8f58976fc0e951ba284a24f3fc190d914ae53aebcc523e7a4a33
196+ 0c8655b4908f6639bdbc9235103825a9f025eae5cff3bd9c9dcc0f5a4b28690
197+ 9744746c8b6fb0018773d3b4308344d2e90599cd03749658561787eab714b54
198+ 2a5ccaf078846021c76d0a50054ef7205cb95c1fd3f928f224fab8a8d70feaf
199+ 4f5db90630c3845a06df2f11c881e396318bd8f9e9f135c2477e923c3decfd6
200+ be5466d6166fb3c702edd0d1d0a201fb8c51a91d01328da257971ca78cc566d
201+ 4b518cb2cd261f96644067a7359a745fe239db8e73059883aece4d506be71c1
202+ 262b137e295ce5f8a0aac22c1d8d343e5c8b5be652573b85cba8f4dcb46cfa4
203+ aafd8d59974e2eb65f480cf85ab522e23203c4f2faa9f95ebc0cd75b04f04fe
204+ f5d4001d349d1307bb5570af4a91d8af4a489297a3f5255c1e1294878727127
205+ 5c50386ab2ef3980d882228e5f3c82d386e6a4ccf7663df5f6bbd9cbbadd6b2
206+ fea2668a8bf5603be29546152902a35fc44aae80d9dcd85fad6cde5b47a6bdc
207+ 6257c5937f8de877d5ca0356ee9f12a061e03b99ab9dfea56295485cb5ce38c
208+ d37f56c396949f58b0627f455d26e4c5ff0bc61ab0ff05ffa07880d0e5c540b
209+ c45b527e8e85bb1da469935e0d3ada75d7d41d785d67d1d0732d7d6cbb12b23
210+ bfc21dfb4bbe3d933eaa1e5190a85d6e028706ab18d262375dd22a7c1a0e7ef
211+ a11851ea29b4c92739aaabfee40353453ece16bda2f4a2c2f86e6b37f6de92d
212+ c45dba2eb811413c4af2c89f5fc0859718d7cd9888cd8d813da2e93726484ea
213+ 5ce5be8ecf1e1490b874bd897ccd0cbc33db0a1751f813683724b7f5cf750f2
214+ 497953607d1e82fb5d1429cbfd7a40ccbdba04fb648203c91e0809e497e80e9
215+ fad7895b844ba6da6ac690c7ce49c10e00000000000000000100ff000000000
216+ 00000036d2ac8ddbf6eaac95401f91baca7f068e3c237386d7c9a271f5187ed
217+ 90915587
218+ ```
219+ <!-- markdownlint-enable max-one-sentence-per-line code-block-style -->
188220
189- <!-- markdownlint-disable code-block-style -->
190- ``` hex
191- 36ad42885189a0ac3438cdb57bc8ac7f6542e05a59d1f2e4d1d38194c9d4ac7b000203f6639bdbc9235103825a9f025eae5cff3bd9c9dcc0f5a4b286909744746c8b6fb0018773d3b4308344d2e90599cd03749658561787eab714b542a5ccaf078846f6639bdbc9235103825a9f025eae5cff3bd9c9dcc0f5a4b286909744746c8b6fc8f58976fc0e951ba284a24f3fc190d914ae53aebcc523e7a4a330c8655b4908f6639bdbc9235103825a9f025eae5cff3bd9c9dcc0f5a4b286909744746c8b6fb0018773d3b4308344d2e90599cd03749658561787eab714b542a5ccaf078846021c76d0a50054ef7205cb95c1fd3f928f224fab8a8d70feaf4f5db90630c3845a06df2f11c881e396318bd8f9e9f135c2477e923c3decfd6be5466d6166fb3c702edd0d1d0a201fb8c51a91d01328da257971ca78cc566d4b518cb2cd261f96644067a7359a745fe239db8e73059883aece4d506be71c1262b137e295ce5f8a0aac22c1d8d343e5c8b5be652573b85cba8f4dcb46cfa4aafd8d59974e2eb65f480cf85ab522e23203c4f2faa9f95ebc0cd75b04f04fef5d4001d349d1307bb5570af4a91d8af4a489297a3f5255c1e12948787271275c50386ab2ef3980d882228e5f3c82d386e6a4ccf7663df5f6bbd9cbbadd6b2fea2668a8bf5603be29546152902a35fc44aae80d9dcd85fad6cde5b47a6bdc6257c5937f8de877d5ca0356ee9f12a061e03b99ab9dfea56295485cb5ce38cd37f56c396949f58b0627f455d26e4c5ff0bc61ab0ff05ffa07880d0e5c540bc45b527e8e85bb1da469935e0d3ada75d7d41d785d67d1d0732d7d6cbb12b23bfc21dfb4bbe3d933eaa1e5190a85d6e028706ab18d262375dd22a7c1a0e7efa11851ea29b4c92739aaabfee40353453ece16bda2f4a2c2f86e6b37f6de92dc45dba2eb811413c4af2c89f5fc0859718d7cd9888cd8d813da2e93726484ea5ce5be8ecf1e1490b874bd897ccd0cbc33db0a1751f813683724b7f5cf750f2497953607d1e82fb5d1429cbfd7a40ccbdba04fb648203c91e0809e497e80e9fad7895b844ba6da6ac690c7ce49c10e00000000000000000100ff00000000000000036d2ac8ddbf6eaac95401f91baca7f068e3c237386d7c9a271f5187ed90915587
192- ```
193- <!-- markdownlint-enable code-block-style -->
194221
195222[ BLAKE2b-256] hash of the transaction data to sign equals to ` f51473df863be3e0383ce5a8da79c7ff51b3d98dadbbefbf9f042e8601901269 `
196223
224+ <!-- markdownlint-disable max-one-sentence-per-line code-block-style -->
225+
226+ ??? example "Based on the on the transaction example, data to sign"
227+
228+ ```hex
229+ 0200000000e6c8aa48925e37fdab75db13aca7c4f39068e12eeb3af8fd1f342
230+ 005cae5ab9a1ef5344fab2374e9436a67f57041899693d333610dfe785d3299
231+ 88736797950d
232+ ```
233+ <!-- markdownlint-enable max-one-sentence-per-line code-block-style -->
234+
235+
197236Expected witness (includes signature)
198237
199238<!-- markdownlint-disable code-block-style -->
@@ -214,6 +253,7 @@ Expected witness (includes signature)
214253
215254<!-- OPTIONAL SECTIONS: see CIP-0001 > Document > Structure table -->
216255
256+ [ ristretto255 ] : https://ristretto.group/
217257[ BLAKE2b-256 ] : https://www.blake2.net/blake2.pdf
218258[ BLAKE2b-512 ] : https://www.blake2.net/blake2.pdf
219- [ ristretto255 ] : https://ristretto.group
259+ [ CC-BY-4.0 ] : https://creativecommons.org/licenses/by/4.0/legalcode
0 commit comments