有对接过邮储支付的吗,他们给的密钥怎么使用

公司最近要对接邮储的支付,对方要将请求体用SM2加密,他们只有JAVA的demo,我不懂JAVA。我在网上找的国密包lpilp/guomi加密使用的密钥是一串16进制的字符,邮储给的密钥是加密过后的,不知道要怎样使用。

下面是JAVA生成的密钥方式

公钥

私钥

本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 10

java给的是用base64编码的pkcs8证书和x509公钥证书。 php要用的话,你提到的php使用的sm2库,需要把java提供的证书提取出来明文,然后给php的库用

4个月前 评论
deatil (作者) 4个月前
yhyh (楼主) 4个月前
yangweijie 4个月前

你可以用java写个解密,放tomcat里,然后用php调用那个java就行了。

4个月前 评论
yhyh (楼主) 4个月前

以前对接过EMS的也是只有个Java的demo,用的SM4,网上找不到示例,硬啃了一天Java。又因为那个服务器openssl版本的问题不支持SM4,找了PHP个扩展包,最后实际上PHP写起来也就几行代码,但是其他语言的demo都不给一个是真无语。

4个月前 评论
yhyh (楼主) 4个月前

大佬发一篇sm2处理过程的文章,学习一下啊。

3个月前 评论

上个月对接过 EMS下单功能,确实只有个 Java 的 demo,PHP本地openssl支持sm4,可以直接实现sm4加解密,但测试环境及线上openssl不支持,除非升级openssl,再编译php,大动干戈,最后写了个python,基于gmssl实现sm4加解密,php这边根据openssl的算法列表判断是否支持sm4,不支持就去执行python

2个月前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!