1 /** 2 * \file certs.h 3 * 4 * \brief Sample certificates and DHM parameters for testing 5 */ 6 /* 7 * Copyright The Mbed TLS Contributors 8 * SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later 9 */ 10 #ifndef MBEDTLS_CERTS_H 11 #define MBEDTLS_CERTS_H 12 13 #if !defined(MBEDTLS_CONFIG_FILE) 14 #include "mbedtls/config.h" 15 #else 16 #include MBEDTLS_CONFIG_FILE 17 #endif 18 19 #include <stddef.h> 20 21 #ifdef __cplusplus 22 extern "C" { 23 #endif 24 25 /* List of all PEM-encoded CA certificates, terminated by NULL; 26 * PEM encoded if MBEDTLS_PEM_PARSE_C is enabled, DER encoded 27 * otherwise. */ 28 extern const char *mbedtls_test_cas[]; 29 extern const size_t mbedtls_test_cas_len[]; 30 31 /* List of all DER-encoded CA certificates, terminated by NULL */ 32 extern const unsigned char *mbedtls_test_cas_der[]; 33 extern const size_t mbedtls_test_cas_der_len[]; 34 35 #if defined(MBEDTLS_PEM_PARSE_C) 36 /* Concatenation of all CA certificates in PEM format if available */ 37 extern const char mbedtls_test_cas_pem[]; 38 extern const size_t mbedtls_test_cas_pem_len; 39 #endif /* MBEDTLS_PEM_PARSE_C */ 40 41 /* 42 * CA test certificates 43 */ 44 45 extern const char mbedtls_test_ca_crt_ec_pem[]; 46 extern const char mbedtls_test_ca_key_ec_pem[]; 47 extern const char mbedtls_test_ca_pwd_ec_pem[]; 48 extern const char mbedtls_test_ca_key_rsa_pem[]; 49 extern const char mbedtls_test_ca_pwd_rsa_pem[]; 50 extern const char mbedtls_test_ca_crt_rsa_sha1_pem[]; 51 extern const char mbedtls_test_ca_crt_rsa_sha256_pem[]; 52 53 extern const unsigned char mbedtls_test_ca_crt_ec_der[]; 54 extern const unsigned char mbedtls_test_ca_key_ec_der[]; 55 extern const unsigned char mbedtls_test_ca_key_rsa_der[]; 56 extern const unsigned char mbedtls_test_ca_crt_rsa_sha1_der[]; 57 extern const unsigned char mbedtls_test_ca_crt_rsa_sha256_der[]; 58 59 extern const size_t mbedtls_test_ca_crt_ec_pem_len; 60 extern const size_t mbedtls_test_ca_key_ec_pem_len; 61 extern const size_t mbedtls_test_ca_pwd_ec_pem_len; 62 extern const size_t mbedtls_test_ca_key_rsa_pem_len; 63 extern const size_t mbedtls_test_ca_pwd_rsa_pem_len; 64 extern const size_t mbedtls_test_ca_crt_rsa_sha1_pem_len; 65 extern const size_t mbedtls_test_ca_crt_rsa_sha256_pem_len; 66 67 extern const size_t mbedtls_test_ca_crt_ec_der_len; 68 extern const size_t mbedtls_test_ca_key_ec_der_len; 69 extern const size_t mbedtls_test_ca_pwd_ec_der_len; 70 extern const size_t mbedtls_test_ca_key_rsa_der_len; 71 extern const size_t mbedtls_test_ca_pwd_rsa_der_len; 72 extern const size_t mbedtls_test_ca_crt_rsa_sha1_der_len; 73 extern const size_t mbedtls_test_ca_crt_rsa_sha256_der_len; 74 75 /* Config-dependent dispatch between PEM and DER encoding 76 * (PEM if enabled, otherwise DER) */ 77 78 extern const char mbedtls_test_ca_crt_ec[]; 79 extern const char mbedtls_test_ca_key_ec[]; 80 extern const char mbedtls_test_ca_pwd_ec[]; 81 extern const char mbedtls_test_ca_key_rsa[]; 82 extern const char mbedtls_test_ca_pwd_rsa[]; 83 extern const char mbedtls_test_ca_crt_rsa_sha1[]; 84 extern const char mbedtls_test_ca_crt_rsa_sha256[]; 85 86 extern const size_t mbedtls_test_ca_crt_ec_len; 87 extern const size_t mbedtls_test_ca_key_ec_len; 88 extern const size_t mbedtls_test_ca_pwd_ec_len; 89 extern const size_t mbedtls_test_ca_key_rsa_len; 90 extern const size_t mbedtls_test_ca_pwd_rsa_len; 91 extern const size_t mbedtls_test_ca_crt_rsa_sha1_len; 92 extern const size_t mbedtls_test_ca_crt_rsa_sha256_len; 93 94 /* Config-dependent dispatch between SHA-1 and SHA-256 95 * (SHA-256 if enabled, otherwise SHA-1) */ 96 97 extern const char mbedtls_test_ca_crt_rsa[]; 98 extern const size_t mbedtls_test_ca_crt_rsa_len; 99 100 /* Config-dependent dispatch between EC and RSA 101 * (RSA if enabled, otherwise EC) */ 102 103 extern const char *mbedtls_test_ca_crt; 104 extern const char *mbedtls_test_ca_key; 105 extern const char *mbedtls_test_ca_pwd; 106 extern const size_t mbedtls_test_ca_crt_len; 107 extern const size_t mbedtls_test_ca_key_len; 108 extern const size_t mbedtls_test_ca_pwd_len; 109 110 /* 111 * Server test certificates 112 */ 113 114 extern const char mbedtls_test_srv_crt_ec_pem[]; 115 extern const char mbedtls_test_srv_key_ec_pem[]; 116 extern const char mbedtls_test_srv_pwd_ec_pem[]; 117 extern const char mbedtls_test_srv_key_rsa_pem[]; 118 extern const char mbedtls_test_srv_pwd_rsa_pem[]; 119 extern const char mbedtls_test_srv_crt_rsa_sha1_pem[]; 120 extern const char mbedtls_test_srv_crt_rsa_sha256_pem[]; 121 122 extern const unsigned char mbedtls_test_srv_crt_ec_der[]; 123 extern const unsigned char mbedtls_test_srv_key_ec_der[]; 124 extern const unsigned char mbedtls_test_srv_key_rsa_der[]; 125 extern const unsigned char mbedtls_test_srv_crt_rsa_sha1_der[]; 126 extern const unsigned char mbedtls_test_srv_crt_rsa_sha256_der[]; 127 128 extern const size_t mbedtls_test_srv_crt_ec_pem_len; 129 extern const size_t mbedtls_test_srv_key_ec_pem_len; 130 extern const size_t mbedtls_test_srv_pwd_ec_pem_len; 131 extern const size_t mbedtls_test_srv_key_rsa_pem_len; 132 extern const size_t mbedtls_test_srv_pwd_rsa_pem_len; 133 extern const size_t mbedtls_test_srv_crt_rsa_sha1_pem_len; 134 extern const size_t mbedtls_test_srv_crt_rsa_sha256_pem_len; 135 136 extern const size_t mbedtls_test_srv_crt_ec_der_len; 137 extern const size_t mbedtls_test_srv_key_ec_der_len; 138 extern const size_t mbedtls_test_srv_pwd_ec_der_len; 139 extern const size_t mbedtls_test_srv_key_rsa_der_len; 140 extern const size_t mbedtls_test_srv_pwd_rsa_der_len; 141 extern const size_t mbedtls_test_srv_crt_rsa_sha1_der_len; 142 extern const size_t mbedtls_test_srv_crt_rsa_sha256_der_len; 143 144 /* Config-dependent dispatch between PEM and DER encoding 145 * (PEM if enabled, otherwise DER) */ 146 147 extern const char mbedtls_test_srv_crt_ec[]; 148 extern const char mbedtls_test_srv_key_ec[]; 149 extern const char mbedtls_test_srv_pwd_ec[]; 150 extern const char mbedtls_test_srv_key_rsa[]; 151 extern const char mbedtls_test_srv_pwd_rsa[]; 152 extern const char mbedtls_test_srv_crt_rsa_sha1[]; 153 extern const char mbedtls_test_srv_crt_rsa_sha256[]; 154 155 extern const size_t mbedtls_test_srv_crt_ec_len; 156 extern const size_t mbedtls_test_srv_key_ec_len; 157 extern const size_t mbedtls_test_srv_pwd_ec_len; 158 extern const size_t mbedtls_test_srv_key_rsa_len; 159 extern const size_t mbedtls_test_srv_pwd_rsa_len; 160 extern const size_t mbedtls_test_srv_crt_rsa_sha1_len; 161 extern const size_t mbedtls_test_srv_crt_rsa_sha256_len; 162 163 /* Config-dependent dispatch between SHA-1 and SHA-256 164 * (SHA-256 if enabled, otherwise SHA-1) */ 165 166 extern const char mbedtls_test_srv_crt_rsa[]; 167 extern const size_t mbedtls_test_srv_crt_rsa_len; 168 169 /* Config-dependent dispatch between EC and RSA 170 * (RSA if enabled, otherwise EC) */ 171 172 extern const char *mbedtls_test_srv_crt; 173 extern const char *mbedtls_test_srv_key; 174 extern const char *mbedtls_test_srv_pwd; 175 extern const size_t mbedtls_test_srv_crt_len; 176 extern const size_t mbedtls_test_srv_key_len; 177 extern const size_t mbedtls_test_srv_pwd_len; 178 179 /* 180 * Client test certificates 181 */ 182 183 extern const char mbedtls_test_cli_crt_ec_pem[]; 184 extern const char mbedtls_test_cli_key_ec_pem[]; 185 extern const char mbedtls_test_cli_pwd_ec_pem[]; 186 extern const char mbedtls_test_cli_key_rsa_pem[]; 187 extern const char mbedtls_test_cli_pwd_rsa_pem[]; 188 extern const char mbedtls_test_cli_crt_rsa_pem[]; 189 190 extern const unsigned char mbedtls_test_cli_crt_ec_der[]; 191 extern const unsigned char mbedtls_test_cli_key_ec_der[]; 192 extern const unsigned char mbedtls_test_cli_key_rsa_der[]; 193 extern const unsigned char mbedtls_test_cli_crt_rsa_der[]; 194 195 extern const size_t mbedtls_test_cli_crt_ec_pem_len; 196 extern const size_t mbedtls_test_cli_key_ec_pem_len; 197 extern const size_t mbedtls_test_cli_pwd_ec_pem_len; 198 extern const size_t mbedtls_test_cli_key_rsa_pem_len; 199 extern const size_t mbedtls_test_cli_pwd_rsa_pem_len; 200 extern const size_t mbedtls_test_cli_crt_rsa_pem_len; 201 202 extern const size_t mbedtls_test_cli_crt_ec_der_len; 203 extern const size_t mbedtls_test_cli_key_ec_der_len; 204 extern const size_t mbedtls_test_cli_key_rsa_der_len; 205 extern const size_t mbedtls_test_cli_crt_rsa_der_len; 206 207 /* Config-dependent dispatch between PEM and DER encoding 208 * (PEM if enabled, otherwise DER) */ 209 210 extern const char mbedtls_test_cli_crt_ec[]; 211 extern const char mbedtls_test_cli_key_ec[]; 212 extern const char mbedtls_test_cli_pwd_ec[]; 213 extern const char mbedtls_test_cli_key_rsa[]; 214 extern const char mbedtls_test_cli_pwd_rsa[]; 215 extern const char mbedtls_test_cli_crt_rsa[]; 216 217 extern const size_t mbedtls_test_cli_crt_ec_len; 218 extern const size_t mbedtls_test_cli_key_ec_len; 219 extern const size_t mbedtls_test_cli_pwd_ec_len; 220 extern const size_t mbedtls_test_cli_key_rsa_len; 221 extern const size_t mbedtls_test_cli_pwd_rsa_len; 222 extern const size_t mbedtls_test_cli_crt_rsa_len; 223 224 /* Config-dependent dispatch between EC and RSA 225 * (RSA if enabled, otherwise EC) */ 226 227 extern const char *mbedtls_test_cli_crt; 228 extern const char *mbedtls_test_cli_key; 229 extern const char *mbedtls_test_cli_pwd; 230 extern const size_t mbedtls_test_cli_crt_len; 231 extern const size_t mbedtls_test_cli_key_len; 232 extern const size_t mbedtls_test_cli_pwd_len; 233 234 #ifdef __cplusplus 235 } 236 #endif 237 238 #endif /* certs.h */ 239