CN104836776A - 数据交互方法和装置 - Google Patents

数据交互方法和装置 Download PDF

Info

Publication number
CN104836776A
CN104836776A CN201410046694.2A CN201410046694A CN104836776A CN 104836776 A CN104836776 A CN 104836776A CN 201410046694 A CN201410046694 A CN 201410046694A CN 104836776 A CN104836776 A CN 104836776A
Authority
CN
China
Prior art keywords
user
data
authentication code
intersection record
server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201410046694.2A
Other languages
English (en)
Inventor
魏强
王鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advanced New Technologies Co Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201410046694.2A priority Critical patent/CN104836776A/zh
Publication of CN104836776A publication Critical patent/CN104836776A/zh
Priority to HK15109916.5A priority patent/HK1209251A1/zh
Pending legal-status Critical Current

Links

Abstract

本发明涉及一种数据交互方法和装置,包括:第二用户通过非互联网连接方式接收第一用户的数据交互请求,所述数据交互请求中包含交互记录;对交互记录中包含的第一用户签名消息认证码进行验证;如果验证通过,则根据交互记录对离线账户数据进行相应的数据操作;对交互记录进行签名,以生成第二用户签名消息认证码,并通过非互联网连接方式向第一用户发送包含交互记录和第二用户签名消息认证码的交互凭据;当通过互联网连接方式连接到服务器时,向服务器发送交互凭据,以便服务器根据交互凭据完成第一用户与第二用户针对所述数据交互的离线账户数据清算。根据本发明的技术方案,能够实现在网络情况不好时,通过非互联网连接方式进行数据交互。

Description

数据交互方法和装置
技术领域
本申请涉及数据传输领域,尤其涉及一种数据交互方法和装置。
背景技术
随着互联网的迅速发展,通过互联网连接方式(在线)进行数据交互已经成为人们生活中的主要数据交互方式。通过互联网方式的数据交互通常需要数据交互的双方都保持实时在线,即与互联网实时连接,才能完成数据交互过程。然而,在由于环境的问题造成的信号微弱,或者由于人群密集,造成的网络拥堵等网络状况不良的情况下,网络不能有效地承载这样的通信,则需要进行非互联网连接方式(离线)的数据交互。例如,在乘坐公交车、地铁时、在景区、山上等都可能会出现网络状况不好的情况。
目前的现有技术中,所谓的离线数据交互一般都需要至少一方在线,用于验证对方、创建交互和完成交互,因此对于网络环境不好的情况,例如,交互双方都无法在线时,也就无法进行数据交互,降低了用户体验。
因此,需求一种新的数据处理方式,以解决网络状况不良的情况下无法进行网上数据交互的问题,也即是说,用以解决数据交互的双方都不在线的情况下如何完成数据交互的问题。
发明内容
本申请的主要目的在于提供一种数据交互方法及装置,以解决现有技术存在的网络状况不良的情况下无法进行网上数据交互问题,其中:
根据本申请一个方面提供了一种数据交互方法,包括:第二用户通过非互联网连接方式接收来自第一用户的数据交互请求,所述数据交互请求中包含:交互记录;第二用户对所述交互记录中包含的第一用户签名消息认证码进行验证;如果所述验证通过,则第二用户根据所述交互记录对离线账户数据进行相应的数据操作;第二用户对所述交互记录进行签名,以生成第二用户签名消息认证码,并通过非互联网连接方式向所述第一用户发送包含所述交互记录和所述第二用户签名消息认证码的交互凭据;当通过互联网连接方式连接到服务器时,第二用户向服务器发送所述交互凭据,以便所述服务器根据所述交互凭据完成第一用户与第二用户针对所述数据交互的离线账户数据清算。
根据本申请的一个方面还提供了一种数据交互装置,包括:请求接收模块,用于第二用户通过非互联网连接方式接收来自第一用户的数据交互请求,所述数据交互请求中包含:交互记录;第二验证模块,用于第二用户对所述交互记录中包含的第一用户签名消息认证码进行验证;第二数据操作模块,用于如果所述验证通过,则第二用户根据所述交互记录对离线账户数据进行相应的数据操作;签名模块,用于第二用户对所述交互记录进行签名,以生成第二用户签名消息认证码;交互凭据发送模块,用于通过非互联网连接方式向所述第一用户发送包含所述交互记录和所述第二用户签名消息认证码的交互凭据;第二发送模块,用于当通过互联网连接方式连接到服务器时,第二用户向服务器发送所述交互凭据,以便所述服务器根据所述交互凭据完成第一用户与第二用户针对所述数据交互的离线账户数据清算。
根据本申请的另一方面提供了一种数据交互方法,包括:第一用户通过非互联网连接方式向第二用户发送数据交互请求,以请求与所述第二用户进行数据交互,其中,所述数据交互请求中包含交互记录;第一用户通过非互联网连接方式接收所述第二用户返回的包含所述交互记录和第二用户签名消息认证码的交互凭据;第一用户对所述交互凭据中的所述第二用户签名消息认证码进行验证;如果所述验证通过,则第一用户根据所述交互记录对离线账户数据进行相应的数据操作;当通过互联网连接方式连接到服务器时,第一用户向服务器发送所述交互凭据,以便所述服务器根据所述交互凭据完成第一用户与第二用户针对所述数据交互的离线账户数据清算。
根据本申请的另一方面还提供了一种数据交互装置,包括:请求发送模块,用于第一用户通过非互联网连接方式向第二用户发送数据交互请求,以请求与所述第二用户进行数据交互,其中,所述数据交互请求中包含交互记录;交互凭据接收模块,用于第一用户通过非互联网连接方式接收所述第二用户返回的包含所述交互记录和第二用户签名消息认证码的交互凭据;第一验证模块,第一用户对所述交互凭据中的所述第二用户签名消息认证码进行验证;第一数据操作模块,用于如果所述验证通过,则第一用户根据所述交互记录对离线账户数据进行相应的数据操作;第一发送模块,用于当通过互联网连接方式连接到服务器时,第一用户向服务器发送所述交互凭据,以便所述服务器根据所述交互凭据完成第一用户与第二用户针对所述数据交互的离线账户数据清算。
根据本申请的又一方面提供了一种数据交互方法,包括:接收第一用户和/或第二用户发送的交互凭据,其中,所述交互凭据是所述第一用户与所述第二用户通过非互联网连接方式进行数据交互时创建的;对所述交互凭据中包含的第二用户签名消息认证码进行验证,所述第二用户签名消息认证码是由所述第二用户根据交互记录进行相应的数据操作后,对所述交互记录进行签名而生成的;如果所述验证通过,则根据所述交互凭据完成第一用户与第二用户针对所述数据交互的离线账户数据的清算。
根据本申请的又一方面还提供了一种数据交互装置,包括:接收模块,用于接收第一用户和/或第二用户发送的交互凭据,其中,所述交互凭据是所述第一用户与所述第二用户通过非互联网连接方式进行数据交互时创建的;验证模块,用于对所述交互凭据中包含的第二用户签名消息认证码进行验证,所述第二用户签名消息认证码是由所述第二用户根据交互记录进行相应的数据操作后,对所述交互记录进行签名而生成的;以及清算模块,用于如果所述验证通过,则根据所述交互凭据完成第一用户与第二用户针对所述数据交互的离线账户数据的清算。
根据本申请的再一方面提供了一种数据交互方法,包括:第一用户通过非互联网连接方式向第二用户发送数据交互请求,以请求与第二用户进行数据交互,其中,所述数据交互请求中包含交互记录;第二用户通过非互联网连接方式接收来自第一用户的数据交互请求,并对所述交互记录中包含的第一用户签名消息认证码进行验证;如果所述验证通过,则第二用户根据所述交互记录对第二用户的离线账户数据进行相应的数据操作;第二用户对所述交互记录进行签名,以生成第二用户签名消息认证码,并通过非互联网连接方式向第一用户发送包含所述交互记录和所述第二用户签名消息认证码的交互凭据;第一用户通过非互联网连接方式接收第二用户发送的包含所述交互记录和第二用户签名消息认证码的交互凭据;第一用户对所述交互凭据中的所述第二用户签名消息认证码进行验证;如果所述验证通过,则第一用户根据所述交互记录对第一用户的离线账户数据进行相应的数据操作;当第一用户和/或第二用户通过互联网连接方式连接到服务器时,向服务器发送所述交互凭据,以便所述服务器根据所述交互凭据完成第一用户与第二用户针对所述数据交互的离线账户数据清算。
根据本申请的再一方面还提供了一种数据交互系统,包括:第一终端、第二终端以及服务器,所述第一终端包括:请求发送模块,用于第一用户通过非互联网连接方式向第二用户发送数据交互请求,以请求与第二用户进行数据交互,其中,所述数据交互请求中包含交互记录;交互凭据接收模块,用于第一用户通过非互联网连接方式接收第二用户发送的包含所述交互记录和第二用户签名消息认证码的交互凭据;第一验证模块,用于第一用户对所述交互凭据中的所述第二用户签名消息认证码进行验证;第一数据操作模块,用于如果所述验证通过,则第一用户根据所述交互记录对第一用户的离线账户数据进行相应的数据操作;第一发送模块,用于当第一用户通过互联网连接方式连接到服务器时,向服务器发送所述交互凭据;所述第二终端包括:请求接收模块,用于第二用户通过非互联网连接方式接收来自第一用户的数据交互请求;第二验证模块,用于第二用户对所述交互记录中包含的第一用户签名消息认证码进行验证;第二数据操作模块,用于如果所述验证通过,则第二用户根据所述交互记录对第二用户的离线账户数据进行相应的数据操作;签名模块,用于第二用户对所述交互记录进行签名,以生成第二用户签名消息认证码;交互凭据发送模块,用于第二用户通过非互联网连接方式向第一用户发送包含所述交互记录和所述第二用户签名消息认证码的交互凭据;第二发送模块,用于当第二用户通过互联网连接方式连接到服务器时,向服务器发送所述交互凭据;所述服务器包括:接收模块,用于接收第一用户和/或第二用户发送的交互凭据;其中,所述交互凭据是所述第一用户与所述第二用户通过非互联网连接方式进行数据交互时创建的;验证模块,用于对所述交互凭据中包含的第二用户签名消息认证码进行验证,所述第二用户签名消息认证码是由所述第二用户根据交互记录进行相应的数据操作后,对所述交互记录进行签名而生成的;清算模块,用于如果所述验证通过,则根据所述交互凭据完成第一用户与第二用户针对所述数据交互的离线账户数据的清算。
与现有技术相比,根据本申请的技术方案,在网络情况不好的情况下,数据交互的双方能够通过非互联网连接方式进行数据交互,使数据交互的场景扩展到任何地方,不受实时网络情况的限制,增强数据交互的灵活性。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1示出了根据本申请一个实施例的数据交互方法的流程图;
图2示出了根据本申请另一实施例的数据交互方法的流程图;
图3示出了根据本申请又一实施例的数据交互方法的流程图;
图4示出了根据本申请再一实施例的数据交互方法的流程图;
图5示出了根据本申请一个实施例的数据交互装置的结构框图;
图6示出了根据本申请另一实施例的数据交互装置的结构框图;
图7示出了根据本申请又一实施例的数据交互装置的结构框图;以及
图8示出了根据本申请一实施例的数据交互系统的结构框图。
具体实施方式
本申请的主要思想在于,通过互联网方式连接到服务器时,针对账户设置一个具有一定账户数值的离线账户数据,并从服务器端下载并保存该离线账户数据,以实现在网络情况不佳的情况下通过非互联网连接方式进行数据交互,即,进行数据交互的双方都处于离线状态,使数据交互的场景扩展到任何地方,不受实时网络情况的限制,增强数据交互的灵活性,方便用户的使用,提升用户体验。
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
根据本申请的实施例,提供了一种数据交互方法。本申请可以应用于终端由于网络不良而导致无法进行在线数据交互的情况下进行离线数据交互并在交互的双方中的至少一个再次在线时完成所述离线数据交互的账户离线数据清算。所述数据交互可以为基于第三方平台进行的数据交互,例如,支付交易。
参考图1,图1是根据本申请的一个实施例的数据交互方法的流程图。
如图1所示,在步骤S101处,第二用户通过非互联网连接方式接收来自第一用户的数据交互请求,所述数据交互请求中包含:交互记录,所述交互记录是由所述第一用户创建的。例如,第二用户利用第二终端通过非互联网连接方式接收来自第一用户利用第一终端发送的数据交互请求。
其中,第一终端和第二终端可以为手机、平板电脑、个人计算机等设备,第一终端和第二终端都可以与第三方交互平台的服务器通过互联网连接方式进行通信,并且第一终端和第二终端可以通过非互联网连接的方式进行通信,所述非互联网连接的方式可以包括:二维码、声波、蓝牙、wifi等,但不限于此,也就是说,第二用户利用第二终端可以通过二维码、声波、蓝牙、wifi等连接方式中的任意一种或多种方式,接收来自所述第一用户利用第一终端发送的数据交互请求。
在本实施例的应用场景中,该数据交互例如可以为支付交易,第一用户可以为收款方,第二用户可以为付款方,收款方和付款方都在第三方支付平台(例如,支付宝等)开设有各自的账户。更具体地,付款方通过非互联网连接方式接收来自收款方的支付交易请求(例如收单请求),所述支付交易请求包含:支付记录,所述支付记录是由所述收款方创建的。
在步骤S102处,第二用户对所述交互记录中包含的第一用户签名消息认证码进行验证。
具体而言,交互记录中可以包括:第一用户的账号、第二用户的账号、交互数值等交互信息以及第一用户消息认证码、第一用户签名消息认证码等,该第一用户签名消息认证码是由第一用户对交互记录进行签名生成的,第一用户签名消息认证码可以是第一用户利用第一用户的私钥对交互记录中包含的第一用户的账号、第二用户的账号、交互数值等交互信息和/或随机生成的第一用户消息认证码进行加密生成的。第二用户接收到的来自第一用户的数据交互请求中,还可以包括第一用户的公钥,第一用户的公钥与第一用户的私钥互为一对非对称密钥,第二用户可以利用第一用户的公钥对第一用户签名消息认证码进行验证,也就是说,第二用户可以利用第一用户的公钥对第一用户签名消息认证码进行解密,并将得到的解密后的交互信息和/或第一用户签名消息认证码与交互记录中的交互信息和/或第一用户消息认证码明文进行比对,如果匹配,则验证通过。
在本实施例的应用场景中,当作为收款方的第一用户和作为付款方的第二用户需要进行支付交易时,由第一用户根据交易的内容创建支付账单(交互记录),支付账单中可以包含:收款方的账号、付款方的账号、支付金额等支付信息以及收款方的消息认证码(第一用户消息认证码)、收款方的签名消息认证码(第一用户签名消息认证码)。
在步骤S103处,如果所述验证通过,则第二用户根据所述交互记录对离线账户数据进行相应的数据操作。
具体而言,离线账户数据可以包括:用户身份证明信息(用户注册账号时,服务器自动给用户分配的编号)、用户账号信息(用户在第三方交互平台开设的账户的账号信息)、账户数值、账户有效期、数据更新时间、用户设备信息(例如手机号码、SIM卡识别码ICCID、手机设备识别码IMEI)等等,但并不限于此。可以在服务器端生成第二用户的离线账户数据并保存,第二用户从服务器下载自己对应的离线账户数据,并保存,并且在通过互联网与服务器连接时,可以与服务器同步离线账户数据,例如同步账户数值、数据更新时间等信息。其中,所述账户数值是在与服务器通过互联网连接方式连接的情况下通过服务器进行预先设置的。当第二用户接收到交互记录,并对第一用户签名消息认证码进行验证通过时,可以根据该交互记录对保存的离线账户数据进行相应的数据操作,即,根据交互记录中记录的交互数值,从账户数值中扣减相应的交互数值。在一个优选实施例中,对离线账户数据进行相应的数据操作之前,需要输入预先设定的账户密码,并验证该密码是否正确,如果正确,再根据交互记录对离线账户数据进行相应的数据操作,如果输入密码的错误次数超过预定次数,则可以立即删除预先保存的服务器颁发给第二用户的第二用户数字证书和第二用户的私钥等信息。
在一个具体的示例中,用户账号信息可以为第二用户在支付平台开设的账户的账号信息,账户数值可以为用户账户中的账户金额,交互数值可以为支付交易的支付金额,在通过互联网与服务器连接的情况下,用户可以预先圈存一定的资金金额到账户中用作离线支付使用。更具体地,用户的离线账户数据可以分为收款账户、付款账户,并且其中,收款账户只能用于收款、付款账户只能用于支付。圈存金额到付款账户时,可以通过服务器端生成离线账户数据,第二用户可以下载离线账户数据并保存,并且可以在通过互联网与服务器连接时,与服务器同步离线账户数据。当第二用户接收到第一用户发送的支付交易请求,并对第一用户签名消息认证码进行验证通过时,可以根据支付账单中的支付金额,从离线账户数据的账户金额中扣减相应的金额。
根据本申请的一个实施例,所述离线账户数据可以由服务器利用第二用户的公钥进行加密后,再由第二用户下载并保存,第二用户可以利用第二用户的私钥对离线账户数据进行解密,其中,第二用户的公钥和私钥是一对非对称密钥,是由服务器(第三方平台的服务器)颁发的,并且在服务器端也保存有第二用户的公钥,并与第二用户在第三方交互平台开设的账户绑定,第二用户的私钥可以由服务器进行加密后,再由第二用户下载。
具体地,服务器可以采集第二用户的特定信息(如账户密码、用户身份证明信息、设备信息等),并利用对称加密算法(例如,DES加密算法)生成对称密钥,然后利用该对称密钥对第二用户的私钥进行加密,第二用户可以采集相同的特定信息,并通过相同加密算法生成与服务器端相同的对称密钥后,利用该对称密钥对加密保存的第二用户私钥进行解密得到第二用户的私钥。如果对所述第一用户签名消息认证码的验证通过,则第二用户可以利用得到的第二用户的私钥解密自己的离线账户数据。
根据本申请的一个实施例,还可以包括:第二用户验证所述离线账户数据中包含的账户验证信息的完整性的步骤,其中,所述账户验证信息是利用哈希算法对所述离线账户数据进行运算而生成的。
根据本申请的一个实施例,第二用户在根据交互记录进行数据操作之前,还可以对所述第一用户的数字证书的指纹信息进行验证。
在步骤S104处,第二用户对所述交互记录进行签名,以生成第二用户签名消息认证码,并通过非互联网连接方式向所述第一用户发送包含所述交互记录和所述第二用户签名消息认证码的交互凭据。
根据本申请的一个实施例,第二用户可以利用第二用户的私钥对交互记录进行签名,以生成第二用户签名消息认证码,具体地,可以利用第二用户的私钥对交互记录和/或随机生成的第二用户消息认证码进行加密(即,签名)生成第二用户签名消息认证码,也就是说,第二用户签名消息认证码可以是利用第二用户的私钥对交互记录或随机生成的第二用户消息认证码进行加密生成的,还可以是将交互记录和第二用户消息认证码组合在一起,并利用第二用户的私钥进行加密生成的,并且在利用第二用户的私钥对交互记录和/或第二用户消息认证码进行加密时,可以先对交互记录和/或第二用户消息认证码进行哈希运算(例如,利用MD5算法进行哈希运算),再利用第二用户的私钥进行加密签名。由于该第二用户签名消息认证码是利用第二用户的私钥进行加密生成的,因此,只有利用第二用户的公钥才能对该第二用户签名消息认证码进行解密,可以证明第二用户的已经根据交互记录进行了相应的数据操作,并防止第二用户抵赖。
第二用户可以将包含第二用户签名消息认证码和交互记录的交互凭据与第二用户的公钥一起发送给第一用户,以便第一用户利用第二用户的公钥对该第二用户签名消息认证码进行验证,并在验证通过后,对自己的离线账户数据(第一用户的离线账户数据)进行相应的数据操作,即,根据交互记录在账户数值中增加相应的交互数值。
沿用前面的示例,付款方(第二用户)根据支付账单(交互记录)从自己离线账户数据的账户数值中扣减相应的金额后,利用自己的私钥对支付账单进行签名,生成付款方签名消息认证码(第二用户签名消息认证码),并向收款方(第一用户)发送包含该付款方签名消息认证码的支付凭据(交互凭据),以证明已经对该支付账单进行了支付。
在一个优选实施例中,交互凭据是利用第一用户的公钥加密后,再向所述第一用户发送的,第一用户可以利用自己的私钥对其进行解密,从而得到该交互凭据。
在步骤S105处,当通过互联网连接方式连接到服务器时,第二用户向服务器发送所述交互凭据,以便所述服务器根据所述交互凭据完成第一用户与第二用户针对所述数据交互的离线账户数据的清算。
当第二用户通过互联网连接服务器时,可以自动向服务器发送该交互凭据,服务器接收到该交互凭据,对其中的第二用户签名消息认证码进行验证,如果验证通过,则根据该交互凭据中的交互记录完成第一用户与第二用户针对该数据交互的账户数据清算,也就是说,服务器根据该交互记录,从服务器端保存的第二用户的离线账户数据的账户数值中扣减相应的交互数值,并向服务器端保存的第一用户的离线账户数据的账户数值中增加相应的交互数值,以完成第一用户和第二用户之间的离线账户数据的清算。如果服务器在接收到第二用户发送的交互凭据之前,已经对第一用户与第二用户之间的本次数据交互进行了离线数据的清算(接收到了第一用户发送的交互凭据,并根据该交互凭据完成了第一用户与第二用户之间针对本次数据交互的离线账户数据的清算),则服务器不再次进行清算。具体而言,第一用户和第二用户都可以向服务器发送该交互凭据,服务器根据该交互凭据对第一用户与第二用户之间的数据交互进行的离线账户数据清算可以包括以下的几种情况:其一,服务器接收到第一用户或第二用户中任一方发送的交互凭据,即对双方的数据交互进行离线账户数据的清算,也就是说,服务器不管先收到了哪一方发送的交互凭据,都会根据交互凭据中的交互记录进行第一用户与第二用户之间的离线账户数据的清算,如果清算后再接收到另一方发送的交互凭据,则不会再次进行清算。例如,在第二用户向服务器发送交互凭据之前,服务器已经接收到了第一用户发送的交互凭据,则服务器如果对该交互凭据中包含的第二签名消息认证码验证成功,就可以根据该交互凭据进行第一用户与第二用户之间的离线账户数据的清算,不需要在接收到第二用户发送的交互凭据之后再进行清算,清算完成后,如果再接收到第二用户发送的交互凭据,则不再进行清算。其二,服务器接收到第一用户和第二用户双方发送的交互凭据,再进行清算,即,第一用户和第二用户都将交互凭据发送到服务器后(其中,双方不需要同时在线或同时向服务器发送交互凭据),服务器再根据交互记录完成第一用户与第二用户针对该数据交互的离线账户数据清算。
服务器颁发给第一用户的公钥与第二用户的公钥分别与第一用户和第二用户各自在服务器开设的账户绑定,并且保存在服务器中,服务器可以利用第二用户对应绑定的公钥对该第二用户签名消息认证码进行验证。
沿用前面的示例,服务器根据收款方(第二用户)对应绑定的公钥对支付凭据中的付款方的签名消息认证码(第二用户签名消息认证码)进行验证,其中,该付款方的签名消息认证码是利用付款方的私钥进行签名生成的,在没有付款方的私钥的情况下是无法伪造的,因此服务器只需验证付款方的签名消息认证码,即可确认收款方用户和付款方用户之间的支付交易是否合法,验证通过后,根据该支付凭据中包含的支付记录中的支付金额,从付款方(第二用户)的账户金额中扣除相应的支付金额,并向收款方(第一用户)的账户金额中增加相应的金额,即,完成收款方和付款方的账户金额的清算。如果验证该第二用户签名消息认证码失败,则服务器拒绝进行清算。
根据本申请的一个实施例,该交互记录中还可以包含交互标签,该交互标签可以是由第一用户创建交互记录时生成的,用于标识该交互记录,也就是标识本次数据交互,该交互标签可以是将当前时间、随机生成的字符串等信息利用摘要算法(例如,消息摘要算法第五版MD5)进行运算得到的,服务器可以根据该交互标签对第一用户和第二用户之间的数据交互的离线账户数据的清算进行幂等性控制,即,一次数据交互只能进行一次离线账户数据的清算。
在实际应用中,第一用户和第二用户通过互联网连接方式连接服务器,并向服务器发送该交互凭据不一定是同时进行的,事实上,第一用户和第二用户同时将交互凭据上传到服务器的几率是非常小的,因此,服务器针对第一用户和第二用户的数据交互的离线账户数据的清算是在双方都将交互凭据上传到服务器之后完成的。
本申请的另一方面还提供一种数据交互方法。
参考图2,图2是根据本申请的另一实施例的数据交互方法的流程图。
在步骤S201中,第一用户通过非互联网连接方式向第二用户发送数据交互请求,以请求与所述第二用户进行数据交互。
具体地,第一终端和第二终端可以为手机、平板电脑、个人计算机等设备,第一终端和第二终端都可以与第三方交互平台的服务器进行通信,并且第一终端和第二终端可以通过非互联网连接方式进行通信,所述非互联网连接方式可以包括:二维码、声波、蓝牙、wifi等,也就是说,第一用户可以通过二维码、声波、蓝牙、wifi中的任意一种或多种方式,向所述第二用户发送数据交互请求。
所述数据交互请求中可以包含交互记录,并且,该交互记录是由第一用户端创建的。交互记录中可以包含:第一用户的账号、第二用户的账号、交互数值等交互信息以及第一用户签名消息认证码等等,但不限于此。该交互记录中包含的第一用户签名消息认证码可以是由第一用户对创建的交互记录进行签名而生成的,具体地,第一用户可以利用自己的私钥对交互信息和/或随机生成的第一用户消息认证码进行加密,以生成第一用户签名消息认证码。在一个优选实施例中,第一用户可以将自己的公钥(第一用户的公钥)放在该数据交互请求中发送给第二用户,以便第二用户接收到该数据交互请求后,利用第一用户的公钥对该第一用户签名消息认证码进行验证。
根据本申请的一个实施例,该数据交互可以为支付交易,第一用户可以为收款方,第二用户可以为付款方,收款方和付款方都在第三方支付平台(例如,支付宝等)开设有账户。当收款方和付款方需要进行支付交易时,第一用户根据交易的内容创建支付账单(交互记录),支付账单中可以包含:收款方的账号、付款方的账号、支付金额、收款方的消息认证码(第一用户消息认证码)以及收款方的签名消息认证码(第一用户签名消息认证码)。
在步骤S202处,第一用户通过非互联网连接方式接收所述第二用户返回的包含所述交互记录和第二用户签名消息认证码的交互凭据。
第二用户接收到该数据交互请求时,利用第一用户的公钥对交互记录中包含的第一用户签名消息认证码进行验证,如果所述验证通过,则响应该数据交互请求根据该交互记录对自己的离线账户数据进行相应的数据操作,并利用第二用户的私钥对该交互记录进行签名,生成第二用户签名消息认证码,以证明已经根据交互记录进行了相应的数据操作,第二用户将包含该交互记录和该第二用户签名消息认证码的交互凭据发送给第一用户,第一用户接收该交互凭据。在一个具体的示例中,该交互凭据可以为进行支付交易的支付凭据,该第二用户签名消息认证码可以用于证明第二用户已经在离线情况下,对支付交易进行了支付,并防止第二用户抵赖。
在一个优选实施例中,该交互凭据是由第二用户利用第一用户的公钥进行加密后,再发送给第一用户的,第一用户可以利用自己的私钥对接收到的加密的交互凭据进行解密,从而得到该交互凭据。
在步骤S203处,第一用户对所述交互凭据中的所述第二用户签名消息认证码进行验证。
具体地,该第二用户签名消息认证码是利用第二用户的私钥对该交互记录和/或随机生成的第二用户消息认证码进行加密生成的,第一用户可以利用第二用户的公钥对该第二用户签名消息认证码进行验证。
在步骤S204处,如果所述验证通过,则第一用户根据所述交互记录对离线账户数据进行相应的数据操作。
具体而言,离线账户数据可以包括:用户身份证明信息(用户注册账号时,服务器自动给用户分配的编号)、用户账号信息(用户在第三方交互平台开设的账户的账号信息)、账户数值、账户有效期、数据更新时间、用户设备信息(例如手机号码、SIM卡识别码ICCID、手机设备识别码IMEI)等等,但并不限于此。可以通过服务器端生成第一用户的离线账户数据并保存,第一用户可以下载对应的离线账户数据并保存,并且在通过互联网与服务器连接时,可以与服务器同步离线账户数据。其中,所述账户数值是在与服务器通过互联网连接方式连接的情况下通过服务器进行预先设置的。当第一用户接收到交互凭据,并对第二用户签名消息认证码进行验证通过时,可以根据该交互记录对保存的离线账户数据进行相应的数据操作。
在本申请的一个示例中,用户账号信息可以为第一用户的用户在支付平台开设的账户的账号信息,账户数值可以为用户账户中的账户金额,交互数值可以为支付交易的支付金额,当收款方(第一用户)接收到支付凭据,并对付款方的签名消息认证码进行验证通过时,可以根据支付账单中的支付金额,向账户金额中增加相应的金额。
根据本申请的一个实施例,第一用户还可以对所述第二用户的数字证书的指纹信息进行验证。
在步骤S205处,当通过互联网连接方式连接服务器时,第一用户向服务器发送所述交互凭据,以便所述服务器根据所述交互凭据完成第一用户与第二用户针对所述数据交互的离线账户数据清算。
第一用户通过互联网连接方式连接到服务器时,可以自动向服务器发送该交互凭据,服务器接收到该交互凭据,对其中的第二用户签名消息认证码进行验证,如果验证通过,则根据该交互凭据中的交互记录完成第一用户与第二用户针对该数据交互的离线账户数据清算。如果服务器在接收到第一用户发送的交互凭据之前,已经对第一用户与第二用户之间的本次数据交互进行了离线数据的清算(接收到了第二用户发送的交互凭据,并根据该交互凭据完成了第一用户与第二用户之间针对本次数据交互的离线账户数据的清算),则服务器不再次进行清算。具体而言,第一用户和第二用户都可以向服务器发送该交互凭据,服务器根据该交互凭据执行对第一用户与第二用户之间的数据交互进行的离线账户数据清算可以包括以下的几种情况:其一,服务器接收到第一用户或第二用户中任一方发送的交互凭据,即对双方的数据交互进行离线账户数据的清算,也就是说,服务器不管先收到了哪一方发送的交互凭据,都会根据交互凭据中的交互记录进行第一用户与第二用户之间的离线账户数据的清算,如果清算后再接收到另一方发送的交互凭据,则不会再次进行清算。例如,在第一用户向服务器发送交互凭据之前,服务器已经接收到了第二用户发送的交互凭据,则服务器如果对该交互凭据中包含的第二签名消息认证码验证成功,就可以根据该交互凭据进行第一用户与第二用户之间的离线账户数据的清算,不需要在接收到第一用户发送的交互凭据之后再进行清算,清算完成后,如果再接收到第一用户发送的交互凭据,则不再进行清算。其二,服务器接收到第一用户和第二用户双方发送的交互凭据,再进行清算,即,第一用户和第二用户都将交互凭据发送到服务器后(其中,双方不需要同时在线或同时向服务器发送交互凭据),服务器再根据交互记录完成第一用户与第二用户针对该数据交互的离线账户数据清算。
根据本申请的实施例,服务器端可以保存第一用户的公钥与第二用户的公钥,并且,第一用户的公钥与第二用户的公钥分别与第一用户和第二用户各自在服务器开设的账户绑定,服务器可以使用第二用户对应绑定的公钥对该第二用户签名消息认证码进行验证。
在一个示例中,服务器根据收款方对应绑定的公钥对支付凭据中的付款方的签名消息认证码(第二用户签名消息认证码)进行验证,由于该付款方的签名消息认证码是利用付款方的私钥进行签名生成的,在没有付款方的私钥的情况下是无法伪造的,因此服务器只需验证付款方的签名消息认证码,即可确认收款方用户和付款方用户之间的支付交易是否合法。验证通过后,服务器根据该支付凭据中包含的支付记录中的支付金额,从付款方(第二用户)的账户金额中扣除相应的支付金额,并向收款方(第一用户)的账户金额中增加相应的金额,即完成收款方和付款方的账户金额的清算。
根据本申请的一个实施例,该交互记录中还可以包含交互标签,该交互标签可以是由第一用户创建该交互记录时生成的,用于标识该交互记录,也就是标识本次数据交互,该交互标签可以是将当前时间、随机生成的字符串等信息利用摘要算法(例如,消息摘要算法第五版MD5)进行运算得到的,服务器可以根据该交互标签对第一用户和第二用户之间离线账户数据的清算进行幂等性控制,即,针对一次数据交互只能进行一次离线账户数据的清算。如果验证该第二用户签名消息认证码失败,则服务器拒绝进行清算。
本申请的另一方面还提供了一种数据交互方法,如图3所示,为根据本申请又一实施例的数据交互方法的流程图。
在步骤S301中,接收第一用户和/或第二用户发送的交互凭据。
具体地,交互凭据是第一用户与第二用户通过非互联网连接方式进行数据交互时创建的。当第一用户和第二用户需要进行数据交互时,由第一用户创建交互记录,并将包含交互记录的数据交互请求通过非互联网连接方式向第二用户发送,其中,该数据交互记录中包括第一用户对该交互记录进行签名后生成的第一用户签名消息认证码,第二用户接收到该数据交互请求时,对交互记录中的第一用户签名消息进行验证,如果验证通过,则第二用户根据该交互记录对第一用户的账号数据进行相应的数据操作,即,根据交互记录中的交互数值,从自己的离线账户数据的账户数值中扣减相应的交互数值,并且对该交互记录进行签名生成第二用户签名消息认证码,并将包含该第二用户签名消息认证码和交互记录的交互凭据发送给第一用户,第一用户对接收到的交互凭据中的第二签名消息认证码进行验证,如果验证通过则根据交互记录,对自己的离线账户数据进行相应的操作,即,根据交互记录中的交互数值,向自己的离线账户数据的账户数值中增加相应的交互数值,以完成与第二用户的数据交互。当通过互联网连接方式连接到服务器时,第一用户和第二用户都可以向服务器发送该交互凭据。
在步骤S302中,对所述交互凭据中包含的第二用户签名消息认证码进行验证;所述第二用户签名消息认证码是由所述第二用户根据交互记录进行相应的数据操作后,对所述交互记录进行签名而生成的。
服务器接收到第一用户和第二用户中任何一方发送的交互凭据时,可以验证该交互凭据中包含的第二用户签名消息认证码,如上所述,第二用户签名消息认证码是由第二用户根据交互记录进行相应的数据操作后,对所述交互记录进行签名而生成的,具体地,第二用户可以利用自己的私钥(第二用户的私钥)对交互记录进行加密生成第二用户签名消息认证码,由于是使用第二用户的私钥进行签名,在没有第二用户的私钥的情况下,是无法伪造第二用户的签名的(第二签名消息认证码),因此服务器只需验证第二用户签名消息认证码,即可确认第一用户和第二用户之间的数据交互是否合法。服务器中保存了第一用户的公钥与第二用户的公钥,并且,第一用户的公钥与第二用户的公钥分别与第一用户和第二用户各自在服务器开设的账户绑定,服务器可以使用第二用户对应绑定的公钥对该第二用户签名消息认证码进行验证。
在步骤S303中,如果所述验证通过,则根据所述交互凭据完成第一用户与第二用户针对所述数据交互的离线账户数据的清算。
具体地,如果验证通过,则服务器可以根据交互凭据中的交互记录完成第一用户与第二用户针对该数据交互的账号数据清算,即,根据交互记录中的交互数值,从第二用户的离线账户数据中扣减相应的交互数值,并从第一用户的离线账户数据中增加相应的交互数值,以完成第一用户和第二用户之间的数据交互的离线账户数据的清算。具体而言,第一用户和第二用户都可以向服务器发送该交互凭据,服务器根据该交互凭据执行对第一用户与第二用户之间的数据交互进行的离线账户数据清算可以包括以下的几种情况:其一,服务器接收到第一用户或第二用户中任一方发送的交互凭据,即对双方的数据交互进行离线账户数据的清算,也就是说,服务器不管先收到了哪一方发送的交互凭据,都会根据交互凭据中的交互记录进行第一用户与第二用户之间的离线账户数据的清算,如果清算后再接收到另一方发送的交互凭据,则不会再次进行清算。例如,在第一用户向服务器发送交互凭据之前,服务器已经接收到了第二用户发送的交互凭据,则服务器如果对该交互凭据中包含的第二签名消息认证码验证成功,就可以根据该交互凭据进行第一用户与第二用户之间的离线账户数据的清算,不需要在接收到第一用户发送的交互凭据之后再进行清算,清算完成后,如果再接收到第一用户发送的交互凭据,则不再进行清算。其二,服务器接收到第一用户和第二用户双方发送的交互凭据,再进行清算,即,第一用户和第二用户都将交互凭据发送到服务器后(其中,双方不需要同时在线或同时向服务器发送交互凭据),服务器再根据交互记录完成第一用户与第二用户针对该数据交互的离线账户数据清算。
在一个具体的示例中,该数据交互为支付交易,该交互凭据为收款方(第一用户)和付款方(第二用户)进行支付交易时生成的支付凭据,服务器根据接收到的支付凭据中包含的支付记录(交互记录)中的支付金额(交互数值),从付款方的账户金额(账户数值)中扣除相应的支付金额,并向收款方的账户金额中增加相应的金额,以完成收款方和付款方之间的支付交易的账户金额的清算。
本申请的再一方面还提供了一种数据交互方法,参考图4,为根据本申请再一实施例的数据交互方法的流程图。
如图4所示,在步骤S401中,第一用户通过非互联网连接方式向第二用户发送数据交互请求,以请求与第二用户进行数据交互。其中,所述数据交互请求中包含交互记录,并且,该交互记录中包含第一用户签名消息认证码。
在步骤S402中,第二用户通过非互联网连接方式接收来自第一用户的数据交互请求,并对所述交互记录中包含的第一用户签名消息认证码进行验证。
在步骤S403中,如果所述验证通过,则第二用户根据所述交互记录对第二用户的离线账户数据进行相应的数据操作。
在步骤S404中,第二用户对所述交互记录进行签名,以生成第二用户签名消息认证码,并通过非互联网连接方式向第一用户发送包含所述交互记录和所述第二用户签名消息认证码的交互凭据。
在步骤S405中,第一用户通过非互联网连接方式接收第二用户发送的包含所述交互记录和第二用户签名消息认证码的交互凭据。
在步骤S406中,第一用户对所述交互凭据中的所述第二用户签名消息认证码进行验证。
在步骤S407中,如果所述验证通过,则第一用户根据所述交互记录对第一用户的离线账户数据进行相应的数据操作。
在步骤S408中,当第一用户和/或第二用户通过互联网连接方式连接到服务器时,向服务器发送所述交互凭据,以便所述服务器根据所述交互凭据完成第一用户与第二用户针对所述数据交互的离线账户数据清算。
以上结合图1至图4描述了根据本申请的实施例的数据交互方法,上述的实施例仅为本申请的优选实施例,本申请不限于此。
与上述数据交互方法类似,本申请实施例还提供了相应的装置。
图5示意性地示出了根据本申请的一个实施例的数据交互装置的结构框图。
如图5所示,该装置500可以包括:请求接收模块510、第二验证模块520、第二数据操作模块530、签名模块540、交互凭据发送模块550以及第二发送模块560。
具体而言,请求接收模块510可以用于第二用户通过非互联网连接方式接收来自第一用户的数据交互请求,所述数据交互请求中包含:交互记录,所述交互记录中包含第一用户签名消息验证码。
第二验证模块520可以用于第二用户对所述交互记录中包含的第一用户签名消息认证码进行验证。
第二数据操作模块530可以用于如果所述验证通过,则第二用户根据所述交互记录对离线账户数据进行相应的数据操作。
签名模块540可以用于第二用户对所述交互记录进行签名,以生成第二用户签名消息认证码。
交互凭据发送模块550可以用于第二用户通过非互联网连接方式向所述第一用户发送包含所述交互记录和所述第二用户签名消息认证码的交互凭据。
第二发送模块560可以用于当通过互联网连接方式连接到服务器时,第二用户向服务器发送所述交互凭据,以便所述服务器根据所述交互凭据完成第一用户与第二用户针对所述数据交互的离线账户数据清算。
根据本申请的一个实施例,所述数据交互请求中还包含所述第一用户的公钥;并且第一验证模块中,第二用户对所述交互记录中包含的第一用户签名消息认证码进行验证是利用所述第一用户的公钥进行的。
根据本申请的一个实施例,装置500还可以包括:解密模块,可以用于如果所述验证通过,则第二用户解密所述离线账户数据。
具体地,离线账户数据可以包括:用户身份证明信息、账户有效期、账户数值、数据更新时间,其中,所述账户数值是在与服务器通过互联网连接方式连接的情况下通过服务器进行预先设置的。
根据本申请的一个实施例,离线账户数据中还可以包括账户验证信息,装置500还可以包括:完整性验证模块,用于第二用户验证所述离线账户数据中包含的账户验证信息的完整性;其中,所述账户验证信息是利用哈希算法对所述离线账户数据进行运算而生成的。
根据本申请的一个实施例,所述交互凭据是第二用户利用第一用户的公钥加密后向第一用户发送的。
根据本申请的一个实施例,装置500还可以包括指纹信息验证模块,用于第二用户对所述第一用户的数字证书的指纹信息进行验证,以确定所述第一用户是否合法。
根据本申请的一个实施例,其中,非互联网连接方式包括:二维码、声波、蓝牙、wifi。
图6示意性地示出了根据本申请的另一实施例数据交互装置的结构框图。
如图6所示,该装置600可以包括:请求发送模块610、交互凭据接收模块620、第一验证模块630、第一数据操作模块640、第一发送模块650。
具体地,请求发送模块610可以用于第一用户通过非互联网连接方式向第二用户发送数据交互请求,以请求与所述第二用户进行数据交互,其中,所述数据交互请求中包含交互记录。
交互凭据接收模块620可以用于第一用户通过非互联网连接方式接收所述第二用户返回的包含所述交互记录和第二用户签名消息认证码的交互凭据。
第一验证模块630可以用于第一用户对所述交互凭据中的所述第二用户签名消息认证码进行验证。其中,所述第二用户签名消息认证码是由所述第二用户对所述交互记录进行签名而生成的。
第一数据操作模块640可以用于如果所述验证通过,则第一用户根据所述交互记录对离线账户数据进行相应的数据操作。
第一发送模块650可以用于当通过互联网连接方式连接到服务器时,第一用户向服务器发送所述交互凭据,以便所述服务器根据所述交互凭据完成第一用户与第二用户针对所述数据交互的离线账户数据清算。
根据本申请的一个实施例,第一验证模块630可以进一步用于:第一用户利用所述第二用户的公钥对所述第二用户签名消息认证码进行验证。
根据本申请的一个实施例,交互凭据由所述第二用户进行过加密,装置600还可以包括解密模块,用于对接收到的交互凭据进行解密。
根据本申请的一个实施例,所述非互联网连接方式包括:二维码、声波、蓝牙、wifi。
图7示意性地示出了根据本申请的又一实施例数据交互装置的结构框图。
如图7所示,该装置700可以包括:接收模块710、验证模块720、清算模块730。
具体而言,接收模块710可以用于接收第一用户和/或第二用户发送的交互凭据,其中,所述交互凭据是所述第一用户与所述第二用户通过非互联网连接方式进行数据交互时创建的。
验证模块720可以用于对所述交互凭据中包含的第二用户签名消息认证码进行验证,所述第二用户签名消息认证码是由所述第二用户根据交互记录进行相应的数据操作后,对所述交互记录进行签名而生成的。
清算模块730可以用于如果所述验证通过,则根据所述交互凭据完成第一用户与第二用户针对所述数据交互的离线账户数据的清算。
图8示意性地示出了根据本申请再一实施例数据交互系统的结构框图。
如图8所示,系统800可以包括:第一终端810、第二终端820以及服务器830。
第一终端810可以包括:请求发送模块811、交互凭据接收模块812、第一验证模块813、第一数据操作模块814、第一发送模块815。
具体地,请求发送模块811可以用于第一用户通过非互联网连接方式向第二用户发送数据交互请求,以请求与所述第二用户进行数据交互,其中,所述数据交互请求中包含交互记录。
交互凭据接收模块812可以用于第一用户通过非互联网连接方式接收所述第二用户返回的包含所述交互记录和第二用户签名消息认证码的交互凭据。
第一验证模块813可以用于第一用户对所述交互凭据中的所述第二用户签名消息认证码进行验证。其中,所述第二用户签名消息认证码是由所述第二用户对所述交互记录进行签名而生成的。
第一数据操作模块814可以用于如果所述验证通过,则第一用户根据所述交互记录对离线账户数据进行相应的数据操作。
第一发送模块815可以用于当通过互联网连接方式连接到服务器时,第一用户向服务器发送所述交互凭据,以便所述服务器根据所述交互凭据完成第一用户与第二用户针对所述数据交互的离线账户数据清算。
第二终端820可以包括:
请求接收模块821、第二验证模块822、第二数据操作模块823、签名模块824、交互凭据发送模块825以及第二发送模块826。
具体而言,请求接收模块821可以用于第二用户通过非互联网连接方式接收来自第一用户的数据交互请求,所述数据交互请求中包含:交互记录,所述交互记录中包含第一用户签名消息验证码。
第二验证模块822可以用于第二用户对所述交互记录中包含的第一用户签名消息认证码进行验证。
第二数据操作模块823可以用于如果所述验证通过,则第二用户根据所述交互记录对离线账户数据进行相应的数据操作。
签名模块824可以用于第二用户对所述交互记录进行签名,以生成第二用户签名消息认证码。
交互凭据发送模块825可以用于第二用户通过非互联网连接方式向所述第一用户发送包含所述交互记录和所述第二用户签名消息认证码的交互凭据。
第二发送模块826可以用于当通过互联网连接方式连接到服务器时,第二用户向服务器发送所述交互凭据,以便所述服务器根据所述交互凭据完成第一用户与第二用户针对所述数据交互的离线账户数据清算。
服务器830可以包括:接收模块831、验证模块832、清算模块833。
具体而言,接收模块831可以用于接收第一用户和/或第二用户发送的交互凭据,其中,所述交互凭据是所述第一用户与所述第二用户通过非互联网连接方式进行数据交互时创建的。
验证模块832可以用于对所述交互凭据中包含的第二用户签名消息认证码进行验证,所述第二用户签名消息认证码是由所述第二用户根据交互记录进行相应的数据操作后,对所述交互记录进行签名而生成的。
清算模块833可以用于如果所述验证通过,则根据所述交互凭据完成第一用户与第二用户针对所述数据交互的离线账户数据的清算。
由于本实施例的各个装置所实现的功能基本相应于前述图1至图4所示的方法实施例,故本实施例的描述中未详尽之处,可以参见前述实施例中的相关说明,在此不做赘述。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flashRAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上所述仅为本申请的实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (21)

1.一种数据交互方法,其特征在于,包括:
第二用户通过非互联网连接方式接收来自第一用户的数据交互请求,所述数据交互请求中包含:交互记录;
第二用户对所述交互记录中包含的第一用户签名消息认证码进行验证;
如果所述验证通过,则第二用户根据所述交互记录对离线账户数据进行相应的数据操作;
第二用户对所述交互记录进行签名,以生成第二用户签名消息认证码,并通过非互联网连接方式向所述第一用户发送包含所述交互记录和所述第二用户签名消息认证码的交互凭据;
当通过互联网连接方式连接到服务器时,第二用户向服务器发送所述交互凭据,以便所述服务器根据所述交互凭据完成第一用户与第二用户针对所述数据交互的离线账户数据清算。
2.根据权利要求1所述的方法,其中,所述数据交互请求中还包含所述第一用户的公钥;并且其中,
第二用户对所述交互记录中包含的第一用户签名消息认证码进行验证是利用所述第一用户的公钥进行的。
3.根据权利要求1所述的方法,其特征在于,还包括:如果所述验证通过,则第二用户解密所述离线账户数据。
4.根据权利要求1所述的方法,其特征在于,所述离线账户数据包括:用户身份证明信息、账户有效期、账户数值、数据更新时间,其中,所述账户数值是在与服务器通过互联网连接方式连接的情况下通过服务器进行预先设置的。
5.根据权利要求4所述的方法,其特征在于,还包括:第二用户验证所述离线账户数据中包含的账户验证信息的完整性;其中,所述账户验证信息是利用哈希算法对所述离线账户数据进行运算而生成的。
6.根据权利要求1所述的方法,其中,所述交互凭据是利用所述第一用户的公钥加密后向所述第一用户发送的。
7.根据权利要求1所述的方法,其特征在于,还包括:第二用户对所述第一用户的数字证书的指纹信息进行验证,以确定所述第一用户是否合法。
8.根据权利要求1所述的方法,其特征在于,所述非互联网连接方式包括:二维码、声波、蓝牙、wifi。
9.一种数据交互方法,其特征在于,包括:
第一用户通过非互联网连接方式向第二用户发送数据交互请求,以请求与所述第二用户进行数据交互,其中,所述数据交互请求中包含交互记录;
第一用户通过非互联网连接方式接收所述第二用户返回的包含所述交互记录和第二用户签名消息认证码的交互凭据;
第一用户对所述交互凭据中的所述第二用户签名消息认证码进行验证;
如果所述验证通过,则第一用户根据所述交互记录对离线账户数据进行相应的数据操作;
当通过互联网连接方式连接到服务器时,第一用户向服务器发送所述交互凭据,以便所述服务器根据所述交互凭据完成第一用户与第二用户针对所述数据交互的离线账户数据清算。
10.根据权利要求9所述的方法,其特征在于,所述第二用户签名消息认证码是由所述第二用户对所述交互记录进行签名而生成的。
11.根据权利要求9所述的方法,其特征在于,第一用户对所述第二用户签名消息认证码进行验证,进一步包括:
第一用户利用所述第二用户的公钥对所述第二用户签名消息认证码进行验证。
12.根据权利要求9所述的方法,所述交互凭据由所述第二用户进行过加密。
13.根据权利要求9所述的方法,其特征在于,所述非互联网连接方式包括:二维码、声波、蓝牙、wifi。
14.一种数据交互方法,其特征在于,包括:
接收第一用户和/或第二用户发送的交互凭据,其中,所述交互凭据是所述第一用户与所述第二用户通过非互联网连接方式进行数据交互时创建的;
对所述交互凭据中包含的第二用户签名消息认证码进行验证,所述第二用户签名消息认证码是由所述第二用户根据交互记录进行相应的数据操作后,对所述交互记录进行签名而生成的;
如果所述验证通过,则根据所述交互凭据完成第一用户与第二用户针对所述数据交互的离线账户数据的清算。
15.一种数据交互方法,其特征在于,包括:
第一用户通过非互联网连接方式向第二用户发送数据交互请求,以请求与第二用户进行数据交互,其中,所述数据交互请求中包含交互记录;
第二用户通过非互联网连接方式接收来自第一用户的数据交互请求,并对所述交互记录中包含的第一用户签名消息认证码进行验证;
如果所述验证通过,则第二用户根据所述交互记录对第二用户的离线账户数据进行相应的数据操作;
第二用户对所述交互记录进行签名,以生成第二用户签名消息认证码,并通过非互联网连接方式向第一用户发送包含所述交互记录和所述第二用户签名消息认证码的交互凭据;
第一用户通过非互联网连接方式接收第二用户发送的包含所述交互记录和第二用户签名消息认证码的交互凭据;
第一用户对所述交互凭据中的所述第二用户签名消息认证码进行验证;
如果所述验证通过,则第一用户根据所述交互记录对第一用户的离线账户数据进行相应的数据操作;
当第一用户和/或第二用户通过互联网连接方式连接到服务器时,向服务器发送所述交互凭据,以便所述服务器根据所述交互凭据完成第一用户与第二用户针对所述数据交互的离线账户数据清算。
16.一种数据交互装置,其特征在于,包括:
请求接收模块,用于第二用户通过非互联网连接方式接收来自第一用户的数据交互请求,所述数据交互请求中包含:交互记录;
第二验证模块,用于第二用户对所述交互记录中包含的第一用户签名消息认证码进行验证;
第二数据操作模块,用于如果所述验证通过,则第二用户根据所述交互记录对离线账户数据进行相应的数据操作;
签名模块,用于第二用户对所述交互记录进行签名,以生成第二用户签名消息认证码;
交互凭据发送模块,用于第二用户通过非互联网连接方式向所述第一用户发送包含所述交互记录和所述第二用户签名消息认证码的交互凭据;
第二发送模块,用于当通过互联网连接方式连接到服务器时,第二用户向服务器发送所述交互凭据,以便所述服务器根据所述交互凭据完成第一用户与第二用户针对所述数据交互的离线账户数据清算。
17.根据权利要求16所述的装置,其特征在于,所述非互联网连接方式包括:二维码、声波、蓝牙、wifi。
18.一种数据交互装置,其特征在于,包括:
请求发送模块,用于第一用户通过非互联网连接方式向第二用户发送数据交互请求,以请求与所述第二用户进行数据交互,其中,所述数据交互请求中包含交互记录;
交互凭据接收模块,用于第一用户通过非互联网连接方式接收所述第二用户返回的包含所述交互记录和第二用户签名消息认证码的交互凭据;
第一验证模块,用于第一用户对所述交互凭据中的所述第二用户签名消息认证码进行验证;
第一数据操作模块,用于如果所述验证通过,则第一用户根据所述交互记录对离线账户数据进行相应的数据操作;
第一发送模块,用于当通过互联网连接方式连接到服务器时,第一用户向服务器发送所述交互凭据,以便所述服务器根据所述交互凭据完成第一用户与第二用户针对所述数据交互的离线账户数据清算。
19.根据权利要求18所述的装置,其特征在于,所述非互联网连接方式包括:二维码、声波、蓝牙、wifi。
20.一种数据交互装置,其特征在于,包括:
接收模块,用于接收第一用户和/或第二用户发送的交互凭据,其中,所述交互凭据是所述第一用户与所述第二用户通过非互联网连接方式进行数据交互时创建的;
验证模块,用于对所述交互凭据中包含的第二用户签名消息认证码进行验证,所述第二用户签名消息认证码是由所述第二用户根据交互记录进行相应的数据操作后,对所述交互记录进行签名而生成的;
清算模块,用于如果所述验证通过,则根据所述交互凭据完成第一用户与第二用户针对所述数据交互的离线账户数据的清算。
21.一种数据交互系统,其特征在于,包括:第一终端、第二终端以及服务器,
所述第一终端包括:
请求发送模块,用于第一用户通过非互联网连接方式向第二用户发送数据交互请求,以请求与第二用户进行数据交互,其中,所述数据交互请求中包含交互记录;
交互凭据接收模块,用于第一用户通过非互联网连接方式接收第二用户发送的包含所述交互记录和第二用户签名消息认证码的交互凭据;
第一验证模块,用于第一用户对所述交互凭据中的所述第二用户签名消息认证码进行验证;
第一数据操作模块,用于如果所述验证通过,则第一用户根据所述交互记录对第一用户的离线账户数据进行相应的数据操作;
第一发送模块,用于当第一用户通过互联网连接方式连接到服务器时,向服务器发送所述交互凭据;
所述第二终端包括:
请求接收模块,用于第二用户通过非互联网连接方式接收来自第一用户的数据交互请求;
第二验证模块,用于第二用户对所述交互记录中包含的第一用户签名消息认证码进行验证;
第二数据操作模块,用于如果所述验证通过,则第二用户根据所述交互记录对第二用户的离线账户数据进行相应的数据操作;
签名模块,用于第二用户对所述交互记录进行签名,以生成第二用户签名消息认证码;
交互凭据发送模块,用于第二用户通过非互联网连接方式向第一用户发送包含所述交互记录和所述第二用户签名消息认证码的交互凭据;
第二发送模块,用于当第二用户通过互联网连接方式连接到服务器时,向服务器发送所述交互凭据;
所述服务器包括:
接收模块,用于接收第一用户和/或第二用户发送的交互凭据;其中,所述交互凭据是所述第一用户与所述第二用户通过非互联网连接方式进行数据交互时创建的;
验证模块,用于对所述交互凭据中包含的第二用户签名消息认证码进行验证,所述第二用户签名消息认证码是由所述第二用户根据交互记录进行相应的数据操作后,对所述交互记录进行签名而生成的;
清算模块,用于如果所述验证通过,则根据所述交互凭据完成第一用户与第二用户针对所述数据交互的离线账户数据的清算。
CN201410046694.2A 2014-02-10 2014-02-10 数据交互方法和装置 Pending CN104836776A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201410046694.2A CN104836776A (zh) 2014-02-10 2014-02-10 数据交互方法和装置
HK15109916.5A HK1209251A1 (zh) 2014-02-10 2015-10-12 數據交互方法和裝置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410046694.2A CN104836776A (zh) 2014-02-10 2014-02-10 数据交互方法和装置

Publications (1)

Publication Number Publication Date
CN104836776A true CN104836776A (zh) 2015-08-12

Family

ID=53814416

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410046694.2A Pending CN104836776A (zh) 2014-02-10 2014-02-10 数据交互方法和装置

Country Status (2)

Country Link
CN (1) CN104836776A (zh)
HK (1) HK1209251A1 (zh)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105205664A (zh) * 2015-09-25 2015-12-30 中城智慧科技有限公司 一种新型的离线支付方法
CN105407079A (zh) * 2015-09-25 2016-03-16 中城智慧科技有限公司 一种新型的终端安全软密钥管理方法
CN105765952A (zh) * 2015-10-13 2016-07-13 深圳还是威健康科技有限公司 一种账户注册的方法、终端和服务器
CN106535082A (zh) * 2015-09-09 2017-03-22 腾讯科技(深圳)有限公司 数据处理方法、装置和系统
CN106875179A (zh) * 2017-02-03 2017-06-20 杭州小步科技有限公司 一种离线二维码支付方法及其系统
CN107180040A (zh) * 2016-03-09 2017-09-19 广州市动景计算机科技有限公司 一种业务数据的管理方法及装置
CN107993066A (zh) * 2017-12-20 2018-05-04 国民认证科技(北京)有限公司 一种资源交易方法及电子钱包系统
WO2018107988A1 (zh) * 2016-12-14 2018-06-21 阿里巴巴集团控股有限公司 二维码的处理方法、装置及系统
CN109523675A (zh) * 2018-11-23 2019-03-26 广州佳都数据服务有限公司 一种轨道交通进出闸控制系统及方法
CN109787769A (zh) * 2018-12-25 2019-05-21 深圳市安信认证系统有限公司 物联网设备的离线认证方法、用户终端及设备终端
CN110351227A (zh) * 2018-04-04 2019-10-18 杭州想必利好区块链科技有限公司 一种数据加密传输的方法及设备
CN111127003A (zh) * 2019-12-23 2020-05-08 杭州复杂美科技有限公司 钱包账户支付方法、设备和存储介质
CN111193695A (zh) * 2019-07-26 2020-05-22 腾讯科技(深圳)有限公司 一种第三方账号登录的加密方法、装置及存储介质
CN113393242A (zh) * 2021-04-27 2021-09-14 连通(杭州)技术服务有限公司 一种令牌模型支付物安全离线电子支付的方法及设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050039050A1 (en) * 2003-02-10 2005-02-17 Lionel Morand Method and a system for authenticating a user at a network access while the user is making a connection to the Internet
CN101222333A (zh) * 2007-12-24 2008-07-16 北京握奇数据系统有限公司 一种数据交易处理方法及设备
CN101377838A (zh) * 2007-08-30 2009-03-04 北京方维银通科技有限公司 一种数据安全处理方法
CN102468960A (zh) * 2010-11-16 2012-05-23 卓望数码技术(深圳)有限公司 一种离线模式身份与交易认证方法及终端
CN103366269A (zh) * 2013-07-05 2013-10-23 李卓桓 一种用于快捷支付的方法、设备及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050039050A1 (en) * 2003-02-10 2005-02-17 Lionel Morand Method and a system for authenticating a user at a network access while the user is making a connection to the Internet
CN101377838A (zh) * 2007-08-30 2009-03-04 北京方维银通科技有限公司 一种数据安全处理方法
CN101222333A (zh) * 2007-12-24 2008-07-16 北京握奇数据系统有限公司 一种数据交易处理方法及设备
CN102468960A (zh) * 2010-11-16 2012-05-23 卓望数码技术(深圳)有限公司 一种离线模式身份与交易认证方法及终端
CN103366269A (zh) * 2013-07-05 2013-10-23 李卓桓 一种用于快捷支付的方法、设备及系统

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106535082A (zh) * 2015-09-09 2017-03-22 腾讯科技(深圳)有限公司 数据处理方法、装置和系统
US10867296B2 (en) 2015-09-09 2020-12-15 Tencent Technology (Shenzhen) Company Limited Method, apparatus and system for processing data
CN105407079A (zh) * 2015-09-25 2016-03-16 中城智慧科技有限公司 一种新型的终端安全软密钥管理方法
CN105205664A (zh) * 2015-09-25 2015-12-30 中城智慧科技有限公司 一种新型的离线支付方法
CN105765952A (zh) * 2015-10-13 2016-07-13 深圳还是威健康科技有限公司 一种账户注册的方法、终端和服务器
CN105765952B (zh) * 2015-10-13 2020-08-14 深圳市元征科技股份有限公司 一种账户注册的方法、终端和服务器
CN107180040B (zh) * 2016-03-09 2020-10-02 阿里巴巴(中国)有限公司 一种业务数据的管理方法及装置
CN107180040A (zh) * 2016-03-09 2017-09-19 广州市动景计算机科技有限公司 一种业务数据的管理方法及装置
US11336435B2 (en) 2016-12-14 2022-05-17 Advanced New Technologies Co., Ltd. Method, apparatus, and system for processing two-dimensional barcodes
TWI749577B (zh) * 2016-12-14 2021-12-11 開曼群島商創新先進技術有限公司 二維條碼的處理方法、裝置及系統
US11032070B2 (en) 2016-12-14 2021-06-08 Advanced New Technologies Co., Ltd. Method, apparatus, and system for processing two-dimensional barcodes
US10581597B2 (en) 2016-12-14 2020-03-03 Alibaba Group Holding Limited Method, apparatus, and system for processing two-dimensional barcodes
WO2018107988A1 (zh) * 2016-12-14 2018-06-21 阿里巴巴集团控股有限公司 二维码的处理方法、装置及系统
TWI697842B (zh) * 2016-12-14 2020-07-01 香港商阿里巴巴集團服務有限公司 二維條碼的處理方法、裝置及系統
US10790970B2 (en) 2016-12-14 2020-09-29 Alibaba Group Holding Limited Method, apparatus, and system for processing two-dimensional barcodes
CN106875179B (zh) * 2017-02-03 2020-12-08 杭州小步科技有限公司 一种离线二维码支付方法及其系统
CN106875179A (zh) * 2017-02-03 2017-06-20 杭州小步科技有限公司 一种离线二维码支付方法及其系统
CN107993066A (zh) * 2017-12-20 2018-05-04 国民认证科技(北京)有限公司 一种资源交易方法及电子钱包系统
CN110351227A (zh) * 2018-04-04 2019-10-18 杭州想必利好区块链科技有限公司 一种数据加密传输的方法及设备
CN109523675A (zh) * 2018-11-23 2019-03-26 广州佳都数据服务有限公司 一种轨道交通进出闸控制系统及方法
CN109787769A (zh) * 2018-12-25 2019-05-21 深圳市安信认证系统有限公司 物联网设备的离线认证方法、用户终端及设备终端
CN111193695A (zh) * 2019-07-26 2020-05-22 腾讯科技(深圳)有限公司 一种第三方账号登录的加密方法、装置及存储介质
CN111193695B (zh) * 2019-07-26 2021-07-06 腾讯科技(深圳)有限公司 一种第三方账号登录的加密方法、装置及存储介质
CN111127003A (zh) * 2019-12-23 2020-05-08 杭州复杂美科技有限公司 钱包账户支付方法、设备和存储介质
CN111127003B (zh) * 2019-12-23 2023-05-30 杭州复杂美科技有限公司 钱包账户支付方法、设备和存储介质
CN113393242A (zh) * 2021-04-27 2021-09-14 连通(杭州)技术服务有限公司 一种令牌模型支付物安全离线电子支付的方法及设备

Also Published As

Publication number Publication date
HK1209251A1 (zh) 2016-03-24

Similar Documents

Publication Publication Date Title
CN104836776A (zh) 数据交互方法和装置
US10491384B2 (en) Device for secure multi-party cryptographic authorization
EP3454238A1 (en) Registration and authorization method, device and system
CN111107066A (zh) 敏感数据的传输方法和系统、电子设备、存储介质
CN111444273B (zh) 一种基于区块链的数据授权方法以及装置
CN111476572B (zh) 基于区块链的数据处理方法、装置、存储介质及设备
CN106227503A (zh) 安全芯片cos固件更新方法、服务端、终端及系统
CN111369338B (zh) 基于区块链的数据处理方法及装置
CN110601855B (zh) 一种根证书管理方法、装置及电子设备、存储介质
CN101997681B (zh) 一种多节点路径的认证方法、系统及相关节点设备
CN111222841B (zh) 一种基于区块链的数据分配方法及其设备、存储介质
CN109615030A (zh) 基于安全应用的二维码防伪方法、设备及系统
CN113541970B (zh) 分布式标识符的使用方法和分布式标识符使用系统
CN104753674A (zh) 一种应用身份的验证方法和设备
CN111931209B (zh) 基于零知识证明的合同信息验证方法及装置
CN111131416A (zh) 业务服务的提供方法和装置、存储介质、电子装置
CN103795546A (zh) 数据标签生成方法、数据标签的认证方法及其系统
CN108768975A (zh) 支持密钥更新和第三方隐私保护的数据完整性验证方法
CN113326525A (zh) 一种基于智能合约的数据处理方法及装置
CN110716724B (zh) 基于fpga实现隐私区块链的方法及装置
CN103139737B (zh) 密钥协商方法及装置、短信二次确认方法、系统及设备
CN111682937B (zh) 增强型cpk的密钥申请与分发方法及装置
CN115705601A (zh) 数据处理方法、装置、计算机设备及存储介质
CN113328854A (zh) 基于区块链的业务处理方法及系统
CN111464298A (zh) 区块链中的数据处理方法、装置和区块链网络

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
EXSB Decision made by sipo to initiate substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1209251

Country of ref document: HK

TA01 Transfer of patent application right

Effective date of registration: 20191204

Address after: P.O. Box 31119, grand exhibition hall, hibiscus street, 802 West Bay Road, Grand Cayman, Cayman Islands

Applicant after: Innovative advanced technology Co., Ltd

Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands

Applicant before: Alibaba Group Holding Co., Ltd.

TA01 Transfer of patent application right
RJ01 Rejection of invention patent application after publication

Application publication date: 20150812

RJ01 Rejection of invention patent application after publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: WD

Ref document number: 1209251

Country of ref document: HK