List of usage examples for org.bouncycastle.openssl.jcajce JcePEMEncryptorBuilder setProvider
public JcePEMEncryptorBuilder setProvider(String providerName)
From source file:co.lqnt.lockbox.key.PrivateKey.java
License:Open Source License
/** * Get this key as a PEM formatted string. * * @param password A password to encrypt the PEM data with. * * @return The PEM formatted key./* ww w . java2 s. c om*/ */ public String toPem(final String password) { JcePEMEncryptorBuilder encryptorBuilder = new JcePEMEncryptorBuilder("DES-EDE3-CBC"); encryptorBuilder.setProvider(new BouncyCastleProvider()); return this.toPem(password, encryptorBuilder, new StringWriterFactory(), new PemWriterFactory()); }
From source file:com.aqnote.shared.cryptology.cert.io.PKCSTransformer.java
License:Open Source License
public static String getKeyFileString(PrivateKey privKey, char[] pwd) throws Exception { CircularByteBuffer cbb = new CircularByteBuffer(CircularByteBuffer.INFINITE_SIZE); PEMWriter pemWriter = new PEMWriter(new PrintWriter(cbb.getOutputStream())); cbb.getOutputStream().flush();//w ww.j a v a2s . c o m cbb.getOutputStream().close(); if (pwd != null) { JcePEMEncryptorBuilder encryptorBuilder = new JcePEMEncryptorBuilder(DES_EDE3_CBC); encryptorBuilder.setProvider(JCE_PROVIDER); encryptorBuilder.setSecureRandom(new SecureRandom()); pemWriter.writeObject(privKey, encryptorBuilder.build(pwd)); } else { pemWriter.writeObject(privKey); } pemWriter.flush(); pemWriter.close(); String keyFile = StreamUtil.stream2Bytes(cbb.getInputStream(), StandardCharsets.UTF_8); cbb.getInputStream().close(); cbb.clear(); return keyFile; }