Skip to content

Commit 00cff22

Browse files
committed
Add more ECDSA certs
1 parent 7ea275d commit 00cff22

17 files changed

+146
-0
lines changed

DevNotes.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,3 +28,10 @@ Improve load certificate, test TLS authentication, naming CertificateInfo config
2828
- Test Authentication TLS
2929
- Fix Authentication TLS on Windows: support reimport and change to default Exportable | EphemeralKeySet
3030
- New configuration: CertificateConfig with key storage flags and reimport
31+
32+
### Generate Self-Signed Certificate
33+
- `-TextExtension @("2.5.29.19={critical} {text}CA=false")`
34+
35+
- New-SelfSignedCertificate -CertStoreLocation 'Cert:\CurrentUser\My' -NotAfter (Get-Date).AddYears(50) -Subject 'development.dummy_ecdsa_p384-2024Nov' -FriendlyName 'development.dummy_ecdsa_p384-2024Nov' -KeyAlgorithm ECDSA_P384 -HashAlgorithm SHA384 -KeyUsage DigitalSignature,NonRepudiation -CurveExport CurveName
36+
37+
- New-SelfSignedCertificate -CertStoreLocation 'Cert:\CurrentUser\My' -NotAfter (Get-Date).AddYears(50) -Subject 'development.dummy_ecdsa_p521-2024Nov' -FriendlyName 'development.dummy_ecdsa_p521-2024Nov' -KeyAlgorithm ECDSA_P521 -HashAlgorithm SHA384 -KeyUsage DigitalSignature,NonRepudiation -CurveExport CurveName

test/NetLah.Extensions.Configuration.Test/CertificateLoaderEncryptionTest.cs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,11 @@ public class CertificateLoaderEncryptionTest
1212
[InlineData("development.dummy_ecdh_p384-2021June_nopass.pfx", false, false)]
1313
[InlineData("development.dummy_ecdh_p521-2021June.pfx", false, true)]
1414
[InlineData("development.dummy_ecdh_p521-2021June_nopass.pfx", false, false)]
15+
[InlineData("development.dummy_ecdsa_p384-2024Nov_3ds-sha1.pfx", false, true)]
16+
[InlineData("development.dummy_ecdsa_p384-2024Nov.pfx", false, true)]
17+
[InlineData("development.dummy_ecdsa_p384-2024Nov_nopass.pfx", false, false)]
18+
[InlineData("development.dummy_ecdsa_p521-2024Nov.pfx", false, true)]
19+
[InlineData("development.dummy_ecdsa_p521-2024Nov_nopass.pfx", false, false)]
1520
[InlineData("development.dummy-rsa-2071June.pfx", false, true)]
1621
[InlineData("development.dummy-rsa-2071June_nopass.pfx", false, false)]
1722
[InlineData("development.dummy-rsa4096-2071June.pfx", false, true)]
@@ -21,6 +26,10 @@ public class CertificateLoaderEncryptionTest
2126
[InlineData("development.dummy_ecdh_p384-2021June_noenc.pem", true, false)]
2227
[InlineData("development.dummy_ecdh_p521-2021June.pem", true, true)]
2328
[InlineData("development.dummy_ecdh_p521-2021June_noenc.pem", true, false)]
29+
[InlineData("development.dummy_ecdsa_p384-2024Nov.pem", true, true)]
30+
[InlineData("development.dummy_ecdsa_p384-2024Nov_noenc.pem", true, false)]
31+
[InlineData("development.dummy_ecdsa_p521-2024Nov.pem", true, true)]
32+
[InlineData("development.dummy_ecdsa_p521-2024Nov_noenc.pem", true, false)]
2433
[InlineData("development.dummy-rsa-2071June.pem", true, true)]
2534
[InlineData("development.dummy-rsa-2071June_noenc.pem", true, false)]
2635
[InlineData("development.dummy-rsa4096-2071June.pem", true, true)]

test/NetLah.Extensions.Configuration.Test/CertificateLoaderTest.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,10 @@ public class CertificateLoaderTest
99
[InlineData("development.dummy_ecdh_p384-2021June.crt")]
1010
[InlineData("development.dummy_ecdh_p521-2021June.cer")]
1111
[InlineData("development.dummy_ecdh_p521-2021June.crt")]
12+
[InlineData("development.dummy_ecdsa_p384-2024Nov.cer")]
13+
[InlineData("development.dummy_ecdsa_p384-2024Nov.crt")]
14+
[InlineData("development.dummy_ecdsa_p521-2024Nov.cer")]
15+
[InlineData("development.dummy_ecdsa_p521-2024Nov.crt")]
1216
[InlineData("development.dummy-rsa-2071June.cer")]
1317
[InlineData("development.dummy-rsa-2071June.crt")]
1418
[InlineData("development.dummy-rsa4096-2071June.cer")]

test/NetLah.Extensions.Configuration.Test/Properties/.gitignore

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,3 +23,16 @@
2323
!development.dummy_ecdh_p521-2021June.pfx
2424
!development.dummy_ecdh_p521-2021June_noenc.pem
2525
!development.dummy_ecdh_p521-2021June_nopass.pfx
26+
!development.dummy_ecdsa_p384-2024Nov.cer
27+
!development.dummy_ecdsa_p384-2024Nov.crt
28+
!development.dummy_ecdsa_p384-2024Nov.pem
29+
!development.dummy_ecdsa_p384-2024Nov.pfx
30+
!development.dummy_ecdsa_p384-2024Nov_3ds-sha1.pfx
31+
!development.dummy_ecdsa_p384-2024Nov_noenc.pem
32+
!development.dummy_ecdsa_p384-2024Nov_nopass.pfx
33+
!development.dummy_ecdsa_p521-2024Nov.cer
34+
!development.dummy_ecdsa_p521-2024Nov.crt
35+
!development.dummy_ecdsa_p521-2024Nov.pem
36+
!development.dummy_ecdsa_p521-2024Nov.pfx
37+
!development.dummy_ecdsa_p521-2024Nov_noenc.pem
38+
!development.dummy_ecdsa_p521-2024Nov_nopass.pfx
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
-----BEGIN CERTIFICATE-----
2+
MIIB6zCCAXGgAwIBAgIQESKJDIyBwKxKog45Xsn0lzAKBggqhkjOPQQDAzAvMS0w
3+
KwYDVQQDDCRkZXZlbG9wbWVudC5kdW1teV9lY2RzYV9wMzg0LTIwMjROb3YwIBcN
4+
MjQxMTE4MDcyNDA5WhgPMjA3NDExMTgwNzM0MDhaMC8xLTArBgNVBAMMJGRldmVs
5+
b3BtZW50LmR1bW15X2VjZHNhX3AzODQtMjAyNE5vdjB2MBAGByqGSM49AgEGBSuB
6+
BAAiA2IABAO6V0U6H5pJsl9oVGwCY6sJxUPTt1n4lt66xcFnXz4GCzC97ki2GgJQ
7+
MWeUUJAXpP2DCEGeUnyI0B0S6HpAYMjSQhNl6LzYacT6N1dOdvQMORbMxKyNdyQ2
8+
LusP8Nt4H6NQME4wDgYDVR0PAQH/BAQDAgbAMB0GA1UdJQQWMBQGCCsGAQUFBwMC
9+
BggrBgEFBQcDATAdBgNVHQ4EFgQU5CX4KzIWdZdXPJRkvPJKFMz/F6IwCgYIKoZI
10+
zj0EAwMDaAAwZQIwPnsR+q2rWlwgzIg7LgADzsZIuBc9N0VGxmpWQhkcmJxtMfMn
11+
i/8vhKShPLC1xNhsAjEA4SP/yreVNxpfE+TQt0T8+vw+tTW7UFzvUVKr3dyoNISP
12+
Ldd2W1oh/yXBRkXGdsF3
13+
-----END CERTIFICATE-----
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
-----BEGIN ENCRYPTED PRIVATE KEY-----
2+
MIH1MCgGCiqGSIb3DQEMAQMwGgQUyG07GfwI1mh6l72eNL2UaYlOJgYCAgQABIHI
3+
/FUV+dupFdL/F9VslWyKfhnvanRjhxuOFxGj9y9SYFYQkajt/EX4c4dSMXAqrhiE
4+
nAHFgarpC6qRD64MJCTOAxY6QSpc1Vdwh3whj+sy/q3KNYnOfDe5FnMDiTuYpfoR
5+
65fpicD/T2bWcU4JOv0swieLCbmBRNOnuy7ABsMqgXc4QihKgjoBiDKu/Ema0jla
6+
oZf0sUWMBMjcG7WL4gMg9qv4qnYOuiKyoHpyynhGucUMvhiEE5sf857UZTGh/ybR
7+
p5FoKKbWCcs=
8+
-----END ENCRYPTED PRIVATE KEY-----
9+
-----BEGIN CERTIFICATE-----
10+
MIIB6zCCAXGgAwIBAgIQESKJDIyBwKxKog45Xsn0lzAKBggqhkjOPQQDAzAvMS0w
11+
KwYDVQQDDCRkZXZlbG9wbWVudC5kdW1teV9lY2RzYV9wMzg0LTIwMjROb3YwIBcN
12+
MjQxMTE4MDcyNDA5WhgPMjA3NDExMTgwNzM0MDhaMC8xLTArBgNVBAMMJGRldmVs
13+
b3BtZW50LmR1bW15X2VjZHNhX3AzODQtMjAyNE5vdjB2MBAGByqGSM49AgEGBSuB
14+
BAAiA2IABAO6V0U6H5pJsl9oVGwCY6sJxUPTt1n4lt66xcFnXz4GCzC97ki2GgJQ
15+
MWeUUJAXpP2DCEGeUnyI0B0S6HpAYMjSQhNl6LzYacT6N1dOdvQMORbMxKyNdyQ2
16+
LusP8Nt4H6NQME4wDgYDVR0PAQH/BAQDAgbAMB0GA1UdJQQWMBQGCCsGAQUFBwMC
17+
BggrBgEFBQcDATAdBgNVHQ4EFgQU5CX4KzIWdZdXPJRkvPJKFMz/F6IwCgYIKoZI
18+
zj0EAwMDaAAwZQIwPnsR+q2rWlwgzIg7LgADzsZIuBc9N0VGxmpWQhkcmJxtMfMn
19+
i/8vhKShPLC1xNhsAjEA4SP/yreVNxpfE+TQt0T8+vw+tTW7UFzvUVKr3dyoNISP
20+
Ldd2W1oh/yXBRkXGdsF3
21+
-----END CERTIFICATE-----
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
-----BEGIN PRIVATE KEY-----
2+
MIG/AgEAMBAGByqGSM49AgEGBSuBBAAiBIGnMIGkAgEBBDCtd51WUopNgTdtQx7A
3+
plnOXSLTlH5gLo/hxs9IGcy+ORhFrdz7McSHgu+bjmrjFS2gBwYFK4EEACKhZANi
4+
AAQDuldFOh+aSbJfaFRsAmOrCcVD07dZ+JbeusXBZ18+Bgswve5IthoCUDFnlFCQ
5+
F6T9gwhBnlJ8iNAdEuh6QGDI0kITZei82GnE+jdXTnb0DDkWzMSsjXckNi7rD/Db
6+
eB8=
7+
-----END PRIVATE KEY-----
8+
-----BEGIN CERTIFICATE-----
9+
MIIB6zCCAXGgAwIBAgIQESKJDIyBwKxKog45Xsn0lzAKBggqhkjOPQQDAzAvMS0w
10+
KwYDVQQDDCRkZXZlbG9wbWVudC5kdW1teV9lY2RzYV9wMzg0LTIwMjROb3YwIBcN
11+
MjQxMTE4MDcyNDA5WhgPMjA3NDExMTgwNzM0MDhaMC8xLTArBgNVBAMMJGRldmVs
12+
b3BtZW50LmR1bW15X2VjZHNhX3AzODQtMjAyNE5vdjB2MBAGByqGSM49AgEGBSuB
13+
BAAiA2IABAO6V0U6H5pJsl9oVGwCY6sJxUPTt1n4lt66xcFnXz4GCzC97ki2GgJQ
14+
MWeUUJAXpP2DCEGeUnyI0B0S6HpAYMjSQhNl6LzYacT6N1dOdvQMORbMxKyNdyQ2
15+
LusP8Nt4H6NQME4wDgYDVR0PAQH/BAQDAgbAMB0GA1UdJQQWMBQGCCsGAQUFBwMC
16+
BggrBgEFBQcDATAdBgNVHQ4EFgQU5CX4KzIWdZdXPJRkvPJKFMz/F6IwCgYIKoZI
17+
zj0EAwMDaAAwZQIwPnsR+q2rWlwgzIg7LgADzsZIuBc9N0VGxmpWQhkcmJxtMfMn
18+
i/8vhKShPLC1xNhsAjEA4SP/yreVNxpfE+TQt0T8+vw+tTW7UFzvUVKr3dyoNISP
19+
Ldd2W1oh/yXBRkXGdsF3
20+
-----END CERTIFICATE-----
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
-----BEGIN CERTIFICATE-----
2+
MIICNTCCAZegAwIBAgIQI2e1ZXzsobxKskTug53IJTAKBggqhkjOPQQDAzAvMS0w
3+
KwYDVQQDDCRkZXZlbG9wbWVudC5kdW1teV9lY2RzYV9wNTIxLTIwMjROb3YwIBcN
4+
MjQxMTE4MDczOTQ2WhgPMjA3NDExMTgwNzQ5NDZaMC8xLTArBgNVBAMMJGRldmVs
5+
b3BtZW50LmR1bW15X2VjZHNhX3A1MjEtMjAyNE5vdjCBmzAQBgcqhkjOPQIBBgUr
6+
gQQAIwOBhgAEAMeWuMzpHFGmqt+VXAAfnP8pznXCs3gJHc+6VidJa5n29weU7NQ6
7+
7UNW3ZTFMoF+fGljWefS/aBG3LZizBAfWs7QAeU0Y6RaUqlHtbg2a9oinoP9T457
8+
eGOIpaT/H+OnhsUiwzk1CEFvwkXvBYF3Y800LHr5e3v5JssqkuQ7s7RD7mfpo1Aw
9+
TjAOBgNVHQ8BAf8EBAMCBsAwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsGAQUFBwMB
10+
MB0GA1UdDgQWBBQroD9Ds/+FoY/+yNjqSp5ju3qCSDAKBggqhkjOPQQDAwOBiwAw
11+
gYcCQQrcRGLcx/RquLPSled0yfe8AL3bGm38aJd9B0k/YNRCc6lQq1mO1dxAGTly
12+
bn6czCrwfTC86F+7DOGqdx5jdM7gAkIAghES3FHq7NLIVKNQyfliH/i1/8SA4ERr
13+
O8RCsNKjD8lwPjtCH0Bg/M7RW6QNljs7Y1S0rwrWHm66VtpOZnqeO8I=
14+
-----END CERTIFICATE-----
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
-----BEGIN ENCRYPTED PRIVATE KEY-----
2+
MIIBLjAoBgoqhkiG9w0BDAEDMBoEFHH0M36L+Frye7T2UXV13t5Bt8ZYAgIEAASC
3+
AQDvMv7O2loAxh6ziQ3U+rCu2cEwFjhI7B7QWfeT/tfQOmZPOpjCYDuczbUYcORI
4+
w1n5QfINqBTZ1G2kPGtJtylKfjK5wL5B/GF4ATj6Ht8hLLHCGlI9Lbtrk4kP0dJT
5+
iyqJZcDBHqcQr8gmVuf+e1kcf0x2q7yVd8P6+GXSflu85mmpDfg6N6SJPTeCa4M/
6+
ct6Nz2lZ5riRL5C5428WphFl+ZER0mK4XOjIFJLcJYjUpcQzNWChYrFDSHPavkCw
7+
6zC5xPAoyxockCaioU1Cs2k/sfH3lAdgSGUgAXIgA0qHW7wZH0rXuE6jy6CWDCxp
8+
sZgUgvNpq3MKsKv9SXwxl06M
9+
-----END ENCRYPTED PRIVATE KEY-----
10+
-----BEGIN CERTIFICATE-----
11+
MIICNTCCAZegAwIBAgIQI2e1ZXzsobxKskTug53IJTAKBggqhkjOPQQDAzAvMS0w
12+
KwYDVQQDDCRkZXZlbG9wbWVudC5kdW1teV9lY2RzYV9wNTIxLTIwMjROb3YwIBcN
13+
MjQxMTE4MDczOTQ2WhgPMjA3NDExMTgwNzQ5NDZaMC8xLTArBgNVBAMMJGRldmVs
14+
b3BtZW50LmR1bW15X2VjZHNhX3A1MjEtMjAyNE5vdjCBmzAQBgcqhkjOPQIBBgUr
15+
gQQAIwOBhgAEAMeWuMzpHFGmqt+VXAAfnP8pznXCs3gJHc+6VidJa5n29weU7NQ6
16+
7UNW3ZTFMoF+fGljWefS/aBG3LZizBAfWs7QAeU0Y6RaUqlHtbg2a9oinoP9T457
17+
eGOIpaT/H+OnhsUiwzk1CEFvwkXvBYF3Y800LHr5e3v5JssqkuQ7s7RD7mfpo1Aw
18+
TjAOBgNVHQ8BAf8EBAMCBsAwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsGAQUFBwMB
19+
MB0GA1UdDgQWBBQroD9Ds/+FoY/+yNjqSp5ju3qCSDAKBggqhkjOPQQDAwOBiwAw
20+
gYcCQQrcRGLcx/RquLPSled0yfe8AL3bGm38aJd9B0k/YNRCc6lQq1mO1dxAGTly
21+
bn6czCrwfTC86F+7DOGqdx5jdM7gAkIAghES3FHq7NLIVKNQyfliH/i1/8SA4ERr
22+
O8RCsNKjD8lwPjtCH0Bg/M7RW6QNljs7Y1S0rwrWHm66VtpOZnqeO8I=
23+
-----END CERTIFICATE-----
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
-----BEGIN PRIVATE KEY-----
2+
MIH3AgEAMBAGByqGSM49AgEGBSuBBAAjBIHfMIHcAgEBBEIAHsyLbqk2V9AHQAOI
3+
4WmuyV47kI50sJqQcvh+OmVDn7bDhOuWNQWo6f/0u0Q8KJijERG0+4rGlSJcT2yA
4+
6qVuglCgBwYFK4EEACOhgYkDgYYABADHlrjM6RxRpqrflVwAH5z/Kc51wrN4CR3P
5+
ulYnSWuZ9vcHlOzUOu1DVt2UxTKBfnxpY1nn0v2gRty2YswQH1rO0AHlNGOkWlKp
6+
R7W4NmvaIp6D/U+Oe3hjiKWk/x/jp4bFIsM5NQhBb8JF7wWBd2PNNCx6+Xt7+SbL
7+
KpLkO7O0Q+5n6Q==
8+
-----END PRIVATE KEY-----
9+
-----BEGIN CERTIFICATE-----
10+
MIICNTCCAZegAwIBAgIQI2e1ZXzsobxKskTug53IJTAKBggqhkjOPQQDAzAvMS0w
11+
KwYDVQQDDCRkZXZlbG9wbWVudC5kdW1teV9lY2RzYV9wNTIxLTIwMjROb3YwIBcN
12+
MjQxMTE4MDczOTQ2WhgPMjA3NDExMTgwNzQ5NDZaMC8xLTArBgNVBAMMJGRldmVs
13+
b3BtZW50LmR1bW15X2VjZHNhX3A1MjEtMjAyNE5vdjCBmzAQBgcqhkjOPQIBBgUr
14+
gQQAIwOBhgAEAMeWuMzpHFGmqt+VXAAfnP8pznXCs3gJHc+6VidJa5n29weU7NQ6
15+
7UNW3ZTFMoF+fGljWefS/aBG3LZizBAfWs7QAeU0Y6RaUqlHtbg2a9oinoP9T457
16+
eGOIpaT/H+OnhsUiwzk1CEFvwkXvBYF3Y800LHr5e3v5JssqkuQ7s7RD7mfpo1Aw
17+
TjAOBgNVHQ8BAf8EBAMCBsAwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsGAQUFBwMB
18+
MB0GA1UdDgQWBBQroD9Ds/+FoY/+yNjqSp5ju3qCSDAKBggqhkjOPQQDAwOBiwAw
19+
gYcCQQrcRGLcx/RquLPSled0yfe8AL3bGm38aJd9B0k/YNRCc6lQq1mO1dxAGTly
20+
bn6czCrwfTC86F+7DOGqdx5jdM7gAkIAghES3FHq7NLIVKNQyfliH/i1/8SA4ERr
21+
O8RCsNKjD8lwPjtCH0Bg/M7RW6QNljs7Y1S0rwrWHm66VtpOZnqeO8I=
22+
-----END CERTIFICATE-----

0 commit comments

Comments
 (0)