Dart-如何在Base64上对RSA公钥进行编码和解码

时间:2019-12-22 01:59:54

标签: java flutter encryption dart

我试图找到如何在base64和RSA64之间对RSA公钥进行编码,但似乎无法在Internet上找到方法。我基本上一直在尝试将Java实现克隆到dart中:

    public static PublicKey toPublicKey(String base64PublicKey){
        PublicKey publicKey;
        try{
            X509EncodedKeySpec keySpec = new X509EncodedKeySpec(Base64.getDecoder().decode(base64PublicKey.getBytes()));
            KeyFactory keyFactory = KeyFactory.getInstance("RSA");
            publicKey = keyFactory.generatePublic(keySpec);
            return publicKey;
        } catch (NoSuchAlgorithmException | InvalidKeySpecException e) {
            e.printStackTrace();
        }
        return null;
    }
    public static String toBase64(Key publicKey) {
        byte[] encodedPublicKey = publicKey.getEncoded();
        return Base64.getEncoder().encodeToString(encodedPublicKey);
    }

抱歉,我真的没能在任何地方找到有关此内容的文档。

0 个答案:

没有答案