ECC (Elliptic Curve Cryptography)
Participant 1 (ECDSA Key Pair Generation)
edgetk -pkey keygen -algorithm ec -curve secp256r1 -prv "Private1.pem" -pass nil -pub "Public1.pem"
Participant 1's ECDSA key pair generated successfully:
Private key saved to: albanese.atwebpages.com/directrix/Private1.pem
Public key saved to: albanese.atwebpages.com/directrix/Public1.pem
Fingerprint: x2Mzt7rLD7F5ehuJ3S33h5S0ctGjWTka0cBesEb9pTs=
ECDSA (256-bit)
+-----------------+
| .B^^^^^^^^^^^^|
| *=@%E#X#^^^^^^|
| =*O=X=+B=X/O*@&|
|.O.X**+o O *o%O.|
|+ * O + S * *o*+|
| o o . * o ++o|
| o .. |
| |
| |
+-----------------+
Participant 2 (ECDSA Key Pair Generation)
edgetk -pkey keygen -algorithm ec -curve secp256r1 -prv "Private2.pem" -pass nil -pub "Public2.pem"
Participant 2's ECDSA key pair generated successfully:
Private key saved to: albanese.atwebpages.com/directrix/Private2.pem
Public key saved to: albanese.atwebpages.com/directrix/Public2.pem
Fingerprint: lkQ2N9x4PjQA9HDH43GG1mLW28gz1sLr+YLdbztFHLM=
ECDSA (256-bit)
+-----------------+
| *^&^^^^^^^^^^|
| .o+BE#O^^@^^^^|
| ..+oo@B%^@^@^|
| o...Oo+%%O#o|
| . S B.*==oo|
| . * o. . |
| . |
| |
| |
+-----------------+
Participant 1 Private Key Details
edgetk -pkey text -key "Private1.pem"
Participant 1's Private key details:
-----BEGIN EC PRIVATE KEY-----
MHcCAQEEIFVpS07ChFP+O0eaYD96TB67s1idIsXo1BhxjCBzNCr9oAoGCCqGSM49
AwEHoUQDQgAEFG0bTxnSqwfVCc3L6UI+oZsZVY+aNBnbbqYrlFBi1+35x/+E8Z+9
ibwb/43uvSVVphxL6pwSPGNjeV3/a4hRIQ==
-----END EC PRIVATE KEY-----
Private-Key: (256-bit)
priv:
55:69:4b:4e:c2:84:53:fe:3b:47:9a:60:3f:7a:4c:
1e:bb:b3:58:9d:22:c5:e8:d4:18:71:8c:20:73:34:
2a:fd
pub:
04:14:6d:1b:4f:19:d2:ab:07:d5:09:cd:cb:e9:42:
3e:a1:9b:19:55:8f:9a:34:19:db:6e:a6:2b:94:50:
62:d7:ed:f9:c7:ff:84:f1:9f:bd:89:bc:1b:ff:8d:
ee:bd:25:55:a6:1c:4b:ea:9c:12:3c:63:63:79:5d:
ff:6b:88:51:21
Curve: P-256
KeyID: e394dfe57f4101eaa39a13e56ecdd7d041dbe47e
Participant 1 Public Key Details
edgetk -pkey text -key "Public1.pem"
Participant 1's Public key details:
-----BEGIN PUBLIC KEY-----
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEFG0bTxnSqwfVCc3L6UI+oZsZVY+a
NBnbbqYrlFBi1+35x/+E8Z+9ibwb/43uvSVVphxL6pwSPGNjeV3/a4hRIQ==
-----END PUBLIC KEY-----
Public-Key: (256-bit)
pub.X:
14:6d:1b:4f:19:d2:ab:07:d5:09:cd:cb:e9:42:3e:
a1:9b:19:55:8f:9a:34:19:db:6e:a6:2b:94:50:62:
d7:ed
pub.Y:
f9:c7:ff:84:f1:9f:bd:89:bc:1b:ff:8d:ee:bd:25:
55:a6:1c:4b:ea:9c:12:3c:63:63:79:5d:ff:6b:88:
51:21
pub:
04:14:6d:1b:4f:19:d2:ab:07:d5:09:cd:cb:e9:42:
3e:a1:9b:19:55:8f:9a:34:19:db:6e:a6:2b:94:50:
62:d7:ed:f9:c7:ff:84:f1:9f:bd:89:bc:1b:ff:8d:
ee:bd:25:55:a6:1c:4b:ea:9c:12:3c:63:63:79:5d:
ff:6b:88:51:21
Curve: P-256
Participant 2 Private Key Details
edgetk -pkey text -key "Private2.pem"
Participant 2's Private key details:
-----BEGIN EC PRIVATE KEY-----
MHcCAQEEIIC2x1CPhLtyaeU9TE75vl31OaBdK+GgIesGt1ptfYq4oAoGCCqGSM49
AwEHoUQDQgAEAfiFWAjGRCMcBibxLPIU+rJc4I2OP2CdUKnEiegDD2KwuibNUcvA
8+gI//dh17mCx/7CvmwBP63Ndxu0o898DQ==
-----END EC PRIVATE KEY-----
Private-Key: (256-bit)
priv:
80:b6:c7:50:8f:84:bb:72:69:e5:3d:4c:4e:f9:be:
5d:f5:39:a0:5d:2b:e1:a0:21:eb:06:b7:5a:6d:7d:
8a:b8
pub:
04:01:f8:85:58:08:c6:44:23:1c:06:26:f1:2c:f2:
14:fa:b2:5c:e0:8d:8e:3f:60:9d:50:a9:c4:89:e8:
03:0f:62:b0:ba:26:cd:51:cb:c0:f3:e8:08:ff:f7:
61:d7:b9:82:c7:fe:c2:be:6c:01:3f:ad:cd:77:1b:
b4:a3:cf:7c:0d
Curve: P-256
KeyID: ac92ce9dbc5800935fd6f14b4e6bfae0ff58fc40
Participant 2 Public Key Details
edgetk -pkey text -key "Public2.pem"
Participant 2's Public key details:
-----BEGIN PUBLIC KEY-----
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEAfiFWAjGRCMcBibxLPIU+rJc4I2O
P2CdUKnEiegDD2KwuibNUcvA8+gI//dh17mCx/7CvmwBP63Ndxu0o898DQ==
-----END PUBLIC KEY-----
Public-Key: (256-bit)
pub.X:
01:f8:85:58:08:c6:44:23:1c:06:26:f1:2c:f2:14:
fa:b2:5c:e0:8d:8e:3f:60:9d:50:a9:c4:89:e8:03:
0f:62
pub.Y:
b0:ba:26:cd:51:cb:c0:f3:e8:08:ff:f7:61:d7:b9:
82:c7:fe:c2:be:6c:01:3f:ad:cd:77:1b:b4:a3:cf:
7c:0d
pub:
04:01:f8:85:58:08:c6:44:23:1c:06:26:f1:2c:f2:
14:fa:b2:5c:e0:8d:8e:3f:60:9d:50:a9:c4:89:e8:
03:0f:62:b0:ba:26:cd:51:cb:c0:f3:e8:08:ff:f7:
61:d7:b9:82:c7:fe:c2:be:6c:01:3f:ad:cd:77:1b:
b4:a3:cf:7c:0d
Curve: P-256
Digital Signature Generation (ECDSA)
edgetk -pkey sign -algorithm ec -md sha256 -key "Private1.pem" "test.txt" > sign.txt
Digital signature generated successfully:
304402203bf86f59cb63a0a37ea2bbaec62ff67f6d67b3f57d3722205602f9827527214002207d9559e594d1a286258df6063a3e4be2e7b7f63a0cf35129124bf8381e9e938a
Digital Signature Verification (ECDSA)
edgetk -pkey verify -algorithm ec -md sha256 -key "Public1.pem" -signature "304402203bf86f59cb63a0a37ea2bbaec62ff67f6d67b3f57d3722205602f9827527214002207d9559e594d1a286258df6063a3e4be2e7b7f63a0cf35129124bf8381e9e938a" "test.txt"
Signature verified successfully:
Verified: true
Participant 1 ECDH Key Exchange
edgetk -pkey derive -algorithm ec -key "Private1.pem" -pub "Public2.pem"
Participant 1's ECDH shared secret generated successfully:
a472c43d381491bb4eb725caad0731a60405a2a27ca24587fd9b4253f0da97ec
Participant 2 ECDH Key Exchange
edgetk -pkey derive -algorithm ec -key "Private2.pem" -pub "Public1.pem"
Participant 2's ECDH shared secret generated successfully:
a472c43d381491bb4eb725caad0731a60405a2a27ca24587fd9b4253f0da97ec