读取公钥无效密钥格式java

时间:2013-11-15 13:30:24

标签: java format public-key

我有代码:

public PublicKey read_public_key(String path)
                throws IOException, NoSuchAlgorithmException,
                InvalidKeySpecException {

         KeyFactory keyFactory = KeyFactory.getInstance("RSA");  
            FileInputStream pubKeyStream = new FileInputStream(path);  
            byte[] pubKeyBytes = new byte[(int)path.length()];
            pubKeyStream.read(pubKeyBytes);   
            pubKeyStream.close();  
            X509EncodedKeySpec pubKeySpec = new X509EncodedKeySpec(pubKeyBytes);   
            PublicKey pubKey = keyFactory.generatePublic(pubKeySpec);  

            return pubKey;
        }

但是我得到无效的密钥格式如何从.pub文件中获取公钥?后来我需要:

private static byte[] encrypt(String text, PublicKey key) {
        byte[] cipherText = null;
        try {
          // get an RSA cipher object and print the provider
          final Cipher cipher = Cipher.getInstance("RSA/None/PKCS1Padding");
          // encrypt the plain text using the public key
          cipher.init(Cipher.ENCRYPT_MODE, key);
          cipherText = cipher.doFinal(text.getBytes());
        } catch (Exception e) {
          e.printStackTrace();
        }
        return cipherText;
      }

0 个答案:

没有答案