I’m wondering what TLS library Caddy is using.
Looking at caddy/modules/caddytls at master · caddyserver/caddy · GitHub it looks like tls.go is importing crypto/tls. I think this is this module? tls package - crypto/tls - pkg.go.dev
Reading up a bit more it looks like Go implemented its own SSL library. So I guess this is what Caddy uses? Would it be possible to link Caddy with GnuTLS or OpenSSL instead?
From A conversation with the Go team - The Go Programming Language we can read
Cryptography is notoriously easy to botch in subtle and surprising ways and I’m only human. I don’t feel that I can warrant that Go’s TLS code is flawless and I wouldn’t want to misrepresent it.