import java.security.interfaces.ECPublicKey;
import java.security.interfaces.RSAPublicKey;
import java.sql.SQLException;
-import java.util.Base64;
import java.util.HashMap;
import java.util.Map;
import org.cacert.gigi.output.template.Template;
import org.cacert.gigi.pages.LoginPage;
import org.cacert.gigi.pages.Page;
+import org.cacert.gigi.util.PEM;
import org.cacert.gigi.util.RandomToken;
import sun.security.pkcs10.PKCS10;
}
private PKCS10 parseCSR(String csr) throws IOException, GeneralSecurityException {
- csr = csr.replaceFirst("-----BEGIN (NEW )?CERTIFICATE REQUEST-----", "");
- csr = csr.replaceFirst("-----END (NEW )?CERTIFICATE REQUEST-----", "");
- csr = csr.replace("\r", "");
- csr = csr.replace("\n", "");
- byte[] b = Base64.getDecoder().decode(csr);
- // Also checks signature validity
- return new PKCS10(b);
+ return new PKCS10(PEM.decode("(NEW )?CERTIFICATE REQUEST", csr));
}
@Override