Self-signed P-256 pair for 127.0.0.1, CA:FALSE, serverAuth, with the openssl recipe in the README. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
1.1 KiB
1.1 KiB
Test fixtures
content-https-test-cert.pem and content-https-test-key.pem are a loopback-only
test credential. They sign nothing real: the certificate is self-signed P-256, valid
for 127.0.0.1 and localhost, CA:FALSE, serverAuth only, and the key is public
on purpose.
They exist for interop/content-https.test.ts. The TypeScript provider serves HTTPS
with this pair. The C# suite (CultMeshHttpsContentInteropTests) anchors the
certificate with CustomRootTrust, so chain and name validation stay on and no
other certificate is accepted. The TypeScript reader trusts it through
NODE_EXTRA_CA_CERTS, set on the reader's child process only.
Regenerate (Git Bash needs the MSYS_NO_PATHCONV=1 prefix); no test pins the bytes:
openssl req -x509 -newkey ec -pkeyopt ec_paramgen_curve:P-256 -nodes \
-keyout content-https-test-key.pem -out content-https-test-cert.pem -days 36500 \
-subj "/CN=cultmesh-content-https-tests" \
-addext "subjectAltName=IP:127.0.0.1,DNS:localhost" \
-addext "basicConstraints=critical,CA:FALSE" \
-addext "keyUsage=critical,digitalSignature" \
-addext "extendedKeyUsage=serverAuth"