EDGE Toolkit Technical Guideline

Elliptic Curve Schnorr Digital Signature Algorithm

EC-SDSA Key Pair Generation

edgetk -pkey keygen -algorithm ecsdsa -curve brainpoolp256r1 -prv "Private.pem" -pass nil -pub "Public.pem"
EC-SDSA key pair generated successfully:
Private key saved to: albanese.atwebpages.com/directrix/Private.pem
Public key saved to: albanese.atwebpages.com/directrix/Public.pem
Fingerprint: goURaaspSGYAexUDu+nCQ8mhc3Nvpohg3r0kYI5o1Zo=
ECSDSA (256-bit)
+-----------------+
|      =#^^^^^^^^^|
|     ..OE#^^^&^^^|
|      o..oo^+^B/^|
|     .  .** &.X.+|
|      . S.*= + o |
|       . *  +    |
|                 |
|                 |
|                 |
+-----------------+

Private Key Details

edgetk -pkey text -key "Private.pem"
Private key details:
-----BEGIN ECSDSA PRIVATE KEY-----
MIGGAgEAMBIGBij0KAMACwYIKyQDAwIBAQcEbTBrAgEBBCAkx4Pdmz4+icXeFIdU
Ww38a9/ffQw1yX7DkFrhWwClzaFEA0IABJUu28UKOFQ+5iu6bCcPb28lPe8eF012
60gq8G5K71LsC1mKb+IFWAIiXtDiz0kTK+Uhn7GuWXPZcrtIVpxHIms=
-----END ECSDSA PRIVATE KEY-----
Private-Key: (256-bit)
priv:
    24:c7:83:dd:9b:3e:3e:89:c5:de:14:87:54:5b:0d:
    fc:6b:df:df:7d:0c:35:c9:7e:c3:90:5a:e1:5b:00:
    a5:cd
pub:
    04:95:2e:db:c5:0a:38:54:3e:e6:2b:ba:6c:27:0f:
    6f:6f:25:3d:ef:1e:17:4d:76:eb:48:2a:f0:6e:4a:
    ef:52:ec:0b:59:8a:6f:e2:05:58:02:22:5e:d0:e2:
    cf:49:13:2b:e5:21:9f:b1:ae:59:73:d9:72:bb:48:
    56:9c:47:22:6b
Curve: brainpoolP256r1

KeyID: 8a95cc9f835b9c2b4b8c984ec185cfae950ffffe

Public Key Details

edgetk -pkey text -key "Public.pem"
Public key details:
-----BEGIN PUBLIC KEY-----
MFgwEgYGKPQoAwALBggrJAMDAgEBBwNCAASVLtvFCjhUPuYrumwnD29vJT3vHhdN
dutIKvBuSu9S7AtZim/iBVgCIl7Q4s9JEyvlIZ+xrllz2XK7SFacRyJr
-----END PUBLIC KEY-----
Public-Key: (256-bit)
pub.X:
    95:2e:db:c5:0a:38:54:3e:e6:2b:ba:6c:27:0f:6f:
    6f:25:3d:ef:1e:17:4d:76:eb:48:2a:f0:6e:4a:ef:
    52:ec
pub.Y:
    0b:59:8a:6f:e2:05:58:02:22:5e:d0:e2:cf:49:13:
    2b:e5:21:9f:b1:ae:59:73:d9:72:bb:48:56:9c:47:
    22:6b
pub:
    04:95:2e:db:c5:0a:38:54:3e:e6:2b:ba:6c:27:0f:
    6f:6f:25:3d:ef:1e:17:4d:76:eb:48:2a:f0:6e:4a:
    ef:52:ec:0b:59:8a:6f:e2:05:58:02:22:5e:d0:e2:
    cf:49:13:2b:e5:21:9f:b1:ae:59:73:d9:72:bb:48:
    56:9c:47:22:6b
Curve: brainpoolP256r1

Digital Signature Generation

edgetk -pkey sign -algorithm ecsdsa -md shavite256 -key "Private.pem" "test.txt" > sign.txt
Digital signature generated successfully:
3046022100fbf96cdcfa02473271483a434010423b99bf79350a48457f7a16ffcb8f866478022100a069d56ff27442d6697b8348c4c8983bdeb79a6078fd6899b52da979327c3610

Digital Signature Verification

edgetk -pkey verify -algorithm ecsdsa -md shavite256 -key "Public.pem" -signature "3046022100fbf96cdcfa02473271483a434010423b99bf79350a48457f7a16ffcb8f866478022100a069d56ff27442d6697b8348c4c8983bdeb79a6078fd6899b52da979327c3610" "test.txt"
Signature verified successfully:
Verified: true