进行支付宝开发的第一步就是:配置密钥

但是有很多小伙伴都不知道怎么配置,这篇文章将手把手帮你从头开始捋清如何配置支付宝密钥~

这次首先放一下官方文档:[如何生成及配置 RSA2 密钥],大佬们也可以选择直接跟着文档流程来。

这次主要分享一下「如何配置普通 RSA2 密钥」,证书相关内容放在下次和大家展开╮( ̄▽ ̄)╭

前期准备:普通密钥的适用范围

只要不是「单笔转账」和「现金红包」这两个产品,其他产品都可以使用到普通密钥。

那么,「单笔转账」和「现金红包」这种资金类的服务使用什么呢?

答案是必须使用公钥证书。详情可参阅 [什么接口推荐使用公钥证书签名]

划重点:支付宝密钥的主要用处

RSA2 密钥主要获取到三个参数,应用公钥应用私钥支付宝公钥。

  • 其中 应用公钥 是要拿来跟支付宝换 支付宝公钥 的。
  • 支付宝公钥 应用私钥 是要传到代码中进行接口调用的。

第一步:生成密钥

配置密钥的第一步就是要先 生成一个密钥,这里需要下载支付宝官方工具:密钥生成工具

通过这个工具我们可以获取到 应用公钥 应用私钥,如下图:

选择【密钥】、【RSA2】去生成:

注意:应用公钥 是要拿到支付宝平台跟支付宝换 支付宝公钥 的。

注意:应用私钥 先好好保存到本地,后续要写到代码里面的;如果这个私钥要是给出去了,账号上的资金就得小心了。

[应用私钥泄露会怎么样]

特别注意:这个工具生成的密钥默认是 Java 语言(PKCS8 格式)使用的,如果是其他语言,请用工具中的【格式转化】,把密钥转化成 PKCS1 格式。

[如何区分密钥格式类型]

第二步:配置密钥

配置密钥的过程就是讲 应用公钥 要怎么去跟支付宝换 支付宝公钥。

其实官方的指引流程比较详细了,只要找到配置的位置,接下来的步骤就比较顺利。

位置在支付宝开放平台对应的应用界面下:

没有应用的小伙伴先可以创建一个应用 [如何创建应用]

点击【设置】,选择【密钥】:

点击【下一步】,会有一个如何生成密钥文件的指引说明,也就是本文之前说的生成密钥步骤:

直接将之前获取的 应用公钥 放进去点击上传就可以啦:

点击【上传】之后,会有一个校验,用验证码或者是支付密钥校验都可以:

上传成功之后,就可以换到 支付宝公钥

第三步:如何使用密钥

通过上文的配置密钥的流程,我们就能拿到需要传入到代码中的 应用私钥 支付宝公钥

先放个参考示例供大家查阅:

[手机网站支付的代码参考示例]

<?php
require_once '../../aop/request/AlipayTradeWapPayRequest.php';
require_once '../../aop/AopClient.php'; $Config=new Config(); /** 引用初始化方法,Config配置链接:https://opensupport.alipay.com/support/FAQ/08d46c24-15a8-4f1c-85a0-68fdf587f813 **/
$alipayClient = new AopClient ();
$alipayClient->gatewayUrl = $Config->gatewayUrl;
$alipayClient->appId = $Config->app_id;
$alipayClient->rsaPrivateKey = $Config->merchant_private_key;
$alipayClient->alipayrsaPublicKey=$Config->alipay_public_key;
$alipayClient->signType = $Config->sign_type;
$alipayClient->postCharset=$Config->charset;
$alipayClient->format=$Config->format;
$alipayClient->apiVersion = $Config->version; $request = new AlipayTradeWapPayRequest ();
$object = new stdClass();
$object->out_trade_no ="2020061601290011200000140004";
$object->subject = "subject";
$object->total_amount = "0.01";
$object->product_code = "QUICK_WAP_WAY";
$bizContent=json_encode($object); $request->setBizContent($bizContent); /** 异步通知地址,以http或者https开头的,商户外网可以post访问的异步地址,用于接收支付宝返回的支付结果 **/
$request->setNotifyUrl($Config->notify_url); /** 调用SDK生成支付链接,可在浏览器打开链接进入支付页面 **/
$result = $alipayClient->pageExecute ($request,"GET");//生成url链接 print_r(htmlspecialchars($result));
 

代码中这两个参数对应的位置为:

rsaPrivateKey 传入 应用私钥

alipayrsaPublicKey 传入 支付宝公钥

以上就是配置「支付宝密钥之如何配置普通 RSA2 密钥」的教程啦~,希望对你有所帮助~✿✿ヽ(°▽°)ノ✿

下期将继续讲述证书相关等内容~

如何配置支付宝密钥之如何配置普通 RSA2 密钥|保姆级教学(一)的更多相关文章

  1. 支付宝电脑支付沙箱配置(JAVA)

    支付宝电脑支付API地址:https://docs.open.alipay.com/270/105899/.支付宝提供了沙箱环境提供测试,具体配置步骤如下 1.先下载测试DEMO工程 下载地址:htt ...

  2. Android Studio 多个编译环境配置 多渠道打包 APK输出配置

    看完这篇你学到什么: 熟悉gradle的构建配置 熟悉代码构建环境的目录结构,你知道的不仅仅是只有src/main 开发.生成环境等等环境可以任意切换打包 多渠道打包 APK输出文件配置 需求 一般我 ...

  3. 配置Tomcat使用https协议(配置SSL协议)

    配置Tomcat使用https协议(配置SSL协议) 2014-01-20 16:38 58915人阅读 评论(3) 收藏 举报 转载地址:http://ln-ydc.iteye.com/blog/1 ...

  4. 项目重构之数据源配置与优化:log4j 配置数据库连接池Druid,并实现日志存储到数据库

    作者:泥沙砖瓦浆木匠网站:http://blog.csdn.net/jeffli1993个人签名:打算起手不凡写出鸿篇巨作的人,往往坚持不了完成第一章节. 交流QQ群:[编程之美 365234583] ...

  5. SecureCRT 下载,安装,绝佳配色,实用配置,上传下载配置合集

    SecureCRT 下载,安装,绝佳配色,实用配置,上传下载配置合集 chocoball 发布于 2年前,共有 3 条评论 SecureCRT 是一款支持 SSH2.SSH1.Telnet.Telne ...

  6. Linux 安装配置 NET模式网络环境配置

    1.下载linux:发行版 Ubuntu  REdHat centos Debain Fedora,SUSE,OpenSUSEcentos 6.xcentos 7.x在虚拟机(VmWare)上 安装l ...

  7. CentOS 7配置LNMP开发环境及配置文件管理

    安装并配置MySQL 5.6 从CentOS从7.x开始默认使用MariaDB.MariaDB完全兼容MySQL,包括API和命令行.但是很多时候我们还是会想要安装MySQL,所以不能直接通过yum命 ...

  8. ASP.NET Core的配置(5):配置的同步[设计篇]

    本节所谓的"配置同步"主要体现在两个方面:其一,如何监控配置源并在其变化的时候自动加载其数据,其目的是让应用中通过Configuration对象承载的配置与配置源的数据同步:其二. ...

  9. ASP.NET Core的配置(5):配置的同步[ 实例篇]

    ConfigurationBuilder在生成以Configuration对象的时候会利用注册其中的ConfigurationProvider加载原始的配置数据,那么一旦配置源中的数据发生变化,应用程 ...

  10. 基于XML配置的spring aop增强配置和使用

    在我的另一篇文章中(http://www.cnblogs.com/anivia/p/5687346.html),通过一个例子介绍了基于注解配置spring增强的方式,那么这篇文章,只是简单的说明,如何 ...

随机推荐

  1. pikachu平台XXE漏洞通关教程详解

    声明! 如涉及侵权马上删除文章,笔记只是方便各位师傅的学习和探讨,文章所提到的网站以及内容,只做学习交流,其他均与本人无关,切勿触碰法律底线,否则后果自负!!!! 文章来自个人csdn博客,地址:ht ...

  2. spring 使用 事件机制

    概述 在编写代码的时候,比如我删除一篇文章,这个时候,如果我想做些额外的逻辑,这是就需要修改删除部分的代码.spring 提供了事件机制更优雅的实现这个,用户只需要实现事件监听即可. 代码实现 注入发 ...

  3. H5C3时钟实例(rem适配)

    1.原理分析和效果图 先上效果图: 屏幕适配上使用rem适配,假设用户的手机屏幕最下宽度是375px,而谷歌浏览器最小的字体大小为12px,所以我以375px为标准尺寸进行rem适配,即375px的屏 ...

  4. GPU服务器常见问题汇总

    目录 Q1.从启动盘安装时黑屏/屏幕卡住? Q2.1T固态硬盘Ubuntu系统磁盘分区策略: Q3.安装Ubuntu需要选择更新吗? Q4.安装Ubuntu后重启无法开机? Q5.首次开机的配置代码? ...

  5. 使用JSch进行sftp的连接运行状况检查

    public boolean checkConnection() throws JSchException { try { JSch jsch = new JSch(); Session sessio ...

  6. JDBC核心6步

    1JDBC简介 java DataBase Connectivity,又称java数据库连接 是独立于任何数据库管理系统的api java提供接口规范,由各个数据库厂商提供接口的实现,厂商提供的实现封 ...

  7. 编译Sophus报错: error: implicitly-declared 的参考解决方法

    一.问题描述 自己在编译Sophus时遇到如下错误: /home/wong/Datum/third_party/Sophus-1.0.0-template/Sophus-1.0.0/test/core ...

  8. [转]Vetur can't find `tsconfig.json` or `jsconfig.json` in d:\VueProjects\myroute.

    vue界面启动项目 visual code报错 如下图,找到 Ignore Project Warning 前边打上对勾

  9. 这些小 Bug,99% 的程序员都写过!

    "程序怎么运行不了,不应该啊?" "程序怎么能运行了,不应该啊!" 这句话是不是让程序员朋友们的 DNA 动了呢?今天鱼皮分享一些新手程序员常犯的小 Bug,很 ...

  10. Object.freeze冻结属性和v-if结合requestAnimationFrame分帧渲染解决白屏

    计算100W条数据的长度造成2s延迟 <template> <div> <h1>数据总长度{{ arrList.length }}</h1> </ ...