/** * Convert a PEM encoded RSA certificate file into a DER format byte array. * * @param is * Input stream for PEM encoded RSA certificate data. * * @return * The RSA certificate data in DER format. * * @throws IOException */ public static byte[] convertRsaPemToDer(InputStream is) throws IOException { String pemData = ServiceUtils.readInputStreamToString(is, "UTF-8"); // Strip PEM header and footer int headerEndOffset = pemData.indexOf('\n'); int footerStartOffset = pemData.indexOf("-----END"); String strippedPemData = pemData.substring(headerEndOffset + 1, footerStartOffset - 1); // Decode Base64 PEM data to DER bytes byte[] derBytes = ServiceUtils.fromBase64(strippedPemData); return derBytes; }
/** * Convert a PEM encoded RSA certificate file into a DER format byte array. * * @param is * Input stream for PEM encoded RSA certificate data. * * @return * The RSA certificate data in DER format. * * @throws IOException */ public static byte[] convertRsaPemToDer(InputStream is) throws IOException { String pemData = ServiceUtils.readInputStreamToString(is, "UTF-8"); // Strip PEM header and footer int headerEndOffset = pemData.indexOf('\n'); int footerStartOffset = pemData.indexOf("-----END"); String strippedPemData = pemData.substring(headerEndOffset + 1, footerStartOffset - 1); // Decode Base64 PEM data to DER bytes byte[] derBytes = ServiceUtils.fromBase64(strippedPemData); return derBytes; }