no.difi.sdp.client2.util.CryptoChecker Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of sikker-digital-post-klient-java Show documentation
Show all versions of sikker-digital-post-klient-java Show documentation
Klient for sending av sikker digital post fra offentlige virksomheter.
package no.difi.sdp.client2.util;
import no.difi.sdp.client2.domain.exceptions.KonfigurasjonException;
import javax.crypto.Cipher;
import java.security.NoSuchAlgorithmException;
public class CryptoChecker {
public static final String TRANSFORM_TO_CHECK = "AES";
public static final int MINIMUM_SUPPORTED_KEY_LENGTH = 256;
public static void checkCryptoPolicy() {
try {
int maxAesKeyLength = Cipher.getMaxAllowedKeyLength(TRANSFORM_TO_CHECK);
if (maxAesKeyLength < MINIMUM_SUPPORTED_KEY_LENGTH) {
throw new KonfigurasjonException("Minimum støttet nøkkellengde på platformen er for kort. " +
"Det skyldes sannsynligvis at du må legge inn JCE Unlimited Strength JAR. " +
"Merk at dette måtte gjøres både for produksjons- og utviklingsmiljøer.\n" +
"Maks støttet lengde er " + maxAesKeyLength + ", mens minimumskravet er " + MINIMUM_SUPPORTED_KEY_LENGTH + " for " + TRANSFORM_TO_CHECK + ".\n" +
"For mer informasjon, se https://www.google.no/search?q=java+cryptography+extension+unlimited+strength");
}
} catch (NoSuchAlgorithmException e) {
throw new KonfigurasjonException("Klarte ikke å sjekke maks nøkkellengde for " + TRANSFORM_TO_CHECK);
}
}
}