@ -6,16 +6,16 @@
// Data for paymentservertests.cpp
//
// Base64/DER-encoded fake certificate authority certificate .
// Base64/DER-encoded fake certificate authority certificate s .
// Convert pem to base64/der with:
// cat file.pem | openssl x509 -inform PEM -outform DER | openssl enc -base64
//
// openssl x509 -in cert.pem -inform PEM -outform DER | openssl enc -base64
// Serial Number: 10302349811211485352 (0x8ef94c91b112c0a8)
// Issuer: CN=PaymentRequest Test CA
// Subject: CN=PaymentRequest Test CA
// Not Valid After : Dec 8 16:37:24 2022 GMT
//
const char * caCert _BASE64 =
const char * caCert 1 _BASE64 =
" \
MIIB0DCCATmgAwIBAgIJAI75TJGxEsCoMA0GCSqGSIb3DQEBCwUAMCExHzAdBgNV \
BAMTFlBheW1lbnRSZXF1ZXN0IFRlc3QgQ0EwHhcNMTIxMjEwMTYzNzI0WhcNMjIx \
@ -29,11 +29,36 @@ RtQcf0AJ9olzUMY4syehxbzUJP6aeXhZEYiMvdvcv9D55clq6+WLLlNT3jBgAaVn\
p3waRjPD4bUX3nv + ojz5s4puw7Qq5QUZlhGsMzPvwDGCmZkL \
" ;
// Serial Number: f0:da:97:e4:38:d7:64:16
// Issuer: CN=PaymentRequest Test CA
// Subject: CN=PaymentRequest Test CA
// Not Valid After : Jan 8 18:21:06 2025 GMT
//
const char * caCert2_BASE64 =
" \
MIIC1TCCAb2gAwIBAgIJAPDal + Q412QWMA0GCSqGSIb3DQEBCwUAMCExHzAdBgNV \
BAMMFlBheW1lbnRSZXF1ZXN0IFRlc3QgQ0EwHhcNMTUwMTExMTgyMTA2WhcNMjUw \
MTA4MTgyMTA2WjAhMR8wHQYDVQQDDBZQYXltZW50UmVxdWVzdCBUZXN0IENBMIIB \
IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA1S9wVLfTplJuT / 1 OaaBgl / Mb \
I392v8S9kHbzYz7B4OTMslaO7piz0v3SO3TKMh0dswjiRdHrIgpO7XdIUQiU / ugg \
xDw0kuNehfz1ycaGedlFFtFHTNXqLyIUF3dlwHhQwaomM6RXoJmxLny5BhYHEcmk \
yWwr3Cdjd9gAZpblugVJB9C1e40uyL8ao4PHdLzOqO27iSe6riP8SwwisJZEbMaz \
AZpgNEEMbIXPJEFvm5HTRXSMtQCOTSZYMFF0M2yrtmlECnz7hWP19b9bcoDzZQB4 \
ylIsFG / 7 q2jV7MC / e2STZv + niJiHL08RUdoFpAgzaxMgqj63C7B55HgNDNHJYQID \
AQABoxAwDjAMBgNVHRMEBTADAQH / MA0GCSqGSIb3DQEBCwUAA4IBAQBGejPxLxj9 \
+ crv6gUeEBMZPiUx7pUgcI22Wm5yymP96B4fwI3Y0DBehq20d76vbWGPN17Z6pH3 \
ge7PVY1SYqXtS6hXTo4olCm / BZADli + 2 Bs2xCiaa + Ltve4ufVej + bKJXN / YnrhvO \
Kq + klQkuuHywU + GJV / NQeBqToIrSOBgi477NgLFCCCmmx2QWsxHoCFGfuRCBVseT \
z2k / tMuALCDXGeZBRPTsGHu1y4cj84swAeoDK5QSQcI + Ub7GKc + zkoj02sdDLiMo \
3 wokYPcIy47oclhmb4xubHc + y7nF610yZBoC / zgbhbawnZ65hDDWkdQ / SVAnWZD7 \
9 PFfmNnYPTQH \
" ;
//
// This payment request validates directly against the
// above certificate authority.
// caCert1 certificate authority.
//
const char * paymentrequest1_BASE64 =
const char * paymentrequest1_ cert1_ BASE64 =
" \
Egt4NTA5K3NoYTI1NhrxAwruAzCCAeowggFToAMCAQICAQEwDQYJKoZIhvcNAQEL \
BQAwITEfMB0GA1UEAxMWUGF5bWVudFJlcXVlc3QgVGVzdCBDQTAeFw0xMjEyMTAx \
@ -55,7 +80,7 @@ SiWVbw0tX/68iSQEGGfh9n6ee/8Myb3ICdw=\
//
// Signed, but expired, merchant cert in the request
//
const char * paymentrequest2_ BASE64 =
const char * paymentrequest2_ cert1_ BASE64 =
" \
Egt4NTA5K3NoYTI1NhrsAwrpAzCCAeUwggFOoAMCAQICAQMwDQYJKoZIhvcNAQEL \
BQAwITEfMB0GA1UEAxMWUGF5bWVudFJlcXVlc3QgVGVzdCBDQTAeFw0xMzAyMjMy \
@ -75,9 +100,9 @@ tejrSPOBNSJ3Mi/q5u2Yl4gJZY2b\
" ;
//
// 10-long c hain, all intermediates valid
// 10-long c ertificate c hain, all intermediates valid
//
const char * paymentrequest3_ BASE64 =
const char * paymentrequest3_ cert1_ BASE64 =
" \
Egt4NTA5K3NoYTI1Nhq8JAr / AzCCAfswggFkoAMCAQICAQEwDQYJKoZIhvcNAQEL \
BQAwPzEUMBIGA1UEAwwLdGVzdGNhOC5vcmcxJzAlBgNVBAoMHlBheW1lbnQgUmVx \
@ -184,9 +209,9 @@ chhR/aHOuEMTxmc12K4rNlgYtHCsxLP9zd+6u0cva3TucZ6EzS8PKEib/+r12/52\
" ;
//
// Long c hain, with an invalid ( expired) cert in the middle
// Long c ertificate c hain, with an expired certificate in the middle
//
const char * paymentrequest4_ BASE64 =
const char * paymentrequest4_ cert1_ BASE64 =
" \
Egt4NTA5K3NoYTI1NhqeJAr / AzCCAfswggFkoAMCAQICAQEwDQYJKoZIhvcNAQEL \
BQAwPzEUMBIGA1UEAwwLdGVzdGNhOC5vcmcxJzAlBgNVBAoMHlBheW1lbnQgUmVx \
@ -291,7 +316,10 @@ HXQjsfdR58qZQS9CS5DAtRUf0R8+43/wijO/hb49VNaNXmY+/cPHMkahP2aV3tZi\
FAyZblLik9A7ZvF + UsjeFQiHB5wzWQvbqk5wQ4yabHIXoYv / E0q + eQ = = \
" ;
const char * paymentrequest5_BASE64 =
//
// Validly signed, but by a CA not in our root CA list
//
const char * paymentrequest5_cert1_BASE64 =
" \
Egt4NTA5K3NoYTI1NhrxAwruAzCCAeowggFToAMCAQICAQEwDQYJKoZIhvcNAQEL \
BQAwITEfMB0GA1UEAxMWUGF5bWVudFJlcXVlc3QgVGVzdCBDQTAeFw0xMzA0MTkx \
@ -309,3 +337,27 @@ ssymvca1S/1KeM3n8Ydi2fi1JUzAAr59xPvNJRUeqCLP9upHn5z7br3P12Oz9A20\
5 / 4 wL4ClPRPVnOHgij0bEg + y0tGESqmF1rfOfXDszlo2U92wCxS07kq79YAZJ1Zo \
XYh860 / Q4wvc7lfiTe + dXBzPKAKhMy91yETY \
" ;
//
// Contains a testnet paytoaddress, so payment request network doesn't match client network
//
const char * paymentrequest1_cert2_BASE64 =
" \
Egt4NTA5K3NoYTI1NhrQBArNBDCCAkkwggExoAMCAQICAQEwDQYJKoZIhvcNAQEL \
BQAwITEfMB0GA1UEAwwWUGF5bWVudFJlcXVlc3QgVGVzdCBDQTAeFw0xNTAxMTEx \
ODIxMDhaFw0yNTAxMDgxODIxMDhaMCExHzAdBgNVBAMMFlBheW1lbnRSZXF1ZXN0 \
IFRlc3QgQ0EwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAMsZqzkzeBGo + i2N \
mUak3Ciodr1V7S062VOy7N0OQYNDQHYkgDFAUET7cEb5VJaHPv5m3ppTBpU9xBcf \
wbHHUt4VjA + mhRmYrl1khjvZM + X8kEqvWn20BtcM9R6r0yIYec8UERDDHBleL / P8 \
RkxEnVLjYTV9zigCXfMsgYb3EQShAgMBAAGjEDAOMAwGA1UdEwQFMAMBAf8wDQYJ \
KoZIhvcNAQELBQADggEBABUJpl3QCqsoDSxAsQdV6zKT4VGV76AzoGj7etQsQY + r \
+ S26VfWh / fMobEzuxFChr0USgLJ6FoK78hAtoZvt1lrye9yqFv / ig3WLWsJKWHHb \
3 RT6oR03CIwZXFSUasi08QDVLxafwsU5OMcPLucF3a1lRL1ccYrNgVCCx1 + X7Bos \
tIgDGRQQ4AyoHTcfVd2hEGeUv7k14mOxFsAp6851yosHq9Q2kwmdH + rHEJbjof87 \
yyKLagc4owyXBZYkQmkeHWCNqnuRmO5vUsfVb0UUrkD64o7Th / NjwooA7SCiUXl6 \
dfygT1b7ggpx7GC + sP2DsIM47IAZ55drjqX5u2f + Ba0iPQoEdGVzdBIhCIDWwowE \
Ehl2qRQErGqUUwSsaMpDvWIaGnJGNQqi8oisGNeMy6UFKgxKdXN0IFRlc3Rpbmcq \
gAFwThsozZxkZxzCn4R8WxNiLFV6m0ye9fEtSbolfaW + EjBMpO03lr / dwNnrclhg \
ew + A05xfZztrAt16XKEY7qKJ / eY2nLd0fVAIu / nIt + 7 / VYVXT83zLrWc150aRS7W \
AdJbL3JOJLs6Eyp5zrPbfI8faRttFAdONKDrJgIpuW1E3g = = \
" ;