// // Client Certificate data stored here // My private key and my certificate // #include "tls_certs.h" // a preferred root CA // actually root CA of www.bbc.co.uk // const char *mysupportedca[1]={(char *)"MEwxIDAeBgNVBAsTF0dsb2JhbFNpZ24gUm9vdCBDQSAtIFIzMRMwEQYDVQQKEwpHbG9iYWxTaWduMRMwEQYDVQQDEwpHbG9iYWxTaWdu"}; #if CLIENT_CERT == ECC_SS // My personal ECDSA private key - Certificate expires Jan 2026 const char *myprivate=(char *) "-----BEGIN PRIVATE KEY-----\n" "MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgwmEaEau6Dybv+N5d\n" "1v+BkVWYQZhNsNu/X8JPZzZgTd6hRANCAAQvn/UmTjXDk41r0ow6+LfsA3qdKV2K\n" "1eRIv6axrsfEKds9poshRyvEgy4M8WYZlyOOchiVcO2jTyxvH1Xun/WH\n" "-----END PRIVATE KEY-----\n"; // self-signed cert const char *mycert=(char *) "-----BEGIN CERTIFICATE-----\n" "MIICdDCCAhmgAwIBAgIUPDaj+Hv0/zO5MmUpKn2EvnrRJrEwCgYIKoZIzj0EAwIw\n" "gY4xCzAJBgNVBAYTAklFMRAwDgYDVQQIDAdJcmVsYW5kMQ8wDQYDVQQHDAZEdWJs\n" "aW4xDzANBgNVBAoMBlNoYW11czERMA8GA1UECwwIUmVzZWFyY2gxEzARBgNVBAMM\n" "Ck1pa2UgU2NvdHQxIzAhBgkqhkiG9w0BCQEWFG1pY2hhZWwuc2NvdHRAdGlpLmFl\n" "MB4XDTIzMDQyNjE4MDMwNloXDTI2MDEyMDE4MDMwNlowgY4xCzAJBgNVBAYTAklF\n" "MRAwDgYDVQQIDAdJcmVsYW5kMQ8wDQYDVQQHDAZEdWJsaW4xDzANBgNVBAoMBlNo\n" "YW11czERMA8GA1UECwwIUmVzZWFyY2gxEzARBgNVBAMMCk1pa2UgU2NvdHQxIzAh\n" "BgkqhkiG9w0BCQEWFG1pY2hhZWwuc2NvdHRAdGlpLmFlMFkwEwYHKoZIzj0CAQYI\n" "KoZIzj0DAQcDQgAEL5/1Jk41w5ONa9KMOvi37AN6nSlditXkSL+msa7HxCnbPaaL\n" "IUcrxIMuDPFmGZcjjnIYlXDto08sbx9V7p/1h6NTMFEwHQYDVR0OBBYEFDOMT9fP\n" "R8x88EC9TzUeTZ8Af4o7MB8GA1UdIwQYMBaAFDOMT9fPR8x88EC9TzUeTZ8Af4o7\n" "MA8GA1UdEwEB/wQFMAMBAf8wCgYIKoZIzj0EAwIDSQAwRgIhAMjslzs/qSlwxY5q\n" "PIj1zkn3Z7bknRV3ICsVzl9hhGJBAiEAkhUnhBuPHgTuGJ3c1xGIIEjNDKvW7Fhc\n" "94BzAlOIACk=\n" "-----END CERTIFICATE-----\n"; // Report signature requirements for our certificate chain int getSigRequirements(int *sigReqs) { sigReqs[0]=ECDSA_SECP256R1_SHA256; return 1; } #endif #if CLIENT_CERT == EDD_SS // My personal EDDSA private key - Certificate expires Jan 2026 const char *myprivate=(char *) "-----BEGIN PRIVATE KEY-----\n" "MC4CAQAwBQYDK2VwBCIEIHlr6fjIis7VBPeGoP78bBXunfGqRNfv2PM6B/GurYTV\n" "-----END PRIVATE KEY-----\n"; // self-signed cert const char *mycert=(char *) "-----BEGIN CERTIFICATE-----\n" "MIICMzCCAeWgAwIBAgIUBRZr5MpC58wQdpEZdnwSy43EhS0wBQYDK2VwMIGOMQsw\n" "CQYDVQQGEwJJRTEQMA4GA1UECAwHSXJlbGFuZDEPMA0GA1UEBwwGRHVibGluMQ8w\n" "DQYDVQQKDAZTaGFtdXMxETAPBgNVBAsMCFJlc2VhcmNoMRMwEQYDVQQDDApNaWtl\n" "IFNjb3R0MSMwIQYJKoZIhvcNAQkBFhRtaWNoYWVsLnNjb3R0QHRpaS5hZTAeFw0y\n" "MzA1MDIxNDMzMDVaFw0yNjAxMjYxNDMzMDVaMIGOMQswCQYDVQQGEwJJRTEQMA4G\n" "A1UECAwHSXJlbGFuZDEPMA0GA1UEBwwGRHVibGluMQ8wDQYDVQQKDAZTaGFtdXMx\n" "ETAPBgNVBAsMCFJlc2VhcmNoMRMwEQYDVQQDDApNaWtlIFNjb3R0MSMwIQYJKoZI\n" "hvcNAQkBFhRtaWNoYWVsLnNjb3R0QHRpaS5hZTAqMAUGAytlcAMhALvif4QmTzbS\n" "RuZAB6zRDtIcCOL5dJf1IP+7TQRlZ1I/o1MwUTAdBgNVHQ4EFgQUC6drttANglSF\n" "PbodPcsgxasZ5TYwHwYDVR0jBBgwFoAUC6drttANglSFPbodPcsgxasZ5TYwDwYD\n" "VR0TAQH/BAUwAwEB/zAFBgMrZXADQQAx2L90LWfhs2LJG5xcMyFB0YMG7ebbapbL\n" "2ij1QxL+kyyx5x/7lTJZZin8I036tLR739JOW05uwtjq+im49QQE\n" "-----END CERTIFICATE-----\n"; // Report signature requirements for our certificate chain int getSigRequirements(int *sigReqs) { sigReqs[0]=ED25519; return 1; } #endif #if CLIENT_CERT == HW_1 // My first Arduino Nano RP2040 self-signed Cert. Private key is on the board slot 0. Expires November 2026 const char *myprivate=NULL; const char *mycert=(char *) "-----BEGIN CERTIFICATE-----\n" "MIIBKzCB0aADAgECAgEBMAoGCCqGSM49BAMCMB0xGzAZBgNVBAMTEjAxMjM0NjI0QjIwMjYwRDdF\n" "RTAeFw0yMTExMTgxMTAwMDBaFw0yNjExMTgxMTAwMDBaMB0xGzAZBgNVBAMTEjAxMjM0NjI0QjIw\n" "MjYwRDdFRTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABDOFj/SnArwqM15cZs/bXppfTuAxgMzB\n" "N3LS48xHSqpLhHlVnvOvWqyhE8v+ZX4Jzlo7Z9LGOG537EeldBeGjYijAjAAMAoGCCqGSM49BAMC\n" "A0kAMEYCIQC9O1l85YX1+9vZ0t/SHQ3zFH5e7Vc8XtrZ+mTtMc5riwIhAL/SektrG3C0JwII0VV5\n" "pSR9RRnuwo810km81P4S56/m\n" "-----END CERTIFICATE-----\n"; // Report signature requirements for our certificate chain int getSigRequirements(int *sigReqs) { sigReqs[0]=ECDSA_SECP256R1_SHA256; return 1; } #endif #if CLIENT_CERT == HW_2 // My second Arduino Nano RP2040 self-signed Cert. Private key is on the board slot 0. Expires December 2026 const char *myprivate=NULL; const char *mycert=(char *) "-----BEGIN CERTIFICATE-----\n" "MIIBKzCB0aADAgECAgEBMAoGCCqGSM49BAMCMB0xGzAZBgNVBAMTEjAxMjM2RDlBNkNDRUQ5RUNF\n" "RTAeFw0yMTEyMjgxMjAwMDBaFw0yNjEyMjgxMjAwMDBaMB0xGzAZBgNVBAMTEjAxMjM2RDlBNkND\n" "RUQ5RUNFRTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABBxL51SsKUIJ6Akw2IMsn3PMa5tm8kRT\n" "NDLBHfvIPZh05hoVnR3LO4+Ho91dMbN38tVM71opoTzPtIWrj5L6WI6jAjAAMAoGCCqGSM49BAMC\n" "A0kAMEYCIQDgqosqLRntTyehtDCuWcY6WP41sfwx1k78W6EkLpoDyQIhAPzxQawMjI9mLeePF6Kk\n" "BzPRSurX7+nLFDC6u3pfmEY8\n" "-----END CERTIFICATE-----\n"; // Report signature requirements for our certificate chain int getSigRequirements(int *sigReqs) { sigReqs[0]=ECDSA_SECP256R1_SHA256; return 1; } #endif /* // My Arduino Nano 33 IoT self-signed Cert. Private key is on the board slot 0. Expires July 2031 const char *myprivate=NULL; const char *mycert=(char *) "-----BEGIN CERTIFICATE-----\n" "MIIBKjCB0aADAgECAgEBMAoGCCqGSM49BAMCMB0xGzAZBgNVBAMTEjAxMjNBMDUz\n" "MEQ0RkU1RUVFRTAeFw0yMTA3MDQxNTAwMDBaFw0zMTA3MDQxNTAwMDBaMB0xGzAZ\n" "BgNVBAMTEjAxMjNBMDUzMEQ0RkU1RUVFRTBZMBMGByqGSM49AgEGCCqGSM49AwEH\n" "A0IABL8xBsAdr4E1MZMoQeA6hmklaiidF8gpgZWmRkSfIIyHwMup/wsz4eTGAB5J\n" "IhLI/gFGVjsAU+WK7ulsW5YgxCqjAjAAMAoGCCqGSM49BAMCA0gAMEUCIQDYWgeH\n" "TF7AcJH+3nr7VQo8acgoyhlPnR62xwjj0AsUcwIgQ9qgNjVtZgoZC5+fTpPyG7dt\n" "1YI/aNe4SDOv0a2jtmc=\n" "-----END CERTIFICATE-----\n"; */ #if CLIENT_CERT == RSA_SS // My personal private key RSA 2048 bits - expires October 2025 const char *myprivate=(char *) "-----BEGIN PRIVATE KEY-----\n" "MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDPopFHQN4sWfEO\n" "fwKMqZAYOZCbpS13lZTYGlIsDOe4Ak3ZoKpkQw/evePpmfRJt3c76m57c9CM53z0\n" "P0P820IOahlzU+02WcAfgDCBYrCmbKwm2H5HhylBiHF5AlvgoOf/J2xXadK6Afll\n" "7+gCEZTfBpbfqX2uPO8zLzzrRRVxi8NMky3hVtjoZMtfn9yshLe2Tb9UfZjXMe60\n" "u4Zc9+azAA3QBilUWtSAFI461svZzSQvkZs5n14hcbTqzNBMR4qQXBZtqq/SDYQs\n" "p5jqFVmDEQOSTFndwIBEJ+g7vBAberjeh9R+bAHftHAGkMvmrqHLMkD5qAp1D1bc\n" "8l+3i8etAgMBAAECggEACxUYP/9cXG2oiieJUUyznjdkWopkdN+NBEPTYvqFW7Lz\n" "yMvkjFlv/WmRQqSu/0hFmvMWVoyF8x9f8gF2dYaWbgKHvTobjS0ZLhU/gYhs+VUP\n" "kzs28kZqk07fD6BqmwC7oUjPZZMGZls4npJBheq+UXEemG2JgcVK1yaMT9puHJNK\n" "dKqP4i37KSKzXmhWTptCrk7cOXZYYFzhKm7xbG+wWqPpVhVbJIAMEvA4PBOMY2f5\n" "M+OXF3W82nl6hRTHEUUl26NkkKrzFHHkLbTZsBocnpy42tIImOCHPvlf6AJqEO6Y\n" "mp47sCCg5N3AE8Ztg2EF+EAwCDNEZf+df66lLzztgQKBgQD6qgOluasejwJLzmOp\n" "E6iI4YgPkEG+8HIquJn3EtmVaOWl2w0f5g6PpEjMum8nqyb+qBEgRiV7FYy+KyCv\n" "c82/jPyN7wtvUZpjBmDEX3mHMvlFFvd1u0/W5AroH8JnHMNRb5cTwJPVNFp5iL/T\n" "ipgSuRGrvnx0jgT8t5MQ1yICkQKBgQDUDhFSPJyNxWpdh022rMxH5FIphbFATt9E\n" "/I/uxIxUVtFelvP4dmhUcq5laeE9gegdV7o5cnbKS2T22qffaj5uTcicivPfNeBr\n" "+UQX8rEjfq+25278zecQv6WlHNR6Duo6aLtOQR1VGrD7y6XX4T62NF2+oBHtVrgh\n" "HQTJ1d3JXQKBgQDaWT7UHefxtqFJZ39oyLcGhW8AH6klqk3I6QU1NDZU8AsbbrUA\n" "FGaauYCw1bX92Bkfu0cv1erQTPVMskTGkRmowic9e/15+puBpwykAobaPozkohzt\n" "cT0a84qMqR2utF9vkMUJb7dXAUPOmlB+9TuDE7NQ552B6jRt73ssMDpwAQKBgF7F\n" "ssQYRret5W3LjNX5wIrY5keccq2VEoAYiJNj0HvZGVW3DW6cLOChKIQ2n+4HYx/K\n" "F3aZS7H5pDQXYTOenixaIzCjgX7e62AWVXKGiticRBfws0/VDlIT9QooKmYqyFA2\n" "go/k1iE0/qhqScKD7q0sFkGd9KUoPr6942f5Z1gZAoGBALbA84ln9+6WilePWd56\n" "9Stjm1hFbMvxH4GfFRWYyyKLI2/xRhF/botoOw9s5KaWv515ENphKjkSlOe/2ymm\n" "2TmDZxokL5ZtxJrUzYOGA1Y1rfFspquDiiMSV/nk4VBucNHXk855l/x1S8DeR2K2\n" "lYtWM/F1mJ0keAIM9bnn1iII\n" "-----END PRIVATE KEY-----\n"; // A chain of certificates - just one self-signed here const char *mycert=(char *) "-----BEGIN CERTIFICATE-----\n" "MIIEJzCCAw+gAwIBAgIUT1xD+P/lcf5CVT4nEnjkDHCx2BYwDQYJKoZIhvcNAQEL\n" "BQAwgaIxCzAJBgNVBAYTAklFMQ8wDQYDVQQIDAZVbHN0ZXIxFzAVBgNVBAcMDkJh\n" "bGx5amFtZXNkdWZmMRgwFgYDVQQKDA9TaGFtdXMgU29mdHdhcmUxETAPBgNVBAsM\n" "CFJlc2VhcmNoMRYwFAYDVQQDDA1NaWNoYWVsIFNjb3R0MSQwIgYJKoZIhvcNAQkB\n" "FhVtaWtlLnNjb3R0QG1pcmFjbC5jb20wHhcNMjMwMTA1MDU1MDU2WhcNMjUxMDAx\n" "MDU1MDU2WjCBojELMAkGA1UEBhMCSUUxDzANBgNVBAgMBlVsc3RlcjEXMBUGA1UE\n" "BwwOQmFsbHlqYW1lc2R1ZmYxGDAWBgNVBAoMD1NoYW11cyBTb2Z0d2FyZTERMA8G\n" "A1UECwwIUmVzZWFyY2gxFjAUBgNVBAMMDU1pY2hhZWwgU2NvdHQxJDAiBgkqhkiG\n" "9w0BCQEWFW1pa2Uuc2NvdHRAbWlyYWNsLmNvbTCCASIwDQYJKoZIhvcNAQEBBQAD\n" "ggEPADCCAQoCggEBAM+ikUdA3ixZ8Q5/AoypkBg5kJulLXeVlNgaUiwM57gCTdmg\n" "qmRDD9694+mZ9Em3dzvqbntz0IznfPQ/Q/zbQg5qGXNT7TZZwB+AMIFisKZsrCbY\n" "fkeHKUGIcXkCW+Cg5/8nbFdp0roB+WXv6AIRlN8Glt+pfa487zMvPOtFFXGLw0yT\n" "LeFW2Ohky1+f3KyEt7ZNv1R9mNcx7rS7hlz35rMADdAGKVRa1IAUjjrWy9nNJC+R\n" "mzmfXiFxtOrM0ExHipBcFm2qr9INhCynmOoVWYMRA5JMWd3AgEQn6Du8EBt6uN6H\n" "1H5sAd+0cAaQy+auocsyQPmoCnUPVtzyX7eLx60CAwEAAaNTMFEwHQYDVR0OBBYE\n" "FC4O3mIGz/e49iRpegbDKk+Dmp9tMB8GA1UdIwQYMBaAFC4O3mIGz/e49iRpegbD\n" "Kk+Dmp9tMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEBACyDnPof\n" "l/BFzmLTssYJ0tyH0vDYK2Q/vvaz59DmBxDPxIlk/mR7AZILxH1gIy82DYBL/4Qg\n" "N29yI7zQlpIrygE9z5oKzeUwj9oqzw/la2D9uLegs9X6eYuTUSNGH2uxWmtNnfku\n" "ZPNpbeKtKD+IibtTRBeMsygZftmAzRmGkO74VIt/mmr6A2dU/wkpywLLmeiD8Bnu\n" "5Lk4x+HPjtgVYR7D1FXOU6+q5zS2SrCj3yTNxw5dBq2WfQnnFZCFWkgxZ9hBDQ9P\n" "+5XjRXUpUH2VbfSNBjktYJKZpuXWj4yVChzPtYsGJfuqpMAoWziZNHNHP1RCyzZw\n" "Y3ErhHcLL7Z4dRk=\n" "-----END CERTIFICATE-----\n"; // Report signature requirements for our certificate chain int getSigRequirements(int *sigReqs) { //sigReqs[0]=RSA_PSS_RSAE_SHA256; sigReqs[0]=RSA_PKCS1_SHA256; return 1; } #endif #if CLIENT_CERT == HYB_SS const char *myprivate=(char *) "-----BEGIN PRIVATE KEY-----\n" "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\n" "u6taoqDv\n" "-----END PRIVATE KEY-----\n"; // A chain of certificates - just one self-signed here. Expires August 2023 const char *mycert=(char *) "-----BEGIN CERTIFICATE-----\n" "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\n" "AAAAAAAAAAAADRcjJw==\n" "-----END CERTIFICATE-----\n"; // Report signature requirements for our certificate chain int getSigRequirements(int *sigReqs) { sigReqs[0]=ECDSA_SECP256R1_SHA256; sigReqs[1]=DILITHIUM2; return 2; } #endif #if CLIENT_CERT == DLT_SS const char *myprivate=(char *) "-----BEGIN PRIVATE KEY-----\n" "MIIXWgIBADANBgsrBgEEAQKCCwcGBQSCF0QEghdAb0r/8S5RTMtIu2gZx3ioiyAm\n" "YyEErZnjcy9NVODI+iJfllk/EjDc4jK3RBynpNPYAiyGv82Bs+684lrBFqlB0d2s\n" "Ti4nOUBIgy/+X0xJl+rvgP/382RDhDCp/oCCjUschhISVnM0ZEVRI3dUAQF0aHRD\n" "hUUgAhdSNmUSByJxEjA0E3ZlMIEQYzdkCCIoZSQAIBVmQWAyhIVVExF2JWEwc0QW\n" "NkJCh0EiJCN3eEMSZHJGEnZDMHA2BUJER4RWhzQzImgVEiciUFdWMxVQNwcHhjQg\n" "BYVDMlZRNFEIIRFUCERoQlYxBRciFWWCUXdHQoZCMQMBODZgYYcQVkVgh3BTVQSG\n" "YoIhMEdhIUUBGFUnE3hwAEI4EXAEJDUiEVJTGAGGCGZEMCY0JGYDSEZQZDMYVRAj\n" "N3ZEIBhWZyiEBDIyMxMlYjdnInZFIgBVVoRzJFYWCHVXMWJxVoGDMROGVROFUQc3\n" "RHcCInEXdmRGAzUQY2AQEzgUdWEQMTIXUWgGiBVYYCQyOCCENSNleEeFg4ZQJRAY\n" "hlUVOFEkgSVAdIVmKEIVJTI1YicAZXgjVgUhNnIUBwNCI4QmMlZoFhgBRREEIkcR\n" "c2RzQGiCUAGGUxgBQYQDNTYTYIQCN4NiI4UIWDiBWBBhRwMFGFKEAwNFcHMyBFZU\n" "BIYVWGgIADYgcFNyQ1hhJGBHM2UlRYcGRjMFFGNXKFCHQ0IhEYdFFIUIgnKIJ3hE\n" "A0UCgHgURDKBgSZlgSaCZ1hAciVDVGYAeIBBaHEGd1AkE4IxMUQ0gSByF3h0UIAG\n" "CFBkJgFoEoIYhXREeBAwYmFQNHczgAMyQjEQRAEVEFdSaAcnZIclA2dxGBiAQUIG\n" "GECBWFUVgENUSEc4QhY3NXElcxIEVFdWVoiGMUaEQiA0AmN0MDEWVYgmAhgmCHFI\n" "RCcwhnJ1FnRGIIJxUnNjJQZSUXQzNkQgAidBBhYTFnMyAWhWAxI1Z1JkKFEkU1ZU\n" "d4BmJCYHaCeFYIBVYSNyczggRCNyCHB1FwAAUVhVRoOAQChXEXRoYwCFaFhINAMl\n" "NiQSdogWZWgmR2R4F3cRQnJGF0ZkESdWU4cwZwiFMDZThQNDd3BnhxdDJXBDJSUB\n" "JRRhc2Z3VSYzRyNiZHADNjNEUyBkYIcYVEFoFDUmNQg0FGNCg4CFSCYFJCOCZzEW\n" "cjVTA0eFB2UIB4VjQ1UAZoEXV0R4eANyIGaEFyVEdjYUJlaEI3dRYwBXZ0MQBgAW\n" "ICAIBBdIAigYQ0YFFyVnQ4czAWUFOCUyATYjZRg0NhRYQRBih4doAyKCQRAQABhV\n" "SIZQYgIDdHMkclIYNUgIJnMEUGAIJjAhYzUXVRcEWCcmZUNxBIcXYTRzJRZFJUgX\n" "RQJydIEHcwGEB3MYhGVDEREWVHN2UWAwg1dSI0QlYmRnNRgWVoUBZoJVFBhSSGUg\n" "JnEFJGFRMBeDWCQRZ0AnJ1h2QTFHJhA3EXMFJ1NxdFFyUWNDAEAnIYCCRVg4QTJQ\n" "EFFFg2SGNYFBM1V3M4ZjWENiSINGNWNHBEIgExVIV3MXUXIXBHIDFIKIRDRkM1eH\n" "gjMCIINlhnUjUIdCJlAhYXBAElF3NURkR3BEM0AIFXQTKGZwM0BYaFYyMQcRATJR\n" "WEgVJTUxUkWFhjgDhkSFASY3hnSDEDRBEAcgYENgUVB3EoZxV3hkVUdkJzcBWCRn\n" "dXEWEUJ0dnYVNyWAMHFiZoQAVyQ4FUYFYYJVRCAAVBZnMSA2AVgHIzgEUCFWJANQ\n" "WANxFRgYBGFVBTYAc4WIMnYlcWgHAIOIF1eIBYB1NIaHUTJ4QYN4R3BwhRaHBTCH\n" "SIY4A1CDV1R1cCAyY2YwKDViMnghgHMUdoMzN2YHhmBnV3MRZRJ2SHAWGCJSF3RA\n" "N3NHcWaAJUEWJSBngQFyJgRHMBJYQwZyMHIWIzAwNYdhcVVYgmYxcnAig0dHBCR4\n" "RlA2hnU4N4BGUmICCCJhMFMFNGI1EYJBVDMhQ1A2iBSEcnFjNIM2ImMGdIA2YuSe\n" "wzo5G9LaLXMURS1ZJ8y0XA71CPYqX1R9nvEl8UOUbjhy3JmlEE/dVGy5WgPow8Mv\n" "dCaxtelwpuM5iPUWF6A3MgWefVMyGxxk/IyMwgxMXFajBrl8pcZBiWzhyxVoTdfz\n" "lcpAIXX0lP/Nde1iegIHQKSomrbHN7ojOLD6SllLG0FL6by3GX9t5M5nWDqTiTLr\n" "SuOftMpplw1g6yOhdQXtQHVHsGFdsmR61VEZFqxVLn5ofPH0oQko3uiREDl07f7P\n" "otSG7yrVf1CSjlhdFjhhgJMJ9oY4J/R5G4HX5952ieRVldZQEdTrRzxdeTwHYt+p\n" "2PKxukc0jB5U+zrgromORpzpRzUZVFirvbPk6frMU0ElXkL5olQHjiYcGYxIcHNy\n" "zpUgjw+zuJPPMDjj39X9XrF9Mavnsc2BMF4RVjsi+MST29yhpzTg+69i2VAt6gK7\n" "DQqiB+84MF2lfTVVso4ZsmzvQlzFx2s/OvWkBYBoot2wdefXpsPsrIoXQscJLa9A\n" "S9U49TBY7DvazBI3haVZEpWrBlB5l1BxWm72hdaQSGUwhFaZc/xeCWVxs5IW0mJh\n" "Jg7a+W8HmouISBJdkrtttrVfK3ihS97gdJI2m1MVkelniWsFvp3kFHGso9J+QDLC\n" "zpOzZ8L2GV08BQBlyzzrnrUjBuG6/NKRqmH8QSZUc3EdNKoqZQbwdl65WIdt+XBu\n" "lD2bJz8FQQh5BZ1kRfKxeaMgjxeDTuBeRo9wra8BZO1RwFL+0VndKa25YuyGQv5/\n" "YdnXXMvpV5Y7tCZMYaFAyaQgGKCwhrC4hnO78r2rPG/16XVpNSuwiSjUqNHfTvFK\n" "VLbY6hnLpPfHKovXatGNPksA8/rgxn3pWfXetmBCxjwO8mhoi6yso2zyX8cshYb2\n" "RIT3V5Wiz45xoi6KYo0/8/a/s2qVMRSidfdRB/3lI0nl8NsFajq+cDYaT8qb/L3F\n" "b1iS9yPxJBHPa42Br+9NG/R8Os8oP8dExP9lRvtWF6HWu+QHzs/2W0u4RuKXGdS7\n" "u0d2dnkDACmjyNakDC3pR/0HrdhMBOREc9utvCJhe5tnLBSJ6AoHOjDMrBuUineS\n" "eN6wwWAMCwGSsYScFcToNehlg1KQGVnW1rQE78fC2MKLX9jwOQ5iLCq/AlpRGwn6\n" "3S0ocMeciYP/vV8MG4/eQOhuCGDVIqyKi+KUlvWUmXrOpBQgX1ZXeP65d6Uvg9dn\n" "syWpw5sjKoAuOxPj2lxhD5bfWM68iFfNq5OYTAiztkjVWn4j46jxV7bZklpTkJGL\n" "ZNLyN7Wkb8o3ck5RV9TsJx8JMtumgFS4y2tHneTt40+KMDODrhs08m8BYAjFZDv7\n" "Z53JlksV7V4JunRPuDJxnsYjuqIXjSvtQ8r+qb0xN5dG3tKAaeUYjfUQ/LG2oogF\n" "jBOIjcqt8V0JmNlo9mXVXF3fsmBi6rAgitK/Vk4qYghouU3KYNAe16l5H6+oq/Lv\n" "Ff6HIRopVXYtHRYYKNhnhxBP4NU9kRg2WqBSUosBSdy17m6nDd19pRhPfN2cuFOU\n" "AeA+S0HXIsxZKHO858+VF2qA7Wv9XgtXy06ZYJ8kADvHZeVtzBP7P2cGjAn1eRue\n" "GcdwmSbqaoDFgFe1MqPum2DgX+g5pKii7wMTQN22ifKCJPJdJqtNfQ2KVj1XIFah\n" "em8sxVjk3GWvTDHNRn29aZNxJvSu5enW3jzAApIigFqP8RYbQl4JPQex46es2cHV\n" "nK//BxhKTcwDg+pc+BbG8ufiT3OxHk7Wq3cl6fOJyduB2eS43i2iS9hGtefcxXwA\n" "+vIKRJjSGJVqNqnEmkh6fPPpfdv0ZfWUsPIrPTQBECJXrI9olIL6HdviJ3HiaBS6\n" "QGRmVc52uNsMqvjBUOhGGw32F9hZf19/tj3YAESVoJMxoQ4FpK0cH3U1F/t0Wkpu\n" "632PLNBHKDlDmbcDc5jlDmGzqMYw0bW+KPqDn01xgpOVHCqC4Xc8f9q+HDpME8rL\n" "Aft8cJHIpEXUYNxQ+i4az9H2Rc5jbrYECaf1Z6pDkd+VpkozJAmDRI6gEcXx0wGk\n" "7RmA9qY/v8mzUdWPfoY+U716qPjOliEM9l8GlZzGwI9AKZTRNQ4SANEV5GFMUt6d\n" "pZoI2TzYEAb+v11APafR1O5I++USF2CtK/iqIpAqpA1UWU0hf7QlDEKARDVoQlSc\n" "sAs1ewPvo+uA/gboJHST2nYaP/KBeGVGq0d3AwFUp3mRhUwqP7vWPmg2hOXP6BeU\n" "pOgh6XRKcEHGc40jmSHP+6d53OS9osHnDr5MFRImW2IOSE0Tgy1ZnlyFCfuUff64\n" "igIATxTWnTXitLai7NTwJWdzVS2s8ERA20DJ7sDPYVpVx5Lj0qRSZuFw1WHe6TIk\n" "SNhwtghBdmojg8nypuCV7EARUp97NOz1WS0phhalDSZ3ugLMnDgz4LtHjgcXUymj\n" "96OnA1ke2fTozbUoke8Kq9v7ZYVHPK3PGS2x58L6p7giepPz4rDKKxl986WtOWQq\n" "j/B5aeXtpjoLPgPBENPGRYh3KzXXpnOSoGz51uB7tp/5mRUcLgnv2qaOschEr1RG\n" "Jt+EXY7AlTZmGkLhN5K4zZ96vfGZkyXWBjNUf2ZOoSdRIb/YvB+KBo+0GJ5MtXbW\n" "KO/9+BYkcF7YdWMjUS6meg7hydaerDnSF/HEhOXCRornnTbmHzIHW64Hx1W/Ri1N\n" "zBDEA3hdtWtfHpch2cEmXZrbWQk25YmHNykXefOQxakW9dT92Jlbv+Pmk2R2+eYs\n" "vGm7rZe4Zfyb3c0G6evIeDD/5Ot2P9GUwuA5y5v1Nk7oqDrB/pCLPMC+SNdHIyH3\n" "LqoCEq2MkMI/XiEy/V1yRQgA/OGV7F3GmprywX0IIM3XphMzm94sBMSPVyp7t1Xg\n" "sQI4oRF7ivetZ9EcCtaKQvfnl7ba2Jkr4MlrRJl7FUj1xMLpo/iipN4BcvSZc5oa\n" "rACX84ZoD++NgubUWRAtB92I6nHP0Z44E8BK7t0Qg3LQfsVSN/MENa6fkLH4zeWg\n" "OMba+Kyvxgy/IwolX8XaW51aIRQr4f2QSRIudgRUmkq1SZg+3oEQVhwiEb68W8aU\n" "W68G3zjsFaGjel7VQZKXoOuXSChtpQZdTbmnpUWzSzGTJAUGxOE1H06X4Bc0yLZN\n" "5RWV98aOz6G6JTSdhSYbzoe5NmntzTbraR1azhBUIw6JI7SAVhr3ZxNauB5VS9Bp\n" "XGP0Hw2saInqm5xo2AAQA3bviSyLjU+bo4vP1WD8POsE861q35II8cJKbNn1WfNB\n" "OeBcPrV3JC6zfjhSWUkxQ49FnKXX8f8KldUSHe+rWDZOd4/BtcBGW8AhYdceaG9K\n" "//EuUUzLSLtoGcd4qIsgJmMhBK2Z43MvTVTgyPoicfl5qiDjWCYBY7nFfPbsMXYS\n" "hTng+65mbiGRrVtU/SDsHbeou/CrsGO2VzMQCzte/W0aw4KFwn24X91s+ou5jUGj\n" "VLEWw/FNHIbzXFKUbyFe1rZd/Y4WECg8JaFzgppOYLbVCKl9iuJVkigd46VYOARZ\n" "8tFOSkazJegeuPYUvBnVFUx//+isBzbOKih1sGFkttm+DrXgqp8dokefOLbGlBPe\n" "FHDNyNpZdmSoh9LDp0j7Um5eBFAK7Zn0uSQ152d7fmnsnX7xAsVDpG4COZ/hHy/s\n" "UkJsmrc0aKRFveBPVbIanDKPLrJgGRF+wG1CS4i2/P7DdrH1lZC06ctAa0UlwQlG\n" "8rVlGn1hnEobiAA+jTSmvHMXZftYbde9qP3aoieG080qxuUmsO+cnOMgAJp/Tlsp\n" "BK8dDQVASl8xYgFu+gjyALLalGjt2PDcK5fNd28k+TQ4h2hIhsnHcz8fBHPr0aFQ\n" "DB8LsduL8Yw4T1EvHRM+w1eTia/SXFhocV+3XI0Ks0Te3xq2fprUKzjoy/9FIPlQ\n" "CvJ3n7hIICdrQnLIjj5lLYMMb2p8j4ILWcKSxj1qJ5C7/5+RCUhYjJLZuag0fSvz\n" "4TaQjIfzj/Nc/WEEjhjpcT1E0za9X2vma8Vhtz5UiIzFzwt5S6pze/TBknNZN8u0\n" "DB7zu38pcZrvWREi3mzSSYaJB9CTPc03xPuGcW66WY23UIimRB+XKKEBPMr+ExI+\n" "Wr56dOze1L9hMAaUL9LvkBocGnw0xNxXq8CzdnYIeuS9NYVJqwCHSswjQ/nfuru8\n" "B8VZO0QDXm6TsGEwD2mioZISjxglXHk2s0OJm06izWB5V5uMF0yaeH70kYOGGi9z\n" "1njlV/vY+wJw2QNS5QlTC1OjzRRKuVzFXYFhe+vWEL0P9hzQ+LnFQrUaAsU1MIWP\n" "fxSPl9YOjWCj65FbYVkYNHbnluh+NvcEAu0rOX2Er1TcZWcJWfoDmadtuhX0KoH3\n" "AkuSt3vmqcx1iYjJSyjr+mOXzLQeeOYpSK1bm8Ylea+94kh+oQrtFen+Ak47FpNK\n" "p5U4Oj4OjK4e997S/uiXF4PK4GqLo59I0PKUcDmvgID93Vee58EmAy6OL0JgXm77\n" "tLImC8rUyc0LiC/VQ2VcgtixBJg7Fvt+u0tLLCF6T8PRkmwsqKjlWe2T/EFbdlhX\n" "ek4TZ6pKNEucs6/lCJ2mRxwfB5W3XNNK06CT53u4cXzADE1m+Jn3e3Ccf0saZAxx\n" "3VtYzYL8vGPj8UZulWV3DtTO4kHcDkxY5jntXO5p2kQH5z9uDH0GWMAqOVa1D9Oy\n" "hgzZabYBmHc5sKtWXO1FmviJcj2ic6CU2OR90OWitwUDRzM8YSi4bJuutsPTnoPe\n" "05qwNI3HriCZOXwsFoBH2YCsP1l6SAbIGijLqzkYz30OvYzTXUnJD1FzcyGbhGTF\n" "RKXkB1CT1Tgk/yJPwRfSsF8M3KzDf+tJmEjHYnvTO+kgoz4/V40Zib+ri4bTzLJA\n" "0W0rzGByQ5TEaPUBkJqnQZTohDfDvZ7yxGAF+YLzvtfLlepP2bN4dqz999M7y0LC\n" "XNiJA1nHOCstJ0pciKfAPMgdwxWvVka/mf2LmU/xgPhNFf39TVodOqerDowflP9z\n" "5hletxtpzJUhLuPucPiV9H2suKqM7OfSf8FYRHctVjEcPnBB8eHZ9KXId6l0c3Ex\n" "UVxW6au6jKzGSgSIQZmDYOsv4EVCxMUGG2cK1XQAu2XpxpSIQQ1TtKwNfLTEYt/Q\n" "shsyeYenZDzt+coLTTytd0JGPmHJPEYL0oh29Up8N0PSupXHT3j+s5Dp5fEvTDBi\n" "tD+yKfeI9aR+gWD5F2bJFIOrWUK6TVvwvUxpNf1DiVJresH5vdiJwQ/zpF9XR08r\n" "H+gfe99c7Tny8sr5QrjVrHjuyYcZg3xmv+lUvGp4kvR+nPf1Jo+4F5sqQ4X7jb7e\n" "CeWWxcNZJLK2DOegYHf4y3GWQkZtd9kKiVFs/tyN4Wd9aTuY1ES8w9FB3y5Y60ak\n" "AC7oWG69NBALtQsYWZ183+t43UcOww/+e1NnKTK1c7PsJnilXVTTDAI0bHaec/XS\n" "lpQHuY2XseA7apCOVZQlS9A44GwwPFcWqwMAxfYV5jaH1/Dm5LlTp+x6nwK2a5xw\n" "iblwTWBDxAxq7LwKKNelUt7DmFvNCvbaql3HbmRe6akNLYo5C6ntWmYPKuLkwXmG\n" "DimgQ+VSNPS6TXgPwSoxKgNCMqM+DEbX/m00sNjrcm4TheuL4R5qOXPPe9etHCjf\n" "eQJpYs9jTzF7uAJLumlU7U/WV0vDj6wM+8B9GLvr3Z/z5pSRWJughRPoAGszgwiL\n" "KRXTm4khMlPpLiU8q/cZMQkKM/NYoCuOoHaL7VETRY+0RFb9zOgUK2EM0KvGWzc5\n" "4MFScSFFbBhdTLq5b9MIW11Nm7cptNtwjX2djEjVC52yIXOrja4S9Iv/KKJANdfv\n" "eD5S0+0Yeddp3lx4J5eS+3xP6zxjqpswtSIQbhMd1rmZnC84mPc28oaLJhkJmQ8H\n" "C7+nxVM/RSaC6FGZpuJKUWvMd/dY/yiFiga8qrup\n" "-----END PRIVATE KEY-----\n"; // A chain of certificates - just one self-signed here. Expires June 2023 const char *mycert=(char *) "-----BEGIN CERTIFICATE-----\n" "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\n" "AAAAAAAECBMbIy41Og==\n" "-----END CERTIFICATE-----\n"; // Report signature requirements for our certificate chain int getSigRequirements(int *sigReqs) { sigReqs[0]=DILITHIUM3; return 1; } #endif