List of usage examples for org.bouncycastle.operator.bc BcContentVerifierProviderBuilder build
public ContentVerifierProvider build(final AsymmetricKeyParameter publicKey) throws OperatorCreationException
From source file:org.xipki.commons.security.SecurityFactoryImpl.java
License:Open Source License
@Override public ContentVerifierProvider getContentVerifierProvider(final PublicKey publicKey) throws InvalidKeyException { ParamUtil.requireNonNull("publicKey", publicKey); String keyAlg = publicKey.getAlgorithm().toUpperCase(); BcContentVerifierProviderBuilder builder = VERIFIER_PROVIDER_BUILDER.get(keyAlg); if (builder == null) { if ("RSA".equals(keyAlg)) { builder = new XipkiRSAContentVerifierProviderBuilder(DIGESTALG_IDENTIFIER_FINDER); } else if ("DSA".equals(keyAlg)) { builder = new BcDSAContentVerifierProviderBuilder(DIGESTALG_IDENTIFIER_FINDER); } else if ("EC".equals(keyAlg) || "ECDSA".equals(keyAlg)) { builder = new XipkiECContentVerifierProviderBuilder(DIGESTALG_IDENTIFIER_FINDER); } else {//from ww w. j ava 2s . co m throw new InvalidKeyException("unknown key algorithm of the public key " + keyAlg); } VERIFIER_PROVIDER_BUILDER.put(keyAlg, builder); } AsymmetricKeyParameter keyParam = KeyUtil.generatePublicKeyParameter(publicKey); try { return builder.build(keyParam); } catch (OperatorCreationException ex) { throw new InvalidKeyException("could not build ContentVerifierProvider: " + ex.getMessage(), ex); } }
From source file:org.xipki.pki.scep.serveremulator.CaEmulator.java
License:Open Source License
public ContentVerifierProvider getContentVerifierProvider(final PublicKey publicKey) throws InvalidKeyException { ParamUtil.requireNonNull("publicKey", publicKey); String keyAlg = publicKey.getAlgorithm().toUpperCase(); if ("EC".equals(keyAlg)) { keyAlg = "ECDSA"; }//from w ww .j a v a 2 s .co m BcContentVerifierProviderBuilder builder = VERIFIER_PROVIDER_BUILDER.get(keyAlg); if (builder == null) { if ("RSA".equals(keyAlg)) { builder = new BcRSAContentVerifierProviderBuilder(DFLT_DIGESTALG_IDENTIFIER_FINDER); } else if ("DSA".equals(keyAlg)) { builder = new BcDSAContentVerifierProviderBuilder(DFLT_DIGESTALG_IDENTIFIER_FINDER); } else if ("ECDSA".equals(keyAlg)) { builder = new BcECContentVerifierProviderBuilder(DFLT_DIGESTALG_IDENTIFIER_FINDER); } else { throw new InvalidKeyException("unknown key algorithm of the public key " + keyAlg); } VERIFIER_PROVIDER_BUILDER.put(keyAlg, builder); } AsymmetricKeyParameter keyParam = KeyUtil.generatePublicKeyParameter(publicKey); try { return builder.build(keyParam); } catch (OperatorCreationException ex) { throw new InvalidKeyException("could not build ContentVerifierProvider: " + ex.getMessage(), ex); } }
From source file:org.xipki.security.KeyUtil.java
License:Open Source License
public static ContentVerifierProvider getContentVerifierProvider(final PublicKey publicKey) throws OperatorCreationException, InvalidKeyException { String keyAlg = publicKey.getAlgorithm().toUpperCase(); if (keyAlg.equals("EC")) { keyAlg = "ECDSA"; }//w ww .j a v a 2s . c o m BcContentVerifierProviderBuilder builder = verifierProviderBuilders.get(keyAlg); if (builder == null) { if ("RSA".equals(keyAlg)) { builder = new BcRSAContentVerifierProviderBuilder(dfltDigesAlgIdentifierFinder); } else if ("DSA".equals(keyAlg)) { builder = new BcDSAContentVerifierProviderBuilder(dfltDigesAlgIdentifierFinder); } else if ("ECDSA".equals(keyAlg)) { builder = new ECDSAContentVerifierProviderBuilder(dfltDigesAlgIdentifierFinder); } else { throw new OperatorCreationException("unknown key algorithm of the public key " + keyAlg); } verifierProviderBuilders.put(keyAlg, builder); } AsymmetricKeyParameter keyParam = KeyUtil.generatePublicKeyParameter(publicKey); return builder.build(keyParam); }