testssl.sh/etc
a1346054 54dcecd184 Make text file not executable 2021-09-03 22:19:39 +00:00
..
Apple.pem Update remaining: Apple / Java / Microsoft 2020-11-13 22:01:17 +01:00
Java.pem Update remaining: Apple / Java / Microsoft 2020-11-13 22:01:17 +01:00
Linux.pem updated Linux.pem + Mozilla.pem 2020-11-11 18:15:56 +01:00
Microsoft.pem Update remaining: Apple / Java / Microsoft 2020-11-13 22:01:17 +01:00
Mozilla.pem updated Linux.pem + Mozilla.pem 2020-11-11 18:15:56 +01:00
README.md Adding a hex2curves util. 2020-11-28 14:04:00 +01:00
ca_hashes.txt Update remaining: Apple / Java / Microsoft 2020-11-13 22:01:17 +01:00
cipher-mapping.txt Correct new openssl cipher name 2018-11-02 14:04:12 +01:00
client-simulation.txt Add wiresharked Android 7.0 (native) 2020-06-23 15:26:31 +02:00
client-simulation.wiresharked.md fixing typo in md file 2020-11-28 14:06:26 +01:00
client-simulation.wiresharked.txt Add wiresharked Android 7.0 (native) 2020-06-23 15:26:31 +02:00
common-primes.txt Remove duplicate common primes 2018-07-23 13:48:18 -04:00
curves-mapping.txt Adding a hex2curves util. 2020-11-28 14:04:00 +01:00
curves.txt - added values to curve448 + 25519 2016-06-09 13:18:55 +02:00
tls_data.txt Make text file not executable 2021-09-03 22:19:39 +00:00

README.md

Certificate stores

The certificate trust stores were retrieved from

  • Linux: Copied from an up-to-date Debian Linux machine
  • Mozilla: https://curl.haxx.se/docs/caextract.html
  • Java: extracted (keytool -list -rfc -keystore lib/security/cacerts | grep -E -v '^$|^\*\*\*\*\*|^Entry |^Creation |^Alias ') from a JDK 15 from https://jdk.java.net/. (use dos2unix).
  • Microsoft: Following command pulls all certificates from Windows Update services: CertUtil -syncWithWU -f -f . (see also http://aka.ms/RootCertDownload, https://technet.microsoft.com/en-us/library/dn265983(v=ws.11).aspx#BKMK_CertUtilOptions).
  • Apple:
    1. System: from Apple OS X keychain app. Open Keychain Access utility, i.e. In the Finder window, under Favorites --> "Applications" --> "Utilities" (OR perform a Spotlight Search for Keychain Access) --> "Keychain Access" (2 click). In that window --> "Keychains" --> "System" --> "Category" --> "All Items" Select all CA certificates except for Developer ID Certification Authority, "File" --> "Export Items"
    2. Internet: Pick the latest subdir (=highest number) from https://opensource.apple.com/source/security_certificates/. They are in DER format despite their file extension. Download them with wget --level=1 --cut-dirs=5 --mirror --convert-links --adjust-extension --page-requisites --no-parent https://opensource.apple.com/source/security_certificates/security_certificates-*/certificates/roots/

Google Chromium uses basically the trust stores above, see https://www.chromium.org/Home/chromium-security/root-ca-policy.

If you want to check trust against e.g. a company internal CA you need to use ./testssl.sh --add-ca companyCA1.pem,companyCA2.pem <further_cmds> or ADDTL_CA_FILES=companyCA1.pem,companyCA2.pem ./testssl.sh <further_cmds>.

Further files

  • tls_data.txt contains lists of cipher suites and private keys for sockets-based tests

  • cipher-mapping.txt contains information about all of the cipher suites defined for SSL/TLS

  • curves-mapping.txt contains information about all of the eliptic curves defined by IANA

  • ca_hashes.txt is used for HPKP test in order to have a fast comparison with known CAs. Use ~/utils/create_ca_hashes.sh for an update

  • common-primes.txt is used for LOGJAM and the PFS section

  • client-simulation.txt / client-simulation.wiresharked.txt are as the names indicate data for the client simulation. The first one is derived from ~/utils/update_client_sim_data.pl, and manually edited to sort and label those we don't want. The second file provides more client data retrieved from wireshark captures and some instructions how to do that yourself.