首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

pfx 与 jks 互导工具种

2012-09-19 
pfx 与 jks 互导工具类public class ConventPFX {public static final String PKCS12 PKCS12public s

pfx 与 jks 互导工具类

public class ConventPFX {       public static final String PKCS12 = "PKCS12";       public static final String JKS = "JKS";       public static final String PFX_KEYSTORE_FILE = "c:\\test.pfx";       public static final String KEYSTORE_PASSWORD = "123456";       public static final String JKS_KEYSTORE_FILE = "c:\\test.jks";       public static void coverTokeyStore() {           try {               KeyStore inputKeyStore = KeyStore.getInstance("PKCS12");               FileInputStream fis = new FileInputStream(PFX_KEYSTORE_FILE);               char[] nPassword = null;               if ((KEYSTORE_PASSWORD == null)                       || KEYSTORE_PASSWORD.trim().equals("")) {                   nPassword = null;               } else {                   nPassword = KEYSTORE_PASSWORD.toCharArray();               }               inputKeyStore.load(fis, nPassword);               fis.close();               KeyStore outputKeyStore = KeyStore.getInstance("JKS");               outputKeyStore.load(null, KEYSTORE_PASSWORD.toCharArray());               Enumeration enums = inputKeyStore.aliases();               while (enums.hasMoreElements()) { // we are readin just one                                                   // certificate.                   String keyAlias = (String) enums.nextElement();                   System.out.println("alias=[" + keyAlias + "]");                   if (inputKeyStore.isKeyEntry(keyAlias)) {                       Key key = inputKeyStore.getKey(keyAlias, nPassword);                       Certificate[] certChain = inputKeyStore                               .getCertificateChain(keyAlias);                       outputKeyStore.setKeyEntry(keyAlias, key, KEYSTORE_PASSWORD                               .toCharArray(), certChain);                   }               }               FileOutputStream out = new FileOutputStream(JKS_KEYSTORE_FILE);               outputKeyStore.store(out, nPassword);               out.close();           } catch (Exception e) {               e.printStackTrace();           }       }       public static void coverToPfx() {           try {               KeyStore inputKeyStore = KeyStore.getInstance("JKS");               FileInputStream fis = new FileInputStream(JKS_KEYSTORE_FILE);               char[] nPassword = null;               if ((KEYSTORE_PASSWORD == null)                       || KEYSTORE_PASSWORD.trim().equals("")) {                   nPassword = null;               } else {                   nPassword = KEYSTORE_PASSWORD.toCharArray();               }               inputKeyStore.load(fis, nPassword);               fis.close();               KeyStore outputKeyStore = KeyStore.getInstance("PKCS12");               outputKeyStore.load(null, KEYSTORE_PASSWORD.toCharArray());               Enumeration enums = inputKeyStore.aliases();               while (enums.hasMoreElements()) { // we are readin just one                                                   // certificate.                   String keyAlias = (String) enums.nextElement();                   System.out.println("alias=[" + keyAlias + "]");                   if (inputKeyStore.isKeyEntry(keyAlias)) {                       Key key = inputKeyStore.getKey(keyAlias, nPassword);                       Certificate[] certChain = inputKeyStore                               .getCertificateChain(keyAlias);                       outputKeyStore.setKeyEntry(keyAlias, key, KEYSTORE_PASSWORD                               .toCharArray(), certChain);                   }               }               FileOutputStream out = new FileOutputStream(PFX_KEYSTORE_FILE);               outputKeyStore.store(out, nPassword);               out.close();           } catch (Exception e) {               e.printStackTrace();           }       }       public static void main(String[] args) {           //coverToPfx(); //jks to pfx           //coverTokeyStore();    // pfx to jks       }   }  

?转载:http://blog.csdn.net/xieboshi/archive/2009/05/20/4204439.aspx

热点排行