This check in will make PSM aware of ECC cipher suites. Nightly builds will not yet contain ECC, because NSS is still
being compiled with ECC disabled.
r=rrelyea/darin
This commit is contained in:
kaie%kuix.de 2006-05-16 00:33:44 +00:00
Родитель 8fc0bff8ba
Коммит d29da504bd
4 изменённых файлов: 305 добавлений и 2 удалений

Просмотреть файл

@ -23,6 +23,26 @@ pref("security.ssl3.rsa_rc2_40_md5", false);
pref("security.ssl3.dhe_rsa_aes_256_sha", true);
pref("security.ssl3.dhe_dss_aes_256_sha", true);
pref("security.ssl3.rsa_aes_256_sha", true);
pref("security.ssl3.ecdhe_ecdsa_aes_256_sha", true);
pref("security.ssl3.ecdhe_ecdsa_aes_128_sha", true);
pref("security.ssl3.ecdhe_ecdsa_des_ede3_sha", true);
pref("security.ssl3.ecdhe_ecdsa_rc4_128_sha", true);
pref("security.ssl3.ecdhe_ecdsa_null_sha", false);
pref("security.ssl3.ecdhe_rsa_aes_256_sha", true);
pref("security.ssl3.ecdhe_rsa_aes_128_sha", true);
pref("security.ssl3.ecdhe_rsa_des_ede3_sha", true);
pref("security.ssl3.ecdhe_rsa_rc4_128_sha", true);
pref("security.ssl3.ecdhe_rsa_null_sha", false);
pref("security.ssl3.ecdh_ecdsa_aes_256_sha", true);
pref("security.ssl3.ecdh_ecdsa_aes_128_sha", true);
pref("security.ssl3.ecdh_ecdsa_des_ede3_sha", true);
pref("security.ssl3.ecdh_ecdsa_rc4_128_sha", true);
pref("security.ssl3.ecdh_ecdsa_null_sha", false);
pref("security.ssl3.ecdh_rsa_aes_256_sha", true);
pref("security.ssl3.ecdh_rsa_aes_128_sha", true);
pref("security.ssl3.ecdh_rsa_des_ede3_sha", true);
pref("security.ssl3.ecdh_rsa_rc4_128_sha", true);
pref("security.ssl3.ecdh_rsa_null_sha", false);
pref("security.ssl3.dhe_rsa_aes_128_sha", true);
pref("security.ssl3.dhe_dss_aes_128_sha", true);
pref("security.ssl3.rsa_aes_128_sha", true);

Просмотреть файл

@ -226,6 +226,66 @@ CertDumpCAIssuers=CA Issuers
CertDumpCPSPointer=Certification Practice Statement pointer
CertDumpUserNotice=User Notice
CertDumpLogotype=Logotype
CertDumpECPublicKey=Elliptic Curve Public Key
CertDumpECDSAWithSHA1=X9.62 ECDSA Signature with SHA1
CertDumpECprime192v1=ANSI X9.62 elliptic curve prime192v1 (aka secp192r1, NIST P-192)
CertDumpECprime192v2=ANSI X9.62 elliptic curve prime192v2
CertDumpECprime192v3=ANSI X9.62 elliptic curve prime192v3
CertDumpECprime239v1=ANSI X9.62 elliptic curve prime239v1
CertDumpECprime239v2=ANSI X9.62 elliptic curve prime239v2
CertDumpECprime239v3=ANSI X9.62 elliptic curve prime239v3
CertDumpECprime256v1=ANSI X9.62 elliptic curve prime256v1 (aka secp256r1, NIST P-256)
CertDumpECsecp112r1=SECG elliptic curve secp112r1
CertDumpECsecp112r2=SECG elliptic curve secp112r2
CertDumpECsecp128r1=SECG elliptic curve secp128r1
CertDumpECsecp128r2=SECG elliptic curve secp128r2
CertDumpECsecp160k1=SECG elliptic curve secp160k1
CertDumpECsecp160r1=SECG elliptic curve secp160r1
CertDumpECsecp160r2=SECG elliptic curve secp160r2
CertDumpECsecp192k1=SECG elliptic curve secp192k1
CertDumpECsecp224k1=SECG elliptic curve secp224k1
CertDumpECsecp224r1=SECG elliptic curve secp224r1 (aka NIST P-224)
CertDumpECsecp256k1=SECG elliptic curve secp256k1
CertDumpECsecp384r1=SECG elliptic curve secp384r1 (aka NIST P-384)
CertDumpECsecp521r1=SECG elliptic curve secp521r1 (aka NIST P-521)
CertDumpECc2pnb163v1=ANSI X9.62 elliptic curve c2pnb163v1
CertDumpECc2pnb163v2=ANSI X9.62 elliptic curve c2pnb163v2
CertDumpECc2pnb163v3=ANSI X9.62 elliptic curve c2pnb163v3
CertDumpECc2pnb176v1=ANSI X9.62 elliptic curve c2pnb176v1
CertDumpECc2tnb191v1=ANSI X9.62 elliptic curve c2tnb191v1
CertDumpECc2tnb191v2=ANSI X9.62 elliptic curve c2tnb191v2
CertDumpECc2tnb191v3=ANSI X9.62 elliptic curve c2tnb191v3
CertDumpECc2onb191v4=ANSI X9.62 elliptic curve c2onb191v4
CertDumpECc2onb191v5=ANSI X9.62 elliptic curve c2onb191v5
CertDumpECc2pnb208w1=ANSI X9.62 elliptic curve c2pnb208w1
CertDumpECc2tnb239v1=ANSI X9.62 elliptic curve c2tnb239v1
CertDumpECc2tnb239v2=ANSI X9.62 elliptic curve c2tnb239v2
CertDumpECc2tnb239v3=ANSI X9.62 elliptic curve c2tnb239v3
CertDumpECc2onb239v4=ANSI X9.62 elliptic curve c2onb239v4
CertDumpECc2onb239v5=ANSI X9.62 elliptic curve c2onb239v5
CertDumpECc2pnb272w1=ANSI X9.62 elliptic curve c2pnb272w1
CertDumpECc2pnb304w1=ANSI X9.62 elliptic curve c2pnb304w1
CertDumpECc2tnb359v1=ANSI X9.62 elliptic curve c2tnb359v1
CertDumpECc2pnb368w1=ANSI X9.62 elliptic curve c2pnb368w1
CertDumpECc2tnb431r1=ANSI X9.62 elliptic curve c2tnb431r1
CertDumpECsect113r1=SECG elliptic curve sect113r1
CertDumpECsect113r2=SECG elliptic curve sect113r2
CertDumpECsect131r1=SECG elliptic curve sect131r1
CertDumpECsect131r2=SECG elliptic curve sect131r2
CertDumpECsect163k1=SECG elliptic curve sect163k1 (aka NIST K-163)
CertDumpECsect163r1=SECG elliptic curve sect163r1
CertDumpECsect163r2=SECG elliptic curve sect163r2 (aka NIST B-163)
CertDumpECsect193r1=SECG elliptic curve sect193r1
CertDumpECsect193r2=SECG elliptic curve sect193r2
CertDumpECsect233k1=SECG elliptic curve sect233k1 (aka NIST K-233)
CertDumpECsect233r1=SECG elliptic curve sect233r1 (aka NIST B-233)
CertDumpECsect239k1=SECG elliptic curve sect239k1
CertDumpECsect283k1=SECG elliptic curve sect283k1 (aka NIST K-283)
CertDumpECsect283r1=SECG elliptic curve sect283r1 (aka NIST B-283)
CertDumpECsect409k1=SECG elliptic curve sect409k1 (aka NIST K-409)
CertDumpECsect409r1=SECG elliptic curve sect409r1 (aka NIST B-409)
CertDumpECsect571k1=SECG elliptic curve sect571k1 (aka NIST K-571)
CertDumpECsect571r1=SECG elliptic curve sect571r1 (aka NIST B-571)
CertDumpRawBytesHeader=Size: %S Bytes / %S Bits
VerifySSLClient_p=Client
VerifySSLServer_p=Server

Просмотреть файл

@ -393,6 +393,190 @@ GetOIDText(SECItem *oid, nsINSSComponent *nssComponent, nsAString &text)
case SEC_OID_PKCS9_EMAIL_ADDRESS:
bundlekey = "CertDumpPK9Email";
break;
case SEC_OID_ANSIX962_EC_PUBLIC_KEY:
bundlekey = "CertDumpECPublicKey";
break;
/* ANSI X9.62 named elliptic curves (prime field) */
case SEC_OID_ANSIX962_EC_PRIME192V1:
/* same as SEC_OID_SECG_EC_SECP192r1 */
bundlekey = "CertDumpECprime192v1";
break;
case SEC_OID_ANSIX962_EC_PRIME192V2:
bundlekey = "CertDumpECprime192v2";
break;
case SEC_OID_ANSIX962_EC_PRIME192V3:
bundlekey = "CertDumpECprime192v3";
break;
case SEC_OID_ANSIX962_EC_PRIME239V1:
bundlekey = "CertDumpECprime239v1";
break;
case SEC_OID_ANSIX962_EC_PRIME239V2:
bundlekey = "CertDumpECprime239v2";
break;
case SEC_OID_ANSIX962_EC_PRIME239V3:
bundlekey = "CertDumpECprime239v3";
break;
case SEC_OID_ANSIX962_EC_PRIME256V1:
/* same as SEC_OID_SECG_EC_SECP256r1 */
bundlekey = "CertDumpECprime256v1";
break;
/* SECG named elliptic curves (prime field) */
case SEC_OID_SECG_EC_SECP112R1:
bundlekey = "CertDumpECsecp112r1";
break;
case SEC_OID_SECG_EC_SECP112R2:
bundlekey = "CertDumpECsecp112r2";
break;
case SEC_OID_SECG_EC_SECP128R1:
bundlekey = "CertDumpECsecp128r1";
break;
case SEC_OID_SECG_EC_SECP128R2:
bundlekey = "CertDumpECsecp128r2";
break;
case SEC_OID_SECG_EC_SECP160K1:
bundlekey = "CertDumpECsecp160k1";
break;
case SEC_OID_SECG_EC_SECP160R1:
bundlekey = "CertDumpECsecp160r1";
break;
case SEC_OID_SECG_EC_SECP160R2:
bundlekey = "CertDumpECsecp160r2";
break;
case SEC_OID_SECG_EC_SECP192K1:
bundlekey = "CertDumpECsecp192k1";
break;
case SEC_OID_SECG_EC_SECP224K1:
bundlekey = "CertDumpECsecp224k1";
break;
case SEC_OID_SECG_EC_SECP224R1:
bundlekey = "CertDumpECsecp224r1";
break;
case SEC_OID_SECG_EC_SECP256K1:
bundlekey = "CertDumpECsecp256k1";
break;
case SEC_OID_SECG_EC_SECP384R1:
bundlekey = "CertDumpECsecp384r1";
break;
case SEC_OID_SECG_EC_SECP521R1:
bundlekey = "CertDumpECsecp521r1";
break;
/* ANSI X9.62 named elliptic curves (characteristic two field) */
case SEC_OID_ANSIX962_EC_C2PNB163V1:
bundlekey = "CertDumpECc2pnb163v1";
break;
case SEC_OID_ANSIX962_EC_C2PNB163V2:
bundlekey = "CertDumpECc2pnb163v2";
break;
case SEC_OID_ANSIX962_EC_C2PNB163V3:
bundlekey = "CertDumpECc2pnb163v3";
break;
case SEC_OID_ANSIX962_EC_C2PNB176V1:
bundlekey = "CertDumpECc2pnb176v1";
break;
case SEC_OID_ANSIX962_EC_C2TNB191V1:
bundlekey = "CertDumpECc2tnb191v1";
break;
case SEC_OID_ANSIX962_EC_C2TNB191V2:
bundlekey = "CertDumpECc2tnb191v2";
break;
case SEC_OID_ANSIX962_EC_C2TNB191V3:
bundlekey = "CertDumpECc2tnb191v3";
break;
case SEC_OID_ANSIX962_EC_C2ONB191V4:
bundlekey = "CertDumpECc2onb191v4";
break;
case SEC_OID_ANSIX962_EC_C2ONB191V5:
bundlekey = "CertDumpECc2onb191v5";
break;
case SEC_OID_ANSIX962_EC_C2PNB208W1:
bundlekey = "CertDumpECc2pnb208w1";
break;
case SEC_OID_ANSIX962_EC_C2TNB239V1:
bundlekey = "CertDumpECc2tnb239v1";
break;
case SEC_OID_ANSIX962_EC_C2TNB239V2:
bundlekey = "CertDumpECc2tnb239v2";
break;
case SEC_OID_ANSIX962_EC_C2TNB239V3:
bundlekey = "CertDumpECc2tnb239v3";
break;
case SEC_OID_ANSIX962_EC_C2ONB239V4:
bundlekey = "CertDumpECc2onb239v4";
break;
case SEC_OID_ANSIX962_EC_C2ONB239V5:
bundlekey = "CertDumpECc2onb239v5";
break;
case SEC_OID_ANSIX962_EC_C2PNB272W1:
bundlekey = "CertDumpECc2pnb272w1";
break;
case SEC_OID_ANSIX962_EC_C2PNB304W1:
bundlekey = "CertDumpECc2pnb304w1";
break;
case SEC_OID_ANSIX962_EC_C2TNB359V1:
bundlekey = "CertDumpECc2tnb359v1";
break;
case SEC_OID_ANSIX962_EC_C2PNB368W1:
bundlekey = "CertDumpECc2pnb368w1";
break;
case SEC_OID_ANSIX962_EC_C2TNB431R1:
bundlekey = "CertDumpECc2tnb431r1";
break;
/* SECG named elliptic curves (characteristic two field) */
case SEC_OID_SECG_EC_SECT113R1:
bundlekey = "CertDumpECsect113r1";
break;
case SEC_OID_SECG_EC_SECT113R2:
bundlekey = "CertDumpECsect113r2";
break;
case SEC_OID_SECG_EC_SECT131R1:
bundlekey = "CertDumpECsect131r1";
break;
case SEC_OID_SECG_EC_SECT131R2:
bundlekey = "CertDumpECsect131r2";
break;
case SEC_OID_SECG_EC_SECT163K1:
bundlekey = "CertDumpECsect163k1";
break;
case SEC_OID_SECG_EC_SECT163R1:
bundlekey = "CertDumpECsect163r1";
break;
case SEC_OID_SECG_EC_SECT163R2:
bundlekey = "CertDumpECsect163r2";
break;
case SEC_OID_SECG_EC_SECT193R1:
bundlekey = "CertDumpECsect193r1";
break;
case SEC_OID_SECG_EC_SECT193R2:
bundlekey = "CertDumpECsect193r2";
break;
case SEC_OID_SECG_EC_SECT233K1:
bundlekey = "CertDumpECsect233k1";
break;
case SEC_OID_SECG_EC_SECT233R1:
bundlekey = "CertDumpECsect233r1";
break;
case SEC_OID_SECG_EC_SECT239K1:
bundlekey = "CertDumpECsect239k1";
break;
case SEC_OID_SECG_EC_SECT283K1:
bundlekey = "CertDumpECsect283k1";
break;
case SEC_OID_SECG_EC_SECT283R1:
bundlekey = "CertDumpECsect283r1";
break;
case SEC_OID_SECG_EC_SECT409K1:
bundlekey = "CertDumpECsect409k1";
break;
case SEC_OID_SECG_EC_SECT409R1:
bundlekey = "CertDumpECsect409r1";
break;
case SEC_OID_SECG_EC_SECT571K1:
bundlekey = "CertDumpECsect571k1";
break;
case SEC_OID_SECG_EC_SECT571R1:
bundlekey = "CertDumpECsect571r1";
break;
default:
if (oidTag == SEC_OID(MS_CERT_EXT_CERTTYPE)) {
bundlekey = "CertDumpMSCerttype";
@ -1481,6 +1665,8 @@ ProcessSECAlgorithmID(SECAlgorithmID *algID,
nsINSSComponent *nssComponent,
nsIASN1Sequence **retSequence)
{
SECOidTag algOIDTag = SECOID_FindOIDTag(&algID->algorithm);
SECItem paramsOID = { siBuffer, NULL, 0 };
nsCOMPtr<nsIASN1Sequence> sequence = new nsNSSASN1Sequence();
if (sequence == nsnull)
return NS_ERROR_OUT_OF_MEMORY;
@ -1493,17 +1679,32 @@ ProcessSECAlgorithmID(SECAlgorithmID *algID,
sequence->SetIsValidContainer(PR_FALSE);
} else {
nsCOMPtr<nsIASN1PrintableItem> printableItem = new nsNSSASN1PrintableItem();
if (printableItem == nsnull)
return NS_ERROR_OUT_OF_MEMORY;
printableItem->SetDisplayValue(text);
nsCOMPtr<nsIMutableArray> asn1Objects;
sequence->GetASN1Objects(getter_AddRefs(asn1Objects));
asn1Objects->AppendElement(printableItem, PR_FALSE);
nssComponent->GetPIPNSSBundleString("CertDumpAlgID", text);
printableItem->SetDisplayName(text);
printableItem = new nsNSSASN1PrintableItem();
if (printableItem == nsnull)
return NS_ERROR_OUT_OF_MEMORY;
asn1Objects->AppendElement(printableItem, PR_FALSE);
nssComponent->GetPIPNSSBundleString("CertDumpParams", text);
printableItem->SetDisplayName(text);
ProcessRawBytes(nssComponent, &algID->parameters,text);
printableItem->SetDisplayName(text);
if ((algOIDTag == SEC_OID_ANSIX962_EC_PUBLIC_KEY) &&
(algID->parameters.len > 2) &&
(algID->parameters.data[0] == nsIASN1Object::ASN1_OBJECT_ID)) {
paramsOID.len = algID->parameters.len - 2;
paramsOID.data = algID->parameters.data + 2;
GetOIDText(&paramsOID, nssComponent, text);
} else {
ProcessRawBytes(nssComponent, &algID->parameters,text);
}
printableItem->SetDisplayValue(text);
}
*retSequence = sequence;

Просмотреть файл

@ -26,6 +26,8 @@
* Mitch Stoltz <mstoltz@netscape.com>
* Brian Ryner <bryner@brianryner.com>
* Kai Engert <kaie@netscape.com>
* Vipul Gupta <vipul.gupta@sun.com>
* Douglas Stebila <douglas@stebila.ca>
* Kai Engert <kengert@redhat.com>
*
* Alternatively, the contents of this file may be used under the terms of
@ -855,6 +857,26 @@ static CipherPref CipherPrefs[] = {
{"security.ssl3.rsa_aes_256_sha", TLS_RSA_WITH_AES_256_CBC_SHA}, // 256-bit AES encryption with RSA and a SHA1 MAC
/* TLS_DHE_DSS_WITH_RC4_128_SHA // 128-bit RC4 encryption with DSA, DHE, and a SHA1 MAC
If this cipher gets included at a later time, it should get added at this position */
{"security.ssl3.ecdhe_ecdsa_aes_256_sha", TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA}, // 256-bit AES encryption with ECDHE-ECDSA and a SHA1 MAC
{"security.ssl3.ecdhe_ecdsa_aes_128_sha", TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA}, // 128-bit AES encryption with ECDHE-ECDSA and a SHA1 MAC
{"security.ssl3.ecdhe_ecdsa_des_ede3_sha", TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA}, // 168-bit Triple DES with ECDHE-ECDSA and a SHA1 MAC
{"security.ssl3.ecdhe_ecdsa_rc4_128_sha", TLS_ECDHE_ECDSA_WITH_RC4_128_SHA}, // 128-bit RC4 encryption with ECDHE-ECDSA and a SHA1 MAC
{"security.ssl3.ecdhe_ecdsa_null_sha", TLS_ECDHE_ECDSA_WITH_NULL_SHA}, // No encryption with ECDHE-ECDSA and a SHA1 MAC
{"security.ssl3.ecdhe_rsa_aes_256_sha", TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA}, // 256-bit AES encryption with ECDHE-RSA and a SHA1 MAC
{"security.ssl3.ecdhe_rsa_aes_128_sha", TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA}, // 128-bit AES encryption with ECDHE-RSA and a SHA1 MAC
{"security.ssl3.ecdhe_rsa_des_ede3_sha", TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA}, // 168-bit Triple DES with ECDHE-RSA and a SHA1 MAC
{"security.ssl3.ecdhe_rsa_rc4_128_sha", TLS_ECDHE_RSA_WITH_RC4_128_SHA}, // 128-bit RC4 encryption with ECDHE-RSA and a SHA1 MAC
{"security.ssl3.ecdhe_rsa_null_sha", TLS_ECDHE_RSA_WITH_NULL_SHA}, // No encryption with ECDHE-RSA and a SHA1 MAC
{"security.ssl3.ecdh_ecdsa_aes_256_sha", TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA}, // 256-bit AES encryption with ECDH-ECDSA and a SHA1 MAC
{"security.ssl3.ecdh_ecdsa_aes_128_sha", TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA}, // 128-bit AES encryption with ECDH-ECDSA and a SHA1 MAC
{"security.ssl3.ecdh_ecdsa_des_ede3_sha", TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA}, // 168-bit Triple DES with ECDH-ECDSA and a SHA1 MAC
{"security.ssl3.ecdh_ecdsa_rc4_128_sha", TLS_ECDH_ECDSA_WITH_RC4_128_SHA}, // 128-bit RC4 encryption with ECDH-ECDSA and a SHA1 MAC
{"security.ssl3.ecdh_ecdsa_null_sha", TLS_ECDH_ECDSA_WITH_NULL_SHA}, // No encryption with ECDH-ECDSA and a SHA1 MAC
{"security.ssl3.ecdh_rsa_aes_256_sha", TLS_ECDH_RSA_WITH_AES_256_CBC_SHA}, // 256-bit AES encryption with ECDH-RSA and a SHA1 MAC
{"security.ssl3.ecdh_rsa_aes_128_sha", TLS_ECDH_RSA_WITH_AES_128_CBC_SHA}, // 128-bit AES encryption with ECDH-RSA and a SHA1 MAC
{"security.ssl3.ecdh_rsa_des_ede3_sha", TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA}, // 168-bit Triple DES with ECDH-RSA and a SHA1 MAC
{"security.ssl3.ecdh_rsa_rc4_128_sha", TLS_ECDH_RSA_WITH_RC4_128_SHA}, // 128-bit RC4 encryption with ECDH-RSA and a SHA1 MAC
{"security.ssl3.ecdh_rsa_null_sha", TLS_ECDH_RSA_WITH_NULL_SHA}, // No encryption with ECDH-RSA and a SHA1 MAC
{"security.ssl3.dhe_rsa_aes_128_sha", TLS_DHE_RSA_WITH_AES_128_CBC_SHA}, // 128-bit AES encryption with RSA, DHE, and a SHA1 MAC
{"security.ssl3.dhe_dss_aes_128_sha", TLS_DHE_DSS_WITH_AES_128_CBC_SHA}, // 128-bit AES encryption with DSA, DHE, and a SHA1 MAC
{"security.ssl3.rsa_aes_128_sha", TLS_RSA_WITH_AES_128_CBC_SHA}, // 128-bit AES encryption with RSA and a SHA1 MAC