Notice: Undefined index: HTTP_ACCEPT_ENCODING in C:\server\web\www.showyounger.com\s-system.php on line 2
使用java从证书中读取私钥、公钥 | 小样儿(ShowYounger)
小样儿,顶呱呱!!![http://www.showyounger.com]
- import java.io.FileInputStream;
- import java.io.IOException;
- import java.io.InputStream;
- import java.security.InvalidKeyException;
- import java.security.KeyStore;
- import java.security.KeyStoreException;
- import java.security.NoSuchAlgorithmException;
- import java.security.NoSuchProviderException;
- import java.security.PrivateKey;
- import java.security.SignatureException;
- import java.security.UnrecoverableKeyException;
- import java.security.cert.Certificate;
- import java.security.cert.CertificateException;
- import java.security.cert.CertificateFactory;
-
- public class KeyReader {
-
- public static void main(String[] args) throws KeyStoreException,
- NoSuchProviderException, NoSuchAlgorithmException,
- CertificateException, IOException, UnrecoverableKeyException,
- InvalidKeyException, SignatureException {
-
-
- String cerFileName = "d:/certA.cer";
- String p12FileName = "d:/certA.p12";
- String pfxPassword = "openssl";
-
- InputStream fis = new FileInputStream(p12FileName);
-
-
- KeyStore keyStore = KeyStore.getInstance("PKCS12", "BC");
-
- keyStore.load(fis, pfxPassword.toCharArray());
-
- String aliaesName = "abcd";
- PrivateKey priKey = (PrivateKey) (keyStore.getKey(aliaesName, null));
- System.out.println("private key:\n" + priKey);
-
-
- InputStream is = new FileInputStream(cerFileName);
- CertificateFactory cf = CertificateFactory.getInstance("x509");
- Certificate cerCert = cf.generateCertificate(is);
- System.out.println("public key:\n" + cerCert);
- }
- }