< prev index next >

src/share/classes/sun/security/util/CurveDB.java

Print this page
rev 14230 : 8035166: Remove dependency on EC classes from pkcs11 provider
Summary: Move the sun.security.ec.ECParameters and its related classes to sun.security.util package.
Reviewed-by: mullan, vinnie
rev 14231 : 8233228: Disable weak named curves by default in TLS, CertPath, and Signed JAR
Reviewed-by: mullan, xuelei, weijun

@@ -153,12 +153,31 @@
             // the curve is marked as a default curve.
             lengthMap.put(len, params);
         }
     }
 
+    private static class Holder {
+        private static final Pattern nameSplitPattern = Pattern.compile(
+                SPLIT_PATTERN);
+    }
+
+    // Return all the names the EC curve could be using.
+    public static String[] getNamesByOID(String oid) {
+        NamedCurve nc = oidMap.get(oid);
+        if (nc == null) {
+            return new String[0];
+        }
+        String[] list = Holder.nameSplitPattern.split(nc.getName());
+        int i = 0;
+        do {
+            list[i] = list[i].trim();
+        } while (++i < list.length);
+        return list;
+    }
+
     static {
-        Pattern nameSplitPattern = Pattern.compile(SPLIT_PATTERN);
+        Pattern nameSplitPattern = Holder.nameSplitPattern;
 
         /* SEC2 prime curves */
         add("secp112r1", "1.3.132.0.6", P,
             "DB7C2ABF62E35E668076BEAD208B",
             "DB7C2ABF62E35E668076BEAD2088",
< prev index next >