summaryrefslogtreecommitdiff
path: root/bcprov/src/main/java/org/bouncycastle/asn1/nist
diff options
context:
space:
mode:
Diffstat (limited to 'bcprov/src/main/java/org/bouncycastle/asn1/nist')
-rw-r--r--bcprov/src/main/java/org/bouncycastle/asn1/nist/NISTNamedCurves.java48
-rw-r--r--bcprov/src/main/java/org/bouncycastle/asn1/nist/NISTObjectIdentifiers.java62
2 files changed, 79 insertions, 31 deletions
diff --git a/bcprov/src/main/java/org/bouncycastle/asn1/nist/NISTNamedCurves.java b/bcprov/src/main/java/org/bouncycastle/asn1/nist/NISTNamedCurves.java
index 19077e4c..ba7e5187 100644
--- a/bcprov/src/main/java/org/bouncycastle/asn1/nist/NISTNamedCurves.java
+++ b/bcprov/src/main/java/org/bouncycastle/asn1/nist/NISTNamedCurves.java
@@ -17,38 +17,42 @@ public class NISTNamedCurves
static final Hashtable objIds = new Hashtable();
static final Hashtable names = new Hashtable();
- static void defineCurveAlias(String name, ASN1ObjectIdentifier oid)
+ static void defineCurve(String name, ASN1ObjectIdentifier oid)
{
- objIds.put(name.toUpperCase(), oid);
+ objIds.put(name, oid);
names.put(oid, name);
}
static
{
- defineCurveAlias("B-163", SECObjectIdentifiers.sect163r2);
- defineCurveAlias("B-233", SECObjectIdentifiers.sect233r1);
- defineCurveAlias("B-283", SECObjectIdentifiers.sect283r1);
- defineCurveAlias("B-409", SECObjectIdentifiers.sect409r1);
- defineCurveAlias("B-571", SECObjectIdentifiers.sect571r1);
-
- defineCurveAlias("K-163", SECObjectIdentifiers.sect163k1);
- defineCurveAlias("K-233", SECObjectIdentifiers.sect233k1);
- defineCurveAlias("K-283", SECObjectIdentifiers.sect283k1);
- defineCurveAlias("K-409", SECObjectIdentifiers.sect409k1);
- defineCurveAlias("K-571", SECObjectIdentifiers.sect571k1);
-
- defineCurveAlias("P-192", SECObjectIdentifiers.secp192r1);
- defineCurveAlias("P-224", SECObjectIdentifiers.secp224r1);
- defineCurveAlias("P-256", SECObjectIdentifiers.secp256r1);
- defineCurveAlias("P-384", SECObjectIdentifiers.secp384r1);
- defineCurveAlias("P-521", SECObjectIdentifiers.secp521r1);
+ defineCurve("B-571", SECObjectIdentifiers.sect571r1);
+ defineCurve("B-409", SECObjectIdentifiers.sect409r1);
+ defineCurve("B-283", SECObjectIdentifiers.sect283r1);
+ defineCurve("B-233", SECObjectIdentifiers.sect233r1);
+ defineCurve("B-163", SECObjectIdentifiers.sect163r2);
+ defineCurve("K-571", SECObjectIdentifiers.sect571k1);
+ defineCurve("K-409", SECObjectIdentifiers.sect409k1);
+ defineCurve("K-283", SECObjectIdentifiers.sect283k1);
+ defineCurve("K-233", SECObjectIdentifiers.sect233k1);
+ defineCurve("K-163", SECObjectIdentifiers.sect163k1);
+ defineCurve("P-521", SECObjectIdentifiers.secp521r1);
+ defineCurve("P-384", SECObjectIdentifiers.secp384r1);
+ defineCurve("P-256", SECObjectIdentifiers.secp256r1);
+ defineCurve("P-224", SECObjectIdentifiers.secp224r1);
+ defineCurve("P-192", SECObjectIdentifiers.secp192r1);
}
public static X9ECParameters getByName(
String name)
{
- ASN1ObjectIdentifier oid = getOID(name);
- return oid == null ? null : getByOID(oid);
+ ASN1ObjectIdentifier oid = (ASN1ObjectIdentifier)objIds.get(Strings.toUpperCase(name));
+
+ if (oid != null)
+ {
+ return getByOID(oid);
+ }
+
+ return null;
}
/**
@@ -90,6 +94,6 @@ public class NISTNamedCurves
*/
public static Enumeration getNames()
{
- return names.elements();
+ return objIds.keys();
}
}
diff --git a/bcprov/src/main/java/org/bouncycastle/asn1/nist/NISTObjectIdentifiers.java b/bcprov/src/main/java/org/bouncycastle/asn1/nist/NISTObjectIdentifiers.java
index 0de40f20..49c0e6d7 100644
--- a/bcprov/src/main/java/org/bouncycastle/asn1/nist/NISTObjectIdentifiers.java
+++ b/bcprov/src/main/java/org/bouncycastle/asn1/nist/NISTObjectIdentifiers.java
@@ -40,9 +40,17 @@ public interface NISTObjectIdentifiers
/** 2.16.840.1.101.3.4.2.10 */
static final ASN1ObjectIdentifier id_sha3_512 = hashAlgs.branch("10");
/** 2.16.840.1.101.3.4.2.11 */
- static final ASN1ObjectIdentifier id_shake128 = hashAlgs.branch("11");
+ static final ASN1ObjectIdentifier id_shake128 = hashAlgs.branch("11");
/** 2.16.840.1.101.3.4.2.12 */
- static final ASN1ObjectIdentifier id_shake256 = hashAlgs.branch("12");
+ static final ASN1ObjectIdentifier id_shake256 = hashAlgs.branch("12");
+ /** 2.16.840.1.101.3.4.2.13 */
+ static final ASN1ObjectIdentifier id_hmacWithSHA3_224 = hashAlgs.branch("13");
+ /** 2.16.840.1.101.3.4.2.14 */
+ static final ASN1ObjectIdentifier id_hmacWithSHA3_256 = hashAlgs.branch("14");
+ /** 2.16.840.1.101.3.4.2.15 */
+ static final ASN1ObjectIdentifier id_hmacWithSHA3_384 = hashAlgs.branch("15");
+ /** 2.16.840.1.101.3.4.2.16 */
+ static final ASN1ObjectIdentifier id_hmacWithSHA3_512 = hashAlgs.branch("16");
/** 2.16.840.1.101.3.4.1 */
static final ASN1ObjectIdentifier aes = nistAlgorithm.branch("1");
@@ -61,7 +69,9 @@ public interface NISTObjectIdentifiers
static final ASN1ObjectIdentifier id_aes128_GCM = aes.branch("6");
/** 2.16.840.1.101.3.4.1.7 */
static final ASN1ObjectIdentifier id_aes128_CCM = aes.branch("7");
-
+ /** 2.16.840.1.101.3.4.1.28 */
+ static final ASN1ObjectIdentifier id_aes128_wrap_pad = aes.branch("8");
+
/** 2.16.840.1.101.3.4.1.21 */
static final ASN1ObjectIdentifier id_aes192_ECB = aes.branch("21");
/** 2.16.840.1.101.3.4.1.22 */
@@ -76,7 +86,9 @@ public interface NISTObjectIdentifiers
static final ASN1ObjectIdentifier id_aes192_GCM = aes.branch("26");
/** 2.16.840.1.101.3.4.1.27 */
static final ASN1ObjectIdentifier id_aes192_CCM = aes.branch("27");
-
+ /** 2.16.840.1.101.3.4.1.28 */
+ static final ASN1ObjectIdentifier id_aes192_wrap_pad = aes.branch("28");
+
/** 2.16.840.1.101.3.4.1.41 */
static final ASN1ObjectIdentifier id_aes256_ECB = aes.branch("41");
/** 2.16.840.1.101.3.4.1.42 */
@@ -91,19 +103,51 @@ public interface NISTObjectIdentifiers
static final ASN1ObjectIdentifier id_aes256_GCM = aes.branch("46");
/** 2.16.840.1.101.3.4.1.47 */
static final ASN1ObjectIdentifier id_aes256_CCM = aes.branch("47");
+ /** 2.16.840.1.101.3.4.1.48 */
+ static final ASN1ObjectIdentifier id_aes256_wrap_pad = aes.branch("48");
//
// signatures
//
/** 2.16.840.1.101.3.4.3 */
- static final ASN1ObjectIdentifier id_dsa_with_sha2 = nistAlgorithm.branch("3");
+ static final ASN1ObjectIdentifier sigAlgs = nistAlgorithm.branch("3");
+
+ static final ASN1ObjectIdentifier id_dsa_with_sha2 = sigAlgs;
/** 2.16.840.1.101.3.4.3.1 */
- static final ASN1ObjectIdentifier dsa_with_sha224 = id_dsa_with_sha2.branch("1");
+ static final ASN1ObjectIdentifier dsa_with_sha224 = sigAlgs.branch("1");
/** 2.16.840.1.101.3.4.3.2 */
- static final ASN1ObjectIdentifier dsa_with_sha256 = id_dsa_with_sha2.branch("2");
+ static final ASN1ObjectIdentifier dsa_with_sha256 = sigAlgs.branch("2");
/** 2.16.840.1.101.3.4.3.3 */
- static final ASN1ObjectIdentifier dsa_with_sha384 = id_dsa_with_sha2.branch("3");
+ static final ASN1ObjectIdentifier dsa_with_sha384 = sigAlgs.branch("3");
/** 2.16.840.1.101.3.4.3.4 */
- static final ASN1ObjectIdentifier dsa_with_sha512 = id_dsa_with_sha2.branch("4");
+ static final ASN1ObjectIdentifier dsa_with_sha512 = sigAlgs.branch("4");
+ /** 2.16.840.1.101.3.4.3.5 */
+ static final ASN1ObjectIdentifier id_dsa_with_sha3_224 = sigAlgs.branch("5");
+ /** 2.16.840.1.101.3.4.3.6 */
+ static final ASN1ObjectIdentifier id_dsa_with_sha3_256 = sigAlgs.branch("6");
+ /** 2.16.840.1.101.3.4.3.7 */
+ static final ASN1ObjectIdentifier id_dsa_with_sha3_384 = sigAlgs.branch("7");
+ /** 2.16.840.1.101.3.4.3.8 */
+ static final ASN1ObjectIdentifier id_dsa_with_sha3_512 = sigAlgs.branch("8");
+
+ // ECDSA with SHA-3
+ /** 2.16.840.1.101.3.4.3.9 */
+ static final ASN1ObjectIdentifier id_ecdsa_with_sha3_224 = sigAlgs.branch("9");
+ /** 2.16.840.1.101.3.4.3.10 */
+ static final ASN1ObjectIdentifier id_ecdsa_with_sha3_256 = sigAlgs.branch("10");
+ /** 2.16.840.1.101.3.4.3.11 */
+ static final ASN1ObjectIdentifier id_ecdsa_with_sha3_384 = sigAlgs.branch("11");
+ /** 2.16.840.1.101.3.4.3.12 */
+ static final ASN1ObjectIdentifier id_ecdsa_with_sha3_512 = sigAlgs.branch("12");
+
+ // RSA PKCS #1 v1.5 Signature with SHA-3 family.
+ /** 2.16.840.1.101.3.4.3.9 */
+ static final ASN1ObjectIdentifier id_rsassa_pkcs1_v1_5_with_sha3_224 = sigAlgs.branch("13");
+ /** 2.16.840.1.101.3.4.3.10 */
+ static final ASN1ObjectIdentifier id_rsassa_pkcs1_v1_5_with_sha3_256 = sigAlgs.branch("14");
+ /** 2.16.840.1.101.3.4.3.11 */
+ static final ASN1ObjectIdentifier id_rsassa_pkcs1_v1_5_with_sha3_384 = sigAlgs.branch("15");
+ /** 2.16.840.1.101.3.4.3.12 */
+ static final ASN1ObjectIdentifier id_rsassa_pkcs1_v1_5_with_sha3_512 = sigAlgs.branch("16");
}