8325164: Named groups and signature schemes unavailable with SunPKCS11 in FIPS mode

Reviewed-by: valeriep
This commit is contained in:
Daniel Jeliński 2024-03-13 19:09:52 +00:00
parent eb45d5bd64
commit 8f9899b23e
10 changed files with 66 additions and 67 deletions

View file

@ -140,21 +140,16 @@ public final class ECUtil {
return (ECPrivateKey)keyFactory.generatePrivate(keySpec);
}
public static AlgorithmParameters getECParameters(Provider p) {
public static AlgorithmParameters getECParameters() {
try {
if (p != null) {
return AlgorithmParameters.getInstance("EC", p);
}
return AlgorithmParameters.getInstance("EC");
} catch (NoSuchAlgorithmException nsae) {
throw new RuntimeException(nsae);
}
}
public static byte[] encodeECParameterSpec(Provider p,
ECParameterSpec spec) {
AlgorithmParameters parameters = getECParameters(p);
public static byte[] encodeECParameterSpec(ECParameterSpec spec) {
AlgorithmParameters parameters = getECParameters();
try {
parameters.init(spec);
@ -170,9 +165,8 @@ public final class ECUtil {
}
}
public static ECParameterSpec getECParameterSpec(Provider p,
ECParameterSpec spec) {
AlgorithmParameters parameters = getECParameters(p);
public static ECParameterSpec getECParameterSpec(ECParameterSpec spec) {
AlgorithmParameters parameters = getECParameters();
try {
parameters.init(spec);
@ -182,10 +176,9 @@ public final class ECUtil {
}
}
public static ECParameterSpec getECParameterSpec(Provider p,
byte[] params)
public static ECParameterSpec getECParameterSpec(byte[] params)
throws IOException {
AlgorithmParameters parameters = getECParameters(p);
AlgorithmParameters parameters = getECParameters();
parameters.init(params);
@ -196,8 +189,8 @@ public final class ECUtil {
}
}
public static ECParameterSpec getECParameterSpec(Provider p, String name) {
AlgorithmParameters parameters = getECParameters(p);
public static ECParameterSpec getECParameterSpec(String name) {
AlgorithmParameters parameters = getECParameters();
try {
parameters.init(new ECGenParameterSpec(name));
@ -207,8 +200,8 @@ public final class ECUtil {
}
}
public static ECParameterSpec getECParameterSpec(Provider p, int keySize) {
AlgorithmParameters parameters = getECParameters(p);
public static ECParameterSpec getECParameterSpec(int keySize) {
AlgorithmParameters parameters = getECParameters();
try {
parameters.init(new ECKeySizeParameterSpec(keySize));
@ -219,9 +212,9 @@ public final class ECUtil {
}
public static String getCurveName(Provider p, ECParameterSpec spec) {
public static String getCurveName(ECParameterSpec spec) {
ECGenParameterSpec nameSpec;
AlgorithmParameters parameters = getECParameters(p);
AlgorithmParameters parameters = getECParameters();
try {
parameters.init(spec);