jsha / minica

minica is a small, simple CA intended for use in situations where the CA operator also operates each host where a certificate will be used.
MIT License
3.02k stars 246 forks source link

Make ECDSA the default for issuer and end-entity keys #68

Closed aarongable closed 6 months ago

aarongable commented 6 months ago

Make ECDSA the default algorithm for the "-ca-alg" flag, replacing RSA. Also plumb that algorithm through to the end-entity key generation, making that configurable (and also defaulting it to ECDSA). This significantly speeds up minica by default.

$ git checkout origin/master
$ go build .
$ time (for i in {1..100}; do ./minica -domains $i.example.com; done)               
22.94s user 1.04s system 100% cpu 23.776 total
$ git checkout ecdsa-default
$ go build .
$ time (for i in {1..100}; do ./minica -domains $i.example.com; done)
0.76s user 0.56s system 109% cpu 1.204 total

Fixes https://github.com/jsha/minica/issues/29