有赞新零售社区

发帖
API使用问题»调用SDK解密异常:使用了错误的密钥进行加解密操作

[API调用-其它] 调用SDK解密异常:使用了错误的密钥进行加解密操作

tucw 2022-05-27 1178 浏览 1 评论 | 只看楼主 [打印]
应用名称:牵牛花内部测试APPID:44963
测试店铺:
有赞连锁L-总部-高级版 (2)  云测试店铺CUFhf  103120408
下的 有赞连锁L-网店-Lite 连锁版测试1店 103191609


问题描述: 使用这个应用信息里的client_id和client_secret进行解密时,提示:
com.youzan.cloud.open.security.exception.DataSecurityException: code:1000,message:aesDecrypt加密出现异常
        at com.youzan.cloud.open.security.utils.SecretUtils.aesDecrypt(SecretUtils.java:146)
        at com.youzan.cloud.open.security.OpenClientSecretServer.decrypt(OpenClientSecretServer.java:87)
        at com.youzan.cloud.open.security.SecretClient.decrypt(SecretClient.java:75)
        at net.techfuser.yz.service.impl.TfOrderServiceImpl.extractAddressInfo(TfOrderServiceImpl.java:890)
        at net.techfuser.yz.service.impl.TfOrderServiceImpl.convert(TfOrderServiceImpl.java:687)
        at net.techfuser.yz.service.impl.TfOrderServiceImpl.pullOrderByTid(TfOrderServiceImpl.java:153)
        at net.techfuser.yz.listener.TradeListener.execute(TradeListener.java:97)
        at net.techfuser.yz.listener.TradeListener.consumer(TradeListener.java:53)
        at net.techfuser.platform.mqclient.impl.order.OrderConsumerImpl$1.consumeMessage(OrderConsumerImpl.java:82)
        at org.apache.rocketmq.client.impl.consumer.ConsumeMessageOrderlyService$ConsumeRequest.run(ConsumeMessageOrderlyService.java:471)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
Caused by: com.youzan.cloud.open.security.exception.DataSecurityException: code:1005,message:使用了错误的密钥进行加解密操作
        at com.youzan.cloud.open.security.utils.SecretUtils.aesDecrypt(SecretUtils.java:162)
        at com.youzan.cloud.open.security.utils.SecretUtils.aesDecrypt(SecretUtils.java:142)
        ... 14 common frames omitted
Caused by: com.youzan.cloud.open.security.utils.CryptException: 使用了错误的密钥进行加解密操作
        at com.youzan.cloud.open.security.utils.Cryptos.aes(Cryptos.java:204)
        at com.youzan.cloud.open.security.utils.Cryptos.aesDecrypt(Cryptos.java:166)
        at com.youzan.cloud.open.security.utils.SecretUtils.aesDecrypt(SecretUtils.java:159)
        ... 15 common frames omitted
Caused by: javax.crypto.BadPaddingException: Given final block not properly padded. Such issues can arise if a bad key is used during decryption.
        at com.sun.crypto.provider.CipherCore.unpad(CipherCore.java:975)
        at com.sun.crypto.provider.CipherCore.fillOutputBuffer(CipherCore.java:1056)
        at com.sun.crypto.provider.CipherCore.doFinal(CipherCore.java:853)
        at com.sun.crypto.provider.AESCipher.engineDoFinal(AESCipher.java:446)
        at javax.crypto.Cipher.doFinal(Cipher.java:2168)
        at com.youzan.cloud.open.security.utils.Cryptos.aes(Cryptos.java:202)
        ... 17 common frames omitted



请问是什么原因呢,跟店铺有关系么,这个店铺有两个应用都绑定了。

用手机打开
收藏 ··· 回复
       有赞云团队   2022-05-27 | 只看该作者
    您好,辛苦检查下密文来源的店铺ID,与解密的token对应的店铺id是否一致。调用解密接口token的clientId(应用id)+kdtId(店铺id) 和 加密时token的保持一致,例如 加密时 使用应用A + 店铺A 生成token请求订单接口,订单接口响应加密的手机号,则解密时也要用应用A + 店铺A 来生成 token解密

      1跳至
      您需要登录后才可以回帖 登录 | 立即注册

      本版积分规则

      复制链接
      新浪微博
      QQ空间
      微信扫码
      • 回复

      • 评分

      客服工作时间是9:00-18:00,客服妹子当前不在线,若不能及时回复请谅解。试试右上角的搜索吧,论坛有丰富的经验贴、公告贴,相信一定能够帮到您~

      复制成功