ECDSA Secret » History » Version 1
Andreas Steffen, 09.12.2008 01:21
ECDSA key generation HOWTO
1 | 1 | Andreas Steffen | = ECDSA Secret = |
---|---|---|---|
2 | 1 | Andreas Steffen | |
3 | 1 | Andreas Steffen | == Notation == |
4 | 1 | Andreas Steffen | |
5 | 1 | Andreas Steffen | [ ''<id selectors>'' ] : ECDSA ''<private key file>'' [ ''<passphrase>''|%prompt ] |
6 | 1 | Andreas Steffen | |
7 | 1 | Andreas Steffen | == Creation of an ECDSA key using OpenSSL 0.9.8 == |
8 | 1 | Andreas Steffen | |
9 | 1 | Andreas Steffen | You can create an ECDSA key with the ''openssl ecparam'' command. |
10 | 1 | Andreas Steffen | {{{ |
11 | 1 | Andreas Steffen | openssl ecparam -list_curves |
12 | 1 | Andreas Steffen | }}} |
13 | 1 | Andreas Steffen | gives you a huge list of available elliptic curves but IKEv2 currently supports |
14 | 1 | Andreas Steffen | only the following three curves: |
15 | 1 | Andreas Steffen | {{{ |
16 | 1 | Andreas Steffen | prime256v1 |
17 | 1 | Andreas Steffen | secp384r1 |
18 | 1 | Andreas Steffen | secp521r1 |
19 | 1 | Andreas Steffen | }}} |
20 | 1 | Andreas Steffen | The creation of an EC key goes like this: |
21 | 1 | Andreas Steffen | {{{ |
22 | 1 | Andreas Steffen | openssl ecparam -genkey -name secp384r1 -out ecKey.pem |
23 | 1 | Andreas Steffen | }}} |
24 | 1 | Andreas Steffen | Remove the EC parameter definition in front of the EC private key |
25 | 1 | Andreas Steffen | {{{ |
26 | 1 | Andreas Steffen | openssl ec -in ecKey.pem -out ecKey.pem |
27 | 1 | Andreas Steffen | }}} |
28 | 1 | Andreas Steffen | Verify the content of the key: |
29 | 1 | Andreas Steffen | {{{ |
30 | 1 | Andreas Steffen | openssl ec -in ecKey.pem -text |
31 | 1 | Andreas Steffen | |
32 | 1 | Andreas Steffen | read EC key |
33 | 1 | Andreas Steffen | Private-Key: (384 bit) |
34 | 1 | Andreas Steffen | priv: |
35 | 1 | Andreas Steffen | 3c:75:17:c3:97:0b:b4:28:42:8c:b6:f5:56:57:32: |
36 | 1 | Andreas Steffen | 2b:c1:ff:e2:ee:62:25:38:04:b1:6a:f5:23:48:e1: |
37 | 1 | Andreas Steffen | ba:79:ff:56:64:88:74:92:b7:c2:49:ab:8c:ff:b2: |
38 | 1 | Andreas Steffen | 7c:6c:b3 |
39 | 1 | Andreas Steffen | pub: |
40 | 1 | Andreas Steffen | 04:f2:cd:ca:ae:37:38:8d:98:e0:1c:f4:26:59:af: |
41 | 1 | Andreas Steffen | 41:4d:fb:4f:d1:20:10:fb:88:b3:4a:b3:9b:a7:69: |
42 | 1 | Andreas Steffen | dc:0b:5c:ef:06:22:6b:8e:08:c3:c2:74:1b:36:12: |
43 | 1 | Andreas Steffen | 8b:ee:45:c5:f8:3b:73:6f:0a:a4:c9:7c:e1:e9:a8: |
44 | 1 | Andreas Steffen | e2:c9:7c:6f:f1:69:b4:45:ab:d3:45:89:41:6e:68: |
45 | 1 | Andreas Steffen | 9d:9a:d2:ee:fd:1a:a1:e6:ca:3f:4a:6b:0d:db:a5: |
46 | 1 | Andreas Steffen | ef:93:95:4f:8c:4c:31 |
47 | 1 | Andreas Steffen | ASN1 OID: secp384r1 |
48 | 1 | Andreas Steffen | writing EC key |
49 | 1 | Andreas Steffen | -----BEGIN EC PRIVATE KEY----- |
50 | 1 | Andreas Steffen | MIGkAgEBBDA8dRfDlwu0KEKMtvVWVzIrwf/i7mIlOASxavUjSOG6ef9WZIh0krfC |
51 | 1 | Andreas Steffen | SauM/7J8bLOgBwYFK4EEACKhZANiAATyzcquNziNmOAc9CZZr0FN+0/RIBD7iLNK |
52 | 1 | Andreas Steffen | s5unadwLXO8GImuOCMPCdBs2EovuRcX4O3NvCqTJfOHpqOLJfG/xabRFq9NFiUFu |
53 | 1 | Andreas Steffen | aJ2a0u79GqHmyj9Kaw3bpe+TlU+MTDE= |
54 | 1 | Andreas Steffen | -----END EC PRIVATE KEY----- |
55 | 1 | Andreas Steffen | }}} |