如何从节点服务器加密Android中的数据?

时间:2019-08-19 12:29:38

标签: android

我在android中生成RSA公钥和私钥,然后将公钥发送到节点服务器。服务器加密一些数据,然后将结果发送给我的第一个请求。我尝试使用私钥解密加密的数据,但解密的数据与服务器数据不匹配。

    KeyPairGenerator kpg = KeyPairGenerator.getInstance("RSA");
    kpg.initialize(2048);
    publicKey = keyPair.getPublic();
    privateKey = keyPair.getPrivate();
    String key = Base64.encodeToString(publicKey.getEncoded(), Base64.DEFAULT).trim();

    //decrypt data from server
    byte[] keyBytes = Base64.decode(encryptedText, Base64.DEFAULT);

    Cipher cipher = Cipher.getInstance(kpg.getAlgorithm());
    cipher.init(Cipher.DECRYPT_MODE, privateKey);

    decryptedBytes = cipher.doFinal(Base64.decode(encryptedText, Base64.NO_PADDING));
    decrypted = new String(decryptedBytes);

0 个答案:

没有答案