10
UMLObject
50
70
140
70
Passphrase
--
(Optional)
Any string
lt=.
Relation
180
90
180
50
lt=.>
SHA-512, keep
first 16 bytes
10.0;20.0;160.0;20.0
UMLObject
340
70
140
70
Seed
--
(16 bytes)
UMLObject
50
280
150
70
Root Private Key
--
(32 bytes)
Relation
110
130
460
170
lt=<-
SHA-512Half
10.0;150.0;10.0;110.0;440.0;110.0;440.0;10.0;400.0;10.0
UMLObject
330
280
150
70
Root Public Key
--
(33 bytes
compressed)
Relation
190
300
160
50
lt=->
Public Key
Derivation
10.0;20.0;140.0;20.0
Text
50
30
280
30
*secp256k1 Key Derivation*
style=wordwrap
UMLSyncBarVertical
500
110
20
70
template=txt
title=titletext
bg=red
UMLObject
370
150
110
70
Root Key
Sequence
--
(4 bytes;
default 0)
Relation
470
120
60
30
lt=->
10.0;10.0;40.0;10.0
Relation
470
150
60
30
lt=->
10.0;10.0;40.0;10.0
UMLObject
370
440
110
70
Int Key
Sequence
--
(4 bytes;
default 0)
UMLObject
370
360
110
70
Family
Number
--
(4 bytes;
all 0's)
UMLNote
140
170
210
50
Increment the key sequence and try again if the SHA-512Half doesn't make a valid private key.
bg=yellow
fontsize=10
style=wordwrap
UMLNote
150
460
210
50
Increment the key sequence and try again if the SHA-512Half doesn't make a valid private key.
bg=yellow
fontsize=10
style=wordwrap
Relation
140
380
410
220
lt=<-
SHA-512Half
10.0;200.0;10.0;160.0;390.0;160.0;390.0;10.0;370.0;10.0
UMLSyncBarVertical
500
360
20
80
template=txt
title=titletext
bg=red
Relation
470
320
60
80
lt=->
10.0;10.0;20.0;10.0;20.0;60.0;40.0;60.0
Relation
470
390
60
30
lt=->
10.0;10.0;40.0;10.0
Relation
470
410
60
70
lt=->
10.0;50.0;20.0;50.0;20.0;10.0;40.0;10.0
UMLObject
80
580
150
80
Intermediate
Private Key
--
(32 bytes)
UMLObject
330
580
150
80
Intermediate
Public Key
--
(33 bytes
compressed)
Relation
220
610
130
50
lt=->
Public Key
Derivation
10.0;20.0;110.0;20.0
UMLState
660
330
140
40
Elliptic Curve
Point Add
type=sender
Relation
470
290
210
70
lt=<-
190.0;50.0;150.0;50.0;150.0;10.0;10.0;10.0
Relation
470
350
210
280
lt=<-
190.0;10.0;150.0;10.0;150.0;260.0;10.0;260.0
UMLObject
800
320
150
70
Master Public Key
--
(33 bytes
compressed)
UMLState
150
700
160
40
Add, Modulo
Group Order
type=sender
Relation
100
650
70
80
lt=<-
50.0;60.0;10.0;60.0;10.0;10.0
Relation
50
340
120
410
lt=<-
100.0;390.0;10.0;390.0;10.0;10.0
UMLObject
330
690
150
70
Master Private Key
--
(32 bytes)
Relation
300
710
50
30
lt=<-
30.0;10.0;10.0;10.0
Relation
470
380
410
380
lt=.>
(Public key derivation
yields the same result.)
10.0;350.0;390.0;350.0;390.0;10.0
UMLNote
590
230
210
50
Validators use the root key pair.
bg=green
style=wordwrap
Relation
200
240
410
60
lt=<..
fg=#25A768
transparency=0
10.0;40.0;390.0;10.0
Relation
480
260
130
50
lt=<..
fg=#25A768
transparency=0
10.0;30.0;110.0;10.0
UMLNote
630
630
210
50
Accounts use the master key pair.
bg=green
style=wordwrap
Relation
760
380
80
270
lt=<..
fg=#25A768
transparency=0
60.0;10.0;10.0;250.0
Relation
470
660
180
70
lt=<..
fg=#25A768
transparency=0
10.0;50.0;160.0;10.0