解密内容后unable to decrypt block?

2022/11/21
提问
String encryptRandomKey = data.getString("encrypt_random_key");
//加密聊天消息
String encryptChatMsg = data.getString("encrypt_chat_msg");
long msg = Finance.NewSlice();
try {
    // 获取加密密钥

    String encryptKey = RSAEncrypt.decryptRSA(encryptRandomKey, priKey);
    这里报错
    log.info("解析密文.企业微信自有解密内容");
      main] com.mall.dms.service.crm.TestSdk         : 加载企业微信sdk开始   
2022-11-21 11:06:53.954  INFO [mall-dms] [] --- [           main] com.mall.dms.service.crm.TestSdk         : 创建企业微信sdk成功   
2022-11-21 11:06:53.954  INFO [mall-dms] [] --- [           main] com.mall.dms.service.crm.TestSdk         : 读取配置文件  corpid:ww4f48df59fad3585a  secret:5NgTlAI0Edm4rO24wdt6bQJUyKhupk2u516CGK3oGLU  priKey:-----BEGIN RSA PRIVATE KEY-----
MIIEowIBAAKCAQEAxypyzb2j7txNEc6tIyHh2qD2LpV5E+EXaTUtZNZL8X/QumZ6
fbJMOSBs5wrlecRG1ftYrN9XIp+wOki7TjO5KISZ6SArQKFbIPYaOz/SE4eK2JkQ
4+Fwium14cdE5OhxCZxpzJRimncYrUBzwvEMxcIK/49pXbLGfE7Rz+fo9/h+EU3j
aq7onpkdqkGUDTxFu3Vk/Tl2mi/DY8hoGQXDQwV0Y6TVshTXICBwPEtEX4CQuNoR
gE73tbBZxMQ2SoL/WtAIkOBtYSkTLr6Vjts/8OBOaqFuiCT8Sd0Qj507SsQVpRrr
aEExUKboyDunUZNpN6Ju5OuvkfOkDQaclh37+wIDAQABAoIBABH3Br7/LaPUlFEY
Yu6p1j0Jytr92ZuM8LcpOEyBtfz1Kgc+Sis/Y3e9sIUQqw1WQot3rhJ93Na/L766
I8cUjE2W1Gk+YRhl1Zn+CPSyN4lSbxhFikv74FJvbVwNxO2e999FkBeHhPNo7b1m
9GovoxbNf3942Ki+gP/ifjNyOEXxp74u4ZtTrEjnp/0xvAcENfsqolcWVwFtiOl+
7UfuhYZnJGWpNpXN7NArfS+1IunPi91otcFwSs8WgSLKev9GloU/mZs1jNwo9ZIT
isgOqVgfckSeg2mSLvMtnfVTNk7X1vBDW910X5f0UbcN7V87Enu/EeeLUDosaZjx
aTBSZrUCgYEAy8fZp7SARVCxCE6y7oefaCZPvGkSskY2bff23QE7EocJvA5VU2ge
VPgLNyFP5k0Wq7slsvrdeoNFjpl6GX4ErHon3mezOJ6kt4TB1CzwdyHWI2o5cPNi
MnC6HJ6rULamlDONK+QoL2IuAi+PLuT4UThDRayPAIPoiEQ6PAYXUZUCgYEA+jPc
ZFK4GyucegyaDEZa2LdPYgvW/opirlj3Sy4lWiX82sqOI7sThJlmbU0zxH3VoXrV
FE+c07nzFnblToCY1eIwY2AlYu+bFVsqpMZjX2QbJf85i0tgLl22kz4hKCKEzGwm
OJAPsd4FHctr57vmhcNTkf4g45AxGOkrNdp2008CgYBt1VKX1G7KbVptqtVAQTMG
1Jdnao6cLcHKdbrFlZM8QjJZ/LO6l8S5cVPCLB8/ds9AUkdYd2QGU1ibKleoA8cL
G2//rI7pdoA7Nb+u12XoIAGl5uv82AFWRHHbWR3nC/sup7ZwMLIED/vSS8X1tY2t
YRDJLd+JnI8pWvS0Q2gwHQKBgCkg30iqhFMLDzTM34HHCuX29Bik45mB/Ai23SfB
lShFeFQq2cSr2uCAKuMqvqi9GqHpxB8Lmzb+qSP3NWh7ISR/gv7C7kJeKrsO+mqN
pgYnOYM8eiQYpt3YT8vSebbUPcowuPOxUrMlUOf96WX1cEZqvlEQWi2uJTP4GD9J
AyFnAoGBAJPfpoC4G4T74KvewsfOANNpvayRTWcJrQLzYwloPhbFVwqqallEmLuO
nD2Ac0hRixB3lVsb94Jtzlb6FE3nU8bnNG3gXPrTZUr4Rujt6kQMoStIR43l69fI
f+F9wIj42g9kgpxxmmSMs074QKgCq6Bt4DxUfYRssX18bpbZIqF7
-----END RSA PRIVATE KEY-----
   
2022-11-21 11:06:54.330  INFO [mall-dms] [] --- [           main] com.mall.dms.service.crm.TestSdk         : 0,拉去的聊天记录密文结果:{"errcode":0,"errmsg":"ok","chatdata":[{"seq":57995,"msgid":"16389650382171578156_1668568021369_external","publickey_ver":1,"encrypt_random_key":"q9dlNhSra8zw5r8j8tq+VtbVsM021So92KgXrBieHfEUBVrzdhLfSZut0YfQI68za9uLg5zmZOMMf7wvj85+ZZfI0Gm1KwMI3fQc9Az8DIFScSu1q/VeKbsCthmA/YKEX/zqnWeh2P1tmPh77KoMJJ8KkO7C2NCSmLBltPqmNs0lOqNHo5GWLM5iJuZJPS/mIPLbkmHjUbFIrVvUboo8V/Ybn6Kha68hq/1lIvz11HiGhaZ2rJ16V3g03a7Hf7B9EPyqKxk0R46hs8us2M4Pn7VlopQxzd+Yi18iE0wGhAu6mY2Fa1/ZRzJhEAVsTTVCMImW+R8ap7OsjPsqtU1mXw==","encrypt_chat_msg":"OjSEpY8XcWLx9kX5kOopp//XtvG+sDKphdffw8rjn5kPAK6WFGeXHvThMdNHCNfNfhzFcH99oSEguB47gkV2FHcdtCtCe/qZ+lKyhkIfapvGOrj7OF1yIq+DEIhOICR4YQv9te3qRV1PXMo8VSqOo0fu2pEEWFeRMJDPo9A2SGB1l2Gpb8wH4SVeTVapw2av1puQokrzEI8z5Y/L4EcZve+Yu0bzkfwm5LoMn44gQ6TAakUP1ovd0tUYwBG2tLub68QL/KKEhLAdmvgifyLvT8CVSMhIWpat/7QXJYOq2THbDYqlcc3ArvUIwTGVoJi1DHsa+1RP4et1CVq+0OQBEQLMsPyM8Z7gCFQSKzagpOI9a8FVIoTmWHc71JIajsdOzv1pOxZnr1Nvi59TinHJ1Ao6x2howW+bGWuSdD3NmL96IxbpPJGAVNZiNRxscObd0thHk0bvE8/jPj8ZZi5hsWadqdrpqcA6u19V9lgXOGCpXiQZYtiu9xd1w7qcTc5zuHEK+fvmCPP8WbMbBmt2f7VX1+VagCNjZWXv9ihyYd2W1I=m"}]}   
2022-11-21 11:06:54.330  INFO [mall-dms] [] --- [           main] com.mall.dms.service.crm.TestSdk         : 开始循环处理,第0条数据   
2022-11-21 11:06:54.827 ERROR [mall-dms] [] --- [           main] com.mall.dms.service.crm.TestSdk         : 循环拉会话异常:e:{}
org.bouncycastle.jcajce.provider.util.BadBlockException: unable to decrypt block
	at org.bouncycastle.jcajce.provider.asymmetric.rsa.CipherSpi.getOutput(Unknown Source) ~[bcprov-jdk15to18-1.64.jar:1.64.0]
	at org.bouncycastle.jcajce.provider.asymmetric.rsa.CipherSpi.engineDoFinal(Unknown Source) ~[bcprov-jdk15to18-1.64.jar:1.64.0]
	at javax.crypto.Cipher.doFinal(Cipher.java:2168) ~[na:1.8.0_321]
	at com.mall.dms.utils.RSAEncrypt.decryptRSA(RSAEncrypt.java:28) ~[classes/:na]
	at com.mall.dms.service.crm.TestSdk.pullChat(TestSdk.java:95) ~[test-classes/:na]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_321]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_321]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_321]
	at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_321]
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50) [junit-4.12.jar:4.12]
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) [junit-4.12.jar:4.12]
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47) [junit-4.12.jar:4.12]
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) [junit-4.12.jar:4.12]
	at org.springframework.test.context.junit4.statements.RunBeforeTestExecutionCallbacks.evaluate(RunBeforeTestExecutionCallbacks.java:74) [spring-test-5.1.14.RELEASE.jar:5.1.14.RELEASE]
	at org.springframework.test.context.junit4.statements.RunAfterTestExecutionCallbacks.evaluate(RunAfterTestExecutionCallbacks.java:84) [spring-test-5.1.14.RELEASE.jar:5.1.14.RELEASE]
	at org.springframework.test.context.junit4.statements.RunBeforeTestMethodCallbacks.evaluate(RunBeforeTestMethodCallbacks.java:75) [spring-test-5.1.14.RELEASE.jar:5.1.14.RELEASE]
	at org.springframework.test.context.junit4.statements.RunAfterTestMethodCallbacks.evaluate(RunAfterTestMethodCallbacks.java:86) [spring-test-5.1.14.RELEASE.jar:5.1.14.RELEASE]
	at org.springframework.test.context.junit4.statements.SpringRepeat.evaluate(SpringRepeat.java:84) [spring-test-5.1.14.RELEASE.jar:5.1.14.RELEASE]
	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325) [junit-4.12.jar:4.12]
	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:251) [spring-test-5.1.14.RELEASE.jar:5.1.14.RELEASE]
	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:97) [spring-test-5.1.14.RELEASE.jar:5.1.14.RELEASE]
	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290) [junit-4.12.jar:4.12]
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71) [junit-4.12.jar:4.12]
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288) [junit-4.12.jar:4.12]
	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58) [junit-4.12.jar:4.12]
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268) [junit-4.12.jar:4.12]
	at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61) [spring-test-5.1.14.RELEASE.jar:5.1.14.RELEASE]
	at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:70) [spring-test-5.1.14.RELEASE.jar:5.1.14.RELEASE]
	at org.junit.runners.ParentRunner.run(ParentRunner.java:363) [junit-4.12.jar:4.12]
	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:190) [spring-test-5.1.14.RELEASE.jar:5.1.14.RELEASE]
	at org.junit.runner.JUnitCore.run(JUnitCore.java:137) [junit-4.12.jar:4.12]
	at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:69) [junit-rt.jar:na]
	at com.intellij.rt.junit.IdeaTestRunner$Repeater$1.execute(IdeaTestRunner.java:38) [junit-rt.jar:na]
	at com.intellij.rt.execution.junit.TestsRepeater.repeat(TestsRepeater.java:11) [idea_rt.jar:na]
	at com.intellij.rt.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:35) [junit-rt.jar:na]
	at com.intellij.rt.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:235) [junit-rt.jar:na]
	at com.intellij.rt.junit.JUnitStarter.main(JUnitStarter.java:54) [junit-rt.jar:na]
Caused by: org.bouncycastle.crypto.InvalidCipherTextException: block incorrect
	at org.bouncycastle.crypto.encodings.PKCS1Encoding.decodeBlock(Unknown Source) ~[bcprov-jdk15to18-1.64.jar:1.64.0]
	at org.bouncycastle.crypto.encodings.PKCS1Encoding.processBlock(Unknown Source) ~[bcprov-jdk15to18-1.64.jar:1.64.0]
	... 37 common frames omitted


   


回答·1

已有相同问题

https://developer.work.weixin.qq.com/community/question/detail?content_id=16391018961884147931

赞同
评论