一背景:

产品提出能否对接芝麻信用,获取征信情况。给了个账号登录芝麻信用网站。

二 申请应用

申请应用有两个必填项:回调地址,跟公钥。

环境配置

这里网站上环境配置教程。:

我本地开发是windows环境,所以先下载OpenSSL。

这里网上有两种教程,1最简单,下载Windows版本的就行:链接:http://slproweb.com/products/Win32OpenSSL.html

根据自己情况选择对应版本 就行,推荐稳定版:Win64 OpenSSL v1.1.0f

第2种需要自己下载Perl手动编译。太麻烦了不是重点。所以没有试,感兴趣的可以自己尝试下

生成公钥

C:\Users\Hammer>cd C:\OpenSSL-Win32\bin %进入 OpenSSL 安装目录%
C:\OpenSSL-Win32\bin>openssl.exe %进入 OpenSSL 程序%
OpenSSL> genrsa -out rsa_private_key.pem 1024 %生成私钥%
OpenSSL> pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt -out rsa_private_key_pkcs8.pem %备注:Java 开发者需要将私钥转换成 PKCS8 格式%
OpenSSL> rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem %生成公钥%
OpenSSL> exit  %退出 OpenSSL 程序%

注意:对于使用 Java 和 .NET 的开发者,将 pkcs8 在 console 中输出的私钥去除头行、尾行、回车换行和空格,作为开发者私钥,对于 PHP 的开发者来说,无需进行 pkcs8 命令行操作。

经过以上步骤,开发者可以在当前文件夹中(Windows 用户在 C:\OpenSSL-Win32\bin)看到 rsa_private_key.pem和 rsa_public_key.pem 两个文件,前者为私钥,后者为公钥。开发者将私钥保留,将公钥提交给支付宝网关,用于信息加密及解密。以下为使用 OpenSSL 生成的私钥文件和公钥文件示例

这里把公钥贴进去,因为是快速验证性质的,所以回调地址写个空串,过了校验。

三 验证接口:

import com.antgroup.zmxy.openplatform.api.DefaultZhimaClient;
import com.antgroup.zmxy.openplatform.api.FileItem;
import com.antgroup.zmxy.openplatform.api.ZhimaApiException;
import com.antgroup.zmxy.openplatform.api.request.ZhimaCreditWatchlistiiGetRequest;
import com.antgroup.zmxy.openplatform.api.response.ZhimaCreditWatchlistiiGetResponse;public class TestZhimaCreditWatchlistiiGet {//芝麻开放平台地址private String gatewayUrl     = "https://zmopenapi.zmxy.com.cn/openapi.do";//商户应用 Idprivate String appId          = "***";//商户 RSA 私钥private String privateKey     = "***";//芝麻 RSA 公钥private String zhimaPublicKey = "***";public void  testZhimaCreditWatchlistiiGet() {ZhimaCreditWatchlistiiGetRequest req = new ZhimaCreditWatchlistiiGetRequest();req.setChannel("apppc");req.setPlatform("zmop");req.setProductCode("w1010100100000000022");// 必要参数 req.setTransactionId("20160101175625659000000000001");// 必要参数 req.setOpenId("268810000007909449496");// 必要参数 DefaultZhimaClient client = new DefaultZhimaClient(gatewayUrl, appId, privateKey, zhimaPublicKey);try {ZhimaCreditWatchlistiiGetResponse response = client.execute(req);System.out.println(response.isSuccess());System.out.println(response.getErrorCode());System.out.println(response.getErrorMessage());} catch (ZhimaApiException e) {e.printStackTrace();}}public static void main(String[] args) {TestZhimaCreditWatchlistiiGet result = new  TestZhimaCreditWatchlistiiGet();result.testZhimaCreditWatchlistiiGet();}
}

这里替换下必要参数(私钥换成pcks8之后的,公钥用生成的),提示出问题了

ZMOP.decode_private_key_error

仔细看了下文档:

需要从这里复制公钥,这个公钥也是我们生成公钥之后pcks8的。

再试试:

看出来了,就是openID错误了,这个本来就是用了demo的。

验证了文档上说的,芝麻信用查用户征信第一步需要用户授权。根据授权后返回的openid 进行后续的查询。

************************************************

总结:跟PM反馈了情况,建议目前目标用户与芝麻信用交集不大的情况,不能作为主流程环节。

适合在APP端上加上H5的授权环节(非主流程),后续的可以通过接口根据openid来进行进一步查询。

【芝麻信用对接】-decode_private_key_error相关推荐

  1. 【芝麻信用对接】欺诈信息验证

    芝麻信用地址: https://b.zmxy.com.cn/technology/openDoc.htm?relInfo=zhima.credit.antifraud.verify@1.0@1.1 优 ...

  2. 芝麻信用网页api php,谈谈php对接芝麻信用踩的坑

    谈谈php对接芝麻信用踩的坑 这里有新鲜出炉的PHP面向对象编程,程序狗速度看过来! PHP开源脚本语言 PHP(外文名: Hypertext Preprocessor,中文名:"超文本预处 ...

  3. 谈谈对接芝麻信用踩的坑

    由于项目需要,接入芝麻信用对用户进行认证,打开芝麻信用官方网站( https://b.zmxy.com.cn/index.htm)查看官方demo,在文档中看到如图: 瞬间觉得这个官方demo的垃圾了 ...

  4. 你绝对想知道:芝麻信用新域名xin.xin是个什么鬼!

    摘要: 为什么蚂蚁金服旗下的支付宝放弃.com域名,同为蚂蚁金服旗下的芝麻信用却启用一个新的后缀域名?究竟是什么让芝麻信用官网微博对外高调宣布新官网地址为www.xin.xin? 哎哟喂,史上超牛的域 ...

  5. php对应芝麻信用点滴

    由于项目需要对接芝麻信用,来验证用户身份的真实性 从注册,签约,应用创建,一切按照官方文档即可 上传自己生成的公钥后,复制芝麻公钥 注意,这个芝麻公钥只是简单的复制到剪贴板,没有公钥格式的 我们相关把 ...

  6. 自定义xy组 android,Android自定义view之仿支付宝芝麻信用仪表盘示例

    自定义view练习 仿支付宝芝麻信用的仪表盘 对比图: 首先是自定义一些属性,可自己再添加,挺基础的,上代码 接着在构造方法里初始化自定义属性和画笔: private void initAttr(At ...

  7. 芝麻信用分750以上有什么特殊作用?

    芝麻是蚂蚁金服旗下的一个信用体系,它的信息采集来源包括阿里巴巴体系里的一些平台,比如淘宝,天猫,借呗,花呗,支付宝,余额宝以及其他授权芝麻信用获取信息的平台. 而芝麻信用分的高低代表的是一个人综合的信 ...

  8. 芝麻信用很高,为什么贷款还是被拒了?

    之前见过这样一个朋友,他的芝麻信用680以上,借呗额度是2万,但是去申请贷款的时候还是被拒了. 看到这很多人可能觉得为什么芝麻信用这么高,贷款还是会被拒了呢? 其实芝麻信用不能等同于个人信用,就目前情 ...

  9. android自定义表盘部件,Android自定义view仿支付宝芝麻信用表盘

    演示效果 实现步骤: 1.画不同宽度和半径的内外圆弧 2.通过循环旋转canvas,在固定位置绘制短线刻度,长线刻度,刻度文字 3.绘制view中心几个文本,并调整位置 4.实时更新当前旋转角度刷新小 ...

最新文章

  1. keras 的 example 文件 cifar10_resnet.py 解析
  2. python学习笔记011——内置函数__module__、__name__
  3. Configuring the VNC server/viewer in Linux.
  4. Load Runner测试脚本(tuxedo服务)的编写指南
  5. 1001:Hello,World!
  6. HTTP header location 重定向 URL
  7. 在安装mysql出现的错误以及解决方法
  8. Tomcat:JAVA_HOME should point to a JDK not a JRE解决
  9. 互联网金融学习总结(5)——市场主流的风控模型简要学习总结
  10. Scrapy框架爬取下载王者荣耀英雄壁纸
  11. Threadlocal学习及内存泄漏原因和解决方案
  12. 【python】录音语音识别
  13. 美团后台开发笔试-数字字符
  14. (附源码)Springboot宠物领养系统毕业设计241104
  15. 【Python安装配置教程】
  16. 笔记—ARM体系结构与编程(汇编指令)第二天
  17. RxJava(10-操作符原理自定义操作符)
  18. mysql Access denied for user 'root'@'localhost' (using password: YES)
  19. 中断深入-->休眠唤醒(通用)
  20. 微软-2020暑期实习生招聘-笔试

热门文章

  1. 手工测试混了5年,年底接到了被裁员的消息....
  2. sdl 打开耳机_SDL 开发实战(七): 使用 SDL 实现 PCM播放器
  3. 2014年10月18号到19号在成都举行的重庆移动校园招聘笔试面试经历——技术岗
  4. Android集成百度语音识别到HelloWorld需要注意什么?(保姆级教学)
  5. python爬虫——如何爬取ajax网页之爬取雪球网文章
  6. SSM后台管理系统开发实战
  7. 快运和快递有哪些区别
  8. 对《将原装NOKIA耳机HS-23改装成3.5口》的补充
  9. CSS保姆级别教程(持续更新)
  10. 抖音文案怎么写吸引人情感,2021抖音经典短句