SAP银企直联非EPIC方式

更新时间:2024-03-30 19:42:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

SAP银企直连(非EPIC方式)

由于SAP自带的银企直连不太适合中国的财务系统,EPICP有些适合中国的银行接口,可EPIC对业务有局限性,所以很多企业的项目大都是要求ABAP自开发,这下就苦逼了我们小ABAP了,记得15年的时候在连云港盛虹ShiHua项目和银行做的银企直连,由于银行都是SOCKET的通讯方式,且有的银行前置机是NC的交互,我们SAP通讯WS,IDOC,RFC,DBlink等,但SAP又不能SOCKET通讯,SAP有PI,可有些企业不上PI模块,咋搞啊?后来转机一想,那咱就在前置机上做接口转换吧,然后就和兄弟合伙一起开发一个插件,解决银行和和SAP银企直连数据交互的问题。

今年兄弟让给内蒙中天HeChuang能源的公司做银企直连,想想都是之前做过的,应该没什么问题,满口答应了, 可发现有些银行现在不玩NC的方式了,银行的接口也在更新技术, 拿建行为例:之前是NC方式,现在是http_post方式,银行也不提供NC的客户端了,也没硬件加密(加密狗), 加解密都是要自己写,那好吧, 只能自己想办法了, 在前置机上做加解密,数字签名... 一、密钥交换

建行RSA密钥,密钥交换就是把自己的 公钥 让建行下载,然后自己从建行那获取建行的 RSA公钥 及 DES密钥。建行通过post方式下载公司公钥。要求该公钥要使用DES加密(密钥: 电子银行合约编号后十位+当前日期六位(yyMMdd),建行提供了一段asc2bin代码,经此变换后的才是真正的DES密钥; 明文:RSA公钥明文进行BASE64编码转换)加密后的bytes需要按照建行的要求在头部增加六个000000,生成文件后转给建行下载。建行下载成功

后,我方下载建行的RSA公钥DES密钥,建行的密钥也是加密过的,需要用相同的方法解密。 二、传输报文

传输报文使用post方式,需要: 1、电子银行合约编号 明文

2、报文密文(DES加密,BASE64编码转换) 3、报文签名(RSA@MD5) 交易明细接口函数

三、传输文件

例如恒安JiTuan需要大批量代收代付(发工资什么的等业务),既然做的话,就尽量把项目做得完美,首先我方先把批量代发的数据以TXT格式传给前置机,然后前置机再进行加密+签名,然后上传给建行的系统,建行返回加密摘要和文件路径给SAP,根据这个返回SAP再组织XML报文发送代付申请,完成文件上传及申请业务操作,传输文件使用post方式,需要:

1、电子银行合约编号 明文

2、文件名密文(DES加密,BASE64编码转换)

3、文件名签名(RSA@MD5)

4、文件内容密文(DES加密,BASE64编码转换)

5、文件类型密文(见建行规定)(DES加密,BASE64编码转换)

上面两行是给建行发送文件后, 第三行,是对密文解密后的原文

忙活了半个月终于通了,还是NC方式简单,前置机与银行交互由银行提供客户端即加密狗完成,现在想想觉得这样通讯方式的确比NC方式更安全些,更坑我们ABAP小开发了,可大部分企业都是用内网的,没必要呀,欢迎小ABAP们QQ技术交流58009036,下辈子不做开发了

本文来源:https://www.bwwdw.com/article/krer.html

Top