#400 and #402: update certdata and pinned certs

This commit is contained in:
Cameron Kaiser 2017-05-29 16:29:50 -07:00
parent 2ba51bda6d
commit 372305104e
2 changed files with 3339 additions and 4320 deletions

View File

@ -51,6 +51,10 @@ static const char kCOMODO_Certification_AuthorityFingerprint[] =
static const char kCOMODO_ECC_Certification_AuthorityFingerprint[] =
"58qRu/uxh4gFezqAcERupSkRYBlBAvfcw7mEjGPLnNU=";
/* COMODO RSA Certification Authority */
static const char kCOMODO_RSA_Certification_AuthorityFingerprint[] =
"grX4Ta9HpZx6tSHkmCrvpApTQGo67CYDnvprLg5yRME=";
/* Comodo AAA Services root */
static const char kComodo_AAA_Services_rootFingerprint[] =
"vRU+17BDT2iGsXvOi76E7TQMcTLXAqj0+jGPdW7L1vM=";
@ -75,14 +79,34 @@ static const char kDST_Root_CA_X3Fingerprint[] =
static const char kDigiCert_Assured_ID_Root_CAFingerprint[] =
"I/Lt/z7ekCWanjD0Cvj5EqXls2lOaThEA0H2Bg4BT/o=";
/* DigiCert Assured ID Root G2 */
static const char kDigiCert_Assured_ID_Root_G2Fingerprint[] =
"8ca6Zwz8iOTfUpc8rkIPCgid1HQUT+WAbEIAZOFZEik=";
/* DigiCert Assured ID Root G3 */
static const char kDigiCert_Assured_ID_Root_G3Fingerprint[] =
"Fe7TOVlLME+M+Ee0dzcdjW/sYfTbKwGvWJ58U7Ncrkw=";
/* DigiCert Global Root CA */
static const char kDigiCert_Global_Root_CAFingerprint[] =
"r/mIkG3eEpVdm+u/ko/cwxzOMo1bk4TyHIlByibiA5E=";
/* DigiCert Global Root G2 */
static const char kDigiCert_Global_Root_G2Fingerprint[] =
"i7WTqTvh0OioIruIfFR4kMPnBqrS2rdiVPl/s2uC/CY=";
/* DigiCert Global Root G3 */
static const char kDigiCert_Global_Root_G3Fingerprint[] =
"uUwZgwDOxcBXrQcntwu+kYFpkiVkOaezL0WYEZ3anJc=";
/* DigiCert High Assurance EV Root CA */
static const char kDigiCert_High_Assurance_EV_Root_CAFingerprint[] =
"WoiWRyIOVNa9ihaBciRSC7XHjliYS9VwUGOIud4PB18=";
/* DigiCert Trusted Root G4 */
static const char kDigiCert_Trusted_Root_G4Fingerprint[] =
"Wd8xe/qfTwq3ylFNd3IpaqLHZbh2ZNCLluVzmeNkcpw=";
/* End Entity Test Cert */
static const char kEnd_Entity_Test_CertFingerprint[] =
"VCIlmPM9NkgFQtrs4Oa5TeFcDu6MWRTKSNdePEhOgD8=";
@ -103,21 +127,9 @@ static const char kEntrust_Root_Certification_Authority___G2Fingerprint[] =
static const char kEntrust_net_Premium_2048_Secure_Server_CAFingerprint[] =
"HqPF5D7WbC2imDpCpKebHpBnhs6fG1hiFBmgBGOofTg=";
/* Equifax Secure CA */
static const char kEquifax_Secure_CAFingerprint[] =
"/1aAzXOlcD2gSBegdf1GJQanNQbEuBoVg+9UlHjSZHY=";
/* Equifax Secure Global eBusiness CA */
static const char kEquifax_Secure_Global_eBusiness_CAFingerprint[] =
"pvH5v4oKndwID7SbHvw9GhwsMtwOE2pbAMlzFvKj3BE=";
/* Equifax Secure eBusiness CA 1 */
static const char kEquifax_Secure_eBusiness_CA_1Fingerprint[] =
"JsGNxu6m9jL2drzrodjCtINS8pwtX82oeOCdy4Mt1uU=";
/* FacebookBackup */
static const char kFacebookBackupFingerprint[] =
"1ww8E0AYsR2oX5lndk2hwp2Uosk=";
"q4PO2G2cbkZhZ82+JgmRUyGMoAeozA+BSXVXQWB8XWQ=";
/* GOOGLE_PIN_COMODORSADomainValidationSecureServerCA */
static const char kGOOGLE_PIN_COMODORSADomainValidationSecureServerCAFingerprint[] =
@ -167,6 +179,18 @@ static const char kGOOGLE_PIN_ThawtePremiumServerFingerprint[] =
static const char kGOOGLE_PIN_UTNDATACorpSGCFingerprint[] =
"QAL80xHQczFWfnG82XHkYEjI3OjRZZcRdTs9qiommvo=";
/* GOOGLE_PIN_VeriSignClass1 */
static const char kGOOGLE_PIN_VeriSignClass1Fingerprint[] =
"LclHC+Y+9KzxvYKGCUArt7h72ZY4pkOTTohoLRvowwg=";
/* GOOGLE_PIN_VeriSignClass2_G2 */
static const char kGOOGLE_PIN_VeriSignClass2_G2Fingerprint[] =
"2oALgLKofTmeZvoZ1y/fSZg7R9jPMix8eVA6DH4o/q8=";
/* GOOGLE_PIN_VeriSignClass3_G2 */
static const char kGOOGLE_PIN_VeriSignClass3_G2Fingerprint[] =
"AjyBzOjnxk+pQtPBUEhwfTXZu1uH9PVExb8bxWQ68vo=";
/* GOOGLE_PIN_VeriSignClass4_G3 */
static const char kGOOGLE_PIN_VeriSignClass4_G3Fingerprint[] =
"VnuCEf0g09KD7gzXzgZyy52ZvFtIeljJ1U7Gf3fUqPU=";
@ -199,6 +223,14 @@ static const char kGeoTrust_Universal_CAFingerprint[] =
static const char kGeoTrust_Universal_CA_2Fingerprint[] =
"fKoDRlEkWQxgHlZ+UhSOlSwM/+iQAFMP4NlbbVDqrkE=";
/* GlobalSign ECC Root CA - R4 */
static const char kGlobalSign_ECC_Root_CA___R4Fingerprint[] =
"CLOmM1/OXvSPjw5UOYbAf9GKOxImEp9hhku9W90fHMk=";
/* GlobalSign ECC Root CA - R5 */
static const char kGlobalSign_ECC_Root_CA___R5Fingerprint[] =
"fg6tdrtoGdwvVFEahDVPboswe53YIFjqbABPAdndpd8=";
/* GlobalSign Root CA */
static const char kGlobalSign_Root_CAFingerprint[] =
"K87oWBWM9UZfyddvDfoxL+8lpNyoUB2ptGtn0fv6G2Q=";
@ -221,19 +253,15 @@ static const char kGo_Daddy_Root_Certificate_Authority___G2Fingerprint[] =
/* GoogleBackup2048 */
static const char kGoogleBackup2048Fingerprint[] =
"vq7OyjSnqOco9nyMCDGdy77eijM=";
/* Network Solutions Certificate Authority */
static const char kNetwork_Solutions_Certificate_AuthorityFingerprint[] =
"MtGA7THJNVieydu7ciEjuIO1/C3BD5/KOpXXfhv8tTQ=";
"IPMbDAjLVSGntGO3WP53X/zilCVndez5YJ2+vJvhJsA=";
/* SpiderOak2 */
static const char kSpiderOak2Fingerprint[] =
"D0fS/hquA6QprluciyO1hlFUAxg=";
"7Y3UnxbffL8aFPXsOJBpGasgpDmngpIhAxGKdQRklQQ=";
/* SpiderOak3 */
static const char kSpiderOak3Fingerprint[] =
"l5JoIXv4lztZ+C6TJWgxZCHQzS4=";
"LkER54vOdlygpTsbYvlpMq1CE/lDAG1AP9xmdtwvV2A=";
/* Starfield Class 2 CA */
static const char kStarfield_Class_2_CAFingerprint[] =
@ -243,29 +271,13 @@ static const char kStarfield_Class_2_CAFingerprint[] =
static const char kStarfield_Root_Certificate_Authority___G2Fingerprint[] =
"gI1os/q0iEpflxrOfRBVDXqVoWN3Tz7Dav/7IT++THQ=";
/* Starfield Services Root Certificate Authority - G2 */
static const char kStarfield_Services_Root_Certificate_Authority___G2Fingerprint[] =
"KwccWaCgrnaw6tsrrSO61FgLacNgG2MMLq8GE6+oP5I=";
/* StartCom Certification Authority */
static const char kStartCom_Certification_AuthorityFingerprint[] =
"5C8kvU039KouVrl52D0eZSGf4Onjo4Khs8tmyTlV3nU=";
/* StartCom Certification Authority G2 */
static const char kStartCom_Certification_Authority_G2Fingerprint[] =
"FSg5faISiQqDCwuVpZlozvI0dzd531GBzxD6ZHU0u2U=";
/* Swehack */
static const char kSwehackFingerprint[] =
"ng2GUCh9uhHgvZrqlWClUEzq7Kk=";
"FdaffE799rVb3oyAuhJ2mBW/XJwD07Uajb2G6YwSAEw=";
/* SwehackBackup */
static const char kSwehackBackupFingerprint[] =
"tlSyv06uDprsaNIyrTAd7qgFMRw=";
/* TC TrustCenter Class 3 CA II */
static const char kTC_TrustCenter_Class_3_CA_IIFingerprint[] =
"k5KuIUmSSt435kXbof9L3dzaKykbYJdmnSr6XHo3Jhk=";
"z6cuswA6E1vgFkCjUsbEYo0Lf3aP8M8YOvwkoiGzDCo=";
/* TestSPKI */
static const char kTestSPKIFingerprint[] =
@ -273,19 +285,27 @@ static const char kTestSPKIFingerprint[] =
/* Tor1 */
static const char kTor1Fingerprint[] =
"juNxSTv9UANmpC9kF5GKpmWNx3Y=";
"bYz9JTDk89X3qu3fgswG+lBQso5vI0N1f0Rx4go4nLo=";
/* Tor2 */
static const char kTor2Fingerprint[] =
"lia43lPolzSPVIq34Dw57uYcLD8=";
"xXCxhTdn7uxXneJSbQCqoAvuW3ZtQl2pDVTf2sewS8w=";
/* Tor3 */
static const char kTor3Fingerprint[] =
"rzEyQIKOh77j87n5bjWUNguXF8Y=";
"CleC1qwUR8JPgH1nXvSe2VHxDe5/KfNs96EusbfSOfo=";
/* Twitter1 */
static const char kTwitter1Fingerprint[] =
"Vv7zwhR9TtOIN/29MFI4cgHld40=";
"vU9M48LzD/CF34wE5PPf4nBwRyosy06X21J0ap8yS5s=";
/* USERTrust ECC Certification Authority */
static const char kUSERTrust_ECC_Certification_AuthorityFingerprint[] =
"ICGRfpgmOUXIWcQ/HXPLQTkFPEFPoDyjvH7ohhQpjzs=";
/* USERTrust RSA Certification Authority */
static const char kUSERTrust_RSA_Certification_AuthorityFingerprint[] =
"x4QzPSC810K5/cMjb05Qm4k3Bw5zBn4lTdO/nEW/Td4=";
/* UTN USERFirst Email Root CA */
static const char kUTN_USERFirst_Email_Root_CAFingerprint[] =
@ -311,45 +331,25 @@ static const char kVeriSign_Class_3_Public_Primary_Certification_Authority___G5F
static const char kVeriSign_Universal_Root_Certification_AuthorityFingerprint[] =
"lnsM2T/O9/J84sJFdnrpsFp3awZJ+ZZbYpCWhGloaHI=";
/* Verisign Class 1 Public Primary Certification Authority */
static const char kVerisign_Class_1_Public_Primary_Certification_AuthorityFingerprint[] =
"LclHC+Y+9KzxvYKGCUArt7h72ZY4pkOTTohoLRvowwg=";
/* Verisign Class 1 Public Primary Certification Authority - G3 */
static const char kVerisign_Class_1_Public_Primary_Certification_Authority___G3Fingerprint[] =
"IgduWu9Eu5pBaii30cRDItcFn2D+/6XK9sW+hEeJEwM=";
/* Verisign Class 2 Public Primary Certification Authority - G2 */
static const char kVerisign_Class_2_Public_Primary_Certification_Authority___G2Fingerprint[] =
"2oALgLKofTmeZvoZ1y/fSZg7R9jPMix8eVA6DH4o/q8=";
/* Verisign Class 2 Public Primary Certification Authority - G3 */
static const char kVerisign_Class_2_Public_Primary_Certification_Authority___G3Fingerprint[] =
"cAajgxHlj7GTSEIzIYIQxmEloOSoJq7VOaxWHfv72QM=";
/* Verisign Class 3 Public Primary Certification Authority */
static const char kVerisign_Class_3_Public_Primary_Certification_AuthorityFingerprint[] =
"sRJBQqWhpaKIGcc1NA7/jJ4vgWj+47oYfyU7waOS1+I=";
/* Verisign Class 3 Public Primary Certification Authority - G2 */
static const char kVerisign_Class_3_Public_Primary_Certification_Authority___G2Fingerprint[] =
"AjyBzOjnxk+pQtPBUEhwfTXZu1uH9PVExb8bxWQ68vo=";
/* Verisign Class 3 Public Primary Certification Authority - G3 */
static const char kVerisign_Class_3_Public_Primary_Certification_Authority___G3Fingerprint[] =
"SVqWumuteCQHvVIaALrOZXuzVVVeS7f4FGxxu6V+es4=";
/* XRamp Global CA Root */
static const char kXRamp_Global_CA_RootFingerprint[] =
"BRz5+pXkDpuD7a7aaWH2Fox4ecRmAXJHnN1RqwPOpis=";
/* YahooBackup1 */
static const char kYahooBackup1Fingerprint[] =
"uwnZN/atr9+khywDukPzmD9kFiY=";
"2fRAUXyxl4A1/XHrKNBmc8bTkzA7y4FB/GLJuNAzCqY=";
/* YahooBackup2 */
static const char kYahooBackup2Fingerprint[] =
"Ui85k1YWcCl0z/4IlMvrDmI5zEo=";
"dolnbtzEBnELx/9lOEQ22e6OZO/QNb6VSSX2XHA3E7A=";
/* thawte Primary Root CA */
static const char kthawte_Primary_Root_CAFingerprint[] =
@ -369,36 +369,27 @@ struct StaticFingerprints {
const char* const* data;
};
struct StaticPinset {
const StaticFingerprints* sha1;
const StaticFingerprints* sha256;
};
/* PreloadedHPKPins.json pinsets */
static const char* kPinset_google_root_pems_sha256_Data[] = {
kEquifax_Secure_CAFingerprint,
static const char* const kPinset_google_root_pems_Data[] = {
kEntrust_Root_Certification_Authority___EC1Fingerprint,
kComodo_Trusted_Services_rootFingerprint,
kCOMODO_ECC_Certification_AuthorityFingerprint,
kStartCom_Certification_AuthorityFingerprint,
kStartCom_Certification_AuthorityFingerprint,
kDigiCert_Assured_ID_Root_G2Fingerprint,
kCOMODO_Certification_AuthorityFingerprint,
kVerisign_Class_3_Public_Primary_Certification_Authority___G2Fingerprint,
kXRamp_Global_CA_RootFingerprint,
kAddTrust_Low_Value_Services_RootFingerprint,
kGlobalSign_ECC_Root_CA___R4Fingerprint,
kGeoTrust_Global_CA_2Fingerprint,
kStartCom_Certification_Authority_G2Fingerprint,
kDigiCert_Assured_ID_Root_G3Fingerprint,
kStarfield_Class_2_CAFingerprint,
kthawte_Primary_Root_CA___G3Fingerprint,
kthawte_Primary_Root_CAFingerprint,
kEntrust_net_Premium_2048_Secure_Server_CAFingerprint,
kDigiCert_Assured_ID_Root_CAFingerprint,
kUSERTrust_ECC_Certification_AuthorityFingerprint,
kVeriSign_Class_3_Public_Primary_Certification_Authority___G5Fingerprint,
kEquifax_Secure_eBusiness_CA_1Fingerprint,
kGlobalSign_Root_CAFingerprint,
kGo_Daddy_Root_Certificate_Authority___G2Fingerprint,
kStarfield_Services_Root_Certificate_Authority___G2Fingerprint,
kAffirmTrust_Premium_ECCFingerprint,
kNetwork_Solutions_Certificate_AuthorityFingerprint,
kAddTrust_Public_Services_RootFingerprint,
kComodo_Secure_Services_rootFingerprint,
kGeoTrust_Primary_Certification_AuthorityFingerprint,
@ -406,43 +397,41 @@ static const char* kPinset_google_root_pems_sha256_Data[] = {
kUTN_USERFirst_Hardware_Root_CAFingerprint,
kVeriSign_Class_3_Public_Primary_Certification_Authority___G4Fingerprint,
kGo_Daddy_Class_2_CAFingerprint,
kDigiCert_Trusted_Root_G4Fingerprint,
kDigiCert_High_Assurance_EV_Root_CAFingerprint,
kBaltimore_CyberTrust_RootFingerprint,
kthawte_Primary_Root_CA___G2Fingerprint,
kAffirmTrust_CommercialFingerprint,
kEntrust_Root_Certification_AuthorityFingerprint,
kGlobalSign_Root_CA___R3Fingerprint,
kEntrust_Root_Certification_Authority___G2Fingerprint,
kGeoTrust_Universal_CA_2Fingerprint,
kGlobalSign_ECC_Root_CA___R5Fingerprint,
kCybertrust_Global_RootFingerprint,
kStarfield_Root_Certificate_Authority___G2Fingerprint,
kCOMODO_RSA_Certification_AuthorityFingerprint,
kGeoTrust_Global_CAFingerprint,
kDigiCert_Global_Root_G2Fingerprint,
kGlobalSign_Root_CA___R2Fingerprint,
kTC_TrustCenter_Class_3_CA_IIFingerprint,
kAffirmTrust_NetworkingFingerprint,
kAddTrust_External_RootFingerprint,
kVeriSign_Universal_Root_Certification_AuthorityFingerprint,
kGeoTrust_Universal_CAFingerprint,
kEquifax_Secure_Global_eBusiness_CAFingerprint,
kGeoTrust_Primary_Certification_Authority___G3Fingerprint,
kDigiCert_Global_Root_CAFingerprint,
kVerisign_Class_3_Public_Primary_Certification_AuthorityFingerprint,
kVerisign_Class_3_Public_Primary_Certification_AuthorityFingerprint,
kDigiCert_Global_Root_G3Fingerprint,
kGeoTrust_Primary_Certification_Authority___G2Fingerprint,
kComodo_AAA_Services_rootFingerprint,
kAffirmTrust_PremiumFingerprint,
kUSERTrust_RSA_Certification_AuthorityFingerprint,
kAddTrust_Qualified_Certificates_RootFingerprint,
};
static const StaticFingerprints kPinset_google_root_pems_sha256 = {
sizeof(kPinset_google_root_pems_sha256_Data) / sizeof(const char*),
kPinset_google_root_pems_sha256_Data
static const StaticFingerprints kPinset_google_root_pems = {
sizeof(kPinset_google_root_pems_Data) / sizeof(const char*),
kPinset_google_root_pems_Data
};
static const StaticPinset kPinset_google_root_pems = {
nullptr,
&kPinset_google_root_pems_sha256
};
static const char* kPinset_mozilla_sha256_Data[] = {
static const char* const kPinset_mozilla_Data[] = {
kGeoTrust_Global_CA_2Fingerprint,
kthawte_Primary_Root_CA___G3Fingerprint,
kthawte_Primary_Root_CAFingerprint,
@ -464,121 +453,69 @@ static const char* kPinset_mozilla_sha256_Data[] = {
kDigiCert_Global_Root_CAFingerprint,
kGeoTrust_Primary_Certification_Authority___G2Fingerprint,
};
static const StaticFingerprints kPinset_mozilla_sha256 = {
sizeof(kPinset_mozilla_sha256_Data) / sizeof(const char*),
kPinset_mozilla_sha256_Data
static const StaticFingerprints kPinset_mozilla = {
sizeof(kPinset_mozilla_Data) / sizeof(const char*),
kPinset_mozilla_Data
};
static const StaticPinset kPinset_mozilla = {
nullptr,
&kPinset_mozilla_sha256
};
static const char* kPinset_mozilla_services_sha256_Data[] = {
static const char* const kPinset_mozilla_services_Data[] = {
kDigiCert_Global_Root_CAFingerprint,
};
static const StaticFingerprints kPinset_mozilla_services_sha256 = {
sizeof(kPinset_mozilla_services_sha256_Data) / sizeof(const char*),
kPinset_mozilla_services_sha256_Data
static const StaticFingerprints kPinset_mozilla_services = {
sizeof(kPinset_mozilla_services_Data) / sizeof(const char*),
kPinset_mozilla_services_Data
};
static const StaticPinset kPinset_mozilla_services = {
nullptr,
&kPinset_mozilla_services_sha256
};
static const char* kPinset_mozilla_test_sha256_Data[] = {
static const char* const kPinset_mozilla_test_Data[] = {
kEnd_Entity_Test_CertFingerprint,
};
static const StaticFingerprints kPinset_mozilla_test_sha256 = {
sizeof(kPinset_mozilla_test_sha256_Data) / sizeof(const char*),
kPinset_mozilla_test_sha256_Data
};
static const StaticPinset kPinset_mozilla_test = {
nullptr,
&kPinset_mozilla_test_sha256
static const StaticFingerprints kPinset_mozilla_test = {
sizeof(kPinset_mozilla_test_Data) / sizeof(const char*),
kPinset_mozilla_test_Data
};
/* Chrome static pinsets */
static const char* kPinset_test_sha256_Data[] = {
static const char* const kPinset_test_Data[] = {
kTestSPKIFingerprint,
};
static const StaticFingerprints kPinset_test_sha256 = {
sizeof(kPinset_test_sha256_Data) / sizeof(const char*),
kPinset_test_sha256_Data
static const StaticFingerprints kPinset_test = {
sizeof(kPinset_test_Data) / sizeof(const char*),
kPinset_test_Data
};
static const StaticPinset kPinset_test = {
nullptr,
&kPinset_test_sha256
};
static const char* kPinset_google_sha1_Data[] = {
kGoogleBackup2048Fingerprint,
};
static const StaticFingerprints kPinset_google_sha1 = {
sizeof(kPinset_google_sha1_Data) / sizeof(const char*),
kPinset_google_sha1_Data
};
static const char* kPinset_google_sha256_Data[] = {
static const char* const kPinset_google_Data[] = {
kGOOGLE_PIN_GoogleG2Fingerprint,
kGoogleBackup2048Fingerprint,
kGeoTrust_Global_CAFingerprint,
kGlobalSign_Root_CA___R2Fingerprint,
};
static const StaticFingerprints kPinset_google_sha256 = {
sizeof(kPinset_google_sha256_Data) / sizeof(const char*),
kPinset_google_sha256_Data
static const StaticFingerprints kPinset_google = {
sizeof(kPinset_google_Data) / sizeof(const char*),
kPinset_google_Data
};
static const StaticPinset kPinset_google = {
&kPinset_google_sha1,
&kPinset_google_sha256
};
static const char* kPinset_tor_sha1_Data[] = {
kTor1Fingerprint,
kTor2Fingerprint,
static const char* const kPinset_tor_Data[] = {
kTor3Fingerprint,
};
static const StaticFingerprints kPinset_tor_sha1 = {
sizeof(kPinset_tor_sha1_Data) / sizeof(const char*),
kPinset_tor_sha1_Data
};
static const char* kPinset_tor_sha256_Data[] = {
kDigiCert_High_Assurance_EV_Root_CAFingerprint,
kGOOGLE_PIN_LetsEncryptAuthorityPrimary_X1_X3Fingerprint,
kTor1Fingerprint,
kGOOGLE_PIN_RapidSSLFingerprint,
kGOOGLE_PIN_LetsEncryptAuthorityBackup_X2_X4Fingerprint,
kTor2Fingerprint,
};
static const StaticFingerprints kPinset_tor_sha256 = {
sizeof(kPinset_tor_sha256_Data) / sizeof(const char*),
kPinset_tor_sha256_Data
static const StaticFingerprints kPinset_tor = {
sizeof(kPinset_tor_Data) / sizeof(const char*),
kPinset_tor_Data
};
static const StaticPinset kPinset_tor = {
&kPinset_tor_sha1,
&kPinset_tor_sha256
};
static const char* kPinset_twitterCom_sha1_Data[] = {
kTwitter1Fingerprint,
};
static const StaticFingerprints kPinset_twitterCom_sha1 = {
sizeof(kPinset_twitterCom_sha1_Data) / sizeof(const char*),
kPinset_twitterCom_sha1_Data
};
static const char* kPinset_twitterCom_sha256_Data[] = {
kVerisign_Class_2_Public_Primary_Certification_Authority___G2Fingerprint,
kVerisign_Class_3_Public_Primary_Certification_Authority___G2Fingerprint,
static const char* const kPinset_twitterCom_Data[] = {
kGOOGLE_PIN_VeriSignClass2_G2Fingerprint,
kGOOGLE_PIN_VeriSignClass3_G2Fingerprint,
kGeoTrust_Global_CA_2Fingerprint,
kDigiCert_Assured_ID_Root_CAFingerprint,
kVerisign_Class_1_Public_Primary_Certification_Authority___G3Fingerprint,
kVeriSign_Class_3_Public_Primary_Certification_Authority___G5Fingerprint,
kVerisign_Class_1_Public_Primary_Certification_AuthorityFingerprint,
kGOOGLE_PIN_VeriSignClass1Fingerprint,
kGeoTrust_Primary_Certification_AuthorityFingerprint,
kVerisign_Class_3_Public_Primary_Certification_Authority___G3Fingerprint,
kVeriSign_Class_3_Public_Primary_Certification_Authority___G4Fingerprint,
@ -592,30 +529,18 @@ static const char* kPinset_twitterCom_sha256_Data[] = {
kGeoTrust_Primary_Certification_Authority___G3Fingerprint,
kDigiCert_Global_Root_CAFingerprint,
kGeoTrust_Primary_Certification_Authority___G2Fingerprint,
};
static const StaticFingerprints kPinset_twitterCom_sha256 = {
sizeof(kPinset_twitterCom_sha256_Data) / sizeof(const char*),
kPinset_twitterCom_sha256_Data
};
static const StaticPinset kPinset_twitterCom = {
&kPinset_twitterCom_sha1,
&kPinset_twitterCom_sha256
};
static const char* kPinset_twitterCDN_sha1_Data[] = {
kTwitter1Fingerprint,
};
static const StaticFingerprints kPinset_twitterCDN_sha1 = {
sizeof(kPinset_twitterCDN_sha1_Data) / sizeof(const char*),
kPinset_twitterCDN_sha1_Data
static const StaticFingerprints kPinset_twitterCom = {
sizeof(kPinset_twitterCom_Data) / sizeof(const char*),
kPinset_twitterCom_Data
};
static const char* kPinset_twitterCDN_sha256_Data[] = {
kVerisign_Class_2_Public_Primary_Certification_Authority___G2Fingerprint,
static const char* const kPinset_twitterCDN_Data[] = {
kGOOGLE_PIN_VeriSignClass2_G2Fingerprint,
kComodo_Trusted_Services_rootFingerprint,
kCOMODO_Certification_AuthorityFingerprint,
kVerisign_Class_3_Public_Primary_Certification_Authority___G2Fingerprint,
kGOOGLE_PIN_VeriSignClass3_G2Fingerprint,
kAddTrust_Low_Value_Services_RootFingerprint,
kUTN_USERFirst_Object_Root_CAFingerprint,
kGOOGLE_PIN_GTECyberTrustGlobalRootFingerprint,
@ -626,7 +551,7 @@ static const char* kPinset_twitterCDN_sha256_Data[] = {
kVeriSign_Class_3_Public_Primary_Certification_Authority___G5Fingerprint,
kGlobalSign_Root_CAFingerprint,
kUTN_USERFirst_Email_Root_CAFingerprint,
kVerisign_Class_1_Public_Primary_Certification_AuthorityFingerprint,
kGOOGLE_PIN_VeriSignClass1Fingerprint,
kAddTrust_Public_Services_RootFingerprint,
kGOOGLE_PIN_UTNDATACorpSGCFingerprint,
kComodo_Secure_Services_rootFingerprint,
@ -652,19 +577,15 @@ static const char* kPinset_twitterCDN_sha256_Data[] = {
kDigiCert_Global_Root_CAFingerprint,
kGeoTrust_Primary_Certification_Authority___G2Fingerprint,
kComodo_AAA_Services_rootFingerprint,
kTwitter1Fingerprint,
kAddTrust_Qualified_Certificates_RootFingerprint,
};
static const StaticFingerprints kPinset_twitterCDN_sha256 = {
sizeof(kPinset_twitterCDN_sha256_Data) / sizeof(const char*),
kPinset_twitterCDN_sha256_Data
static const StaticFingerprints kPinset_twitterCDN = {
sizeof(kPinset_twitterCDN_Data) / sizeof(const char*),
kPinset_twitterCDN_Data
};
static const StaticPinset kPinset_twitterCDN = {
&kPinset_twitterCDN_sha1,
&kPinset_twitterCDN_sha256
};
static const char* kPinset_dropbox_sha256_Data[] = {
static const char* const kPinset_dropbox_Data[] = {
kEntrust_Root_Certification_Authority___EC1Fingerprint,
kGOOGLE_PIN_ThawtePremiumServerFingerprint,
kthawte_Primary_Root_CA___G3Fingerprint,
@ -684,79 +605,43 @@ static const char* kPinset_dropbox_sha256_Data[] = {
kDigiCert_Global_Root_CAFingerprint,
kGeoTrust_Primary_Certification_Authority___G2Fingerprint,
};
static const StaticFingerprints kPinset_dropbox_sha256 = {
sizeof(kPinset_dropbox_sha256_Data) / sizeof(const char*),
kPinset_dropbox_sha256_Data
static const StaticFingerprints kPinset_dropbox = {
sizeof(kPinset_dropbox_Data) / sizeof(const char*),
kPinset_dropbox_Data
};
static const StaticPinset kPinset_dropbox = {
nullptr,
&kPinset_dropbox_sha256
};
static const char* kPinset_facebook_sha1_Data[] = {
kFacebookBackupFingerprint,
};
static const StaticFingerprints kPinset_facebook_sha1 = {
sizeof(kPinset_facebook_sha1_Data) / sizeof(const char*),
kPinset_facebook_sha1_Data
};
static const char* kPinset_facebook_sha256_Data[] = {
static const char* const kPinset_facebook_Data[] = {
kGOOGLE_PIN_DigiCertECCSecureServerCAFingerprint,
kDigiCert_High_Assurance_EV_Root_CAFingerprint,
kGOOGLE_PIN_SymantecClass3EVG3Fingerprint,
kFacebookBackupFingerprint,
};
static const StaticFingerprints kPinset_facebook_sha256 = {
sizeof(kPinset_facebook_sha256_Data) / sizeof(const char*),
kPinset_facebook_sha256_Data
static const StaticFingerprints kPinset_facebook = {
sizeof(kPinset_facebook_Data) / sizeof(const char*),
kPinset_facebook_Data
};
static const StaticPinset kPinset_facebook = {
&kPinset_facebook_sha1,
&kPinset_facebook_sha256
};
static const char* kPinset_spideroak_sha1_Data[] = {
static const char* const kPinset_spideroak_Data[] = {
kSpiderOak2Fingerprint,
kSpiderOak3Fingerprint,
};
static const StaticFingerprints kPinset_spideroak_sha1 = {
sizeof(kPinset_spideroak_sha1_Data) / sizeof(const char*),
kPinset_spideroak_sha1_Data
};
static const char* kPinset_spideroak_sha256_Data[] = {
kDigiCert_High_Assurance_EV_Root_CAFingerprint,
kGeoTrust_Global_CAFingerprint,
};
static const StaticFingerprints kPinset_spideroak_sha256 = {
sizeof(kPinset_spideroak_sha256_Data) / sizeof(const char*),
kPinset_spideroak_sha256_Data
static const StaticFingerprints kPinset_spideroak = {
sizeof(kPinset_spideroak_Data) / sizeof(const char*),
kPinset_spideroak_Data
};
static const StaticPinset kPinset_spideroak = {
&kPinset_spideroak_sha1,
&kPinset_spideroak_sha256
};
static const char* kPinset_yahoo_sha1_Data[] = {
kYahooBackup2Fingerprint,
static const char* const kPinset_yahoo_Data[] = {
kYahooBackup1Fingerprint,
};
static const StaticFingerprints kPinset_yahoo_sha1 = {
sizeof(kPinset_yahoo_sha1_Data) / sizeof(const char*),
kPinset_yahoo_sha1_Data
};
static const char* kPinset_yahoo_sha256_Data[] = {
kVerisign_Class_2_Public_Primary_Certification_Authority___G2Fingerprint,
kGOOGLE_PIN_VeriSignClass2_G2Fingerprint,
kVeriSign_Class_3_Public_Primary_Certification_Authority___G5Fingerprint,
kGeoTrust_Primary_Certification_AuthorityFingerprint,
kVerisign_Class_3_Public_Primary_Certification_Authority___G3Fingerprint,
kVeriSign_Class_3_Public_Primary_Certification_Authority___G4Fingerprint,
kDigiCert_High_Assurance_EV_Root_CAFingerprint,
kVerisign_Class_2_Public_Primary_Certification_Authority___G3Fingerprint,
kYahooBackup2Fingerprint,
kGeoTrust_Global_CAFingerprint,
kVeriSign_Universal_Root_Certification_AuthorityFingerprint,
kGeoTrust_Universal_CAFingerprint,
@ -764,42 +649,25 @@ static const char* kPinset_yahoo_sha256_Data[] = {
kDigiCert_Global_Root_CAFingerprint,
kGeoTrust_Primary_Certification_Authority___G2Fingerprint,
};
static const StaticFingerprints kPinset_yahoo_sha256 = {
sizeof(kPinset_yahoo_sha256_Data) / sizeof(const char*),
kPinset_yahoo_sha256_Data
static const StaticFingerprints kPinset_yahoo = {
sizeof(kPinset_yahoo_Data) / sizeof(const char*),
kPinset_yahoo_Data
};
static const StaticPinset kPinset_yahoo = {
&kPinset_yahoo_sha1,
&kPinset_yahoo_sha256
};
static const char* kPinset_swehackCom_sha1_Data[] = {
static const char* const kPinset_swehackCom_Data[] = {
kSwehackFingerprint,
kSwehackBackupFingerprint,
};
static const StaticFingerprints kPinset_swehackCom_sha1 = {
sizeof(kPinset_swehackCom_sha1_Data) / sizeof(const char*),
kPinset_swehackCom_sha1_Data
};
static const char* kPinset_swehackCom_sha256_Data[] = {
kDST_Root_CA_X3Fingerprint,
kGOOGLE_PIN_LetsEncryptAuthorityPrimary_X1_X3Fingerprint,
kGOOGLE_PIN_COMODORSADomainValidationSecureServerCAFingerprint,
kGOOGLE_PIN_LetsEncryptAuthorityBackup_X2_X4Fingerprint,
kSwehackBackupFingerprint,
};
static const StaticFingerprints kPinset_swehackCom_sha256 = {
sizeof(kPinset_swehackCom_sha256_Data) / sizeof(const char*),
kPinset_swehackCom_sha256_Data
static const StaticFingerprints kPinset_swehackCom = {
sizeof(kPinset_swehackCom_Data) / sizeof(const char*),
kPinset_swehackCom_Data
};
static const StaticPinset kPinset_swehackCom = {
&kPinset_swehackCom_sha1,
&kPinset_swehackCom_sha256
};
static const char* kPinset_ncsccs_sha256_Data[] = {
static const char* const kPinset_ncsccs_Data[] = {
kCOMODO_Certification_AuthorityFingerprint,
kDigiCert_Assured_ID_Root_CAFingerprint,
kVeriSign_Class_3_Public_Primary_Certification_Authority___G5Fingerprint,
@ -812,14 +680,9 @@ static const char* kPinset_ncsccs_sha256_Data[] = {
kDigiCert_Global_Root_CAFingerprint,
kGOOGLE_PIN_LetsEncryptAuthorityBackup_X2_X4Fingerprint,
};
static const StaticFingerprints kPinset_ncsccs_sha256 = {
sizeof(kPinset_ncsccs_sha256_Data) / sizeof(const char*),
kPinset_ncsccs_sha256_Data
};
static const StaticPinset kPinset_ncsccs = {
nullptr,
&kPinset_ncsccs_sha256
static const StaticFingerprints kPinset_ncsccs = {
sizeof(kPinset_ncsccs_Data) / sizeof(const char*),
kPinset_ncsccs_Data
};
/* Domainlist */
@ -829,7 +692,7 @@ struct TransportSecurityPreload {
const bool mTestMode;
const bool mIsMoz;
const int32_t mId;
const StaticPinset *pinset;
const StaticFingerprints* pinset;
};
/* Sort hostnames for binary search. */
@ -1196,6 +1059,7 @@ static const TransportSecurityPreload kPublicKeyPinningPreloadList[] = {
{ "market.android.com", true, false, false, -1, &kPinset_google_root_pems },
{ "mbasic.facebook.com", true, false, false, -1, &kPinset_facebook },
{ "meet.google.com", true, false, false, -1, &kPinset_google_root_pems },
{ "messenger.com", false, false, false, -1, &kPinset_facebook },
{ "mobile.twitter.com", true, false, false, -1, &kPinset_twitterCom },
{ "mt.search.yahoo.com", false, true, false, -1, &kPinset_yahoo },
{ "mtouch.facebook.com", true, false, false, -1, &kPinset_facebook },
@ -1237,6 +1101,7 @@ static const TransportSecurityPreload kPublicKeyPinningPreloadList[] = {
{ "script.google.com", true, false, false, -1, &kPinset_google_root_pems },
{ "se.search.yahoo.com", false, true, false, -1, &kPinset_yahoo },
{ "search.yahoo.com", false, true, false, -1, &kPinset_yahoo },
{ "secretintelligence.0.me.uk", true, true, false, -1, &kPinset_ncsccs },
{ "secure.facebook.com", true, false, false, -1, &kPinset_facebook },
{ "security.google.com", true, false, false, -1, &kPinset_google_root_pems },
{ "services.mozilla.com", true, false, true, 6, &kPinset_mozilla_services },
@ -1293,6 +1158,7 @@ static const TransportSecurityPreload kPublicKeyPinningPreloadList[] = {
{ "www.gmail.com", false, false, false, -1, &kPinset_google_root_pems },
{ "www.googlegroups.com", true, false, false, -1, &kPinset_google_root_pems },
{ "www.googlemail.com", false, false, false, -1, &kPinset_google_root_pems },
{ "www.messenger.com", true, false, false, -1, &kPinset_facebook },
{ "www.torproject.org", true, false, false, -1, &kPinset_tor },
{ "www.twitter.com", true, false, false, -1, &kPinset_twitterCom },
{ "xa.search.yahoo.com", false, true, false, -1, &kPinset_yahoo },
@ -1306,8 +1172,8 @@ static const TransportSecurityPreload kPublicKeyPinningPreloadList[] = {
{ "zh.search.yahoo.com", false, true, false, -1, &kPinset_yahoo },
};
// Pinning Preload List Length = 470;
// Pinning Preload List Length = 473;
static const int32_t kUnknownId = -1;
static const PRTime kPreloadPKPinsExpirationTime = INT64_C(1500908034750000);
static const PRTime kPreloadPKPinsExpirationTime = INT64_C(1504365060328000);

File diff suppressed because it is too large Load Diff