您的位置:首页 > 移动开发 > Android开发

Android版本支付宝集成获取私钥与公钥

2015-09-09 21:42 316 查看
现在的手机app到处都并且一般的都是可以直接付款了,现在的支付宝付款接口是支持pc,手机及app版本了,在开始中我们会用到支付宝私钥与公钥问题了,下面整理了一篇文章一起来看看。

项目需要,需要在客户端集成支付宝接口。就研究了一下:因为使用支付宝接口,就需要到支付宝官网:注册帐号,并申请。下面讲的是申请好之后的操作。登录成功之后,   店家我的商家服务—在页面的下方找到——>签约管理—>找打 移动支付—–>点击下载集成文档—>跳到新的页面,在页面下方—>找到下载开发包,下载移动支付即可。然后解压出来之后一般会得到三个文件夹。

这个时候要打开文件名为:  支付宝钱包支付接口开发包2.0标准版的文件。打开之后有一个Demo 文件。打开Demo文件。里面会有三个文件夹:第一个 openssl; 第二个 服务端 Demo,第三个 客户端demo. 这个时候,我们需要关心的是  openssl 文件与 客户端Demo 的文件。

在第三个Demo文件中有IOS版与Android 版的Demo.但是你要部署运行的时候,会发现不能运行成功。在项目主文件里面这样一段代码:

//商户PID

 

public static final String PARTNER = "";

 

//商户收款账号

 

public static final String SELLER = "";

 

//商户私钥,pkcs8格式

 

public static final String RSA_PRIVATE = "";

 

//支付宝公钥

 

public static final String RSA_PUBLIC = "";

因为这些,都是需要根据商户注册的信息来填写的。所以就算下下载了Demo,也没有用。下面讲的就是如何获取私钥与支付宝公钥。

还记得刚刚我们加压之后的openssl文件嘛?获取私钥与公钥的方法就在里面:

首先打开openssl文件:以下是文件打开顺序: openssl–>bin –> 双击 openssl.exe文件。这个时候会出现一个命令框:(首先要说明的是这个文件是在Windows系统下打开的)要是苹果系统好像不行.接着继续往下说:

打开命令框后:输入第一行命令 ,生成私钥,如下:

genrsa -out rsa_private_key.pem 1024

按回车键,接着输入第二行命令,生成公钥:

rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem

按回车键,接着输入第三行命令,将RSA私钥转换成PKCS8格式

pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt

 

执行完这三行命令后,就生成了两个以:.pem 结尾的文件。这就是我们生成的公钥与私钥.文件位置就在: bin  目录下。当然我们打不开这两个文件。但是我们可以复制一份到桌面,改成Txt文件打开即可。因为我们需要的只是里面的字符串,记住当我们引用这两个长的字符串的时候,需要注意的是:字符串,不能包括,换行,空格,以及其他误加的字符。所以复制的时候一定要小心。

当然私钥就是我们需要的私钥了,如何获得支付宝公钥呢:回到支付宝首先,首先登录,

一:  点击“查看PID|KEY”,在新打开的页面(https://b.alipay.com/order/pidAndKey.htm ),可查看到签约支付宝账号、合作者身份ID(PID.

二:输入支付密码,查询key、支付宝公钥。

三:上传RSA公钥,在“合作伙伴密钥管理”下,点击“RSA加密”后的“添加密钥”,把自己的公钥复制进去。注意不能有空格,换

行之类的。



:点击确认上传,若是提示上传成功。则就是成功。

这个时候就可查看支付宝公钥了。如图:



至此,将对应的私钥与公钥填到相应位置我们的Demo  就可一运行了。然后集成到项目中即可。就需要自己动手了。遇到问题,百度一下。希望给你带来用处。

出自:http://www.111cn.net/sj/android/88707.htm


请教APP集成支付宝,服务端该怎么设计呢?

1.客户端选购商品,提交商品信息到服务端(Client->[{商品1,1件,¥100},{商品1,1件,¥100}]->Server)
2.服务端订单入库生成订单号反馈给客户端(Server->[2333333,¥200]->Client)
3.调用支付宝SDK携带一些参数(23333333,¥200, http://domain/payment_notify )(SDK干了什么只有支付宝知道)
4.用户支付完成,支付宝服务器通知应用服务器(HTTP访问http://domain/payment_notify),服务器做验证判断支付是否成功。
5.支付完成后,回到APP,APP收到通知,访问服务器接口验证是否成功。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android 支付宝