Различное поведение от метода расшифровки в Java

Я использую расшифровку RSA-алгоритма с открытыми и закрытыми ключами из сертификации.

var encrypt = new JSEncrypt();
var publicKey = "example";
encrypt.setPublicKey(publicKey);
var data = encrypt.encrypt(value);
console.log(data);
return data;

public static String getDecrypted(String data, String Key)
        throws NoSuchAlgorithmException, InvalidKeySpecException, NoSuchPaddingException, InvalidKeyException,
        IllegalBlockSizeException, BadPaddingException, UnsupportedEncodingException {
    Cipher cipher = Cipher.getInstance("RSA");
    PrivateKey pk = KeyFactory.getInstance("RSA")
            .generatePrivate(new PKCS8EncodedKeySpec(Base64.decodeBase64(Key.getBytes())));
    cipher.init(Cipher.DECRYPT_MODE, pk);
    // byte[] encryptedbytes =
    // cipher.doFinal(Base64.encodeBase64(data.getBytes()));
    return new String(cipher.doFinal(Base64.decodeBase64(data)));
}

Я использую интерфейсное шифрование и основной метод шифрования. Зашифрованные значения с двух сторон становятся правильными. но когда я звоню из интернета, я получаю другие значения

EAQ�žÃqÈ›@Á¢éz¡?�4zsHD-U€� 
 KÉ¢a`Õ³=jö`›=šúFhU;••˜ü®2¿¶žñÛ¤lÉê×)§?]¾–`n_üÙ&1ï)ðeÈž‹x¯ø¬#;ýp&   Ê*í~ý¾´çVõF¯±ë©yṉ̃©w_f'úH⬒#™G™|¦ý¹j"Ìç8=ŽRÉž[££4™s#àâ

и значение в конце

0 ответов

Другие вопросы по тегам