CN111160915B - 一种乘车码验证方法、装置、交通扫码设备及终端设备 - Google Patents
一种乘车码验证方法、装置、交通扫码设备及终端设备 Download PDFInfo
- Publication number
- CN111160915B CN111160915B CN201811324215.3A CN201811324215A CN111160915B CN 111160915 B CN111160915 B CN 111160915B CN 201811324215 A CN201811324215 A CN 201811324215A CN 111160915 B CN111160915 B CN 111160915B
- Authority
- CN
- China
- Prior art keywords
- code
- riding code
- riding
- digital signature
- transaction
- 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.)
- Active
Links
- 238000012795 verification Methods 0.000 title claims abstract description 105
- 238000000034 method Methods 0.000 title claims abstract description 75
- 230000008569 process Effects 0.000 claims description 20
- 238000013475 authorization Methods 0.000 claims description 14
- 238000012545 processing Methods 0.000 claims description 14
- 238000003860 storage Methods 0.000 claims description 11
- 230000010365 information processing Effects 0.000 abstract description 2
- 230000006870 function Effects 0.000 description 27
- 238000010586 diagram Methods 0.000 description 21
- 238000004891 communication Methods 0.000 description 13
- 238000004590 computer program Methods 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000001514 detection method Methods 0.000 description 4
- 239000004973 liquid crystal related substance Substances 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 229920001621 AMOLED Polymers 0.000 description 3
- 230000000903 blocking effect Effects 0.000 description 3
- 238000005242 forging Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 239000010409 thin film Substances 0.000 description 2
- 241001494479 Pecora Species 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000001364 causal effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000006386 memory function Effects 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3825—Use of electronic signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Computer Security & Cryptography (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明实施例公开了一种乘车码验证方法、装置、交通扫码设备及终端设备,属于信息处理技术领域,用于对乘车码是否安全、合法使用进行检测,以确保乘车码的规范使用。该方法中,可由扫码机具对乘车码的使用是否满足各方的安全认证诉求进行离线验证,通过离线验证的方式可以满足乘车码离线使用的应用环境,同时,通过数字签名的方式可以对乘车码体系中的各方进行身份验证,通过身份验证的方式可以明确乘车码交易是否是得到了各方的授权,在得到了授权的情况下即可认为是本次乘车码交易是能够满足对应各方的安全认证诉求的,所以可以认为乘车码是合法使用,进而提高对乘车码是否合法使用的有效验证。
Description
技术领域
本发明涉及信息处理技术领域,尤其涉及一种乘车码验证方法、装置、交通扫码设备及终端设备。
背景技术
为了减少携带实体交通卡(例如公交卡或地铁卡)的不便,目前推出了使用乘车码搭乘公共交通的交通方式,例如在乘坐地铁时,用户可以向地铁闸机展示手机中的乘车码,地铁闸机在扫描乘车码之后可以允许用户通过或禁止通过,通过乘车码这种新兴的互联网交通产品,可以实现快速、便捷的交通体验。
随着乘车码使用越来越广泛,乘车码的安全合法使用的问题也越来越值得关注。
发明内容
本发明实施例提供一种乘车码验证方法、装置、交通扫码设备及终端设备,用于对乘车码是否安全、合法使用进行检测,以确保乘车码的规范使用。
一方面,提供一种乘车码验证方法,所述方法包括:
扫描终端设备展示的乘车码,以获得乘车码图像,其中,所述乘车码携带有交通运营方以第一私钥签发的运营方数字签名、乘车码服务方以第二私钥签发的服务方数字签名、所述终端设备以第三私钥签发的用户数字签名中的至少一种;
根据所述乘车码图像,得到所述乘车码中包括的待验证数字签名;
从预存的公钥集合中确定与所述待验证数字签名对应的目标公钥,其中,所述公钥集合包括与所述第一私钥匹配的第一公钥、与所述第二私钥匹配的第二公钥及与所述第三私钥匹配的第三公钥;
利用所述目标公钥对所述待验证数字签名进行解密,并在解密成功时,确定本次乘车码使用合法。
一方面,提供一种乘车码验证方法,所述方法包括:
获得待验证数字签名,其中,所述待验证数字签名包括交通运营方以第一私钥签发的运营方数字签名、乘车码服务方以第二私钥签发的服务方数字签名、终端设备以第三私钥签发的用户数字签名中的至少一种;
根据所述待验证数字签名生成用于本次乘车码使用的乘车码;
显示所述乘车码,以使交通扫码设备扫描所述乘车码,并根据得到的乘车码图像中的所述待验证数字签名对本次乘车码使用是否合法进行验证。
一方面,提供一种乘车码验证装置,所述装置包括:
扫描模块,用于扫描终端设备展示的乘车码,以获得乘车码图像,其中,所述乘车码携带有交通运营方以第一私钥签发的运营方数字签名、乘车码服务方以第二私钥签发的服务方数字签名、所述终端设备以第三私钥签发的用户数字签名中的至少一种;
图像处理模块,用于根据所述乘车码图像,得到所述乘车码中包括的待验证数字签名;
第一确定模块,用于从预存的公钥集合中确定与所述待验证数字签名对应的目标公钥,其中,所述公钥集合包括与所述第一私钥匹配的第一公钥、与所述第二私钥匹配的第二公钥及与所述第三私钥匹配的第三公钥;
第二确定模块,用于利用所述目标公钥对所述待验证数字签名进行解密,并在解密成功时,确定本次乘车码使用合法。
一方面,提供一种乘车码验证装置,所述装置包括:
获得模块,用于获得待验证数字签名,其中,所述待验证数字签名包括交通运营方以第一私钥签发的运营方数字签名、乘车码服务方以第二私钥签发的服务方数字签名、终端设备以第三私钥签发的用户数字签名中的至少一种;
生成模块,用于根据所述待验证数字签名生成用于本次乘车码交易的乘车码;
显示模块,用于显示所述乘车码,以使交通扫码设备扫描所述乘车码,并根据得到的乘车码图像中的所述待验证数字签名对本次乘车码使用是否合法进行验证。
一方面,提供一种交通扫码设备,所述交通扫码设备包括:
图像采集器,用于扫描终端设备中显示的乘车码,以获得乘车码图像;
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序指令执行上述各个方面所述的方法包括的步骤。
一方面,提供一种终端设备,所述终端设备包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序指令执行上述各个方面所述的方法包括的步骤。
一方面,提供一种存储介质,所述存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行上述各个方面所述的方法包括的步骤。
本发明实施例中,将乘车码体系中的各方(即交通运营方、乘车码服务方和用户方)的数字签名携带在乘车码中,当使用乘车码进行交通交易时,可以由交通扫码设备扫描乘车码进而获得乘车码中携带的待验证数字签名,这里所说的待验证数字签名就是携带在乘车码中的数字签名,进一步地,交通扫码设备通过预先下载的对应各方的公钥对乘车码中的数字签名进行解密,若解密成功,则表明该数字签名是由安全的乘车码体系包括的角色签发的,基于数字签名能够对身份进行安全验证的特性,通过私钥对应的公钥解密的方式即可确定乘车码的使用是否合法,进而真正意义上满足乘车码体系中各方的安全认证诉求,以尽量规范乘车码的合适使用。
并且,由于交通扫码设备中的公钥是预先就下载好的,所以在对乘车码进行验证时可以不依赖于网络的通信功能,这样,通过离线验证的方式可以有效地应对乘车码离线交易面对的安全风险,在充分考虑乘车码离线使用的应用场景下,通过本发明实施例中的验证方案可以建立一套适用于离线环境的高安全认证交易体系,确保可以对乘车码进行持续、有效的验证,从而增加乘车码验证方式的灵活性,进而增强方案的适用性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为乘车码的展示界面示意图;
图2为能够扫描乘车码的地铁闸机的示意图;
图3为用户使用地铁闸机的摄像头扫描手机中的乘车码的示意图;
图4A为本发明实施例中的一种应用场景的示意图;
图4B为本发明实施例中的另一种应用场景的示意图;
图5为本发明实施例中的另一种应用场景的示意图;
图6为本发明实施例中的乘车码验证方法的流程图;
图7为本发明实施例中的乘车码体系的示意图;
图8为本发明实施例中的乘车码验证装置的结构框图;
图9为本发明实施例中的乘车码验证装置的结构框图;
图10为本发明实施例中的交通扫码设备的结构示意图;
图11为本发明实施例中的终端设备的一结构示意图;
图12为本发明实施例中的终端设备的一结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互任意组合。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本发明的说明书和权利要求书及上述附图中的术语“第一”和“第二”是用于区别不同对象,而非用于描述特定顺序。此外,术语“包括”以及它们任何变形,意图在于覆盖不排他的保护。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明实施例中,“多个”可以表示至少两个,例如可以是两个、三个或者更多个,本申请实施例不做限制。
另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,在不做特别说明的情况下,一般表示前后关联对象是一种“或”的关系。
以下对本文中涉及的部分用语进行说明,以便于本领域技术人员理解。
1、乘车码,用户用来乘坐公交或地铁等交通工具的二维码,在乘车码中可包含用户的身份标识(又称作用户标识)、时间戳(乘车码的生成时间)等信息。另外,乘车码中还可以包括一个可扩展数据区,在该可扩展数据区中可以写入或者修改数据,进而实现乘车码的扩展应用。乘车码可以定时刷新,例如每间隔20秒或10秒刷新一次,通过不同的乘车码客户端生成的乘车码可以具有不同的刷新周期。
2、乘车码客户端,乘车码一般是依托于终端设备使用的,比如通过运行在终端设备中的乘车码客户端生成并展示乘车码,而乘车码客户端可以理解为是一个应用客户端,由于每个应用客户端可以对应一个应用服务器,所以不同的乘车码客户端可以分别对应不同的应用服务器。在实际中,乘车码客户端可以是一个独立的应用程序(Application,APP),例如某地铁公司或某公交公司发布的专用于乘坐该地铁公司或该公交公司下辖的交通工具而使用的乘车码客户端,例如天府通、羊城通,等等,或者,乘车码客户端也可以是一个嵌入在现有的APP中的功能模块,例如目前的支付宝和微信均支持乘车码的使用,那么支付宝客户端和微信客户端也可以理解为是乘车码客户端,由于支付宝和微信的使用范围较广且用户群较大,所以通过这种方式来承载乘车码可以增加乘车码的普及率。
以微信客户端为例,其中的乘车码功能可以以小程序的方式嵌入在微信客户端中,通过内嵌小程序的方式可以节约流量,并且可以快速运行,当用户需要使用乘车码时,可以通过下拉微信主界面或者通过查找的方式找到乘车码小程序,进而进入到乘车码小程序的运行界面,然后调出乘车码的展示界面。以终端设备是手机为例,该手机中安装有乘车码客户端,当运行该乘车码客户端之后,此时乘车码的展示界面例如图1所示。
3、交通扫码设备,是指可以扫描乘车码以获得乘车码图像的设备,在某些情形下例如也可以称作扫码设备、扫码枪、验票机具、扫码机具,等等。扫码机具可以通过摄像头以扫码的方式得到乘车码的二维码图像。由于乘车码是以二维码图像的方式展示在终端设备(例如手机)中,当用户需要通过乘车码乘坐某种交通工具时,可以在手机中先调出乘车码,然后再将手机显示的乘车码对准扫码机具的摄像头,以使得扫码机具扫描得到乘车码的二维码图像。
根据乘车码的使用场景的不同,交通扫码设备也可以区分为进站扫码设备和出站扫码设备,以地铁为例,在进站时扫描进站的乘车码的交通扫码设备可以理解为是进站扫码设备,以及在出站时扫描出站的乘车码的交通扫码设备可以理解为是出站扫码设备。还有另外一种交通场景,比如公交车,由于没有明显的进站出站的区分,所以公交车上的交通扫码设备只有一个。根据交通场景的不同,交通扫码设备可以对应于不同的设备,例如在地铁、快速公交系统(Bus Rapid Transit,BRT)、轻轨等交通场景中,交通扫码设备可以是闸机(包括进站闸机和出站闸机),又例如在公交车等交通场景中,交通扫码设备可以是设置于公交车上的扫码工具(例如扫码枪)。
另外,为了使得能够适用于多种方式的乘车,在交通扫码设备中还可以集成近场通信(Near Field Communication,NFC)功能,通过NFC功能来感应识别常规的实体公交卡或临时地铁票,以及还可以设置有车票投递口以便于回收临时车票,以交通扫码设备是地铁里的闸机为例,一种可能的交通扫码设备(即地铁闸机)例如图2所示,以及用户使用该交通扫码设备的摄像头扫描手机中的乘车码的示意图如图3所示。
4、乘车码图像,即乘车码的二维码图像,例如手机中生成并显示的乘车码的二维码图像,以及交通扫码设备通过摄像头扫描手机中展示的乘车码而获得的二维码图像。
5、数字签名,是将摘要信息用发送者的私钥加密,与原文一起传送给接收者,接收者只有用发送者的公钥才能解密被加密的摘要信息,然后用HASH(哈希)函数对接收到的原文产生一个摘要信息,与解密的摘要信息对比,如果相同,则说明收到的信息是完整的,在传输过程中没有被修改,否则说明信息被修改过,因此数字签名能够验证信息的完整性。
数字签名有两种功效:一是能确定消息确实是由发送方签名并发出来的,因为别人假冒不了发送方的签名;二是数字签名能确定消息的完整性,因为数字签名的特点是它代表了文件的特征,文件如果发送改变,数字摘要的值也将发生变化,不同的文件将得到的不同的数字摘要。总结来说,数字签名可以用于保证信息传输的完整性以及对信息发送者的身份进行认证。
6、数字摘要,是将任意长度的消息变成固定长度的短消息,它类似于一个自变量是消息的函数,例如hash函数。数字摘要就是采用单向hash函数将需要加密的明文“摘要”成一串固定长度(例如128位)的密文,这一串密文有固定的长度,而且不同的明文摘要成密文,其结果一般是不同的,而同样的明文其摘要必定一致。进一步地,再用发送者的私钥对摘要得到的摘要信息进行加密,就可以得到发送者的数字签名。
为了更好地理解本发明实施例提供的技术方案,下面先介绍本发明实施例的技术背景。
如前所述,随着乘车码越来越广泛的使用,乘车码在使用过程中是否安全合法也越来越得到大家的关注。例如,在使用过程中,乘车码是否是用户自愿授权使用的,又或者,乘车码的使用是否得到了交通运营方的授权,等等,诸如此类乘车码的安全合法使用问题,目前还缺乏相应的验证方案。
鉴于此,本发明人对乘车码体系进行剖析,发现乘车码体系包括交通运营方、乘车码服务方和用户这三部分组成。在乘车码的使用过程中,前述的任一部分出现安全问题都可能影响乘车码的规范使用,例如,交通运营方可以通过盗刷用户的乘车码的方式伪造交通账单,造成用户的财产损失,又例如,黑客可能复制用户的乘车码进行盗刷,造成用户的财产损失,并且还可能对乘车码服务方提供的乘车码服务造成服务异常,影响用户的正常使用。
通过上述分析,基于对乘车码交易环节中各个角色的安全考虑,发明人设计了一种乘车码验证方案,通过对乘车码使用的合法性进行检测和验证,以尽量满足乘车码体系中各个角色的安全认证诉求,进而规范乘车码的使用。在本发明实施例中的乘车码验证方案中,可以将乘车码体系中的各方的数字签名携带在乘车码中,当使用乘车码进行交通交易时,可以由交通扫码设备扫描乘车码进而获得乘车码中携带的待验证数字签名,这里所说的待验证数字签名就是携带在乘车码中的数字签名,进一步地,交通扫码设备通过预先下载的对应各方的公钥对乘车码中的数字签名进行解密,若解密成功,则表明该数字签名是由安全的乘车码体系中的角色签发的,基于数字签名能够对身份进行安全验证的特性,通过对应的公钥解密的方式即可确定乘车码的使用是否合法,进而真正意义满足乘车码体系中各方的安全认证诉求。并且,由于交通扫码机具中的公钥是预先就下载好的,所以在对乘车码进行验证时并不依赖网络的通信功能,通过离线验证的方式可以有效地应对乘车码离线交易面对的安全风险,在充分考虑乘车码离线使用的应用场景下,通过本发明实施例中的验证方案可以建立一套适用于离线环境的高安全认证交易体系,确保可以对乘车码进行持续、有效的验证。
在介绍完本发明实施例的设计思想之后,下面对本发明实施例的技术方案能够适用的应用场景做一些简单介绍,需要说明的是,以下介绍的应用场景仅用于说明本发明实施例而非限定。在具体实施时,可以根据实际需要灵活地应用本发明实施例提供的技术方案。
请参见图4A所示的一种应用场景示意图,图4A所示的应用场景是以通过乘车码乘坐地铁的场景为例进行说明,在该应用场景中包括终端设备401、地铁闸机402、乘车码服务器403和地铁后台服务器404。其中,终端设401是能够运行乘车码客户端的设备,如前面介绍的,例如可以运行支付宝客户端或者微信客户端,在支付宝客户端或微信客户端中可以直接使用乘车码,由于终端设备401中运行有乘车码客户端,所以与该乘车码客户端对应设置有一个应用服务器,即乘车码服务器403。地铁闸机402例如是如图2所示的闸机,地铁闸机402还可以包括例如闸机扇门、闸机摆式门等通行阻挡装置,当确定某次乘车码使用不合法时,则可以禁止该通行阻挡装置打开进而阻挡用户通过地铁闸机402,当确定乘车码使用是合法的,则可以打开通行阻挡装置,以便用户能够通过通行阻挡装置而实现进站或出站。
在图4A所示的应用场景中,终端设备401、乘车码服务器403和地铁后台服务器404构成了整个乘车码体系,其中的终端设备401代表了乘车码体系中的用户方、乘车码服务器403代表了乘车码体系中的乘车码服务方、地铁闸机402和地铁后台服务器404代表了乘车码体系中的交通运营方。在终端设备401、乘车码服务器403和地铁后台服务器404中均可以各自签发公私钥对,例如地铁后台服务器404中签发的是第一公私钥对(即第一公钥和配对的第一私钥)、乘车码服务器403中签发的是第二公私钥对(即第二公钥和配对的第二私钥)、终端设备401中签发的是第三公私钥对(即第三公钥和配对的第三私钥)。
对于终端设备401、乘车码服务器403和地铁后台服务器404中的各公私钥对,各公私钥对中的公钥均可以对外开放,而私钥由签发者自身保存,签发者可以通过私钥对数据进行数字签名,通过数字签名可以确定签发者的身份。例如,地铁后台服务器404可以使用第一私钥对运营方行业数据进行签名以得到运营方数字签名,乘车码服务器403可以使用第二私钥对用户相关数据(例如用户信用数据、用户乘车数据和乘车码交易规则)进行签名以得到服务方数字签名,终端设备401可以使用第三私钥对乘车码中的数据进行签名以得到用户数字签名,另外,地铁闸机402可以获得(例如预先下载)终端设备401、乘车码服务器403和地铁后台服务器404中各自的公私钥对中的公钥,进而得到公钥集合。进一步地,可以将各方的数字签名,即前述的运营方数字签名、服务方数字签名、用户数字签名中的一种或多种携带在乘车码中,当地铁闸机402扫描乘车码之后即可通过乘车码图像得到携带在乘车码中的待验证数字签名,再通过本次的公钥集合对待验证数字签名进行解密验证,并在解密成功时即可确定乘车码的使用是合法的,例如,前面所说的乘车码体系中三方的数字签名均携带在乘车码中,那么地铁闸机402通过对应的三种公钥对三方的数字签名均解密验证通过时,即表明此次乘车码使用是经过交通运营方、乘车码服务方和用户方这三方均授权的,可以认为本次乘车码的使用是合法的,并且是同时满足三方的安全认证诉求的。
再参见图4B所示的另一应用场景示意图,相对于图4A来说,图4B中增加了支付平台405,在地铁闸机402完成扫码之后,可以将扫码记录上传给地铁后台服务器404,地铁后台服务器404可以根据接收到的扫码记录为用户生成交通账单,并且可以将生成的交通账单发送给支付平台405以请求支付平台对交通账单付费,也就是说,地铁后台服务器404可以根据生成的交通账单向支付平台405请款,以实现交通运营方和向支付方的请款支付。在具体实施过程中,支付平台405可以是与交通运营方(例如地铁公司)合作的支付机构,支付平台405例如是乘车码服务方自身开设的支付机构,以乘车码服务方是微信为例,那么支付平台405可以是微信钱包,或者,支付平台405也可以是与交通运营方具有合作关系的支付机构,例如可以是支付宝支付平台,或者可以是银联支付平台,或者还可以是其它的第三方支付平台,等等。
再参见图5所示的另一应用场景示意图,图5所示的应用场景为通过乘车码乘坐公交车的场景为例进行说明,在该应用场景中包括终端设备501、公交扫码机502、乘车码服务器503、公交后台服务器504和支付平台505。其中,终端设备501和乘车码服务器503与前述的终端设备401和乘车码服务器403可以按照相同的理解方式理解,公交扫码机502可以按照前述的地铁闸机402理解,支付平台505可以按照前述的支付平台405理解,例如,公交扫码机502能够扫描终端设备501中展示的乘车码以得到乘车码图像,进而根据乘车码图像判断当前使用的乘车码是否是合法使用,若确定不是合法使用则可以输出告警信息,例如滴滴滴的响声或者语音警告提示,等等,以及,公交扫码机502还可以根据乘车码图像生成扫码记录,并将扫码记录上传给公交后台服务器504,使得公交后台服务器504可以根据接收到的扫码记录为用户生成交通账单,公交后台服务器504可以根据生成的交通账单向支付平台505请款。
前述的终端设备401和终端设备501均可以是手机、平板电脑、掌上电脑(PersonalDigital Assistant,PDA),笔记本电脑、智能穿戴式设备(例如智能手表和智能头盔)、个人计算机,等等,无论是哪种设备,在该设备中均可以运行乘车码客户端,进而通过乘车码客户端生成并展示乘车码。以及,前述的乘车码服务器403、乘车码服务器503、地铁后台服务器404、公交后台服务器504、支付平台405和支付平台505均可以是个人计算机、大中型计算机、计算机集群,等等。
为进一步说明本发明实施例提供的技术方案,下面结合附图以及具体实施方式对此进行详细的说明。虽然本发明实施例提供了如下述实施例或附图所示的方法操作步骤,但基于常规或者无需创造性的劳动在所述方法中可以包括更多或者更少的操作步骤。在逻辑上不存在必要因果关系的步骤中,这些步骤的执行顺序不限于本发明实施例提供的执行顺序。所述方法在实际的处理过程中或者装置执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的应用环境)。
请参见图6所示的乘车码验证方法的交互图,以下结合图6对本发明实施例中的技术方案进行说明。
S601、扫码机具获得乘车码体系中的各方的公钥,以得到公钥集合。
其中的“各方”是指乘车码体系中的各个参与方,可以理解为是乘车码体系中的各个角色,请参见图7所示的乘车码体系的示意图,乘车码体系包括的角色例如有:交通运营方、乘车码服务方和用户(即终端设备),也就是说,在整个乘车码体系中,涉及到交通运营方、乘车码服务方和用户这三个参与方。其中的交通运营方例如是地铁运营公司或公交运营公司,即能够提供交通服务的运营方;乘车码服务方是指能够提供乘车码服务的主体,例如在微信中使用乘车码,那么乘车码服务方即可理解为是微信的主体厂商,又例如在支付宝中使用乘车码,那么乘车码服务方即可理解为是支付宝的主体厂商,等等;而用户就是指利用终端设备使用乘车码乘坐交通工具的个体。终端设备中运行有乘车码客户端,乘车码客户端所提供的所有乘车码相关的功能是均可以是由乘车码服务方提供的,所以,可以将乘车码服务方理解为是乘车码客户端的服务后台,在实际中,例如可以将乘车码服务方理解为是一个后台服务器,与此类似的,可以将交通运营方也理解为一个后台服务器,其可以与下发的扫码机具之间进行通信,可以这样理解,扫码机具是交通运营方提供的用于与用户之间进行交互的交互终端,在本发明实施例中,扫码机具可以具有对乘车码是否合法使用进行离线验证的功能,进而通过扫码得到的乘车码图像对乘车码使用的合法性进行离线验证。
如前所述,为了实现对乘车码体系中的各方的安全验证,本发明实施例中采用将乘车码体系中的各方的数字签名携带在乘车码中的方式来实现,在本发明实施例中,各方均具有自身的公私钥,如图7所示的,交通运营方具有运营方公私钥,乘车码服务方具有服务方公私钥,终端设备具有用户公私钥,各方自身的公私钥均可以保存在本地,需要说明的是,无论是哪方的公私钥,均是指公钥和匹配的私钥组成的密钥对,其中的私钥由自身保管,而公钥可以开放给其它用户,例如图7中的乘车码服务方中的服务方公私钥,其包括服务方公钥和匹配的服务方私钥,服务方私钥由乘车码服务方自己保管,不会向其它人泄露,而服务方公钥可以公开,这样,乘车码服务方向其他用户发送信息时,就可以先用hash函数对待发送的信息进行数字摘要以得到该待发送的信息的摘要信息,然后再用自身保管的服务方私钥对摘要信息进行加密,加密后的摘要信息就可以理解为是乘车码服务方的数字签名,然后,乘车码服务方可以将待发送的信息和数字签名一起发给其他用户,其他用户在收到乘车码服务发送的待发送的信息和数字签名之后,可以利用相同的hash函数和服务方公钥对数字签名进行解密验证,如果解密验证成功则表明确实是由乘车码服务方发送的信息,相当于是,通过数字签名的方式可以对乘车码服务方的身份进行验证。
本发明实施例中,正是通过各方的数字签名来验证乘车码的交易使用是否是由各方授权通过的,具体来说就是通过对数字签名进行验证的方式来判断是否得到了某方的实际授权,由于是通过对数字签名进行验证的方式,所以在验证之前需要知晓用以对数字签名进行验证的匹配的公钥,基于此考虑,在本发明实施例中,可以预先将各方的公钥保存在扫码机具中,例如交通运营方的运营方公私钥是第一公钥和第一私钥,乘车码服务方的服务方公私钥是第二公钥和第二私钥,用户的用户公私钥是第三公钥和第三私钥,那么交通运营方的数字签名就可以是用第一私钥签发的,乘车码服务方的数字签名就可以是用第二私钥签发的,用户的数字签名就可以是用第三私钥签发的,并且,扫码机具可以预先将第一公钥、第二公钥和第三公钥下载并保存在本地,为了便于描述,本发明实施例中将第一公钥、第二公钥和第三公钥组成的集合称作公钥集合,该公钥集合可以是预先下载在扫码机具中的,这样也便于扫码机具能够利用这些预先就已经下载好的公钥对乘车码中的各方的数字签名进行离线认证。
由于各方的公钥最开始是保存在各方本地的,扫码机具要获得这些不同的公钥可以采特定的方式,例如图7中所示的,以服务方公钥为例,可以由交通运营方从乘车码服务方下载服务方公钥,扫码机具再从交通运营方处下载得到服务方公钥,并且同时可以从交通运营方处下载得到运营方公钥,另外,对于用户公钥,终端设备在生成用户公私钥之后可以将用户公钥上传给乘车码服务方,扫码机具可以按照获得服务方公钥的方式再获得用户公钥,至此,扫码机具可以得到乘车码体系中各方的公钥,即得到公钥集合。
S602、终端设备获得待验证数字签名。
在实际使用乘车码的过程中,基于本发明实施例提出的安全验证机制,终端设备在生成乘车码之前,可以先获得待验证数字签名,进而再将该待验证数字签名携带在乘车码中以体现出各方的实际授权情况。
如前所述的,乘车码体系中至少包括交通运营方、乘车码服务方和用户三方,在具体实施过程中,可以将各方的数字签名均携带在乘车码中,这样就可以通过乘车码对各方的授权情况均进行验证,以同时满足三方的安全认证诉求,在其它的一些实施例中,也可以将三方中的一方或者两方的数字签名携带在乘车码中,这样可以对这三方中的一方或者两方的授权情况进行验证,也就是说,只要乘车码中携带了哪方的数字签名,就可以利用乘车码对哪方的授权情况进行验证,进而可以满足其对应的安全认证诉求,例如在乘车码中只携带了交通运营方的数字签名,那么就可以对交通运营方对本次乘车码交易使用是否授权进行验证,以保证本次乘车码使用至少是满足交通运营方的安全认证要求的,又例如只在乘车码中携带了用户数字签名和服务方数字签名,那么就可以通过乘车码对本次乘车码交易是否是由乘车码服务方和用户均授权的,如果是的话则说明本次乘车码交易能够至少满足乘车码服务方和用户的安全认证需求的。
根据实际情况,待验证数字签名可能包括不同方的数字签名,只要哪方有安全认证需求,即可利用其自身保管的私钥进行数字签名,以使得终端设备可以获得这些需要进行认证的待验证数字签名。以前述的交通运营方的密钥对是第一公钥和第一私钥,乘车码服务方的密钥对是第二公钥和第二私钥,用户的密钥对是第三公钥和第三私钥为例,终端设备或的待验证数字签名可以包括交通运营方以第一私钥签发的运营方数字签名、乘车码服务方以第二私钥签发的服务方数字签名、所述终端设备以第三私钥签发的用户数字签名中的至少一种。
在具体实施过程中,运营方数字签名可以是由交通运营方以第一私钥对运营方行业数据的数字摘要进行加密得到的,运营方行业数据是由交通运营方自定义的一些数据,通过运营方行业数据可以表明交通运营方的一些交通运行情况,例如,运营方行业数据可以包括乘车码对应的用户标识和历史进出站信息等信息,当然在具体实施过程中还可以包括交通运营方自定义一些其它信息,本发明实施例对此不做限制。
服务方数字签名可以是由乘车码服务方以第二私钥对用户信用数据和/或乘车码交易规则的数字摘要进行加密得到的。其中,用户信用数据可以包括用户的交易风控等级和征信等级,具体来说,例如可以包括用户的乘车码的欠费信息、欠费频率、逃票次数、单边行程次数等等,通过用户信用数据可以知晓用户的历史信用情况,例如如果欠费频率过高的话则可以认为该用户的信用等级较低,如果达到一定的下限值的话则可以禁止继续使用乘车码,或者可以在一段时间内禁止其继续使用乘车码,从而对用户进行一定的警告,也就是说,通过用户信用的高低,可以决定用户能够离线使用乘车码的使用时长。另外,乘车码交易规则是指乘车码的使用可能需要满足一定的规定,比如乘车码的交易金额是否在规定的范围之内,或者交易地点是否处于扫码机具的一定范围之内,或者交易时间是否在授权的有效期内发生,等等,通过乘车码交易规则可以对乘车码的安全使用进行一定程度的检测,以尽量确保乘车码使用的有效性和安全性。
用户数字签名可以是由终端设备以第三私钥对乘车码中的预定数据的数字摘要进行加密得到的,这里的预定数据例如可以是乘车码中的所有数据或部分数据,乘车码中的数据例如可以包括用户标识、乘车码签约支付账户和支付方式等数据。因为第三密钥是终端设备本地保存的,并且乘车码也是由终端设备生成的,所以在进行用户签名时,乘车码中需要携带的数据已经准备完毕,此时终端设备则可以根据实际需求选择部分数据或者全部数据来进行自身的数字签名。
S603、根据待验证数字签名,生成本次使用的乘车码。
在获得了待验证数字签名之后,即可根据待验证数字签名生成本次使用的乘车码,具体来说,就是将待验证数字签名携带在乘车码之中。
S604、扫码机具扫描乘车码,以得到乘车码图像。
由于扫码机具是通过扫码的方式获得的乘车码图像,扫码的方式可以理解为是一种信息传递的方式,即通过扫码也间接实现了终端设备与扫码机具之间的通信,但是由于并非是由终端设备直接将乘车码图像发送给扫码机具,所以在图6中S604是以虚线表示的。
S605、扫码机具在获得乘车码图像之后,即可对乘车码图像进行解析,从而得到乘车码中携带的待验证数字签名。
S606、在获得待验证数字签名之后,扫码机具可以从公钥集合中确定与该待验证数字签名对应的目标公钥。
如前所述,待验证数字签名可能包括运营方数字签名、服务方数字签名、用户签名中的一种或多种,又由于针对每一种数字签名需要使用对应匹配的公钥才能进行解密验证,所以在对待验证数字签名进行解密验证之前,需要先确定待验证数字签名分别对应的公钥,为了便于描述,本发明实施例中将与待验证数字签名对应匹配的公钥称作目标公钥。
S607、在确定目标公钥之后,扫码机具则可以利用目标公钥对待验证数字签名进行解密。
对于利用公钥对对应的数字签名进行解密的过程在前文已经介绍,具体的过程可以参见前文,此处就不再重复说明了。
S608、在进行解密之后,扫码机具可以判断解密是否成功。
S609、若解密成功,扫码机具则确定本次乘车码使用是合法的。
由于解密成功,表明能够用目标公钥解开加密的数字签名,说明这些信息均是由这些公钥所属的各方真实进行签名的,相当于是对进行数字签名的各方进行身份认证,在身份认证通过之后即表明本次乘车码交易是得到了授权同意的,所以至少可以确保解密成功的各方的安全认证需求是达到了的。
在另一种可能的实施方式中,若服务方数字签名中还包括用户信用数据和乘车码交易规则,那么在解密通过之后,还可以再通过用户信用数据和乘车码交易规则对本次乘车码交易是否合法进行二次验证,参见图7所示,终端设备可以签发用户的信用证书,该信用证书红可以包括用户标识、信用证书的起始时间、乘车码的有效市场,等等。具体来说,若解密成功,可以初步确定是经过乘车码服务方授权的使用,即可以初步认为合法,但是,进一步地,还可以根据用户信用数据表征的用户信用是否满足预定信用标准,或者还可以确定当前的乘车码交易是否符合乘车码交易规则,若这两者均满足的话则可以最终认为本次乘车码使用才是合法使用,因为若信用检测不合格的话,则在很大程度上可能再出现例如欠费或者逃票的可能,造成坏账的可能性较大,所以在此基础上则可以拒绝本次乘车码交易,乘车码交易规则亦是类似的道理,通过乘车码交易规则可以尽量确保本次乘车码使用是正常的(非恶意的)交易,进一步地确保乘车码能够安全使用。
通过图6的流程,即可由扫码机具对乘车码的使用是否满足各方的安全认证诉求进行离线验证,通过离线验证的方式可以满足乘车码离线使用的交通应用环境,同时,通过数字签名的方式可以对乘车码体系中的各方进行身份验证,通过身份验证的方式可以明确乘车码交易是否是得到了各方的授权,在得到了授权的情况下即可认为本次乘车码交易是能够满足对应各方的安全认证诉求的,所以可以认为乘车码是合法使用,从而提高对乘车码是否合法使用的有效验证。
在本发明实施例中,乘车码体系中的各方各自拥有一套公私钥体系,并且各自的私钥是保存在本地的,这样,通过分离密钥的方式可以尽量确保各方的数据是相互独立安全的,以尽量避免某方的数据泄露,进而达到提高各方之间的数据是安全的效果。同时,对于各方的数字签名,只能使用配对的公钥才能成功解密,各方之间是互不信任的,从而可以尽量确保各方之间的数据是相互独立的,以互不信任的原则来确保各方数据的安全,进而提高对各方数据的安全保护,从而提高乘车码合法使用的准确、有效的检测。
进一步地,扫码机具在确定本次乘车码的使用是合法的之后,还可以获得本次乘车码使用的乘车码扫码记录,并将获得的乘车码扫码记录发送给运营方服务器,运营方服务器在获得乘车码扫码记录之后,即可生成与本次乘车码使用对应的待支付账单(即交通账单),然后再将待支付账单发送给乘车码支付平台,以向该乘车码支付平台请款,即请求该乘车码支付平台对处待支付账单进行处理,以完成交通付费。并且,可以在确定乘车码扫码记录满足预定合法校验条件时,才向交通运营方支付与待支付账单对应的交通费用,换句话说,可以通过预定合法校验条件来确保待支付账单的有效性。
在一种可能的实施方式中,乘车码中还可以携带防伪验证密钥,该防伪验证密钥是根据乘车码服务方生成的动态验证信息得到的,例如可以通过乘车码服务方动态随机生成的验证随机码作为基准,再对该基准以分散签名的方式计算得到防伪验证密钥,例如在生成防伪验证密钥时可以将用户相关的信息或者终端设备相关的信息一起作为分散因子以计算得到防伪验证密钥,通过分散加密的方式可以提高防伪验证密钥的安全性。例如图7中所示的TAC密钥,由于乘车码中携带有该防伪验证密钥,那么扫码机具在扫码之后即可得到该防伪验证密钥,进一步地,可以将其与乘车码扫码记录一起发送给运营方服务器,以使得运营方服务器将该防伪验证密钥携带在待支付账单中,进而可以通过该防伪验证密钥来验证获得的待支付账单是否是伪造的账单进行验证,也就是说,可以通过TAC密钥防止交通运营方伪造交通账单而造成用户的财产损失,从而提高账单的有效性。
在一种可能的实施方式中,在生成乘车码时,终端设备可以基于本地的用户公私钥(例如用户公钥或者用户私钥)进行计算以得到媒体访问控制(Media Access Control,MAC)密钥,例如基于终端设备中的用户信息和/或终端设备的设备信息进行分散算法得到该MAC密钥,然后再将该MAC密钥携带在乘车码中,通过MAC密钥,可以防止黑客通过拍照手段或其它方式不断伪造乘车码的签名而导致的安全隐患,提高乘车码的规范、安全使用。
另外,在获得本次使用乘车码的乘车码扫码记录之后,还可以对该乘车码扫码记录以预定合法检验条件进行校验,以通过预定合法检验条件对待支付账单是否有效进行判断,并在确定待支付账单有效时,通过乘车码支付平台向交通运营方支付与该待支付账单对应的交通费用。也就是说,在本发明实施例中,在付款之后,即使已经通过如前所介绍的分离密钥、互不信任的方式来提高乘车码使用的安全,但是在支付环节,还可以预定合法检验条件对乘车码的使用进行兜底的合法性校验,通过兜底校验的方式可以进一步地提高乘车码合法使用的有效验证,同时可以尽量确保扣款的有效性。在具体实施过程中,预定合法校验条件例如可以包括以下条件中的一种或多种:1)校验交易时间是否在信用证书授权的有效期内发生;2)校验交易时间是否在二维码防复制有效期内发生;3)校验交易地点凭证产生于扫码机具附近以防止远程复制;4)校验交易金额是否在用户被授权的交易限额之内;5)校验腾讯乘车码服务方的数字签名,以确保乘车码服务方的授权生成;6)校验前述介绍的TAC,确保交易并非运营方伪造生成;7)校验用户签名,确保交易是由用户授权。
当然,上述针对预定合法校验条件只是示意性说明,在具体实施过程中还可以再设置其它的校验条件,无论是一种还是多种条件,通过这种付款前的兜底校验的方式可以尽量避免从错误的支付,以提高扣款支付的有效性,从而尽量减少财务纠纷,提高乘车码使用的安全性。
基于同一发明构思,本发明实施例提供一种乘车码验证装置,该乘车码验证装置例如可以是前述方法实施例中的扫码机具,具体来说,例如可以是如图4A-图4B中的地铁闸机402,或者可以是如图5中的公交扫码机502。该乘车码验证装置可以是硬件结构、软件模块、或硬件结构加软件模块。该乘车码复制使用的检测装置可以由芯片系统实现,芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。请参见图8所示,本发明实施例中的乘车码验证装置可以包括扫描模块801、图像处理模块802、第一确定模块803和第二确定模块804。其中:
扫描模块801,用于扫描终端设备展示的乘车码,以获得乘车码图像,其中,乘车码携带有交通运营方以第一私钥签发的运营方数字签名、乘车码服务方以第二私钥签发的服务方数字签名、终端设备以第三私钥签发的用户数字签名中的至少一种;
图像处理模块802,用于根据乘车码图像,得到乘车码中包括的待验证数字签名;
第一确定模块803,用于从预存的公钥集合中确定与待验证数字签名对应的目标公钥,其中,该公钥集合包括与第一私钥匹配的第一公钥、与第二私钥匹配的第二公钥及与第三私钥匹配的第三公钥;
第二确定模块804,用于利用目标公钥对待验证数字签名进行解密,并在解密成功时,确定本次乘车码使用合法。
在一种可能的实施方式中,运营方数字签名是由交通运营方以第一私钥对运营方行业数据的数字摘要进行加密得到的;服务方数字签名是由乘车码服务方以第二私钥对用户信用数据和/或乘车码交易规则的数字摘要进行加密得到的;用户数字签名是由终端设备以第三私钥对乘车码中的预定部分的数据的数字摘要进行加密得到的。
在一种可能的实施方式中,待验证数字签名包括服务方数字签名;第二确定模块804用于在解密成功时,若用户信用数据表征的用户信用满足预定信用标准和/或当前的乘车码交易规则符合乘车码交易规则,则确定本次乘车码使用合法。
在一种可能的实施方式中,该乘车码验证装置还包括获得模块和发送模块。其中,获得模块用于获得本次使用乘车码的乘车码扫码记录;发送模块用于将乘车码扫码记录发送给运营方服务器,以使运营方服务器根据该乘车码扫码记录生成本次乘车码交易对应的待支付账单,并将待支付账单发送给乘车码支付平台,以请求该乘车码支付平台处理待支付账单。
在一种可能的实施方式中,乘车码中还包括防伪验证密钥,该防伪验证密钥是根据乘车码服务方生成的动态验证信息得到的,发送模块具体用于将乘车码扫码记录和防伪验证密钥发送给运营方服务器,以使运营方服务器在待支付账单中携带防伪验证密钥,该防伪验证密钥用于验证待支付账单是否为伪造的账单。
在一种可能的实施方式中,若乘车码扫码记录满足预定合法校验条件,则表明待支付账单有效,并且,在该待支付账单有效时,通过乘车码支付平台向交通运营方支付与待支付账单对应的交通费用。
基于同一发明构思,本发明实施例提供一种乘车码验证装置,该乘车码验证装置例如可以是前述方法实施例中的终端设备,具体来说,例如可以是如图4A-图4B中的终端设备401,或者可以是如图5中的终端设备501。该乘车码验证装置可以是硬件结构、软件模块、或硬件结构加软件模块。该乘车码复制使用的检测装置可以由芯片系统实现,芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。请参见图9所示,本发明实施例中的乘车码验证装置可以包括获得模块901、生成模块902和显示模块903。其中:
获得模块901,用于获得待验证数字签名,其中,待验证数字签名包括交通运营方以第一私钥签发的运营方数字签名、乘车码服务方以第二私钥签发的服务方数字签名、终端设备以第三私钥签发的用户数字签名中的至少一种;
生成模块902,用于根据待验证数字签名生成用于本次乘车码交易的乘车码;
显示模块903,用于显示乘车码,以使交通扫码设备扫描乘车码,并根据得到的乘车码图像中的待验证数字签名对本次乘车码使用是否合法进行验证。
前述乘车码验证方法的实施例涉及的各步骤的所有相关内容均可以援引到本发明实施例中的乘车码验证装置所对应的功能模块的功能描述,在此不再赘述。
本发明实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,另外,在本发明各个实施例中的各功能模块可以集成在一个处理器中,也可以是单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
基于同一发明构思,本发明实施例还提供一种交通扫码设备,该交通扫码设备例如是前述方法实施例中的扫码机具,具体来说,例如可以是如图4A-图4B中的地铁闸机402,或者可以是如图5中的公交扫码机502,请参见图10所示,该交通扫码设备包括处理器1001、存储器1002和图像采集器1003,该图像采集器1003例如是摄像头,在一种可能的实施方式中,该交通扫码设备还包括NFC模块1004,通过该NFC模块可以感应实体公交卡。另外,该交通扫码设备还可以包括外壳,其中的处理器1001、存储器1002、NFC模块1004可以集成设置在该外壳之内,而图像采集器1003可以嵌入式地设置于外壳之中。图像采集器1003可以扫描用户使用乘车码乘车时通过终端设备展示的乘车码以获得乘车码图像。
处理器1001可以是通用处理器,例如中央处理器(CPU)、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本发明实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器1002作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储器可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储器、随机访问存储器(Random Access Memory,RAM)、静态随机访问存储器(Static Random Access Memory,SRAM)、可编程只读存储器(Programmable Read Only Memory,PROM)、只读存储器(Read Only Memory,ROM)、带电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、磁性存储器、磁盘、光盘等等。存储器是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本发明实施例中的存储器1002还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
处理器1001是交通扫码设备的控制中心,可以利用各种接口和线路连接整个交通扫码设备的各个部分,通过运行或执行存储在存储器1002内的指令以及调用存储在存储器内的数据,交通扫码设备的各种功能和处理数据,从而对交通扫码设备进行整体监控。处理器1001可以根据获得的乘车码图像确定出乘车码中携带的待验证数字签名,然后基于存储器1002中存储的公钥集合对得到的待验证数字签名进行解密,以通过是否解密成功来确定当前的乘车码使用是否合法,进而达到规范乘车码使用的目的。也就是说,本发明实施例中的交通扫码设备具有离线验证乘车码使用是否合法的功能,通过离线验证的方式可以有效地应对乘车码离线交易面对的安全风险,以满足乘车码体系中各方的安全认证诉求。
基于同一发明构思,本发明实施例还提供一种终端设备,该终端设备例如是智能手机、平板电脑、PDA,笔记本电脑、车载设备、智能穿戴式设备等设备,该终端设备例如可以是如图4A-图4B中的终端设备401,或者可以是如图5中的终端设备501。该终端设备可以是硬件结构、软件模块、或硬件结构加软件模块。该终端设备可以由芯片系统实现,芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。请参见图11,本发明实施例中的终端设备包括至少一个处理器1101,以及与至少一个处理器连接的存储器1102,本发明实施例中不限定处理器1101与存储器1102之间的具体连接介质,图11中是以处理器1101和存储器1102之间通过总线1100连接为例,总线1100在图11中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。总线1100可以分为地址总线、数据总线、控制总线等,为便于表示,图11中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
在本发明实施例中,存储器1102存储有可被至少一个处理器1101执行的指令,至少一个处理器1101通过执行存储器1102存储的指令,可以执行前述的乘车码验证方法中所包括的步骤。
其中,处理器1101的硬件结构可以与前述图10中的处理器1001相同,例如也可以是CPU、DSP、ASIC等,以及存储器1102的硬件结构可以与前述图10中的存储器1002相同,例如也可以是闪存、硬盘、多媒体卡、卡型存储器、RAM、SRAM等,此处就不再重复介绍了。
其中,处理器1101是终端设备的控制中心,可以利用各种接口和线路连接整个终端设备的各个部分,通过运行或执行存储在存储器1102内的指令以及调用存储在存储器1102内的数据,终端设备的各种功能和处理数据,从而对终端设备进行整体监控。可选的,处理器1101可包括一个或多个处理单元,处理器1101可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1101中。在一些实施例中,处理器1101和存储器1102可以在同一芯片上实现,在一些实施例中,它们也可以在独立的芯片上分别实现。
请参见图12所示的终端设备的另一结构示意图,该终端设备还可以包括输入单元1201、显示单元1202、射频单元1203、音频电路1204、扬声器1205、麦克风1206、无线保真(Wireless Fidelity,WiFi)模块1207、蓝牙模块1208、电源1209、外部接口1210、耳机插孔1211等部件。本领域技术人员可以理解的是,图12仅仅是终端设备的举例,并不构成对终端设备的限定,终端设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件。
输入单元1201可用于接收输入的数字或字符信息,以及产生与终端设备的用户设置以及功能控制有关的键信号输入。例如,输入单元1201可包括触摸屏1212以及其它输入设备1213。触摸屏1212可收集用户在其上或附近的触摸操作(比如用户使用手指、关节、触笔等任何适合的物体在触摸屏1212上或在触摸屏1212附近的操作),即触摸屏1212可用于检测触摸压力以及触摸输入位置和触摸输入面积,并根据预先设定的程序驱动相应的连接装置。触摸屏1212可以检测用户对触摸屏1212的触控操作,将触控操作转换为触控信号发送给处理器1101,或者理解为可将触控操作的触控信息发送给处理器1101,并能接收处理器1101发来的命令并加以执行。触控信息至少可以包括压力大小信息和压力持续时长信息中的至少一种。触摸屏1212可以提供终端设备和用户之间的输入界面和输出界面。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触摸屏1212。除了触摸屏1212,输入单元1201还可以包括其它输入设备1213。比如,其它输入设备1213可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元1202可用于显示由用户输入的信息或提供给用户的信息以及终端设备的各种菜单。进一步的,触摸屏1212可覆盖显示单元1202,当触摸屏1212检测到在其上或附近的触控操作后,传送给处理器1101以确定的触控操作的压力信息。在本发明实施例中,触摸屏1212与显示单元1202可以集成为一个部件而实现终端设备的输入、输出、显示功能。为便于描述,本发明实施例以触摸屏1212代表触摸屏1212和显示单元1202的功能集合为例进行示意性说明,当然在某些实施例中,触摸屏1212与显示单元1202也可以作为两个独立的部件。
当显示单元1202和触摸板以层的形式彼此叠加以形成触摸屏1212时,显示单元1202可以用作输入装置和输出装置,在作为输出装置时,可以用于显示图像,例如实现对各种视频的播放。显示单元1202可以包括液晶显示器(Liquid Crystal Display,LCD)、薄膜晶体管液晶显示器(Thin Film Transistor Liquid Crystal Display,TFT-LCD)、有机发光二极管(Organic Light Emitting Diode,OLED)显示器、有源矩阵有机发光二极体(Active Matrix Organic Light Emitting Diode,AMOLED)显示器、平面转换(In-PlaneSwitching,IPS)显示器、柔性显示器、3D显示器等等中的至少一种。这些显示器中的一些可以被构造为透明状以允许用户从外部观看,这可以称为透明显示器,根据特定想要的实施方式,终端设备可以包括两个或更多显示单元(或其它显示装置),例如,终端设备可以包括外部显示单元(图12未示出)和内部显示单元(图12未示出)。
射频单元1203可用于收发信息或通话过程中信号的接收和发送。通常,射频电路包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low NoiseAmplifier,LNA)、双工器等。此外,射频单元1203还可以通过无线通信与网络设备和其它设备通信。
音频电路1204、扬声器1205、麦克风1206可提供用户与终端设备之间的音频接口。音频电路1204可将接收到的音频数据转换后的电信号,传输到扬声器1205,由扬声器1205转换为声音信号输出。另一方面,麦克风1206将收集的声音信号转换为电信号,由音频电路1204接收后转换为音频数据,再将音频数据输出处理器1101处理后,经射频单元1203以发送给比如另一电子设备,或者将音频数据输出至存储器1102以便进一步处理,音频电路也可以包括耳机插孔1211,用于提供音频电路和耳机之间的连接接口。
WiFi属于短距离无线传输技术,终端设备通过WiFi模块1208可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图12示出了WiFi模块1208,但是可以理解的是,其并不属于终端设备的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
蓝牙是一种短距离无线通讯技术。利用蓝牙技术,能够有效地简化掌上电脑、笔记本电脑和手机等移动通信终端设备之间的通信,也能够成功地简化以上这些设备与因特网(Internet)之间的通信,终端设备通过蓝牙模块1208使终端设备与因特网之间的数据传输变得更加迅速高效,为无线通信拓宽道路。蓝牙技术是能够实现语音和数据无线传输的开放性方案。虽然图12示出了蓝牙模块1208,但是可以理解的是,其并不属于终端设备的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
终端设备还可以包括电源1209(比如电池),其用于接收外部电力或为终端设备内的各个部件供电。优选的,电源1209可以通过电源管理系统与处理器1101逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
终端设备还可以包括外部接口1210,该外部接口1210可以包括标准的Micro USB接口,也可以包括多针连接器,可以用于连接终端设备与其它设备进行通信,也可以用于连接充电器为终端设备充电。
尽管未示出,本发明实施例中的终端设备还可以包括摄像头、闪光灯等其它可能的功能模块,在此不再赘述。
基于同一发明构思,本发明实施例还提供一种存储介质,该存储介质存储有计算机指令,当该计算机指令在计算机上运行时,使得计算机执行如前述的乘车码验证方法的步骤。
基于同一发明构思,本发明实施例还提供一种乘车码验证装置,该乘车码验证装置包括至少一个处理器及可读存储介质,当该可读存储介质中包括的指令被该至少一个处理器执行时,可以执行前述的乘车码验证方法的步骤。
基于同一发明构思,本发明实施例还提供一种芯片系统,该芯片系统包括处理器,还可以包括存储器,用于实现如前述的乘车码验证方法的步骤。该芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。
在一些可能的实施方式中,本发明提供的乘车码验证方法的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在计算机上运行时,所述程序代码用于使所述计算机执行前文述描述的根据本发明各种示例性实施方式的乘车码验证方法中的步骤。
基于同一发明构思,本发明实施例还提供一种乘车码验证装置,该乘车码验证装置包括:存储器,用于存储程序指令;处理器,用于调用所述存储器中存储的程序指令,按照获得的程序指令执行前文述描述的根据本发明各种示例性实施方式的乘车码验证方法中的步骤。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (12)
1.一种乘车码验证方法,其特征在于,应用于乘车码系统,所述乘车码系统包括互不信任的以下三个参与方:交通运营方、乘车码服务方和终端设备;所述乘车码系统中的各方各自拥有一套公私钥体系,所述乘车码系统中的各方的私钥保存在本地,所述乘车码系统中的各方的数字签名使用配对公钥解密;所述方法包括:
扫描所述终端设备展示的乘车码,以获得乘车码图像,其中,所述乘车码携带有所述交通运营方以第一私钥签发的运营方数字签名、所述乘车码服务方以第二私钥签发的服务方数字签名、所述终端设备以第三私钥签发的用户数字签名;所述运营方数字签名是由所述交通运营方以所述第一私钥对运营方行业数据的数字摘要进行加密得到的;所述服务方数字签名是由所述乘车码服务方以所述第二私钥对用户信用数据和/或乘车码交易规则的数字摘要进行加密得到的;所述用户数字签名是由所述终端设备以所述第三私钥对所述乘车码中的预定数据的数字摘要进行加密得到的;
其中,所述运营方行业数据是由所述交通运营方定义的数据;所述用户信用数据用于在解密成功后在被验证满足预定信用标准时,确定本次乘车码使用合法;所述乘车码交易规则用于在解密成功后在被验证符合乘车码交易规则时,确定本次乘车码使用合法;所述预定数据包括所述乘车码中的全部数据或部分数据;
根据所述乘车码图像,得到所述乘车码中包括的待验证数字签名;
从预存的公钥集合中确定与所述待验证数字签名对应的目标公钥,其中,所述公钥集合包括与所述第一私钥匹配的第一公钥、与所述第二私钥匹配的第二公钥及与所述第三私钥匹配的第三公钥;
利用所述目标公钥对所述待验证数字签名进行解密,并在解密成功时,获取本次乘车码的乘车码扫码记录;
利用预定合法校验条件对所述乘车码扫码记录进行兜底校验;所述预定合法校验条件包括以下条件的一种或多种:校验交易时间是否在信用证书授权的有效期内发生、校验所述交易时间是否在所述乘车码防复制有效期内发生、校验交易地点凭证产生于扫码机具附近以防止远程复制、校验交易金额是否在用户被授权的交易限额之内、校验所述乘车码服务方的数字签名,以确保所述乘车码服务方的授权生成、校验TAC,确保交易并非所述交通运营方伪造生成、校验所述用户数字签名,确保交易是由用户授权;
在通过兜底校验后,确定本次乘车码使用合法。
2.如权利要求1所述的方法,其特征在于,所述待验证数字签名包括所述服务方数字签名;在解密成功时,确定本次乘车码使用合法,包括:
在解密成功时,若所述用户信用数据表征的用户信用满足预定信用标准,则确定本次乘车码使用合法;和/或,
在解密成功时,若当前的乘车码交易规则符合所述乘车码交易规则,则确定本次乘车码使用合法。
3.如权利要求1所述的方法,其特征在于,在所述确定本次乘车码使用合法之后,所述方法还包括:
将所述乘车码扫码记录发送给运营方服务器,以使所述运营方服务器根据所述乘车码扫码记录生成本次乘车码交易对应的待支付账单,并将所述待支付账单发送给乘车码支付平台,以请求所述乘车码支付平台处理所述待支付账单。
4.如权利要求3所述的方法,其特征在于,所述乘车码中还包括防伪验证密钥,所述防伪验证密钥是根据所述乘车码服务方生成的动态验证信息得到的;将所述乘车码扫码记录发送给运营方服务器,包括:
将所述乘车码扫码记录和所述防伪验证密钥发送给所述运营方服务器,以使所述运营方服务器在所述待支付账单中携带所述防伪验证密钥,所述防伪验证密钥用于验证所述待支付账单是否为伪造的账单。
5.如权利要求3或4所述的方法,其特征在于,若所述乘车码扫码记录满足所述预定合法校验条件,则表明所述待支付账单有效,在所述待支付账单有效时,通过所述乘车码支付平台向所述交通运营方支付与所述待支付账单对应的交通费用。
6.一种乘车码验证方法,其特征在于,应用于乘车码系统,所述乘车码系统包括互不信任的以下三个参与方:交通运营方、乘车码服务方和终端设备;所述乘车码系统中的各方各自拥有一套公私钥体系,所述乘车码系统中的各方的私钥保存在本地,所述乘车码系统中的各方的数字签名使用配对公钥解密;所述方法包括:
获得待验证数字签名,其中,所述待验证数字签名包括所述交通运营方以第一私钥签发的运营方数字签名、所述乘车码服务方以第二私钥签发的服务方数字签名、所述终端设备以第三私钥签发的用户数字签名;所述运营方数字签名是由所述交通运营方以所述第一私钥对运营方行业数据的数字摘要进行加密得到的;所述服务方数字签名是由所述乘车码服务方以所述第二私钥对用户信用数据和/或乘车码交易规则的数字摘要进行加密得到的;所述用户数字签名是由所述终端设备以所述第三私钥对所述乘车码中的预定数据的数字摘要进行加密得到的;
其中,所述运营方行业数据是由所述交通运营方定义的数据;所述用户信用数据用于在解密成功后在被验证满足预定信用标准时,确定本次乘车码使用合法;所述乘车码交易规则用于在解密成功后在被验证符合乘车码交易规则时,确定本次乘车码使用合法;所述预定数据包括所述乘车码中的全部数据或部分数据;
根据所述待验证数字签名生成用于本次乘车码使用的乘车码;
显示所述乘车码,以使交通扫码设备扫描所述乘车码,并根据得到的乘车码图像中的所述待验证数字签名对本次乘车码使用是否合法进行验证,并在验证通过后,获取本次乘车码的乘车码扫码记录;
利用预定合法校验条件对所述乘车码扫码记录进行兜底校验;所述预定合法校验条件包括以下条件的一种或多种:校验交易时间是否在信用证书授权的有效期内发生、校验所述交易时间是否在所述乘车码复制有效期内发生、校验交易地点凭证产生于扫码机具附近以防止远程复制、校验交易金额是否在用户被授权的交易限额之内、校验所述乘车码服务方的数字签名,以确保所述乘车码服务方的授权生成、校验TAC,确保交易并非所述交通运营方伪造生成、校验所述用户数字签名,确保交易是由用户授权;
在通过兜底校验后,确定本次乘车码使用合法。
7.如权利要求6所述的方法,其特征在于,根据所述待验证数字签名生成用于本次乘车码使用的乘车码,包括:
根据所述待验证数字签名和防伪验证密钥生成用于本次乘车码使用的乘车码;其中,所述防伪验证密钥是根据所述乘车码服务方生成的动态验证信息得到的,所述防伪验证密钥用于验证与本次乘车码使用对应的待支付账单是否为伪造的账单。
8.一种乘车码验证装置,其特征在于,应用于乘车码系统,所述乘车码系统包括互不信任的以下三个参与方:交通运营方、乘车码服务方和终端设备;所述乘车码系统中的各方各自拥有一套公私钥体系,所述乘车码系统中的各方的私钥保存在本地,所述乘车码系统中的各方的数字签名使用配对公钥解密;所述装置包括:
扫描模块,用于扫描所述终端设备展示的乘车码,以获得乘车码图像,其中,所述乘车码携带有所述交通运营方以第一私钥签发的运营方数字签名、所述乘车码服务方以第二私钥签发的服务方数字签名、所述终端设备以第三私钥签发的用户数字签名;所述运营方数字签名是由所述交通运营方以所述第一私钥对运营方行业数据的数字摘要进行加密得到的;所述服务方数字签名是由所述乘车码服务方以所述第二私钥对用户信用数据和/或乘车码交易规则的数字摘要进行加密得到的;所述用户数字签名是由所述终端设备以所述第三私钥对所述乘车码中的预定数据的数字摘要进行加密得到的;
其中,所述运营方行业数据是由所述交通运营方定义的数据;所述用户信用数据用于在解密成功后在被验证满足预定信用标准时,确定本次乘车码使用合法;所述乘车码交易规则用于在解密成功后在被验证符合乘车码交易规则时,确定本次乘车码使用合法;所述预定数据包括所述乘车码中的全部数据或部分数据;
图像处理模块,用于根据所述乘车码图像,得到所述乘车码中包括的待验证数字签名;
第一确定模块,用于从预存的公钥集合中确定与所述待验证数字签名对应的目标公钥,其中,所述公钥集合包括与所述第一私钥匹配的第一公钥、与所述第二私钥匹配的第二公钥及与所述第三私钥匹配的第三公钥;
第二确定模块,用于利用所述目标公钥对所述待验证数字签名进行解密,并在解密成功时,获取本次乘车码的乘车码扫码记录,利用预定合法校验条件对所述乘车码扫码记录进行兜底校验,并在通过兜底校验后,确定本次乘车码使用合法;所述预定合法校验条件包括以下条件的一种或多种:校验交易时间是否在信用证书授权的有效期内发生、校验所述交易时间是否在所述乘车码防复制有效期内发生、校验交易地点凭证产生于扫码机具附近以防止远程复制、校验交易金额是否在用户被授权的交易限额之内、校验所述乘车码服务方的数字签名,以确保所述乘车码服务方的授权生成、校验TAC,确保交易并非所述交通运营方伪造生成、校验所述用户数字签名,确保交易是由用户授权。
9.一种乘车码验证装置,其特征在于,应用于乘车码系统,所述乘车码系统包括互不信任的以下三个参与方:交通运营方、乘车码服务方和终端设备;所述乘车码系统中的各方各自拥有一套公私钥体系,所述乘车码系统中的各方的私钥保存在本地,所述乘车码系统中的各方的数字签名使用配对公钥解密;所述装置包括:
获得模块,用于获得待验证数字签名,其中,所述待验证数字签名包括所述交通运营方以第一私钥签发的运营方数字签名、所述乘车码服务方以第二私钥签发的服务方数字签名、所述终端设备以第三私钥签发的用户数字签名;所述运营方数字签名是由所述交通运营方以所述第一私钥对运营方行业数据的数字摘要进行加密得到的;所述服务方数字签名是由所述乘车码服务方以所述第二私钥对用户信用数据和/或乘车码交易规则的数字摘要进行加密得到的;所述用户数字签名是由所述终端设备以所述第三私钥对所述乘车码中的预定数据的数字摘要进行加密得到的;
其中,所述运营方行业数据是由所述交通运营方定义的数据;所述用户信用数据用于在解密成功后在被验证满足预定信用标准时,确定本次乘车码使用合法;所述乘车码交易规则用于在解密成功后在被验证符合乘车码交易规则时,确定本次乘车码使用合法;所述预定数据包括所述乘车码中的全部数据或部分数据;
生成模块,用于根据所述待验证数字签名生成用于本次乘车码交易的乘车码;
显示模块,用于显示所述乘车码,以使交通扫码设备扫描所述乘车码,并根据得到的乘车码图像中的所述待验证数字签名对本次乘车码使用是否合法进行验证;
其中,所述验证的方式包括:获取本次乘车码的乘车码扫码记录;
利用预定合法校验条件对所述乘车码扫码记录进行兜底校验;所述预定合法校验条件包括以下条件的一种或多种:校验交易时间是否在信用证书授权的有效期内发生、校验所述交易时间是否在所述乘车码防复制有效期内发生、校验交易地点凭证产生于扫码机具附近以防止远程复制、校验交易金额是否在用户被授权的交易限额之内、校验所述乘车码服务方的数字签名,以确保所述乘车码服务方的授权生成、校验TAC,确保交易并非所述交通运营方伪造生成、校验所述用户数字签名,确保交易是由用户授权;
在通过兜底校验后,确定本次乘车码使用合法。
10.一种交通扫码设备,其特征在于,所述交通扫码设备包括:
图像采集器,用于扫描终端设备中显示的乘车码,以获得乘车码图像;
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序指令执行权利要求1-5任一所述的方法包括的步骤。
11.一种终端设备,其特征在于,所述终端设备包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序指令执行权利要求6或7所述的方法包括的步骤。
12.一种存储介质,其特征在于,所述存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行权利要求1-5任一所述的方法包括的步骤,或者执行如权利要求6或7所述的方法包括的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811324215.3A CN111160915B (zh) | 2018-11-08 | 2018-11-08 | 一种乘车码验证方法、装置、交通扫码设备及终端设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811324215.3A CN111160915B (zh) | 2018-11-08 | 2018-11-08 | 一种乘车码验证方法、装置、交通扫码设备及终端设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111160915A CN111160915A (zh) | 2020-05-15 |
CN111160915B true CN111160915B (zh) | 2024-01-09 |
Family
ID=70554839
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811324215.3A Active CN111160915B (zh) | 2018-11-08 | 2018-11-08 | 一种乘车码验证方法、装置、交通扫码设备及终端设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111160915B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
ES2907279T3 (es) * | 2019-08-23 | 2022-04-22 | Worldline | Servidor de seguridad para la verificación dinámica de contenidos web, dispositivo remoto del usuario final, sistema que comprende dicho dispositivo remoto del usuario final y servidor, y método implementado por dicho sistema |
CN111754219A (zh) * | 2020-06-12 | 2020-10-09 | 支付宝实验室(新加坡)有限公司 | 一种业务处理方法及相关硬件 |
TWI743938B (zh) * | 2020-08-12 | 2021-10-21 | 一卡通票證股份有限公司 | 交通載具搭乘憑證之離線驗證方法 |
CN111768185A (zh) * | 2020-09-01 | 2020-10-13 | 腾讯科技(深圳)有限公司 | 一种交易数据处理的方法、相关装置以及存储介质 |
CN112561013A (zh) * | 2020-12-15 | 2021-03-26 | 维沃移动通信有限公司 | 处理方法、装置及电子设备 |
CN112699360B (zh) * | 2020-12-30 | 2023-07-04 | 北京天融信网络安全技术有限公司 | 硬件的防伪方法及装置、可读存储介质、电子设备 |
CN112288426B (zh) * | 2020-12-31 | 2024-03-01 | 飞天诚信科技股份有限公司 | 一种收款方法及收款系统 |
CN113743924A (zh) * | 2021-09-14 | 2021-12-03 | 中国银行股份有限公司 | 手机二维码乘车方法及装置 |
CN113793159B (zh) * | 2021-09-18 | 2024-07-02 | 北京声智科技有限公司 | 逃票检测方法、装置及电子设备 |
CN114462563B (zh) * | 2022-01-29 | 2023-07-07 | 中国银联股份有限公司 | 一种交易处理方法、装置、设备及存储介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106447328A (zh) * | 2016-10-20 | 2017-02-22 | 严珂 | 电子支付方法及公交电子支付系统、地铁电子支付系统 |
CN106779678A (zh) * | 2016-11-24 | 2017-05-31 | 深圳市久通物联科技股份有限公司 | 一种基于二维码与云端钱包的公共交通验票方法及终端 |
CN106846506A (zh) * | 2017-01-25 | 2017-06-13 | 腾讯科技(深圳)有限公司 | 一种基于信息标识码进行信息验证的方法及系统 |
CN107301545A (zh) * | 2017-04-14 | 2017-10-27 | 广州羊城通有限公司 | 一种基于时间戳的交易验证方法 |
CN107967605A (zh) * | 2017-11-20 | 2018-04-27 | 南京熊猫电子股份有限公司 | 一种轨道交通自动售检票二维码信用支付加密方法 |
CN108053205A (zh) * | 2018-01-25 | 2018-05-18 | 苏宁云商集团股份有限公司 | 一种快速支付方法及设备 |
CN108234517A (zh) * | 2018-01-29 | 2018-06-29 | 成都智元汇信息技术股份有限公司 | 一种基于离线二维码票卡的地铁乘车离线处理系统及方法 |
CN108257226A (zh) * | 2018-01-12 | 2018-07-06 | 深圳市海东青软件科技股份有限公司 | 扫码检票方法、系统、装置、计算机设备和存储介质 |
CN108711206A (zh) * | 2018-05-17 | 2018-10-26 | 腾讯科技(深圳)有限公司 | 闸机控制方法、相关设备、系统及存储介质 |
CN108737394A (zh) * | 2018-05-08 | 2018-11-02 | 腾讯科技(深圳)有限公司 | 离线验证系统、扫码设备和服务器 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9608988B2 (en) * | 2009-02-03 | 2017-03-28 | Inbay Technologies Inc. | Method and system for authorizing secure electronic transactions using a security device having a quick response code scanner |
-
2018
- 2018-11-08 CN CN201811324215.3A patent/CN111160915B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106447328A (zh) * | 2016-10-20 | 2017-02-22 | 严珂 | 电子支付方法及公交电子支付系统、地铁电子支付系统 |
CN106779678A (zh) * | 2016-11-24 | 2017-05-31 | 深圳市久通物联科技股份有限公司 | 一种基于二维码与云端钱包的公共交通验票方法及终端 |
CN106846506A (zh) * | 2017-01-25 | 2017-06-13 | 腾讯科技(深圳)有限公司 | 一种基于信息标识码进行信息验证的方法及系统 |
CN107301545A (zh) * | 2017-04-14 | 2017-10-27 | 广州羊城通有限公司 | 一种基于时间戳的交易验证方法 |
CN107967605A (zh) * | 2017-11-20 | 2018-04-27 | 南京熊猫电子股份有限公司 | 一种轨道交通自动售检票二维码信用支付加密方法 |
CN108257226A (zh) * | 2018-01-12 | 2018-07-06 | 深圳市海东青软件科技股份有限公司 | 扫码检票方法、系统、装置、计算机设备和存储介质 |
CN108053205A (zh) * | 2018-01-25 | 2018-05-18 | 苏宁云商集团股份有限公司 | 一种快速支付方法及设备 |
CN108234517A (zh) * | 2018-01-29 | 2018-06-29 | 成都智元汇信息技术股份有限公司 | 一种基于离线二维码票卡的地铁乘车离线处理系统及方法 |
CN108737394A (zh) * | 2018-05-08 | 2018-11-02 | 腾讯科技(深圳)有限公司 | 离线验证系统、扫码设备和服务器 |
CN108711206A (zh) * | 2018-05-17 | 2018-10-26 | 腾讯科技(深圳)有限公司 | 闸机控制方法、相关设备、系统及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111160915A (zh) | 2020-05-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111160915B (zh) | 一种乘车码验证方法、装置、交通扫码设备及终端设备 | |
US8898088B2 (en) | In-card access control and monotonic counters for offline payment processing system | |
US9020858B2 (en) | Presence-of-card code for offline payment processing system | |
CN109379369A (zh) | 单点登录方法、装置、服务器及存储介质 | |
CN103326862B (zh) | 电子签名方法及系统 | |
EP2961094A1 (en) | System and method for generating a random number | |
CN112232814B (zh) | 支付密钥的加密和解密方法、支付认证方法及终端设备 | |
CN105612543A (zh) | 用于为移动设备供应支付凭证的方法和系统 | |
CN103353973B (zh) | 基于音频验证的银行业务交易认证方法及系统 | |
CN110826043A (zh) | 一种数字身份申请系统及方法、身份认证系统及方法 | |
CN104050567A (zh) | 离线模式下的数据交互方法、终端以及服务器 | |
RU2603549C2 (ru) | Способ, устройство и система верификации для защиты от подделок | |
CN103839157A (zh) | 一种电子支付方法、装置及系统 | |
CN109995781A (zh) | 数据的传输方法、装置、介质以及设备 | |
CN111539720B (zh) | 一种基于数字货币的可信交易方法和系统 | |
CN109639644B (zh) | 授权验证方法、装置、存储介质和电子设备 | |
CN104462949A (zh) | 一种插件的调用方法及装置 | |
CN112055019A (zh) | 一种建立通信信道的方法及用户终端 | |
CN109600296A (zh) | 一种证件链即时通讯系统及其使用方法 | |
CN103401277B (zh) | 一种智能电源及利用该智能电源实现移动支付的方法 | |
CN107609878B (zh) | 一种共享汽车的安全认证方法及系统 | |
CN201974884U (zh) | 车载系统 | |
CN112712354A (zh) | 一种数字货币钱包与数字货币服务器的交互方法 | |
WO2013130912A2 (en) | In-card access control and monotonic counters for offline payment processing system | |
Arfaoui et al. | A privacy-preserving NFC mobile pass for transport systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |