acme_test_certs.h (19870B)
1 /* SPDX-License-Identifier: LGPL-2.1-or-later OR (GPL-2.0-or-later WITH eCos-exception-2.0) */ 2 /* 3 This file is part of GNU libmicrohttpd. 4 Copyright (C) 2026 Evgeny Grin (Karlson2k) 5 6 GNU libmicrohttpd is free software; you can redistribute it and/or 7 modify it under the terms of the GNU Lesser General Public 8 License as published by the Free Software Foundation; either 9 version 2.1 of the License, or (at your option) any later version. 10 11 GNU libmicrohttpd is distributed in the hope that it will be useful, 12 but WITHOUT ANY WARRANTY; without even the implied warranty of 13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 Lesser General Public License for more details. 15 16 Alternatively, you can redistribute GNU libmicrohttpd and/or 17 modify it under the terms of the GNU General Public License as 18 published by the Free Software Foundation; either version 2 of 19 the License, or (at your option) any later version, together 20 with the eCos exception, as follows: 21 22 As a special exception, if other files instantiate templates or 23 use macros or inline functions from this file, or you compile this 24 file and link it with other works to produce a work based on this 25 file, this file does not by itself cause the resulting work to be 26 covered by the GNU General Public License. However the source code 27 for this file must still be made available in accordance with 28 section (3) of the GNU General Public License v2. 29 30 This exception does not invalidate any other reasons why a work 31 based on this file might be covered by the GNU General Public 32 License. 33 34 You should have received copies of the GNU Lesser General Public 35 License and the GNU General Public License along with this library; 36 if not, see <https://www.gnu.org/licenses/>. 37 */ 38 39 /** 40 * @file src/tests/acme/acme_test_certs.h 41 * @brief Certificates and keys for the ACME TLS-ALPN-01 challenge tests 42 * @author Karlson2k (Evgeny Grin) 43 * 44 * All certificates are self-signed, valid for one hundred years and share 45 * the same subject prefix "C=CH, ST=Geneva, L=Geneva, O=test-libmicrohttpd". 46 * 47 * The "server" certificate is the reply for any non-ACME connection. 48 * The two "challenge" certificates are the replies for the ACME TLS-ALPN-01 49 * challenge on two different domains. Challenge certificate "B" repeats 50 * the common name of the "server" certificate and uses a completely 51 * different type of the key, so that the served certificate cannot be 52 * identified by the name or by the key type alone. 53 * 54 * The challenge certificates are formed as required by RFC 8737, section 3: 55 * the subjectAltName extension has a single dNSName entry and the critical 56 * acmeIdentifier extension (OID 1.3.6.1.5.5.7.1.31) holds the DER encoded 57 * OCTET STRING with the SHA-256 digest of the key authorization. The key 58 * authorization is the challenge token joined by a dot with the account 59 * thumbprint "nRbYuckWQyMDAm6D2H4p7ZiK9yT6R8UUD0vZNWqv8ps" (synthetic). 60 * The tokens are the examples from RFC 8555: 61 * "LoqXcYV8q5ONbJQxbmR7SCTNo3tiAXDfowyjxAjEuX0" for "A" and 62 * "DGyRejmCefe7v4NfDGDKfA" for "B". 63 */ 64 65 #ifndef MHD_ACME_TEST_CERTS_H 66 #define MHD_ACME_TEST_CERTS_H 1 67 68 /** 69 * The domain validated by the challenge certificate "A" 70 */ 71 #define mhdt_ACME_CHLNG_A_DOMAIN "acme-test1.example" 72 73 /** 74 * The domain validated by the challenge certificate "B" 75 */ 76 #define mhdt_ACME_CHLNG_B_DOMAIN "acme-test2.example" 77 78 79 /* *INDENT-OFF* */ 80 /** 81 * The certificate for all non-ACME connections. 82 * RSA 4096, CN=test-mhd-server, SAN: DNS:localhost, IP:127.0.0.1, IP:[::1] 83 */ 84 #define mhdt_ACME_SRV_CERT_PEM \ 85 "-----BEGIN CERTIFICATE-----\n" \ 86 "MIIGATCCA+mgAwIBAgIUZ9L0ZZRAMrVCCQFFzX/Xp5LwJJ8wDQYJKoZIhvcNAQEL\n" \ 87 "BQAwZjELMAkGA1UEBhMCQ0gxDzANBgNVBAgMBkdlbmV2YTEPMA0GA1UEBwwGR2Vu\n" \ 88 "ZXZhMRswGQYDVQQKDBJ0ZXN0LWxpYm1pY3JvaHR0cGQxGDAWBgNVBAMMD3Rlc3Qt\n" \ 89 "bWhkLXNlcnZlcjAgFw0yNjA4MzExNDM3MjBaGA8yMTI2MDkwMTE0MzcyMFowZjEL\n" \ 90 "MAkGA1UEBhMCQ0gxDzANBgNVBAgMBkdlbmV2YTEPMA0GA1UEBwwGR2VuZXZhMRsw\n" \ 91 "GQYDVQQKDBJ0ZXN0LWxpYm1pY3JvaHR0cGQxGDAWBgNVBAMMD3Rlc3QtbWhkLXNl\n" \ 92 "cnZlcjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBANNdODgKFQX1QYKO\n" \ 93 "iH8J1j/iUXds+qXpm5LKOW1lPsYOTPEUj9DmzBmjjJa6OE+5W3W7BHWEfNF7AOJb\n" \ 94 "ZN9WyOtdcJh4ctBdxHi0IVGkDME2Q7HSF8GS7chXLolGUZ2/vZvgZXDYa1pPH3v2\n" \ 95 "pmFS8g/D8puRpV6yuPaIF5N2yK653hDll7wJQtsOIllWa9pS93MkdOvhezzxOpOh\n" \ 96 "hRlG+UMuizlAvZDBaF/ScztLoykiz5YbC4oqe8Yc71+q2uLcjab//Tg7bBLIszrn\n" \ 97 "ftXqWNzCz/NuO7g3//E2KAn/CQ+AOUXrr31yn9WjL2VVnIlsoSPOQzHg4uAJCQiU\n" \ 98 "PDb429E6p2r8GF/EIsa9i4Si0xBeaS5q1p0zCPUFwn5OQp+2LbkjkYarxz9/1xO7\n" \ 99 "uNj/MuEGnz+ikbD1G38NopFheVZPhSNMt5w9pEMbOMwGa0HzCqodt3P3QRbRXJyt\n" \ 100 "Lvc9bnRRtmCoH5deZGey2e0bMD/hO3D+Mgwm0X0eYUTi8yHIzNGcOLuNcE1a1apT\n" \ 101 "rRfoPzaBetbsihcbolRbuVVezeapU75ttjH9xozfXQhU1IyoNn4ZwaefOCOoaIY5\n" \ 102 "FqPc7AbaUQnUGPgfc+FGABzvHqpZ060zJjOKMkdBkNaovIXZdLcrObtbxFZO93gq\n" \ 103 "o5sVgOxQpgtsZQumORH4KEogHvjdAgMBAAGjgaQwgaEwHwYDVR0jBBgwFoAULOqQ\n" \ 104 "ne2Tsakom6X4bKgDgb1gDeQwDAYDVR0TAQH/BAIwADAOBgNVHQ8BAf8EBAMCBaAw\n" \ 105 "EwYDVR0lBAwwCgYIKwYBBQUHAwEwLAYDVR0RBCUwI4IJbG9jYWxob3N0hwR/AAAB\n" \ 106 "hxAAAAAAAAAAAAAAAAAAAAABMB0GA1UdDgQWBBQs6pCd7ZOxqSibpfhsqAOBvWAN\n" \ 107 "5DANBgkqhkiG9w0BAQsFAAOCAgEAsLeSrXQC6qkXADn+KmW8F5CgNdQ1hpzHBXZv\n" \ 108 "Y8cWq9t6sHF33H2YRYZSRLmREjxiXe+/+988AzaQ60ALpl2YkvJ8OVGvU3Ou5Ya+\n" \ 109 "WKMm9ieXaTv+TvfFo/Kb0b0SnPcQ1aJoxeQxwIb09BZDapqxMHLo8ZOtoPUZ441m\n" \ 110 "5qQWGVXQ9wyLL+EsaeAOet9GrmNuRnkvIHfmc5rR23uzZwoz/FLoQqM0CXQ4STrA\n" \ 111 "PRu0DMEqafNp5VU391UegYFMXspQiUUbDngHzw1cxF0EP3WHzT81ZBcVdTM2Be+x\n" \ 112 "HAE9XfjQ7klquspNXK37S/zh15L2iXaMP2oRtzPcNkCCsQFkvkNvVOJlv/kTI755\n" \ 113 "Rs29BcTFT0L7ylN7JaS4euMUjTRkChTeYfSNlAqreKUuSGLqNxOYufK7ZZP/+8OY\n" \ 114 "/LUs9LHKSCyjjXPb/CKjPkK/b9WiusX3+30+lLe7JgG4aeOInm53ZuIggx8LK4iE\n" \ 115 "6B17zIlG1cZmvnFh0lsZR63+QtvwwQ+nAC4Q3EupB40MQJR1i3CZwGsHhiwajteW\n" \ 116 "SVKMtx9pPQv/iXfLCH5Boy2rH4Xv2sD3NM4WuzQlwIxJJKcBtlPxvaeiQlemrABf\n" \ 117 "FL1lu601jcVdGZTtYRdLVfPh6w5ID1zDzjKHkg4/9FSgqxurC7mdxubsfbMSQtLk\n" \ 118 "5tKZN+0=\n" \ 119 "-----END CERTIFICATE-----\n" 120 121 /** 122 * The private key for #mhdt_ACME_SRV_CERT_PEM 123 */ 124 #define mhdt_ACME_SRV_KEY_PEM \ 125 "-----BEGIN PRIVATE KEY-----\n" \ 126 "MIIJRAIBADANBgkqhkiG9w0BAQEFAASCCS4wggkqAgEAAoICAQDTXTg4ChUF9UGC\n" \ 127 "joh/CdY/4lF3bPql6ZuSyjltZT7GDkzxFI/Q5swZo4yWujhPuVt1uwR1hHzRewDi\n" \ 128 "W2TfVsjrXXCYeHLQXcR4tCFRpAzBNkOx0hfBku3IVy6JRlGdv72b4GVw2GtaTx97\n" \ 129 "9qZhUvIPw/KbkaVesrj2iBeTdsiuud4Q5Ze8CULbDiJZVmvaUvdzJHTr4Xs88TqT\n" \ 130 "oYUZRvlDLos5QL2QwWhf0nM7S6MpIs+WGwuKKnvGHO9fqtri3I2m//04O2wSyLM6\n" \ 131 "537V6ljcws/zbju4N//xNigJ/wkPgDlF6699cp/Voy9lVZyJbKEjzkMx4OLgCQkI\n" \ 132 "lDw2+NvROqdq/BhfxCLGvYuEotMQXmkuatadMwj1BcJ+TkKfti25I5GGq8c/f9cT\n" \ 133 "u7jY/zLhBp8/opGw9Rt/DaKRYXlWT4UjTLecPaRDGzjMBmtB8wqqHbdz90EW0Vyc\n" \ 134 "rS73PW50UbZgqB+XXmRnstntGzA/4Ttw/jIMJtF9HmFE4vMhyMzRnDi7jXBNWtWq\n" \ 135 "U60X6D82gXrW7IoXG6JUW7lVXs3mqVO+bbYx/caM310IVNSMqDZ+GcGnnzgjqGiG\n" \ 136 "ORaj3OwG2lEJ1Bj4H3PhRgAc7x6qWdOtMyYzijJHQZDWqLyF2XS3Kzm7W8RWTvd4\n" \ 137 "KqObFYDsUKYLbGULpjkR+ChKIB743QIDAQABAoICADQXI81P0smSnZAG/6XLb1V0\n" \ 138 "Od6kaYttLM267/dBffyCtrytdBooX0GsWHAnOcyQInW73wf1XGumFFw06QHP2hmD\n" \ 139 "gEXbXXRzv4F95z4/H3OYo4tV+0vWIar/rXTgcyndAOZDIczzUVXC7T/4VB3lOsne\n" \ 140 "4VIszWQuyL3dYW4S1reVECD67G/HmoXxEE8TKOZ4Dwr9/6DIg75Lt0N+CZbmsnS3\n" \ 141 "qlE0XuOnfskqzQJejDoNnbphNPFasgFrzSS3L1W8xF5VdXsfze09MErClbQzmq3h\n" \ 142 "hy13y9kFWBsC3VBFXd7Hm5XbVXclwjV9D6e6Nyd5Mado5I+M3G0ZXPQT0Fk98LJH\n" \ 143 "Vs/LjN3ambwJf3+jquOcTnJr23htPFklESXgob3VVxpNKU1uXoFqs/7jQJo7xOBL\n" \ 144 "/aGL1eo2AKP2S0tAax38dFLqoHim0TDbYF5tyAtnGHn0A8HjvOt3tnOO61R1iz+O\n" \ 145 "fbm8l0q0uh9EOUaz3vUFP9wChEoZn4oG8f/r67W2hU+qoCxx4d7CGHzhjRPvVeVf\n" \ 146 "BDC+Hr6NCby3HvCPEHw3Zl3MzeHtuXNRz33gHTDup9IGCY6TzI0cV7UfVB9+dxmL\n" \ 147 "EtUZDQPH1350v7nukS8/ya5FWa6BhYwRwx780J5pV1W2IR69CN6WS4KVWXYJVcba\n" \ 148 "7RVaU1PptNogukRwIOohAoIBAQD+IWpVvCI/PltClAffsmTdPk7QKDVdkjKU1rVn\n" \ 149 "N0UYSDrbjfQWwNwiv9AKB6Hs33P+vtFIR1AJWgjTeOLlY+zINDC8+PHaCY9AoXjY\n" \ 150 "8/V8rJYnIzkxhpkwig5o8F8qIQ0kWgsqamzlu1G1O3sQvk0J0Pl/cJbvApyvxGZq\n" \ 151 "whmTRic7cgA+zCT93ZF89y6OlVDc2MMLRljFltBg0hTCBeL3odmUuDz5GZt3zhTf\n" \ 152 "jkZ0kbqPvAcPJFUODVbfzFkl5O9Uc0Ry7Fnlm2WMr4aGqBFcFTFeSUQeAzKa6Dc4\n" \ 153 "iEqjVYLm/M8BEZCSytDwy78vn6w9zf1ghCieJAiiEkf5KxDNAoIBAQDU60P7hPXU\n" \ 154 "l5nch8Zh6WORDFXArN0YoarLWyWu+zYc9VdJS9Cn1v4KKly1k1ytdIsTjyj2V3At\n" \ 155 "gu839qr6fywd7t7IFcnGeH7j6ktef4egvoIUpqICyxcb29jwBxjz/tdf/ygVfG8w\n" \ 156 "OJ1uQ33rARdI+4NicWfv6SEz+b5mAG0ZHVsO39Y6NrAeR17rJExr6uLpDmZbpmYM\n" \ 157 "LgZVA/5N4TQT7GifBJ5JKjxk8C/0oKhc23mT5zOStt9ZnrzlXChTwA9x03dB1lNq\n" \ 158 "pq+g5yy9asCyF/CS10dzKDNKu+qHP4VRf6yDNl8U3KNWjx1nul870C1JyeeGTOZ4\n" \ 159 "cCT6Lo6r2UhRAoIBAQDB8QB0w6ojN9RvwAcuSbe+PNHq+/SWH3+opR810TFS8bSx\n" \ 160 "X+k7AB5ACsCbFu4VlwawEDIphfrn2CVKNkR6qcLHm0Tiwt3X91mzCkfu0mezqQbC\n" \ 161 "gZghWsZIC+QpY+BMh4K/DlTdHvFSdZ1KwUUPJxwl9Kyj/GnDp+uqHCnJKa5Y/b3t\n" \ 162 "GPhk9Gj6sQBaLU4DlKJsmKRpU1tmF82ZRlp/I/zt3T/uxpgJxugmC0lUvwC374tA\n" \ 163 "LE/611Bt8/Irw4j5aXjYq0s+pW+J0gkyz7XLyDHPY4EUordwbCJPpA6YfzLu6dCH\n" \ 164 "tcHI3/3EeTHxwpx6nNHXLQBEizdwULGh9m+lEZ+1AoIBAQCn2rmDhjSPXtzLgLai\n" \ 165 "5e26ofDQrva2vmz5WGgC5MSqW7hubjiWuOUZeoAQHZaIoEIsL0ZpvlEPcBPLGMl+\n" \ 166 "JdfP2UsEjji+IKxYXZMBcqSn0siWIy/B5/3V1qHVyKKhaJy+b1dYaPr3Fwr1rHuO\n" \ 167 "UxPaU34mk6UO+8lTQmYZ3+giToRE2631wrthg36O/dTJlyk/9jw3sJzuqTIQv88x\n" \ 168 "8oKt2kg4ZNmscIGgScJkpmtUmSnlsfV0inrWGlBsuRSJwfXrFH0GCENG5xW6UcVx\n" \ 169 "psE3Jaxg9xq67ExTdIXWDfu6Xl7QKoMW3UJfsP/LkKAXdWzeqS+/Lsza0f40xZNw\n" \ 170 "YyGhAoIBAQDRhIBXb2d8Y2VfohiviRyq+gXMsI4ZCgBLa2yW0Rg5BJaYFpxubBiQ\n" \ 171 "u/HWwiEwownAyNJnPraGMzK4DFIctIxN/ivVvHWNOhXMnmkHtjINdZBLIM91Ib3q\n" \ 172 "8nte6RoHogK1YO/2xyFhtSJTmMluukrGqz0zugCZQTmG0XmYH6Ckjp27NPBYIuu9\n" \ 173 "pI6+sBR9GXfVSI7Kb9RzJBJ0jgixQrpWCpsKTV+sxs1zssAVOAGc1tGN8PtNlPMK\n" \ 174 "gQC6kzckoXsb3TdF+Ej4Udn4Ku7cRx+WAyzj27Umon/+A+Gu5AvSpUJeGTsR65g4\n" \ 175 "EJ+F6dRWHnvqXcwIWHjHPPwcsaad4A65\n" \ 176 "-----END PRIVATE KEY-----\n" 177 178 /** 179 * The ACME challenge certificate for #mhdt_ACME_CHLNG_A_DOMAIN. 180 * RSA 4096, CN=test-acme-challenge 181 */ 182 #define mhdt_ACME_CHLNG_A_CERT_PEM \ 183 "-----BEGIN CERTIFICATE-----\n" \ 184 "MIIGGDCCBACgAwIBAgIUWdg2aI2BGpzJpHF3q/3WC3L3p3EwDQYJKoZIhvcNAQEL\n" \ 185 "BQAwajELMAkGA1UEBhMCQ0gxDzANBgNVBAgMBkdlbmV2YTEPMA0GA1UEBwwGR2Vu\n" \ 186 "ZXZhMRswGQYDVQQKDBJ0ZXN0LWxpYm1pY3JvaHR0cGQxHDAaBgNVBAMME3Rlc3Qt\n" \ 187 "YWNtZS1jaGFsbGVuZ2UwIBcNMjYwODMxMTQzNzIwWhgPMjEyNjA5MDExNDM3MjBa\n" \ 188 "MGoxCzAJBgNVBAYTAkNIMQ8wDQYDVQQIDAZHZW5ldmExDzANBgNVBAcMBkdlbmV2\n" \ 189 "YTEbMBkGA1UECgwSdGVzdC1saWJtaWNyb2h0dHBkMRwwGgYDVQQDDBN0ZXN0LWFj\n" \ 190 "bWUtY2hhbGxlbmdlMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA+wAF\n" \ 191 "ZGAP0bAc3a6V5BCbddleMgPl7XnCaw8LAvzsnXlReO5gasEV0J4qBkx2b7P8qiJE\n" \ 192 "zW/AIAmxat2HlViWPQDcR+lgM9+dCYtlrAE+6/wE8FdSmP5poe0CjqlaC72/1Jbr\n" \ 193 "WzkXdC87NbGZEQatGc1Dm59J0T8L60NLSpmEA4MnyxQcyA5bMgDBMkuE2IpIiiY5\n" \ 194 "CaSMDvwj0v1o2YjVFni9gpjW557YMJtf5nc3ZHceEHGjF6j5YusBvtqhJ1l9DUN1\n" \ 195 "eC3xCMEjuWJP9/z8T6+4oG1mn9cx9rcd/hVvM16BFBZYNj5lAW6D06pLo/NwEbBw\n" \ 196 "mlyF5i7tHZejPg7djPjOqely6tlhooMMpSnSZ5Md/v5iIXgNUrM1Rw6fPrIy5Ioo\n" \ 197 "GBZ6F+WUb/KsdABy6wXhZIRxb8xXPy3OjI3GRJFHkuZrv7JkV5BrtCx4IbqtaBem\n" \ 198 "b6PntExzvtZwnHCm/i+mrpf9COtJwlZI5WXOzZ582OivrA1G9HFdsPH9vYTyzpWH\n" \ 199 "9F9Vo7pSKm/pJ6e5Rfxff2zktxwL3nsN3oGhSyelqVnQBSXvOxABMEPVxbbgaKA0\n" \ 200 "7eNeHBXwzajeBl1M4gLQlVEDC9li3IpbEfBdzZieSJaNbnd06Jnk+Et7wm646GCV\n" \ 201 "DJ2U3Mss2iU18vipCE0JUaT2ecs9gvt9e05X5BcCAwEAAaOBszCBsDAfBgNVHSME\n" \ 202 "GDAWgBTpYKJHLroAze4Ii3deRWoldmMm+jAMBgNVHRMBAf8EAjAAMA4GA1UdDwEB\n" \ 203 "/wQEAwIHgDAdBgNVHREEFjAUghJhY21lLXRlc3QxLmV4YW1wbGUwHQYDVR0OBBYE\n" \ 204 "FOlgokcuugDN7giLd15FaiV2Yyb6MDEGCCsGAQUFBwEfAQH/BCIEIPLGBRPQeB8f\n" \ 205 "rpo0yvkswvcjBZOCCa4cGnjVp1qMp575MA0GCSqGSIb3DQEBCwUAA4ICAQDkHv8I\n" \ 206 "ra7wwYEg/wpjDyZnBAZvZslGyiX1rd58Gwp77htjx6C8ccjwEh05BOwgRFhYDvAs\n" \ 207 "Jpi0TXDMN4VI1353UplQQgBWaPbnXuBs8ppPMDRnH5TB+HAvEUJo/xMCwsjzHiub\n" \ 208 "Q3uU3xsmY0v01YJT93pWjigmJ3JcsFHBMzRubslsYB2hTu2nSU66KqstLIAKUQ1c\n" \ 209 "ih9XtJ+iWE0DwKnlUvc0yiW/G5hmp8LNSOJg6SjTBQWEatSclTvuxS+1Wh1EOXHd\n" \ 210 "fIn7Q3YEjbwy3sbwRMYIsRkZ9GFT91FTMV6i5uJ0y2cGrfkZIfvuI53iXbtZh3bt\n" \ 211 "EcjVMgHogI9VRwW2zR2UQXDW7Ae6BsriwGsk+gCOfpMyz4qVZ1EN79R6BhxskOHE\n" \ 212 "bqkql1G7niIAvX0WnU+4dFrm3Mtw5GY+qv9F0SYZsi7EGB/bhdc2d1vI5Gy2j9v3\n" \ 213 "0zPPsEODrbpiMViD3a/9Zg8sGN//iX4IdKXyOuT7wljz40d5RcItgjUwxIIXxnWz\n" \ 214 "flx/IaOlezHQygLyp6a4h9Tw+OGv9l+rWEK3OoE5kI2fNXpcCKKMf6C340F0xGUg\n" \ 215 "fk/te/o/mxjgNX1pqTehoRuvn7gpMGbaqqPsoJpSdeKolQkOBW5qoZm6i2EXSkVb\n" \ 216 "xoi1Eb4j0brypkqwYJqa3n+3Sz2CAS1JEk4eZA==\n" \ 217 "-----END CERTIFICATE-----\n" 218 219 /** 220 * The private key for #mhdt_ACME_CHLNG_A_CERT_PEM 221 */ 222 #define mhdt_ACME_CHLNG_A_KEY_PEM \ 223 "-----BEGIN PRIVATE KEY-----\n" \ 224 "MIIJQwIBADANBgkqhkiG9w0BAQEFAASCCS0wggkpAgEAAoICAQD7AAVkYA/RsBzd\n" \ 225 "rpXkEJt12V4yA+XtecJrDwsC/OydeVF47mBqwRXQnioGTHZvs/yqIkTNb8AgCbFq\n" \ 226 "3YeVWJY9ANxH6WAz350Ji2WsAT7r/ATwV1KY/mmh7QKOqVoLvb/UlutbORd0Lzs1\n" \ 227 "sZkRBq0ZzUObn0nRPwvrQ0tKmYQDgyfLFBzIDlsyAMEyS4TYikiKJjkJpIwO/CPS\n" \ 228 "/WjZiNUWeL2CmNbnntgwm1/mdzdkdx4QcaMXqPli6wG+2qEnWX0NQ3V4LfEIwSO5\n" \ 229 "Yk/3/PxPr7igbWaf1zH2tx3+FW8zXoEUFlg2PmUBboPTqkuj83ARsHCaXIXmLu0d\n" \ 230 "l6M+Dt2M+M6p6XLq2WGigwylKdJnkx3+/mIheA1SszVHDp8+sjLkiigYFnoX5ZRv\n" \ 231 "8qx0AHLrBeFkhHFvzFc/Lc6MjcZEkUeS5mu/smRXkGu0LHghuq1oF6Zvo+e0THO+\n" \ 232 "1nCccKb+L6aul/0I60nCVkjlZc7NnnzY6K+sDUb0cV2w8f29hPLOlYf0X1WjulIq\n" \ 233 "b+knp7lF/F9/bOS3HAveew3egaFLJ6WpWdAFJe87EAEwQ9XFtuBooDTt414cFfDN\n" \ 234 "qN4GXUziAtCVUQML2WLcilsR8F3NmJ5Ilo1ud3TomeT4S3vCbrjoYJUMnZTcyyza\n" \ 235 "JTXy+KkITQlRpPZ5yz2C+317TlfkFwIDAQABAoICAAqUV1CCGrNBk2Xl9vFpoHPY\n" \ 236 "2UyNt4JJReA8qRUo01Gr4brm0++L+z8Te5KlDxTpkYvGQqokvK9dA+UM41XF1HH2\n" \ 237 "eFJw9sTDocXbjJ8xtOo+HCMukGUHIYKuumiIS4BVMMxldBQglZQobXwiOTZrgUj7\n" \ 238 "dY8N/rmFc8YodvhKUjMnsw9Z5gCqAj6wTh8FlIWKsUC0GGax+ylNMraw8bDBlgxg\n" \ 239 "GHTJu70q3SfnVKUif0DfzceZp+srtx9BPTiYfym+bt6WlPv0y8UNBv7IXbXb1vKw\n" \ 240 "5bz1VNmwjgLnzal+U8qRgCqi6nhBgau2xx2uft5b42xgyHjpJMetUKyU+KTOpu3g\n" \ 241 "gbUbmQVCiu7iXPQQLv/mRmImzhVCzxzCRZV1qb26JCuTPVA9zUq9Qd4XLfM1Z6oO\n" \ 242 "ZC7X7EKNVifzHRfRVxGfyFVDMyrZHfRXE8TZT5V5ehhZcQGzf2zMkcUl1nwlIru8\n" \ 243 "2Q7auFMw50/kB5Qxq4z5Wjfqdw8VU/4T7qtAxRPifaT20vu/gMHzQrF+hbbm7E2T\n" \ 244 "YWglwwC/TrQQpxy3qj/k5o4VUCqzUNX0mR5c3pB4IxHgsVmPkXW9KfBmBXdIRAhS\n" \ 245 "tEjY7FtbW/CveGPwHNYdDBbwxfQOjj98XZIEFLHEa2sluz2SiJ1qXb3ZL0Cm+Muo\n" \ 246 "iYdUI9Zt4Qo2UVa4jOWZAoIBAQD+LptWc9zPR/fhu6Q5oulR9yr+jIjSqOG6YL1c\n" \ 247 "3BiIh+VWf0LRiYGhVyYOhj5gbaH8bWqbX+Oq2ywfACKnKdM49zrpdtiYcH+xCLrc\n" \ 248 "/LulfXOOVyl18ka8dVeGpo93pqp7c0UVRMFYx56rmXmWgroAtEsmE/9cEt2VLgoE\n" \ 249 "lV/LtBk+G6s4jOV9raVy7eLpx4LKgqqu9laOPWjb1sT2YAsTQtv8XMWPo4vj1e/k\n" \ 250 "SYwmxoWxLxa7Xq9KljV6c+odQ8RjZcmcWcKKlQe9NxQHZLmk1nQwOri/hrU+c25I\n" \ 251 "cTMiGi6eNkM/YMD+iANVIdYPawn8JhHymlUoc8L0/gUkACSdAoIBAQD8y5aX3YUD\n" \ 252 "YPymtOYkctRa83JNWdZ4cO5DpjG5ANWrdCjOUGBVUySwPhcpnv29aRWwjiaR8bc7\n" \ 253 "NrIoApC49q5O5VSaN7eYKeRxTyXxEU4yotuWf5Nct5YH/IO05rBdCkFE+oGYiy+U\n" \ 254 "QOJUdCZnXrzB+ID4LT9cfcJotI/nOsVf40nTXZcL3Iiba7ONkQX4/Yw8nVSWWEnp\n" \ 255 "kzSXuRbA4tL8pnzPweXFWxrh/bCSvf2xAz3O76L81w1H8HXFhMXPGNjKFYuOHs20\n" \ 256 "kJmDTWE+AgvmenJsevpAQikbJw37n4itiogaMMK3XuX82fP7QYIPkXdhfXkQAiIw\n" \ 257 "2MFKKVzYLNtDAoIBAQDOfR5ERSuEWHrPLphjGi1hIOIUmCYuvHNj7WLoJQTpJTzx\n" \ 258 "38BwaLyeTSXldrkFrQqC/oA0aNmS2yokpP+BvUCSboW1U47xh7K0Jttm2wm1jwxo\n" \ 259 "/fX4kzFTuB+6i2TRVtv4HdRpSsmnTcNgs/VKiDiCifTioiw4qDrKDfSldJO18EDx\n" \ 260 "a5jU/+EPEBnwG8DTGfjueugd6pC2TLz6mqa3X56frxj3EoaMAdiK5ilT00u/1FaX\n" \ 261 "ciGNZYYRmaUoLTJrQ7ou5Wm7Uk/wNNFsrWnf97u4ZV9OLuYW8WAbs7pLr2pSseJd\n" \ 262 "NMe8nOUr4WKTrkEvlU0vQd4ir62uhxxB2npinJshAoIBAA5bWaAiWo2IkpC9MVzc\n" \ 263 "kKbhsJooAgAxGbcJ10UUgQ4NuMuO0QnHgQvpWtNoTizVrP+r8xDS038vagrPqnx2\n" \ 264 "tguRBq8Dfw/LQUgWIKeCPhiuGx5+/FWFr6Wgd7Jsb5O5I1/Rgk6xiPA4hyIYvp2c\n" \ 265 "ScgSXvC5USHlmobrykhtlAwQEn9Ij22DBtcc1MOzes1bSP2gSc+IEBqN26zKPDqU\n" \ 266 "JztmESyTbIM621n+WGrdE21cK8R246DMbdqqE2Y2Vi2e0aEYfCaEJVad57oHSQCG\n" \ 267 "iTp7tcfnbBL+Lut12ltyAgcpGPWz0zsqzpD/p9WbMNHFhywoPhnkpSB1DvUxSC6W\n" \ 268 "zZUCggEBAIAigxHheP0nEyAVvNzxJK4POkC+vICuGLuE9ojGVOzEFE2E+B+X6FhA\n" \ 269 "ICGMAlW+ILKQy1b+MFSQxb3QAQtkgZnPESA16CO5G4xUONXG64aIOtgJD/dbvURU\n" \ 270 "YEuWNPxFGlBZrcR6oA56ueMsihGuPGnDUD0URBDoMEPTOZxV/erB6LFKYBERWMIy\n" \ 271 "62wELBRaClAJode93G2NAuVvTjOX44HvUs0GA+vTuEP8x30aH3dOpHsODTi4j1AO\n" \ 272 "KPpCCkdJBGftNicErE9nZGujo6M2dJA1SqfTCy3klNOlCt+E6ROfqoDdof1waawu\n" \ 273 "aOxJkk3KdEnf10Zoq7FH9yN/2qxqkXo=\n" \ 274 "-----END PRIVATE KEY-----\n" 275 276 /** 277 * The ACME challenge certificate for #mhdt_ACME_CHLNG_B_DOMAIN. 278 * ECDSA P-384, CN=test-mhd-server (the same name as the "server" one) 279 */ 280 #define mhdt_ACME_CHLNG_B_CERT_PEM \ 281 "-----BEGIN CERTIFICATE-----\n" \ 282 "MIICwTCCAkegAwIBAgIUGvDcAsQcCKB24Bkh8T/9jT1RthgwCgYIKoZIzj0EAwMw\n" \ 283 "ZjELMAkGA1UEBhMCQ0gxDzANBgNVBAgMBkdlbmV2YTEPMA0GA1UEBwwGR2VuZXZh\n" \ 284 "MRswGQYDVQQKDBJ0ZXN0LWxpYm1pY3JvaHR0cGQxGDAWBgNVBAMMD3Rlc3QtbWhk\n" \ 285 "LXNlcnZlcjAgFw0yNjA4MzExNDM3MjBaGA8yMTI2MDkwMTE0MzcyMFowZjELMAkG\n" \ 286 "A1UEBhMCQ0gxDzANBgNVBAgMBkdlbmV2YTEPMA0GA1UEBwwGR2VuZXZhMRswGQYD\n" \ 287 "VQQKDBJ0ZXN0LWxpYm1pY3JvaHR0cGQxGDAWBgNVBAMMD3Rlc3QtbWhkLXNlcnZl\n" \ 288 "cjB2MBAGByqGSM49AgEGBSuBBAAiA2IABOAPQQq1PtnjUgXrgNI8TAwWne0hHb20\n" \ 289 "9W7iopT9VnoKJdIXl071kjXjxo3YOPXgn3BC+jQpG/FiJwCCjFtd0WQA2vRAmSpH\n" \ 290 "iEXlVx9ZwnxQXfOPyfWOEqglByvQSDKdi6OBszCBsDAfBgNVHSMEGDAWgBTKY8Ch\n" \ 291 "2pGmjuS0FmSXU8DbmCYrRzAMBgNVHRMBAf8EAjAAMA4GA1UdDwEB/wQEAwIHgDAd\n" \ 292 "BgNVHREEFjAUghJhY21lLXRlc3QyLmV4YW1wbGUwHQYDVR0OBBYEFMpjwKHakaaO\n" \ 293 "5LQWZJdTwNuYJitHMDEGCCsGAQUFBwEfAQH/BCIEIIYAoxWrhIsBZAFvbd7j6s/3\n" \ 294 "2/DdvCio76/5ndU1HeNZMAoGCCqGSM49BAMDA2gAMGUCMCcJqSeM9Vh47njeifnv\n" \ 295 "U97CIsCB7T/yjv9RdhQWer0GS8+yjIk8hkILLFteviY5owIxANeSQclgdhXG/SGP\n" \ 296 "dkz2xtjfjvsZMSwJhgA0PQhJ2Ug0WxQcm2vL4w9i9ww21yZIIg==\n" \ 297 "-----END CERTIFICATE-----\n" 298 299 /** 300 * The private key for #mhdt_ACME_CHLNG_B_CERT_PEM 301 */ 302 #define mhdt_ACME_CHLNG_B_KEY_PEM \ 303 "-----BEGIN PRIVATE KEY-----\n" \ 304 "MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDCH3vJW/8METKqnNfLR\n" \ 305 "S9H2QtUKOFiRShg0QnlSIYMky++m9m/4YHnKC4O7r3a0xpehZANiAATgD0EKtT7Z\n" \ 306 "41IF64DSPEwMFp3tIR29tPVu4qKU/VZ6CiXSF5dO9ZI148aN2Dj14J9wQvo0KRvx\n" \ 307 "YicAgoxbXdFkANr0QJkqR4hF5VcfWcJ8UF3zj8n1jhKoJQcr0EgynYs=\n" \ 308 "-----END PRIVATE KEY-----\n" 309 310 /* *INDENT-ON* */ 311 312 #endif /* ! MHD_ACME_TEST_CERTS_H */