#常见问题#【熊说银企云】中国建设银行-现金管理国密版-银企测试阶段-公钥交互异常(100002001应答长度不正确)原创
金蝶云社区-福分小熊
福分小熊
5人赞赏了该文章 1107次浏览 未经作者许可,禁止转载编辑于2023年08月31日 19:52:58

关键词:银企直联、中国建设银行、密钥交互

参考文档:


更新日志:

20230207V1.0.0:初稿

20230831V1.1.0:更新银行后台系统查看当前日期的拍照截图、更新相关帖子到总结中。


前提,确认自己做的前置机代理程序客户公钥交互可以正常访问到。

image.png


1.问题描述

问题现象、报错信息

提示:下载客户公钥失败。100002001应答内容长度不正确。

image.png




2.原因分析

分析问题出现的可能原因(视情况而定)

image.png

结合日志查看,银行端IP为124.127.94.34,符合银企端的IP。

有正常返回给银行端服务。

而key组合,结合金蝶银企前置机代理程序看,key编码规则为0000000+电子银行合约号+密钥生成日期


结合银行总行提醒,目前接入的测试环境为PL2,PL2环境属于环境非自然日,使用日期需要与建行测试环境日期。

具体PL2环境时间见文档如:

附件2:2023年2月测试环境批处理及任务安排

查看对应日期对应银行系统日期。

image.png

或者让银行老师拍照下他们的界面下,如下图所示:

image.png



3.解决方法

解决思路/操作步骤

建设银行总行提醒,目前PL2环境非自然日,使用的日期需要与建行测试环境日期一致。

(1)将前置机代理程序的时间调整得跟银行服务器的时间,然后重启前置机代理程序,启动生成公钥


(2)银行交互获取客户方公钥,生成密钥。


(3)银企平台获取银行密钥,启动建行现金管理前置机代理服务。

image.png

在指定文件夹会生成sm4密钥

image.png

4.应用小结

注意事项;补充说明(视情况而定)

银行测试环境的日期不一定就是当前日期,比如建行现金管理版本,刚好密钥交互就是跟交互的日期有关。


和建设银行进行密钥交互,密钥的主要组成部分为

(1)一串字符串:000000+客户号+当日日期yymmdd格式

(2)对应的加密方式;des、sm4


上述其中一个出现问题,就是会出现密钥交互提示:下载客户公钥失败。10002001应答内容长度不正确。

(1)当日日期不对的话:就是遇到情况如下,就是我端的服务器日期和银行端服务器日期不一致,就会导致报错。

#常见问题#【熊说银企云】中国建设银行-现金管理国密版-银企测试阶段-公钥交互异常(100002001应答长度不正确)


(2)加密方式不同:

我选的是sm国密版的加密方式,对方却选择des非国密版的加密方式,如下帖子:

#常见问题#【熊说银企云】中国建设银行-现金管理国密版-银企投产阶段-公钥交互异常(100002001应答长度不正确)


(3)金蝶前置机代理程序未重启

#常见问题#【熊说银企云】中国建设银行-现金管理国密版-银企测试阶段-公钥交互异常(100002001应答长度不正确)2 


因为金蝶前置机代理程序中,建设银行现金管理版本默认是des版本,当修改为sm4时,需要重启前置机代理程序才能解决,否则就会出现报空指针的情况。


赞 5