…
This directory, tests/standalone/io/certificates, contains the X509 TLS certificates and private keys needed to run tests of Dart's secure networking code. The SecureSocket and SecureServer classes are tested by making TLS (formerly called SSL) connections, secured by certificates from a self-signed test root authority. The certificates are created by running ../create_sample_certificates.sh in a bash or sh shell, with the openssl tools installed. Run the script twice to create the untrusted_* files. PEM files: server_chain.pem: Contains the chain of certificates, from the self-signed test certificate authority, through the intermediate CA, to the server certificate, used on the server side of a test connection. server_key.pem: Contains the private key for the server certificate trusted_certs.pem: Contains the self-signed certificate of the test certificate authority. This certificate is set as "trusted" by the client side of the connection in its SecurityContext object, so that a verified TLS connection to the server can be made. untrusted_server_chain.pem: Contains a chain of certificates, from a different self-signed test certificate authority, through an intermediate CA, to a server certificate, used on the server side of a test connection that is intended to fail because the client does not accept this certificate authority untrusted_server_key.pem: Contains the private key for the untrusted server certificate in untrusted_server_chain.pem *_malformed.pem: Truncated PEM formatted certificates used to test error handling. PKCS12 files: server_key.12: Created with: $ openssl pkcs12 -export -inkey server_key.pem -out server_key.p12 -nocerts with password 'dartdart' server_chain.p12: Created with: $ openssl pkcs12 -export -in server_chain.pem -out server_chain.p12 -nokeys with password 'dartdart' client1_key.p12: Created with: $ openssl pkcs12 -export -inkey client1_key.pem -out client1_key.p12 -nocerts with password 'dartdart' client1.p12: Created with: $ openssl pkcs12 -export -in client1.pem -out client1.p12 -nokeys with password 'dartdart' trusted_certs.p12: Created with: $ openssl pkcs12 -export -in trusted_certs.pem -out trusted_certs.p12 -nokeys with password 'dartdart' client_authority.p12: Created with: $ openssl pkcs12 -export -in client_authority.pem -out client_authority.p12 -nokeys with password 'dartdart'