python -django 之第三方支付

神魔是第三方支付:

第三方支付是指具有一定实力和信誉保障的第三方独立机构。通过与各大银行签订合同,建立连接用户和银行支付结算系统的平台,从而实现电子支付模式。从另一个角度来看,第三方支付就是非金融机构提供的网络支付、预售卡发行与受理、银行卡收单等零售支付服务。

作为一种创新的支付方式,第三方支付极大地方便了人们的生活。但与此同时,第三方支付机构由于自身的运营机制,容易出现支付欺诈、信息泄露、信用违约等问题,这引起了公众和相关监管机构的关注。

第三方支付的优势:

第三方支付作为当代支付方式发展的核心驱动力,具有以下优点。

一是扮演信用中介的角色。第三方支付大大改善了商品交易中买卖双方信息不对称造成的犹豫销售或购买的问题,促进了商品经济的数量和质量,同时保证了双方的财产安全。

二是扩展支付。它允许消费者随时随地购物、生活缴费,如支付水费、电话费甚至会员费,结束了过往使用手机卡、游戏卡和其他充值卡的时代。

三是加快建立全民信用信息系统。同时,信用评分已成功应用于消费者的日常生活。以太原市图书馆为例。只要读者的芝麻信用达到600分或以上,您就可以申请图书馆借阅卡而无需押金,可以借4本书。此外,支付宝依靠天猫商城推出“信用尝鲜”服务,这意味着信用合格的客户可以先享受试用天猫服饰,先享后付天猫电子产品等权益,为信用信息系统的发展注入强大的力量。

 
第三方支付通俗来讲就是微信支付,支付宝支付,财付通等;
 
第三方支付的逻辑

1.使用沙箱提供的商家环境
2.生成密钥对
3.将公钥加到商品环境中
4.将Alipay提供的公钥加入项目中
5.支付功能
6.根据order_id查询订单对象
7.创建alipay对象
8.调用方法,生成url
9.返回url
10.保存支付状态
11.根据返回的url请求支付宝
12.支付成功后返回商家回调页面--------->会传回很多Alipay传回来的参数,很多明文,防止别人攻击
13.返回商家的同时请求后台服务器------>发送这些参数给后台
14.接收参数并且验证,成功则创建订单支付对象返回订单号,否则提示支付失败

配置秘钥

1.注册成为蚂蚁金服开放平台用户 https://openhome.alipay.com

2.点击登陆,二维码登陆或者密码登陆.

3.登陆成功后,点击开发中心里面的研发服务。

4。进入研发服务后在沙箱应用中,点级设置应用密钥(在网上查找RSA签名验签工具windows_V1.4)中复制  RSA签名验签工具.bat  生成密钥   密钥格式选择非java适用  长度选2048(私钥比公钥安全,因为私钥相当于一把只有你自己有的钥匙,防止密码泄露等)

5。复制公钥到SA2(SHA256)密钥(推荐)中的查看应用公钥。并保存

 6.设置成功后点击查看应用公钥或者支付公钥,是否设置成功。

7.在公钥.text中,需要把text中的自己生成的公钥修改成https://openhome.alipay.com/platform/appDaily.htm?tab=info页面中RSA(SHA1)密钥的查看支付宝公钥。

 

追加

我在写完代码进行测试时,一直给我返回key的格式不对,在网上查了一下才知道在公用私钥和公钥中不能有空格,包括开始和结束都不有空格。

公用私钥

-----BEGIN RSA PRIVATE KEY-----
MIIEowIBAAKCAQEAz4gJURdA0Cwf6VYjWFWNhS2D273OYK0n/wToC4vMZ8+U+Crk8yiWqccoObAWoS0ujzJND0zjyTp1Zad/ePkDOofAnA+NQp73XP4zNplDgMybQDfkOwnuRWKDdhYXE3ah/fTQ00BJPGbgNApKVBHNayjAtExz8ocwMVv1EzdVV2pDloc13fjB8SPGfXBGYYm2UqtIQvBaqFngfULtRb3ZGDUl7H81UwzA75CUi1+T42j1JNoN9tOMhBBn7hEECm4jmS+tn2KgSx7RfthVJ4AzQzRPUxHrlxx/8qHx3L46EmedKy8YXGddixaP7oqJc8My3QuMzfnCo0kfE0QZNzHz6QIDAQABAoIBAB9fLiFfBYIymWRZjCBHVoxiVAN8ztzYcCph4H4WVQEAZUGaol+LrDLgE1mdH96fiOFGtlVwxyJdPu/uARwVcIKBkQFGbJE8nKInHzDKvGSVCYcMq+is2KMOgFbygeyES3qrboHwvuFtn8jeIVxSEJ55W6AlyoVIIGXlw8dy3ujGtt5pxV2TkvJstPVihjR/lulnJawoGR7l9oKhnkJnJ1CI+KgZMIFXP1lEThTqB4xkkvHM3e7rYY8GgBD0QU95CxLzag/gK+6xDXjh1y35GvJ+TAEfCRD34Hd+zCIZXdh7BMepFyKfK39Nh18xhqRxuts0MQ682T0oUm8Y/nATU40CgYEA6D1efocXat/6q/LlCNOY77FynPp0UWNw6vk13y9+DUH6X80/js4vSvvMjnPBztqoiDUHib1tzomosITaBXpDBHxCqRt8UJ7Cv9mP1k/e5xotLOHG//1gIgkFI0+nVeGowTDEqB3GT6+TDJ0Z9IbLdUPMQoiMllEoJFIbDkpgLXMCgYEA5MOG74h4KBBD3UV8cc2Qj9KZxmhZ/1Icu4PKDc1XzycGXWO0H31aGLufqE/kxFNZeBB2qTupywr3nmljLKtX43/hswHkGAro5Pgru83uvjQ13ec6EU0sJAvlUwl/ZBqamT2udJffqYHffK8w6lrA7PCWFLtdNFTGoGFOutgaAjMCgYB05c8WqTEkXrFys8SNeNTWcd9bHMZH4WIJJH/1Y5ZzXe6FIm8Hlsk/WRdR7Pp1AKMsTGUK9Aq9l5UNpRGJCE2LiHCVZnxgqEknAH/iRDnS4d4zZUIhwIwPFbM8Xu+/zuJ+u+mBJduYaKwAAWP7LY5j7Eh4hPse/qLSBXIQ82cN+QKBgG7WUWVzIIyAvPDTfuUArT8R0dGws5IiLauowdgIGrhSdyH+ccIkEOgU19lLxFJe8+VZTLTYJH8s9CZ7d0KoTe/7ANajXulLN+XgXAglUbw0PbkjFB5X3sAkR1sBKgjNXwRKP2FcSFCvjSGzHCcgC4OBWaX31cPKI2aHXwbmN0vDAoGBAJSCcY/z+ksT1JEBDN4XXyHMXs/VK+EGZ+CIrEOAGEh/pCIpJko5Ihr6TF/d033iuyI8qsrPVlJSWrbGgZd/y1Q24MBW7DgaoSMHrbLEVL9oOAa0RLfE5LRzD6QP72XsPqSWSCQkELRjl8N5pYjIJf3FnGue3BPG8ovNrw9RST9s
-----END RSA PRIVATE KEY-----

公用g公钥

-----BEGIN PUBLIC KEY-----
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDIgHnOn7LLILlKETd6BFRJ0GqgS2Y3mn1wMQmyh9zEyWlz5p1zrahRahbXAfCfSqshSNfqOmAQzSHRVjCqjsAw1jyqrXaPdKBmr90DIpIxmIyKXv4GGAkPyJ/6FTFY99uhpiq0qadD/uSzQsefWo0aTvP/65zi3eof7TcZ32oWpwIDAQAB
-----END PUBLIC KEY-----

必写

——---------以什么开始-------    ------------以什么结束-----------

-----BEGIN RSA PRIVATE KEY-----    -----END RSA PRIVATE KEY-----

-----BEGIN PUBLIC KEY-----  -----END PUBLIC KEY-----

代码明天写;

 
 
 
原文地址:https://www.cnblogs.com/chengdongzi/p/10680571.html