Android 如何在安卓系统中进行解密错误体改造?

Android 如何在安卓系统中进行解密错误体改造?,android,encryption,Android,Encryption,我对使用改装的响应中的解密错误体有问题。 我可以从下面的改装中获得错误主体: val json = JSONObject(res.errorBody?.string()) val data = json.get("data").toString() 注释:错误正文 {“数据”:“BSV9RBDM4GIDX6JVYDSUPKRMTL6JZHZOFIUCZ+R78SBR3TUCJQ9IDQ7WL9QKTFDMPxCMUBIKFZQZBMNYOALA9BTGDYA/6lkJQjA

我对使用改装的响应中的解密错误体有问题。 我可以从下面的改装中获得错误主体:

val json = JSONObject(res.errorBody?.string())
val data = json.get("data").toString()
注释:错误正文

{“数据”:“BSV9RBDM4GIDX6JVYDSUPKRMTL6JZHZOFIUCZ+R78SBR3TUCJQ9IDQ7WL9QKTFDMPxCMUBIKFZQZBMNYOALA9BTGDYA/6lkJQjAOk=“”}

之后,我需要将对象数据解密为真实数据。以下是我的加密:

fun decrypt(encrypted: String?, iv: String, key: String): String {
            return try {
                val sKeySpec = generateKey(key)
                val ivKey = generateIV(iv)

                val cipher = Cipher.getInstance("AES/CBC/PKCS5Padding")
                cipher.init(Cipher.DECRYPT_MODE, sKeySpec, ivKey)
                val original = cipher.doFinal(Base64.decode(encrypted, Base64.NO_WRAP))
                return String(original, Charsets.UTF_8)
            } catch (e: Exception) {
                Timber.e("Error Decrypt: $e")
                ""
            }
}

呼叫加密

val decryption = EncryptionUtils.decrypt(data, iv, key)
Timber.e("oooo: ${decryption}")
所以当我记录解密时,它显示如下:

ApiError(代码=401,消息=Unauthorized,数据=null,错误=null)

但来自服务器的真实数据响应如下所示:

{“代码”:401,“消息”:“未经授权”…}

我不知道出了什么问题。 各位,请帮我解决为什么会这样回来

ApiError(代码=401,消息=Unauthorized,数据=null,错误=null)

我希望它像下面那样返回:

{“代码”:401,“消息”:“未经授权”…}


你能提供所有必要的数据来重现吗?因为目前您只添加了部分代码(甚至没有编译),并且缺少数据。请参阅