人文艺术 > 支付宝,微信在没网络的情况下还能支付,是如何实现的?需要什么

支付宝,微信在没网络的情况下还能支付,是如何实现的?需要什么

2020-08-02 00:47阅读(99)

支付宝,微信在没网络的情况下还能支付,是如何实现的?需要什么支持?无网络情况下,支付宝,微信都可以使用付款码进行支付!是怎么实现线下与线上信息交互的?

1

您说的这种情况叫离线支付,所谓离线支付,通俗的说就是先通过信用校验方式进行账务处理,完成交易,等待具备网络的时候进行核实,结算。

我们可以想象一下,如果我到商店买东西而忘记带钱,老板认识我的情况下我可以赊账拿到要买的东西,然后下次拿钱去还账。这其实就类似是一种离线支付。

支付宝和微信支付实现起来应该更容易一些,当我处于无网络的状态下,我的手机终端仍然能够代表我的身份,以我的身份生成一个授信的条码或者二维码,这是我的身份信用证明,好比我对老板出示我的身份证。

商家读取这个支付码后,会自动识别我的身份,如果商家是在线的,就可以和支付宝、微信支付的服务器端取得联系,确认我的身份信息和资金信息。这就类似商店老板认识我,知道我有足够的资金支付。

  • 商家如果在线的情况下,第三方支付公司只要校验了客户的身份信用信息,就可以通过服务器进行扣款,完成交易。就好比商店老板安排店小二跑到我家里和我媳妇说我买东西了,没带钱,让他到家里来拿钱是一样的道理。

  • 如果商家也不在线的情况下,交易双方都是出于记账的状态,等到有网络的时候,上传记账信息,服务器进行了交易结算。就好比我回家取了钱,然后回到商店,和老板把账务结清。

离线支付基本的原理就是这样的,其中比较关键的就是要生成一个能够代表你身份的信息,而且,这个信息能够防伪,能够被对方识别并确认,最关键的问题是要避免信息欺诈。

2

感谢您的阅读!

我们必须说明几种情况,离线支付分为几种情况,大家必须了解一下:

  1. 如果我们使用付款码支付,对于【付钱】功能开启的用户,是可以直接支持离线支付。
  2. 如果我们使用扫码支付,实际上仅支持线上支付,不支持离线支付。
  3. 同样,如果大家想使用条码付款,第一次使用网络后,以后就不需要网络支付了。

注意:关闭了小额免密功能也是需要网络的,毕竟要输入密码!(除非是在公交扫码支付的时候,可以双方都没有网络,先记账后支付)

那么,为什么没有网络的时候,微信和支付宝还是可以进行支付呢?我们看一幅图:

这幅图是离线支付的大体过程,按照支付宝的说法,离线支付能够形成有以下原因:

  • 生成付款码。手机向服务端申请令牌种子,支付宝生成后,将种子给手机,在根据算法即使在离线下,也能生成付款码。
我们解释的更清楚一些:App打开的时候,已经向服务器发送了请求,才认定了支付宝账户安全情况下,发送唯一的令牌种子,会在本地保存下来,我们手机断网的时候,点击付款码会自动利用种子数据,以及时间戳和一套安全算法可以生成一串数字,即离线码。

  • 付款时,因为商家的网络是连接的,所以商家读取了付款码后,会上传到服务器,支付宝的安全性就在这里,因为它会比对商家传来的信息,如果发现不一致,就支付失败;只有系统数据一致情况下,才能进行支付。

它的原理来自于OTP,也称动态口令,是根据专门的算法在每隔60秒生成一个口令。它同样是通过客户端以及服务器之间共享秘密的一次认证技术!它要求,时间同步,在短短的60s内让动态令牌和动态口令验证服务器的时间比对;事件同步,通过特定的事件次序及相同的种子值作为输入,在HASH算法中获得相同密码,最后在挑战/应答中,验证通过。

不管如何,我们只要知道,离线支付是可以实现的,而且因为比对的关系,会让支付更安全。

3

这种情况就是我们说的离线支付,在我们手机没有信号或者网络的时候,去付款的时候却能支付成功。

其实这个原理也很好理解,你存进支付宝微信里的钱并不是存在你的手机上,而是以一个数据存在终端服务器上,你的手机上产生的支付宝微信付款吗只是你一个凭证,当商家扫描你的手机付款码时代表着你出示了该凭证,商家会根据他办理三方收款平台连接的支付宝和微信在服务器上扣除,你手上的付款码就好比银行卡一样,钱不是存在银行卡里,卡只是一个凭证而已。



首先要在有网的情况下,生成付款码,是一次性的,每60秒会更新一次,保存下来支付二维码,进行支付。 这种情况下,是要商家的支付系统必须在线。

还有一种情况,是商家和我们的手机都不在线的,也是可以支付的,就像我们有些公交车收款系统不是实时在线的,可能跑完一趟车在联网或者一天结束后再联网,而收款系统在联网的时候才进行扣款的。就是双方都离线,就先记账,等到有网时候在进行验证扣款。

4

帆辰科技专注于科技资讯,带你遨游科技世界!

支付宝,微信在没网络的情况下还能支付,是如何实现的?需要什么支持?其实对于现在的一种交易方式来说的话,微信和支付宝已经是非常的便捷的,那么在用户没有网络的情况下,为何还能够进行支付,那么下面和大家一起来说一说。

用户开通免密支付模式,商家使用扫描枪可以直接进行支付


对于现在的微信和支付宝支付方式来说,其实真的非常方便的,尤其是在超时购物的时候,用户只需要向收银员展示其付款码,就可以进行支付。

但是在这样的一种情况下,就是用户根本没有输入密码,商家又是如何在用户自己的微信和支付宝里面进行扣费的,这对于很多的用户来说,都是觉得并不太安全,其实这就是用户在开通免密支付的方式之后所能够使用的一种支付方式。

那么下面我们可以慢慢的理解一下,支付宝免密支付的一种原理是什么,其实我们微信和支付宝上面的资金并不是说简单的在微信和支付宝上面的,只不过在上面的就是一些数字而已,真正的有用的数据其实保存在数据的终端服务器上面的,所以这个时候我们就能够明白一件事情就是手机用户在展示付款码的时候,就能够直接的进行扣除。

那么很多的用户说,在刚开始的时候,用户所展示的付款码没有网络也是能够进行付款的,其实这个只是在终端服务器里面做出来一个结算的交易,等到有网络的时候,就可以直接的进行结算清楚。

使用离线码支付款,对于用户来说是否安全


很多的用户在使用离线码的时候进行支付,都是非常的担心这样的一种支付方式是否安全,其实大家对于这样忧虑来说,真的大可不必过分忧虑的。

因为我们在展示付款码的时候,都是一个动态的二维码,也就是说每隔几分钟就能会进行变化的,所以动态的付款码是不容易被别的用户进行盗刷。


所以说在目前为止,支付宝和微信付款码的技术是非常难破解的,但是大家在支付的时候,一定需要注意后方是否有其他人进行盗刷,而且我们也是关闭里面的免密支付的模式。


最后,对于说用户在使用微信和支付宝付款的时候,大家需要一定注意其付款码的动态变化,还需要注意后面的环境是否安全,不建议大家在没有网络的时候,使用离线码支付,那么大家还有什么不同的看法,可以在下方留言,咱们一起探讨!

5

支付宝微信在没有网络的情况下是否能支付,这得分两种情况:若商家扫描你的付款码,你手机没有联网也同样能付款成功(前提是你账户必须开通小额免密支付功能);若你扫描商家的收款码,你必须联网才能支付成功。


其实付款码和收款码是一样的原理,都是别人扫你,付款码扫后把钱付出去,收款码扫后收钱回来,这个被扫的人不需联网也能能完成支付,只是接收不到消息提醒而已。

下面我就针对上面情况,说说为什么会那样?原理是什么?


首先我们先看下下面我画的这个图,付款码支付的流程原理

一、先了解微信/支付宝付款码是怎么生成的

不管是微信或支付宝,付款码原理都一样,付款码在我们每次打开时,付款码都是不一样的,大家可以细心看下就会发现,点开二维码后,其实是一个条形码,条形码下面还有一串数字,每次打开后,这个数字都是变的。


因为只要我们把APP安装到手机上之后,因为系统开发时,就是这么开发的,详细的专业词语我就不多说了,不需联网,每次打开都能生成一个付款码,并且这个数字也是随机生成的。


二、再了解整个支付流程原理

商家收款时,先要在自已电脑上输入收款金额,然后当扫码设备读取付款码后,商家系统会把这两个信息同时上传到支付宝/微信,请求平台付款过来,当支付宝/微信收到这个付款请求后,系根据提前设置好的规则,判断是否是合规的本平台的信息。


若核对正常,就立即会根据商家提供的金额和消费者的二维码,从消费者账户划扣金额,并把余额划入商家账户,同时下传成功收款信息到商家,下传成功扣款信息到消费者,但因为消费者手机无联网,所以,此时是收不到信息的,但什么时候联网后,就可以收到扣款信息了。

消费者的付款码不需双面交互,只是单方面的,也就是说商家可直接通过平台直接把消费者账户的钱划走,不需消费者确认什么的,这个前提是消费者有开通小额免密支付,若用户没有开通小额免密支付的话,那付款时就得输入密码,这时就得联网了。


三、付款码和收款码是一样的原理,不需联网,只要是别人扫你的码,都能正常支付成功

像平时商家一般都是收款码,我们只用扫一扫,他们账户就收到钱了,但此时,商家手机可以不用联网,同样能收到这个钱,因为收款码的设计原理决定了,收款时不需联网就可以收钱。


收款码生成后是永久不变的,但付款码为了安全性,所以每次打开后都会变化,但原理与收款码一样,都是可以不联网就能完成支付的。

总结:经上面分析,就明白了,为什么自已不需联网,出示付款码也能成功给商家付款的原因了,只要有开通小额免密支付,付款时因为不用输入密码,这时系统就会直接从账户划款到商家账户,这单方面的交互当然是不需联网的。


欢迎【关注】火火爱秀,每日分享科技小知识,期待你的点赞+评论哦~

6

支付宝、微信的出现,改变了传统的交易方式,现在已经是人们日常消费离不开的APP了,并且无论有没有网络,都是可以实现消费支付的,官方还给这种消费起了个名字:离线支付,所谓的离线支付,是指消费者单方面的离线,而商家是不能离线,否则无法完成数据(金钱)的交换.

这种离线支付技术是支付宝和微信官方研发的,该技术的核心关键点是“付款码可以离线生成”,当用户点击“付款”的时候,APP会生成一个“令牌种子”,然后根据特定的算法生成一个付款码,当商家对该付款码进行扫描时,就会把数据传送到支付宝或者微信的服务器,然后服务器就会读取付款码里的信息,最后和商家的账户进行数据交换,完成本次支付!


因此,在无网络情况下,消费者的支付宝和微信都是可以使用付款码进行支付的,但是商家不能没有网络,所以您可以理解为:这种离线支付方式是在支付宝或者微信的服务器上进行信息交互的!

7

题主所说这种情况应该是在没网的情况下,商家用扫枪扫付款码我们能成功支付的情况。毕竟如果在没网的情况下我们扫码付款是行不通的。这样其实问题就变成了为什么我们可以在没网的情况下加载出付款码?

其实这也很容易理解,付款的流程是出示二维码、扫码、反馈到支付宝/微信后台进行扣款。其中我们在没网的情况下出示的二维码其实是一定的,就是我们支付宝的一个识别码。通过扫这个码我们才能进行支付。而在有网的情况下,这张二维码就变成了正常使用的二维码,几十秒就会刷新一次的那种。

既然我们能出示二维码,那剩下的就是商家的问题。只要商家在扫码时有网,那他就可以通过扫码把支付数据反馈到支付宝/微信后台进行付款。然后再将支付账单发给我们,只是当时没网,我们收不到,不过后台已经记录下来,有网的时候就能收到消息。

不过如果我们没网,商家也没网的情况下。我们就不能进行付款,因为都没网的话,支付流程就行不通,数据也不能反馈到后台,扣款也就无法完成。

综上,在没网的情况下我们能进行付款,需要的技术支持就是没网的时候我们出示的二维码是识别码,用来辨别我们的支付宝/微信账户。有网的情况下,出示的是二维码,进行支付。

8

是否可以正常支付,暂且不说支付宝,就用微信来,证明一下不就知道结果了吗?

正常的情况下,假设手机没有网络,在各大超市或者是一些24小时便利店,对方有网络的条件下用扫码枪,扫你的向商家付款的二维码,是可以正常支付,并且没有任何影响

如果对方没有扫码枪,需要你扫码支付,在没有网络的情况下,有图为证


并且最终显示的是网络加载失败

支付宝可以在无网络的情况下进行网络支付扫码,并且也可以通过向商家付款二维码支付

平时使用微信以及支付宝,也最好设定当天的交易额的多少,小额交易现在大部分都是免密码支付,比如支付的金额是100到200块钱之间是不需要密码

9

手机无网络环境下只支持付款码支付,而且还要开通小额免密支付才可以使用。

无网络情况一般分两种,一种是手机端无网络,商家扫码枪有网络,另一种是两者都无网络,下面我们分别说说是如何实现的。

手机端无网络商家扫码枪有网络

很多人应该体验过这种功能吧,当一个位置信号较差或者无网络时,我们在商店依然能够展示付款码支付。

原理其实很简单,就是支付宝会本地保存你最近最后更新的支付二维码,二维码会保存你的一些信息,在无网络时,你也可以照常展示进行支付,支付宝会通过短信通知交易详情。

但这里有个前提,你不是第一次安装和使用付款码,就是说在有网的情况下,你更新过二维码,因为第一次安装就没网,支付宝就没法下载缓存二维码了,那展示的时候就是空白的。

手机端和商家端都没网络

如果都没网络的话,这时商家依然会进行扫码,但是无法通知支付宝后台,所以你不会受到交易详情的短信。商家在扫码后会在本地以记账形式存储交易信息,在下次联网时,上传支付宝后台进行结算。

一般来说商家端是不会没网络的,如果没网络他们也不会使用扫码支付的。

总结

支付宝和微信几乎瓜分了国内的网上支付市场,对于各种场景下的支付机会都有解决方案,不仅仅是无网络场景,现在支付宝推出的蜻蜓设备,直接可以人脸识别,刷脸支付,真的是科技改变生活啊!

我是非著名攻城狮,希望我的回答对您有用,感谢您的关注与支持!

10

很高兴能够看到和回答这个问题,作为一个问答爱好者,我每天都在关注科技发展方面的消息,每天收获也蛮多的。

首先,我觉得这是一个非常好的问题,也是很多小白用户困惑之处,下面我将根据自己的经验认真回答这个问题。

随着网络的发展和网络的普及,手机已经逐渐取代了我们生活中的许多东西。购物时,你可以用手机把它送回家;买票时,你可以通过手机轻松买到票;吃、喝、玩,你可以通过手机快速完成支付。感谢马云推动电子商务的发展,推动中国数字经济的诞生和繁荣,让我们的购物和支付更加便捷。

支付宝,微信在没网络的情况下还能支付,是如何实现的?

目前,在微信支付和支付宝中,商业街小巷被广泛使用。我们出去的时候不需要带现金。我们只需要用手机支付。然而,有些人担心如果手机没有网络(停机,信号不好等。),那么付款是不是就成了大问题。因此,许多人外出时会携带一定数量的现金,以防手机在没有网络的情况下无法支付。事实上,即使手机没有网络,微信和支付宝都可以支付,但有条件。

之前我遇到过题主所说的情况,在购物时我特地将手机网络关闭,然后去超市购物,微信和支付宝可以完成支付。但是,如果有条件,支付代码必须显示以便支付,并且当网络已经打开支付代码并且预先秘密支付时。事实上,当我们打开支付代码时,我们默认启用了秘密免费支付,所以我们只需要提前打开支付支码((支付宝->付款->立即开启;微信->右上角加号下拉选项->收付款->立即开启))

事实上,原则很简单。当微信和支付宝离线时,微信和支付宝就会自动生成为“离线代码”,实现离线支付。这时,有人担心它的安全。如果有人偷拍了呢?事实上,即使“支付代码”是一个“离线代码”,一旦使用和每分钟更新它将是无效的,所以它也是安全的,你可以放心地使用它。

还有一个事实是“离线支付代码”并不是无限使用的。边肖测试了微信离线支付代码的生成。手机无网络时,微信支付码只能刷新10次以上,不能刷新。支付宝是可以衡量的。小批量已经刷新多次,仍然可以生成。我不知道是否有任何限制。

结论:手机没有网络,微信和支付宝也可以支付,但有条件!首先,你必须在付款时显示付款代码。扫描码支付离不开网络。其次,在网络的情况下,支付代码必须提前打开。第三,“离线支付代码”没有达到最大次数。如果超过了最大数量,您需要在使用网络之前重新启动网络。微信是支付宝的支付代码,无需网络连接就可以使用。你用过吗?你觉得这个怎么样?

以上便是我的一些见解和回答,可能不能如您所愿,但我真心希望能够对您有所帮助!不清楚的地方您还可以关注我的头条号“每日精彩科技”我将竭尽所知帮助您!

码字不易,感觉写的还行的话,还请点个赞哦!