CN110555029B - 基于区块链的票务管理方法、装置及存储介质 - Google Patents
基于区块链的票务管理方法、装置及存储介质 Download PDFInfo
- Publication number
- CN110555029B CN110555029B CN201910844328.4A CN201910844328A CN110555029B CN 110555029 B CN110555029 B CN 110555029B CN 201910844328 A CN201910844328 A CN 201910844328A CN 110555029 B CN110555029 B CN 110555029B
- Authority
- CN
- China
- Prior art keywords
- target user
- identity information
- information
- identity
- terminal
- 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
- 238000007726 management method Methods 0.000 title claims abstract description 184
- 238000012795 verification Methods 0.000 claims abstract description 84
- 238000000034 method Methods 0.000 claims abstract description 33
- 238000013475 authorization Methods 0.000 claims description 48
- 230000009466 transformation Effects 0.000 claims description 10
- 230000007246 mechanism Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 17
- 230000008569 process Effects 0.000 description 12
- 239000000284 extract Substances 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- RWSOTUBLDIXVET-UHFFFAOYSA-N Dihydrogen sulfide Chemical compound S RWSOTUBLDIXVET-UHFFFAOYSA-N 0.000 description 2
- 238000013524 data verification Methods 0.000 description 2
- 235000019800 disodium phosphate Nutrition 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 238000004549 pulsed laser deposition Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or 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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Data Mining & Analysis (AREA)
- Finance (AREA)
- Computer Security & Cryptography (AREA)
- Accounting & Taxation (AREA)
- Computer Hardware Design (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- General Business, Economics & Management (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本发明提供了一种基于区块链的票务管理方法、装置及存储介质;方法包括:响应于携带目标用户的身份信息的注册请求,基于所述身份信息对所述目标用户进行身份认证,得到认证结果;当所述认证结果表征对所述目标用户的身份认证通过时,存储所述目标用户的身份信息至区块链网络;接收携带所述目标用户的待验证身份信息的票务核验请求;通过所述区块链网络,基于所述目标用户的身份信息对所述待验证身份信息进行校验,得到校验结果;基于所述校验结果,返回相应的票务核验结果。通过本发明,能够对用户的票务信息进行简单、快速的核验。
Description
技术领域
本发明涉及区块链技术领域,尤其涉及一种基于区块链的票务管理方法、装置及存储介质。
背景技术
相关技术中基于传统的中心化身份认证系统,需要先通过第三方收集用户身份信息,比如,需要用户提供原始身份证件,然后第三方提交所收集的用户身份信息至客户管理中心进行登记,进而使客户管理中心对用户的身份信息进行核对,然而,采用此类认证方法对用户的票务信息进行核验的流程比较繁琐,存在一定的局限性。
发明内容
本发明实施例提供一种基于区块链的票务管理方法、装置及存储介质,能够对用户的票务信息进行简单、快速的核验。
本发明实施例提供一种基于区块链的票务管理方法,包括:
响应于携带目标用户的身份信息的注册请求,基于所述身份信息对所述目标用户进行身份认证,得到认证结果;
当所述认证结果表征对所述目标用户的身份认证通过时,存储所述目标用户的身份信息至区块链网络;
接收携带所述目标用户的待验证身份信息的票务核验请求;
通过所述区块链网络,基于所述目标用户的身份信息对所述待验证身份信息进行校验,得到校验结果;
基于所述校验结果,返回相应的票务核验结果。
本发明实施例还提供一种基于区块链的票务管理装置,包括:
认证模块,用于响应于携带目标用户的身份信息的注册请求,基于所述身份信息对所述目标用户进行身份认证,得到认证结果;
存储模块,用于当所述认证结果表征对所述目标用户的身份认证通过时,存储所述目标用户的身份信息至区块链网络;
接收模块,用于接收携带所述目标用户的待验证身份信息的票务核验请求;
校验模块,用于通过所述区块链网络,基于所述目标用户的身份信息对所述待验证身份信息进行校验,得到校验结果;
发送模块,用于基于所述校验结果,返回相应的票务核验结果。
上述方案中,所述认证模块,还用于确定所述目标用户的第一身份标识;
基于所述目标用户的第一身份标识,获取信息库中相应的用户身份信息;
将所述目标用户的身份信息与获取的所述用户身份信息进行比对,以对所述目标用户进行身份认证,得到认证结果。
上述方案中,所述存储模块,还用于生成用于对所述目标用户的身份信息进行加解密的公/私钥对;
对所述目标用户的身份信息进行哈希变换,得到对应所述身份信息的摘要信息;
采用生成的所述私钥对所述摘要信息进行加密,得到对应所述身份信息的数字签名信息;
存储所述数字签名信息至所述区块链网络,并发送所述私钥至所述目标用户对应的第一终端。
上述方案中,所述存储模块,还用于接收所述第一终端发送的携带所述私钥的更新请求;
解析所述更新请求,得到对应的所述目标用户的待更新用户信息;
采用所述私钥对所述待更新用户信息进行加密;
存储加密后的待更新用户信息至所述区块链网络,以更新所述目标用户的身份信息。
上述方案中,所述存储模块,还用于基于所述目标用户的身份信息,生成对应所述目标用户的第二身份标识;
发送所述第二身份标识至所述目标用户对应的第一终端。
上述方案中,所述接收模块,还用于接收所述第一终端发送的携带所述第二身份标识的购票请求;
基于所述购票请求,生成对应的票务信息及对应所述票务信息的图形码;
发送所述票务信息及所述图形码至所述第一终端。
上述方案中,所述接收模块,还用于当所述图形码获得第二终端的扫描操作时,接收所述第二终端发送的携带所述待验证身份信息的票务核验请求,所述待验证身份信息为所述第二终端通过扫描所述图形码而得到。
上述方案中,所述校验模块,还用于生成用于校验所述待验证身份信息的交易;
提交所述交易至所述区块链网络的节点,以使所述节点基于存储的所述目标用户的身份信息及待验证身份信息,得到校验结果。
上述方案中,所述装置还包括授权模块,
所述授权模块,用于响应于第三终端发送的针对所述目标用户的身份信息的访问请求,生成用于对所述第三终端进行授权验证的授权请求;
发送所述授权请求至所述目标用户对应的第一终端,以使所述第一终端基于所述授权请求,对所述第三终端进行授权验证,并返回验证结果;
当所述验证结果表征所述第三终端获得授权时,获取所述目标用户的身份信息;
发送获取的所述目标用户的身份信息至所述第三终端。
本发明实施例提供一种基于区块链的票务管理装置,包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现本发明实施例提供的基于区块链的票务管理方法。
本发明实施例提供一种存储介质,存储有可执行指令,用于引起处理器执行时,实现本发明实施例提供的区块链的票务管理方法。
本发明实施例具有以下有益效果:
通过将用户的身份信息存储至区块链网络,并基于票务核验请求在区块链网络中实现对用户身份信息的校验,如此,实现对用户身份的链上校验,并不需要用户出示原始身份信息,从而为用户提供了更好的隐私保护,并且,简化了票务核验的流程,避免核验繁琐。
附图说明
图1为本发明实施例提供的基于区块链的票务管理系统的架构示意图;
图2为本发明实施例提供的区块链节点部署示意图;
图3为本发明实施例提供的区块链的结构示意图;
图4为本发明实施例提供的一个新区块产生过程的流程示意图;
图5为本发明实施例提供的区块链网络的功能架构示意图;
图6为本发明实施例提供的客运管理平台的结构示意图;
图7为本发明实施例提供的基于区块链的票务管理方法的流程示意图;
图8为本发明实施例提供的注册目标用户的身份信息的界面示意图;
图9为本发明实施例提供的展示图形码的界面示意图;
图10为本发明实施例提供的区块链校验身份信息的界面示意图;
图11为本发明实施例提供的呈现授权信息的界面示意图;
图12为本发明实施例提供的基于区块链的票务管理方法流程示意图;
图13为本发明实施例提供的基于区块链的票务管理方法流程示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,所描述的实施例不应视为对本发明的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
在以下的描述中,所涉及的术语“第一\第二”仅仅是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本发明实施例能够以除了在这里图示或描述的以外的顺序实施。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本发明实施例的目的,不是旨在限制本发明。
对本发明实施例进行进一步详细说明之前,对本发明实施例中涉及的名词和术语进行说明,本发明实施例中涉及的名词和术语适用于如下的解释。
1)交易(Transaction),等同于计算机术语“事务”,交易包括了需要提交到区块链网络执行的操作,并非单指商业语境中的交易,鉴于在区块链技术中约定俗成地使用了“交易”这一术语,本发明实施例遵循了这一习惯。
例如,部署(Deploy)交易用于向区块链网络中的节点安装指定的智能合约并准备好被调用;调用(Invoke)交易用于通过调用智能合约在区块链中追加交易的记录,并对区块链的状态数据库进行操作,包括更新操作(包括增加、删除和修改状态数据库中的键值对)和查询操作(即查询状态数据库中的键值对)。
2)区块链(Blockchain),是由区块(Block)形成的加密的、链式的交易的存储结构。
例如,每个区块的头部既可以包括区块中所有交易的哈希值,同时也包含前一个区块中所有交易的哈希值,从而基于哈希值实现区块中交易的防篡改和防伪造;新产生的交易被填充到区块并经过区块链网络中节点的共识后,会被追加到区块链的尾部从而形成链式的增长。
3)区块链网络(Blockchain Network),通过共识的方式将新区块纳入区块链的一系列的节点的集合。
4)账本(Ledger),是区块链(也称为账本数据)和与区块链同步的状态数据库的统称。
其中,区块链是以文件系统中的文件的形式来记录交易;状态数据库是以不同类型的键(Key)值(Value)对的形式来记录区块链中的交易,用于支持对区块链中交易的快速查询。
5)智能合约(Smart Contracts),也称为链码(Chaincode)或应用代码,部署在区块链网络的节点中的程序,节点执行接收的交易中所调用的智能合约,来对状态数据库的键值对数据进行更新或查询的操作。
6)共识(Consensus),是区块链网络中的一个过程,用于在涉及的多个节点之间对区块中的交易达成一致,达成一致的区块将被追加到区块链的尾部,实现共识的机制包括工作量证明(PoW,Proof of Work)、权益证明(PoS,Proof of Stake)、股份授权证明(DPoS,Delegated Proof-of-Stake)、消逝时间量证明(PoET,Proof of Elapsed Time)等。
下面说明本发明实施例提供的区块链网络的示例性应用,参见图1,图1为本发明实施例提供的基于区块链的票务管理系统的架构示意图,包括区块链网络200(示例性示出了包括节点210-1至节点210-3)、客运管理平台300,终端(示例性示出用户侧的第一终端400-1及其图形界面410-1,和客运工作人员侧第二终端400-2及其图形界面410-2)。下面分别进行说明。
区块链网络200的类型是灵活多样的,例如可以为公有链、私有链或联盟链中的任意一种。以公有链为例,任何业务主体的电子设备例如用户终端和服务器,都可以在不需要授权的情况下接入区块链网络200;以联盟链为例,业务主体在获得授权后其下辖的电子设备(例如终端/服务器)可以接入区块链网络200,此时,成为区块链网络200中的一类特殊的节点即客户端节点。
区块链网络200接收来自不同终端(例如图1中示出的用户侧的第一终端400-1和客运工作人员侧第二终端400-2)提交的交易,执行交易以更新账本或者查询账本,并在终端的用户界面(例如,第一终端400-1的图形界面410-1、第二终端400-2的图形界面410-2)显示执行交易的各种中间结果或最终结果。
多个业务主体接入区块链网络以实现用户身份信息的管理为例说明区块链网络的示例性应用。
参见图1,客运管理平台300在获得区块链网络200的授权后,客运管理平台300的第一终端400-1和第二终端400-2都可以接入区块链网络200。
客运管理平台300的用户(即出行者)在终端400-1的图形界面510-1中登录客运管理平台300,输入用户身份信息的注册请求,客运管理平台300根据用户身份信息注册请求生成对应的存储操作的交易,在交易中指定了实现存储操作需要调用的智能合约、以及向智能合约传递的参数,交易还携带了客运管理平台300签署的数字签名(例如,使用客运管理平台300的数字证书中的私钥,对交易的摘要进行加密得到),并将交易广播到区块链网络200。
区块链网络200中的节点210中接收到交易时,对交易携带的数字签名进行验证,数字签名验证成功后,根据交易中携带的客运管理平台300的身份,确认客运管理平台300是否是具有交易权限,数字签名和权限验证中的任何一个验证判断都将导致交易失败。验证成功后签署节点210自己的数字签名(例如,使用节点210-1的私钥对交易的摘要进行加密得到),并继续在区块链网络200中广播。
区块链网络200中具有排序功能的节点210接收到验证成功的交易后,将交易填充到新的区块中,并广播到区块链网络中200提供共识服务的节点。
区块链200中的提供共识服务的节点210对新区块进行共识过程以达成一致,提供账本功能的节点210将新区块追加到区块链的尾部,并执行新区块中的交易:对于提交存储用户身份信息的交易,更新状态数据库中用户身份信息对应的键值对。
同理,客运工作人员通过终端400-2扫描用户展示的用于核验身份信息的图形码,登录客运管理平台300,客运管理平台300根据票务核验请求生成对应的核验操作的交易,在交易中指定了实现核验操作需要调用的智能合约、以及向智能合约传递的参数,交易还携带了客运管理平台300签署的数字签名,并将交易广播到区块链网络200。
区块链网络200中的节点210中接收到交易时,对交易携带的数字签名进行验证,数字签名验证成功后,根据交易中携带的客运管理平台300的身份,确认客运管理平台300是否是具有交易权限,数字签名和权限验证中的任何一个验证判断都将导致交易失败。验证成功后签署节点210自己的数字签名(例如,使用节点210-1的私钥对交易的摘要进行加密得到),并继续在区块链网络200中广播。
区块链网络200中具有排序功能的节点210接收到验证成功的交易后,将交易填充到新的区块中,并广播到区块链网络中200提供共识服务的节点。
区块链200中的提供共识服务的节点210对新区块进行共识过程以达成一致,提供账本功能的节点210将新区块追加到区块链的尾部,并执行新区块中的交易:对于提交核验待验证身份信息的交易,将存储的目标用户的身份信息与待验证身份信息进行比对,得到并返回校验结果。
可以理解地,业务主体在区块链网络200中能够存储/更新的目标用户的身份信息,可以通过约束业务主体能够发起的交易的权限来实现,例如,当客运管理平台300具有发起更新目标用户身份信息的交易的权限时,客运管理平台300的用户可以在终端400-1的图形界面410-1中输入更新目标用户身份信息的更新请求,并由客运管理平台300生成用于更新目标用户身份信息的交易广播到区块链网络200中,以更新区块链网络200中存储的相应的目标用户身份信息;
当客运管理平台300具有发起票务核验的交易的权限时,客运工作人员可以通过终端400-2扫描用户展示的用于核验身份信息的图形码,登录客运管理平台300,触发用户的待验证身份信息的票务核验请求,并由客运管理平台300生成用于核验待验证身份信息的交易广播到区块链网络200中,以从区块链网络200中核验相应的档待验证身份信息的真实性。
下面对区块链节点的部署方式进行说明,参见图2,图2为本发明实施例提供的区块链节点部署示意图,如图2所示,区块链节点部署可以是多群组的部署方式,而在不同群组之间数据不会共享,比如,机构A-节点0与机构A-节点1共同隶属于群组1和群组2,由于群组1和群组2是两个相互独立的群组,那么群组1和群组2之间不能相互共享数据,如此,保证数据的安全性。
参见图3,图3为本发明实施例提供的区块链的结构示意图,如图3所示,区块链由多个区块组成,创始块中包括区块头和区块主体,区块头中存储有输入信息特征值、版本号、时间戳和难度值,区块主体中存储有输入信息;创始块的下一区块以创始块为父区块,下一区块中同样包括区块头和区块主体,区块头中存储有当前区块的输入信息特征值、父区块的区块头特征值、版本号、时间戳和难度值,并以此类推,使得区块链中每个区块中存储的区块数据均与父区块中存储的区块数据存在关联,保证了区块中输入信息的安全性。
区块链,本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了相关的信息,用于验证其信息的有效性(防伪)和生成下一个区块。
在生成区块链网络的各个区块时,参见图4,图4为本发明实施例提供的一个新区块产生过程的流程示意图,区块链所在的节点在接收到输入信息时,对输入信息进行校验,完成校验后,将输入信息存储至内存池中,并更新其用于记录输入信息的哈希树;之后,将更新时间戳更新为接收到输入信息的时间,并尝试不同的随机数,多次进行特征值计算,使得计算得到的特征值可以满足下述公式:
SHA256(SHA256(version+prev_hash+merkle_root+ntime+nbits+x))<TARGET
其中,SHA256为计算特征值所用的特征值算法;version(版本号)为区块链中相关区块协议的版本信息;prev_hash为当前区块的父区块的区块头特征值;merkle_root为输入信息的特征值;ntime为更新时间戳的更新时间;nbits为当前难度,在一段时间内为定值,并在超出固定时间段后再次进行确定;x为随机数;TARGET为特征值阈值,该特征值阈值可以根据nbits确定得到。
这样,当计算得到满足上述公式的随机数时,便可将信息对应存储,生成区块头和区块主体,得到当前区块。随后,区块链所在节点根据区块链网络中其他节点的节点标识,将新生成的区块分别发送给其所在的区块链网络中的其他节点,由其他节点对新生成的区块进行校验,并在完成校验后将新生成的区块添加至其存储的区块链中。
下面说明本发明实施例提供的区块链网络的示例性的功能架构,参见图5,图5为本发明实施例提供的区块链网络200的功能架构示意图,包括应用层201、共识层202、网络层203、数据层204和资源层205,下面分别进行说明。
资源层205封装了实现区块链网路200中的各个节点210的计算资源、存储资源和通信资源。
数据层204封装了实现账本的各种数据结构,包括以文件系统中的文件实现的区块链,键值型的状态数据库和存在性证明(例如区块中交易的哈希树)。
网络层203封装了点对点(P2P,Point to Point)网络协议、数据传播机制和数据验证机制、接入认证机制和业务主体身份管理的功能。
其中,P2P网络协议实现区块链网络200中节点210之间的通信,数据传播机制保证了交易在区块链网络200中的传播,数据验证机制用于基于加密学方法(例如数字证书、数字签名、公/私钥对)实现节点210之间传输数据的可靠性;接入认证机制用于根据实际的业务场景对加入区块链网络200的业务主体的身份进行认证,并在认证通过时赋予业务主体接入区块链网络200的权限;业务主体身份管理用于存储允许接入区块链网络200的业务主体的身份、以及权限(例如能够发起的交易的类型)。
共识层202封装了区块链网络200中的节点210对区块达成一致性的机制(即共识机制)、交易管理和账本管理的功能。
共识机制包括POS、POW和DPOS等共识算法,支持共识算法的可插拔。
交易管理用于验证节点210接收到的交易中携带的数字签名,验证业务主体的身份信息,并根据身份信息判断确认其是否具有权限进行交易(从业务主体身份管理读取相关信息);对于获得接入区块链网络200的授权的业务主体而言,均拥有认证中心颁发的数字证书,业务主体利用自己的数字证书中的私钥对提交的交易进行签名,从而声明自己的合法身份。
账本管理:用于维护区块链和状态数据库。对于取得共识的区块,追加到区块链的尾部;执行取得共识的区块中的交易,当交易包括更新操作时更新状态数据库中的键值对,当交易包括查询操作时查询状态数据库中的键值对并向业务主体返回查询结果。支持对状态数据库的多种维度的查询操作,包括:根据区块序列号(例如交易的哈希值)查询区块;根据区块哈希值查询区块;根据交易序列号查询区块;根据交易序列号查询交易;根据业务主体的账号(序列号)查询业务主体的账号数据;根据通道名称查询通道中的区块链。
应用层201封装了区块链网络能够实现的各种业务,包括交易的溯源、存证和验证等。
下面说明本发明实施例提供的客运管理平台的示例性结构,参见图6,图6为本发明实施例提供的客运管理平台300的结构示意图,图6所示的客运管理平台300包括:至少一个处理器310、存储器350和至少一个网络接口320和用户接口330。客运管理平台300中的各个组件通过总线系统340耦合在一起。可理解,总线系统340用于实现这些组件之间的连接通信。总线系统340除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图3中将各种总线都标为总线系统340。
处理器310可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
存储器350可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器350可选地包括在物理位置上远离处理器310的一个或多个存储设备。
存储器350包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(ROM,Read Only Me mory),易失性存储器可以是随机存取存储器(RAM,Random Access Memor y)。本发明实施例描述的存储器350旨在包括任意适合类型的存储器。
在一些实施例中,存储器350能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
操作系统351,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
网络通信模块352,用于经由一个或多个(有线或无线)网络接口420到达其他计算设备,示例性的网络接口420包括:蓝牙、无线相容性认证(WiFi)、和通用串行总线(USB,Universal Serial Bus)等;
呈现模块353,用于经由一个或多个与用户接口330相关联的输出装置331(例如,显示屏、扬声器等)使得能够呈现信息(例如,用于操作外围设备和显示内容和信息的用户接口);
输入处理模块354,用于对一个或多个来自一个或多个输入装置332之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。
在一些实施例中,本发明实施例提供的基于区块链的票务管理装置可以采用软件方式实现,图6示出了存储在存储器350中的基于区块链的票务管理装置355,其可以是程序和插件等形式的软件,包括以下软件模块:认证模块3551、存储模块3552、接收模块3553、校验模块3554和发送模块3555,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。将在下文中说明各个模块的功能。
在另一些实施例中,本发明实施例提供的基于区块链的票务管理装置可以采用硬件方式实现,作为示例,本发明实施例提供的基于区块链的票务管理装置可以是采用硬件译码处理器形式的处理器,其被编程以执行本发明实施例提供的基于区块链的票务管理方法,例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(ASIC,Application Specific Integrated Circui t)、DSP、可编程逻辑器件(PLD,ProgrammableLogic Device)、复杂可编程逻辑器件(CPLD,Complex Programmable Logic Device)、现场可编程门阵列(FPGA,Field-Programmable Gate Array)或其他电子元件。
下面将结合附图对本发明实施例的实施方法作进一步地详细描述。参见图7,图7为本发明实施例提供的基于区块链的票务管理方法的流程示意图,将结合图7示出的步骤进行说明。
步骤701:客运管理平台响应于携带目标用户的身份信息的注册请求,基于身份信息对目标用户进行身份认证,得到认证结果。
在实际应用中,目标用户通过归属于客运管理平台的终端(比如手机、笔记本电脑等)上的客户端或小程序的显示界面,提交登记个人身份信息并进行实名认证,参见图8,图8为本发明实施例提供的注册目标用户的身份信息的界面示意图,如图8所示,登记的个人身份信息,包括:姓名、性别、出生日期、身份证正面、身份证反面、手机号码等,当目标用户填写完身份信息后,点击提交按键进行实名认证。
在一些实施例中,客运管理平台可通过如下方式对目标用户进行身份认证:
确定目标用户的第一身份标识;基于目标用户的第一身份标识,获取信息库中相应的用户身份信息;将目标用户的身份信息与获取的用户身份信息进行比对,以对目标用户进行身份认证,得到认证结果。
在实际应用中,客运管理平台接收到用户提交的身份信息的注册请求后,解析接收的注册请求,获得注册请求中携带的目标用户的第一身份标识信息。在实际实施时,客运管理平台可将目标用户的身份信息及第一身份标识信息发送至认证机构,认证机构基于目标用户的第一身份标识从人员数据库中获取相应的用户身份信息,并将目标用户的身份信息与从人员数据库中获取的用户身份信息进行比对,得到表征用户身份认证是否通过的认证结果。
示例性地,当目标用户通过手机客户端登录客运管理平台进行实名认证时,客运管理平台基于认证请求,获取目标用户的第一身份标识信息(比如,身份证号码),并将目标用户的身份证号码发送给认证机构,认证机构基于身份证号码从人员数据库中提取对应所述身份证号码的目标用户的姓名和性别等,并将目标用户登记的姓名和性别,分别与从人员数据库获取的姓名和性别进行比对,当目标用户登记的姓名和性别,与从人员数据库获取的姓名和性别完全一致时,则认为认证通过;当目标用户登记的姓名和性别,与从人员数据库获取的姓名和性别中任一项不一致时,即认为认证失败,比如,对于同一个身份证号码来说,目标用户登记的姓名与从人员数据库中获取的对应的姓名不一致,和/或目标用户登记的性别与从人员数据库中获取的对应的性别不一致时,则认为认证未通过。
步骤702:当认证结果表征对目标用户的身份认证通过时,存储目标用户的身份信息至区块链网络。
在一些实施例中,当目标用户的身份信息在实名认证时通过认证时,客运管理平台可通过如下方式存储目标用户的身份信息至区块链网络:
生成用于对目标用户的身份信息进行加解密的公/私钥对;对目标用户的身份信息进行哈希变换,得到对应身份信息的摘要信息;采用生成的私钥对摘要信息进行加密,得到对应身份信息的数字签名信息;存储所述数字签名信息至区块链网络,并发送私钥至目标用户对应的第一终端。
在实际应用中,客运管理平台从认证中心进行登记得到注册获取数字证书,从数字证书中提取用于对出行者的身份信息进行加解密的公/私钥对,客运管理平台采用摘要算法对目标用户的身份信息进行处理,得到身份信息的摘要信息,其中,摘要算法包括安全哈希算法(SHA,Secure Hash Algorithm);SHA是一个Hash函数族,例如SHA-224、SHA-256、SHA-384和SHA-512算法。
在一些实施例中,客运管理平台对目标用户的身份信息进行哈希变换,得到对应身份信息的摘要信息,采用提取的私钥对得到的摘要信息进行加密,得到对应身份信息的数字签名信息,并将得到的数字签名信息及提取的公钥存储至区块链网络。
在实际实施时,客运管理平台生成用于存储目标用户的身份信息及数字签名信息的交易,提交所述交易至区块链网络的节点,以使区块链网络的节点对所述交易共识后存储身份信息及数字签名信息至区块链网络。
具体来说,客运管理平台根据目标用户的身份信息的存储请求生成对应的存储操作的交易,在交易中指定了实现存储操作需要调用的智能合约、以及向智能合约传递的参数,交易还携带了客运管理平台签署的数字签名信息,并将交易广播到区块链网络,将生成的新区块添加到用于存储目标用户的身份信息的区块链的尾部。
在一些实施例中,客运管理平台还可通过如下方式对目标用户的身份信息进行更新:
接收第一终端发送的携带私钥的更新请求;解析更新请求,得到对应的目标用户的待更新用户信息;采用私钥对待更新用户信息进行加密;存储加密后的待更新用户信息至区块链网络,以更新目标用户的身份信息。
在实际实施时,当目标用户的身份信息需要更新时,如电话号码的更改,目标用户通过归属于客运管理平台的终端或小程序的图形界面输入针对身份信息的更新请求,客运管理平台解析对应的更新请求,得到更新请求携带的待更新用户信息,对待更新用户信息进行哈希变换,得到对应待更新用户信息的摘要信息,并使用客运管理平台的私钥对待更新用户信息的摘要信息进行加密,得到对应的数字签名信息。
客运管理平台根据目标用户的身份信息的更新请求生成对应的更新操作的交易,在交易中指定了实现更新操作需要调用的智能合约、以及向智能合约传递的参数,交易还携带了客运管理平台签署的对应待更新用户信息的数字签名信息,并将交易广播到区块链网络,更新区块链网络中存储的目标用户的身份信息。
在一些实施例中,在将数字签名信息存储至区块链网络之前,所述方法还包括:针对客运管理平台向区块链网络请求接入权限,接收区块链网络对客运管理平台分配的数字证书,数字证书用于针对输入的身份信息的数字签名信息以向区块链声明客运管理平台的身份信息。
示例性地,当区块链网络在接收到客运管理平台发送的目标用户的身份信息后,区块链网络的验证模块将对身份信息中携带的数字签名信息进行验证,确认客运管理平台是否具有接入区块链网络的权限,当验证成功后,才将目标用户的身份信息保存在区块链网络中。当验证失败时,向客运管理平台返回拒绝消息(例如:缺少权限)。
需要说明的是,客运管理平台可以根据实际情况决定是否将目标用户的身份信息(原始数据)直接保存在区块链网络中,还是将目标用户的身份信息的摘要信息(即哈希值)存储在区块链网络中,本发明实施例在此不作具体限定。例如,可以根据目标用户的身份信息的数据量是否较大进行判断,当目标用户的身份信息的数据量大于数据量阈值时,将目标用户的身份信息对应的哈希值保存在区块链网络中;当目标用户的身份信息的数据量小于数据量阈值时,直接将目标用户的身份信息保存在区块链网络中。
步骤703:接收携带目标用户的待验证身份信息的票务核验请求。
在一些实施例中,在执行步骤703之前,所述方法还包括:
基于目标用户的身份信息,生成对应目标用户的第二身份标识;发送第二身份标识至目标用户对应的第一终端。
在实际应用中,当目标用户(出行者)通过终端登录客运管理平台完成实名认证之后,客运管理平台会生成对应目标用户的第二身份标识,并将第二身份标识发送给第一终端供目标用户购票使用,其中,第二身份标识区别于目标用户的第一身份标识(比如,身份证号码)。
在一些实施例中,客运管理平台可通过如下方式满足目标用户购票需求:
接收第一终端发送的携带第二身份标识的购票请求;基于购票请求,生成对应的票务信息及对应票务信息的图形码;发送票务信息及图形码至第一终端。
在实际实施时,当目标用户出行办理车票等业务时,通过第一终端(如手机客户端或小程序)登录客运管理平台,提交第二身份标识和票务信息,其中,票务信息包括:出发时间、起始地、目的地、达到时间等。客运管理平台接收第一终端发送的购票请求,解析购票请求,得到目标用户的第二身份标识和票务信息,生成对应的车票订单信息和对应的图形码信息,并将生成的车票订单信息和对应的图形码信息发送给第一终端供目标用户进站检票时出示给客运工作人员。
参见图9,图9为本发明实施例提供的展示图形码的界面示意图,目标用户进站检票时,只需要展示该图形码给客运工作人员以完成票务核验。这里,图形码可为二维码、条形码或其他识别码,由客运管理平台经过加密技术处理之后返回的一串加密的数据,如此,能够保护出行者的安全和隐私不被泄露。
在一些实施例中,客运管理平台可通过如下方式接收携带目标用户的待验证身份信息的票务核验请求:
当图形码获得第二终端的扫描操作时,接收第二终端发送的携带待验证身份信息的票务核验请求,其中,待验证身份信息为第二终端通过扫描图形码而得到。
在实际应用中,当目标用户进站检票时,通过第一终端展示用于核验目标用户身份信息的图形码给客运工作人员,客运工作人员通过第二终端扫描该图形码,会触发第二终端生成相应的票务核验请求,第二终端将该票务核验请求发送至客运管理平台,相应地,客运管理平台接收到第二终端发送的票务核验请求。
步骤704:通过区块链网络,基于目标用户的身份信息对待验证身份信息进行校验,得到校验结果。
在一些实施例中,客运管理平台可通过如下方式对目标用户的待验证身份信息进行校验:
生成用于校验待验证身份信息的交易;提交所述交易至区块链网络的节点,以使所述节点基于存储的目标用户的身份信息及待验证身份信息,得到校验结果。
在实际实施时,客运管理平台根据接收到的票务核验请求生成对应的核验操作的交易,在交易中指定了实现核验操作需要调用的智能合约、以及向智能合约传递的参数,交易还携带了客运管理平台签署的数字签名,并将交易广播到区块链网络,区块链网络从接收到的交易中提取待验证身份信息,并将提取的待验证身份信息与存储在区块链网络中目标用户的身份信息进行比对,得到校验结果,并将得到的校验结果发送给客运管理平台;当区块链网络中存储的目标用户的身份信息为加密之后的摘要信息时,区块链网络利用公私对加密后的摘要信息进行解密,得到存储的未加密的摘要信息值,并与待验证身份信息的摘要值进行比对,得到校验结果。
参见图10,图10为本发明实施例提供的区块链校验身份信息的界面示意图,从图10中可知待校验的身份信息所处的区块链网络中的节点Id、节点状态、区块创建时间及交易信息等,当区块链网络中的节点无法达到共识时,提示节点状态异常,则待校验的身份信息与区块链中存储的用户身份信息不一致,提示校验失败。
步骤705:基于所述校验结果,返回相应的票务核验结果。
在实际实施时,客运管理平台将接收到的票务核验结果发送给第二终端供客运工作人员对目标用户的身份进行核对,当票务核验结果表征图形码中的待验证身份信息与存储在区块链网络中目标用户的身份信息相同时,则说明目标用户的身份信息与图形码携带的身份信息保持一致,即“票证合一”,提示校验通过,客运工作人员准许目标用户进站上车;当票务核验结果表征图形码中的待验证身份信息与存储在区块链网络中目标用户的身份信息不一致时,则说明图形码携带的身份信息并不是目标用户本人,即“票证不合一”,提示核验失败,客运工作人员拒绝目标用户进站上车。
在实际应用中,为了保护目标用户身份信息的隐私和安全,当第三终端需要访问目标用户的身份信息时,只能在目标用户的授权下才能执行,在一些实施例中,所述方法还包括:
响应于第三终端发送的针对目标用户的身份信息的访问请求,生成用于对第三终端进行授权验证的授权请求;发送授权请求至目标用户对应的第一终端,以使第一终端基于授权请求,对第三终端进行授权验证,并返回验证结果;当验证结果表征第三终端获得授权时,获取目标用户的身份信息;发送获取的目标用户的身份信息至所述第三终端。
这里,第三终端可以为外部服务方,比如:监管部门和服务平台等,在实际实施时,第三终端需要通过客运管理平台访问目标用户的身份信息时,发送针对目标用户的身份信息的访问请求至客运管理平台,其中,访问请求携带有第三终端的身份信息,比如:机构名称、访问目的等,客运管理平台基于第三终端发送的访问请求,生成携带有第三终端的身份信息的授权请求,并将生成的授权请求发送至第一终端,以请求第一终端对第三终端的访问请求进行授权。
在实际应用中,第一终端基于接收到的授权请求呈现对应的授权信息,以使第一终端的用户根据授权信息决定是否授权第三终端访问其身份信息。若第一终端的用户同意第三终端访问其身份信息时,第一终端的用户可通过在第一终端呈现的图形界面上执行相应的点击操作,以触发授权指令。
示例性地,参见图11,图11为本发明实施例提供的呈现授权信息的界面示意图,如图11所示,第一终端的显示界面上呈现“客运监管中心请求访问您的身份信息,以进行XXX”的提示信息,并呈现“同意”及“拒绝”的按键,以使第一终端的用户A能够通过点击“同意”触发授权指令。
当第一终端的用户授权第三终端访问其身份信息时,客运管理平台可获取本地存储的目标用户的身份信息,也可从区块链网络中获取目标用户的身份信息,并将获取的身份信息发送给第三终端供第三终端使用。
通过将目标用户的身份信息存储至区块链网络,并基于票务核验请求在区块链网络中实现对目标用户身份信息的校验,如此,实现对目标用户的身份信息的链上校验,并不需要用户出示原始身份信息,简化了票务核验的流程,避免核验繁琐,并且外部服务方需要经过目标用户的授权才能访问目标用户的身份信息,进一步为目标用户提供了更好的隐私保护。
继续对本发明实施例提供的基于区块链的票务管理方法进行说明,图12为本发明实施例提供的基于区块链的票务管理方法流程示意图,由票务管理平台及区块链网络执行。
步骤1201:客运管理平台响应于携带目标用户的身份信息的注册请求,存储目标用户的身份信息,及确定目标用户的第一身份标识。
在实际应用中,目标用户通过归属于客运管理平台的终端(比如手机、笔记本电脑等)上的客户端或小程序的显示界面,提交携带个人身份信息注册请求至客运管理平台,客运管理平台接收到用户提交的身份信息的注册请求后,解析接收的注册请求,获得注册请求中携带的目标用户的第一身份标识信息,并将目标用户的身份信息存储至本地数据库中。
步骤1202:客运管理平台基于目标用户的第一身份标识对目标用户进行身份认证,得到认证结果。
在实际实施时,客运管理平台可将目标用户的身份信息及第一身份标识信息发送至认证机构,认证机构基于目标用户的第一身份标识从人员数据库中获取相应的用户身份信息,并将目标用户的身份信息与从人员数据库中获取的用户身份信息进行比对,得到表征用户身份认证是否通过的认证结果。
步骤1203:客运管理平台获取身份信息的第二身份标识及公/私钥对。
这里,当认证结果表征对出行者的身份认证通过时,第二身份标识是客运管理平台基于出行者的身份信息生成的,可作为购票时的身份凭证,区别于出行者的第一身份标识(比如,身份证号码)。
客运管理平台从认证中心进行登记得到注册获取数字证书,从数字证书中提取用于对出行者的身份信息进行加解密的公/私钥对。
步骤1204:客运管理平台对目标用户的身份信息进行哈希变换,得到对应身份信息的摘要信息。
步骤1205:客运管理平台发送目标用户的摘要信息及公钥至区块链网络。
这里,客运管理平台还可采用私钥对摘要信息进行加密,得到对应身份信息的数字签名信息,并将摘要信息及数字签名信息发送至区块链网络。
需要说明的是,客运管理平台可以根据实际情况决定是否将目标用户的身份信息(原始数据)直接保存在区块链网络中,还是将目标用户的身份信息的摘要信息(即哈希值)存储在区块链网络中,本发明实施例在此不作具体限定。
步骤1206:区块链网络对摘要信息中携带的数字签名进行验证,得到验证结果。
在一些实施例中,针对客运管理平台向区块链网络请求接入权限,接收区块链网络针对客运管理平台分配的数字证书,数字证书用于针对输入的第一档案信息签署数字签名以向区块链网络声明客运管理平台的身份信息。
步骤1207:验证成功后,区块链网络存储摘要信息及公钥。
在实际实施时,客运管理平台生成用于存储目标用户的摘要信息及公钥的交易,提交所述交易至区块链网络的节点,以使区块链网络的节点对所述交易共识后存储摘要信息及公钥至区块链网络。
步骤1208:客运管理平台发送第二身份标识及私钥至第一终端。
这里,客运管理平台将第二身份标识发送给第一终端供目标用户购票使用,私钥由用户进行保管,如此,用户通过私钥可以对自身存储在区块链上的摘要信息进行更改。
步骤1209:客运管理平台响应于第一终端发送的携带第二身份标识的购票请求,生成对应的票务信息及对应票务信息的图形码。
在实际应用中,当目标用户出行办理车票等业务时,通过第一终端发送携带第二身份标识及所购票务信息的购票请求至客运管理平台,客运管理平台接收第一终端发送的购票请求,解析购票请求,得到目标用户的第二身份标识和票务信息,并生成对应的车票订单信息和对应的图形码信息。
这里,图形码可为二维码、条形码或其他识别码,由客运管理平台经过加密技术处理之后返回的一串加密的数据,如此,能够保护出行者的安全和隐私不被泄露。
步骤1210:客运管理平台发送生成的票务信息及对应票务信息的图形码至第一终端。
步骤1211:第一终端呈现图形码给客运工作人员。
步骤1212:响应于对第一终端展示的图形码的扫描操作,第二终端生成携带待验证身份信息的票务核验请求。
在实际应用中,当目标用户需要进站检票时,通过第一终端展示用于核验目标用户身份信息的图形码给客运工作人员,客运工作人员通过第二终端扫描该图形码,会触发第二终端生成相应的票务核验请求。
步骤1213:第二终端将票务核验请求发送至客运管理平台。
步骤1214:客运管理平台基于票务核验请求,生成用于校验待验证身份信息的交易。
步骤1215:客运管理平台发送用于校验待验证身份信息的交易至区块链网络。
在实际实施时,客运管理平台根据接收到的票务核验请求生成对应的核验操作的交易,在交易中指定了实现核验操作需要调用的智能合约、以及向智能合约传递的参数,交易还携带了客运管理平台签署的数字签名,并将交易广播到区块链网络。
步骤1216:区块链网络基于存储的目标用户的身份信息及待验证身份信息,得到校验结果。
这里,区块链网络从接收到的交易中提取待验证身份信息,并将提取的待验证身份信息与存储在区块链网络中目标用户的身份信息进行比对,得到校验结果。
步骤1217:区块链网络将校验结果发送至客运管理平台。
步骤1218:客运管理平台基于校验结果返回相应的票务核验结果至第二终端。
至此,客运工作人员可基于客运管理平台返回的票务核验结果对目标用户的身份进行核对。
步骤1219:客运管理平台响应于第三终端发送的针对目标用户的身份信息的访问请求,生成用于对第三终端进行授权验证的授权请求。
步骤1220:客运管理平台发送授权请求至第一终端。
在实际应用中,为了保护目标用户身份信息的隐私和安全,当第三终端需要访问目标用户的身份信息时,只能在目标用户的授权下才能执行。
步骤1221:第一终端基于授权请求对第三终端进行授权验证,得到验证结果。
步骤1222:第一终端发送验证结果至客运管理平台。
步骤1223:当验证结果表征第三终端获得授权时,客运管理平台生成获取目标用户的身份信息的交易。
步骤1224:客运管理平台发送所述交易至区块链网络。
步骤1225:区块链网络基于所述交易获取目标用户的身份信息。
步骤1226:区块链网络将目标用户的身份信息发送至客运管理平台。
步骤1227:客运管理平台发送目标用户的身份信息至第三终端
至此,外部服务方需要经过目标用户的授权才能访问目标用户的身份信息,进一步为目标用户提供了更好的隐私保护。
下面,将说明本发明实施例在一个实际的应用场景中的示例性应用。
本发明实施例提供的基于区块链的票务管理方法,可以由客运管理平台、区块链网络、目标用户侧的第一终端及客运工作人员侧的第二终端协同执行,在实际实施时,涉及产品侧和技术侧:
1)产品侧;
在实际应用中,目标用户(即出行者)可以通过手机客户端或小程序,提交注册个人身份信息并进行实名认证,当实名认证通过之后,客运管理平台能够获取目标用户的身份信息,包括:身份证图像、姓名、出生日期、地址、生物特征等信息,可根据实际情况将目标用户的身份信息保存在客运管理平台的本地数据库中或区块链上,当目标用户的身份信息的数据量比较大时,也可只将对应身份信息的摘要信息存储在区块链上。
具体来说,客运管理平台可通过如下方式存储目标用户的身份信息至区块链网络:生成用于对目标用户的身份信息进行加解密的公/私钥对;对目标用户的身份信息进行哈希变换,得到对应身份信息的摘要信息;采用生成的私钥对得到的摘要信息进行加密,得到对应身份信息的数字签名信息,并将得到的数字签名信息及生成的公钥存储至区块链网络,同时发送私钥至第一终端供目标用户保管,然后进行购票,当需要对目标用户的身份进行校验时,利用区块链的零知识证明等技术,目标用户只需要将身份信息的摘要信息以及链上公钥地址等提供小程序或手机客户端上的图形码示出给客运工作人员,客运工作人员利用第二终端对图形码进行扫描操作,与区块链网络中存储的目标用户的身份信息进行比对,即可验证目标用户的身份是否真实准确,同时,目标用户还可通过私钥对已存储在区块链上的摘要信息进行更改。
通过上述方式,通过将身份信息的摘要信息存储在区块链网络中,能够实现对目标用户身份信息的本地保存与链上校验,并不需要出示目标用户的原始身份证信息如身份证,从而为用户提供更好的隐私保护;并且,利用区块链作为自动化访问控制管理器,确保目标用户能够拥有并控制个人的隐私数据、用户数据,实现本地保存并对区块链上所存储的数据进行加密,外部服务方需要访问用户数据时,只能在用户授权执行,通过数据量获得摘要信息,而不是明文信息,实现一事一授权。
由于整个客运管理系统需要多个部门(如,客运部门、监管部门、服务平台、出行者等)的共同参与,鉴于区块链的去中心化的特性,将区块链技术应用到客运管理系统中,可以将客运路线进行更合理的规划,使车辆和道路资源得到充分利用,进而发挥更大的营运潜力。
2)技术侧;
参见图13,图13为本发明实施例提供的基于区块链的票务管理方法的流程示意图,包括:
步骤1301:出行者通过第一终端上的客户端或小程序的显示界面,提交携带个人身份信息的注册请求至客运管理平台。
在实际应用中,出行者通过归属于客运管理平台的第一终端(比如手机、笔记本电脑等)上的客户端或小程序的显示界面,提交携带个人身份信息注册请求至客运管理平台,以完成个人身份信息的登记。
步骤1302:客运管理平台基于注册请求,对出行者进行身份认证,得到认证结果。
这里,注册请求中携带有个人身份信息,客运管理平台解析接收到的注册请求,提取出行者的第一身份标识,其中,第一身份标识是指示出行者唯一身份的标识,比如,身份证号码。客运管理平台基于出行者的第一身份标识对出行者进行身份认证。
步骤1303:客运管理平台获取身份信息的第二身份标识及公/私钥对。
这里,当认证结果表征对出行者的身份认证通过时,第二身份标识是客运管理平台基于出行者的身份信息生成的,可作为购票时的身份凭证,区别于出行者的第一身份标识(比如,身份证号码)。
客运管理平台从认证中心进行登记得到注册获取数字证书,从数字证书中提取用于对出行者的身份信息进行加解密的公/私钥对。
步骤1304:客运管理平台对出行者的身份信息进行哈希变换,得到对应身份信息的摘要信息。
步骤1305:客运管理平台发送目标用户的摘要信息及公钥至区块链网络。
步骤1306:区块链网络存储接收到的摘要信息及公钥。
这里,客运管理平台将出行者的身份信息存储在本地数据库中,将摘要信息存储在区块链网络冲,能够实现对出行者身份信息的本地存储与链上校验。
步骤1307:客运管理平台发送第二身份标识及私钥至第一终端。
步骤1308:客运管理平台响应于第一终端发送的携带第二身份标识的购票请求,生成对应的票务信息及对应票务信息的图形码。
在实际应用中,当出行者出行办理车票等业务时,通过第一终端发送携带第二身份标识及所购票务信息的购票请求至客运管理平台,客运管理平台接收第一终端发送的购票请求,解析购票请求,得到出行者的第二身份标识和票务信息,并生成对应的车票订单信息和对应的图形码信息。
其中,票务信息包括:出发时间、起始地、目的地、达到时间等,图形码可为二维码、条形码或其他识别码,由客运管理平台经过加密技术处理之后返回的一串加密的数据,如此,能够保护出行者的安全和隐私不被泄露。
步骤1309:客运管理平台发送生成的票务信息及对应票务信息的图形码至第一终端。
步骤1310:第一终端呈现图形码给客运工作人员。
步骤1311:响应于对第一终端展示的图形码的扫描操作,第二终端生成携带待验证身份信息的票务核验请求。
在实际应用中,当出行者需要进站检票时,通过第一终端展示用于核验目标用户身份信息的图形码给客运工作人员,客运工作人员通过第二终端扫描该图形码,会触发第二终端生成相应的票务核验请求。
步骤1312:第二终端将票务核验请求发送至客运管理平台。
步骤1313:客运管理平台基于票务核验请求,生成用于校验待验证身份信息的交易。
步骤1314:客运管理平台发送用于校验待验证身份信息的交易至区块链网络。
步骤1315:区块链网络基于存储的出行者的身份信息及待验证身份信息,得到校验结果。
这里,区块链网络从接收到的交易中提取待验证身份信息,并将提取的待验证身份信息与存储在区块链网络中出行者的身份信息进行比对,得到校验结果。
步骤1316:区块链网络将校验结果发送至客运管理平台。
步骤1317:客运管理平台基于校验结果返回相应的票务核验结果至第二终端。
通过上述方式,客运管理平台将用户的身份信息存储至本地数据库中,将身份信息的摘要信息存储在区块链网络中,如此,能够实现对用户身份信息的本地保存与链上校验,并不需要出示用户的原始身份证信息如身份证,可以简化客运业务流程,避免验证繁琐,且提供了一个可信的平台,保证出行者身份信息真实准确,隐私得到更好的保护。
下面继续结合图6说明本发明实施例提供的基于区块链的票务管理装置355的实施为软件模块的示例性结构,在一些实施例中,如图6所示,存储在存储器350中的基于区块链的票务管理装置355,其可以是程序和插件等形式的软件,包括以下软件模块:认证模块3551、存储模块3552、接收模块3553、校验模块3554和发送模块3555。
认证模块3551,用于响应于携带目标用户的身份信息的注册请求,基于所述身份信息对所述目标用户进行身份认证,得到认证结果;
存储模块3552,用于当所述认证结果表征对所述目标用户的身份认证通过时,存储所述目标用户的身份信息至区块链网络;
接收模块3553,用于接收携带所述目标用户的待验证身份信息的票务核验请求;
校验模块3554,用于通过所述区块链网络,基于所述目标用户的身份信息对所述待验证身份信息进行校验,得到校验结果;
发送模块3555,用于基于所述校验结果,返回相应的票务核验结果。
在一些实施例中,所述认证模块,还用于确定所述目标用户的第一身份标识;
基于所述目标用户的第一身份标识,获取信息库中相应的用户身份信息;
将所述目标用户的身份信息与获取的所述用户身份信息进行比对,以对所述目标用户进行身份认证,得到认证结果。
在一些实施例中,所述存储模块,还用于生成用于对所述目标用户的身份信息进行加解密的公/私钥对;
对所述目标用户的身份信息进行哈希变换,得到对应所述身份信息的摘要信息;
采用生成的所述私钥对所述摘要信息进行加密,得到对应所述身份信息的数字签名信息;
存储所述数字签名信息至所述区块链网络,并发送所述私钥至所述目标用户对应的第一终端。
在一些实施例中,所述存储模块,还用于接收所述第一终端发送的携带所述私钥的更新请求;
解析所述更新请求,得到对应的所述目标用户的待更新用户信息;
采用所述私钥对所述待更新用户信息进行加密;
存储加密后的待更新用户信息至所述区块链网络,以更新所述目标用户的身份信息。
在一些实施例中,所述存储模块,还用于基于所述目标用户的身份信息,生成对应所述目标用户的第二身份标识;
发送所述第二身份标识至所述目标用户对应的第一终端。
在一些实施例中,所述接收模块,还用于接收所述第一终端发送的携带所述第二身份标识的购票请求;
基于所述购票请求,生成对应的票务信息及对应所述票务信息的图形码;
发送所述票务信息及所述图形码至所述第一终端。
在一些实施例中,所述接收模块,还用于当所述图形码获得第二终端的扫描操作时,接收所述第二终端发送的携带所述待验证身份信息的票务核验请求,所述待验证身份信息为所述第二终端通过扫描所述图形码而得到。
在一些实施例中,所述校验模块,还用于生成用于校验所述待验证身份信息的交易;
提交所述交易至所述区块链网络的节点,以使所述节点基于存储的所述目标用户的身份信息及待验证身份信息,得到校验结果。
在一些实施例中,所述装置还包括授权模块,
所述授权模块,用于响应于第三终端发送的针对所述目标用户的身份信息的访问请求,生成用于对所述第三终端进行授权验证的授权请求;
发送所述授权请求至所述目标用户对应的第一终端,以使所述第一终端基于所述授权请求,对所述第三终端进行授权验证,并返回验证结果;
当所述验证结果表征所述第三终端获得授权时,获取所述目标用户的身份信息;
发送获取的所述目标用户的身份信息至所述第三终端。
本发明实施例提供一种基于区块链的票务管理装置,包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现本发明实施例提供的基于区块链的票务管理方法。
本发明实施例提供一种存储介质,存储有可执行指令,用于引起处理器执行时,实现本发明实施例提供的区块链的票务管理方法。
实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、随机存取存储器(RAM,Random Access Memory)、只读存储器(ROM,Read-Only Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、RAM、ROM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本发明的保护范围之内。
Claims (8)
1.一种基于区块链的票务管理方法,其特征在于,所述方法包括:
基于目标用户的第一身份标识,获取信息库中相应的用户身份信息;
响应于携带所述目标用户的身份信息的注册请求,基于所述身份信息与所述用户身份信息进行比对,以对所述目标用户进行身份认证,得到认证结果;
当所述认证结果表征对所述目标用户的身份认证通过时,生成用于对所述目标用户的身份信息进行加解密的公/私钥对;对所述目标用户的身份信息进行哈希变换,得到对应所述身份信息的摘要信息;采用生成的所述私钥对所述摘要信息进行加密,得到对应所述身份信息的数字签名信息;存储所述数字签名信息至所述区块链网络,并发送所述私钥至所述目标用户对应的第一终端;
基于所述目标用户的身份信息,生成对应所述目标用户的第二身份标识;发送所述第二身份标识至所述第一终端,其中,所述第二身份标识区别于所述第一身份标识;
接收所述第一终端发送的携带所述第二身份标识的购票请求;基于所述购票请求,生成对应的票务信息及对应所述票务信息的图形码;发送所述票务信息及所述图形码至所述第一终端;
接收携带所述目标用户的待验证身份信息的票务核验请求;
通过所述区块链网络,基于所述目标用户的身份信息对所述待验证身份信息进行校验,得到校验结果;
基于所述校验结果,返回相应的票务核验结果。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
接收所述第一终端发送的携带所述私钥的更新请求;
解析所述更新请求,得到对应的所述目标用户的待更新用户信息;
采用所述私钥对所述待更新用户信息进行加密;
存储加密后的待更新用户信息至所述区块链网络,以更新所述目标用户的身份信息。
3.如权利要求1所述的方法,其特征在于,所述接收携带所述目标用户的待验证身份信息的票务核验请求,包括:
当所述图形码获得第二终端的扫描操作时,接收所述第二终端发送的携带所述待验证身份信息的票务核验请求,所述待验证身份信息为所述第二终端通过扫描所述图形码而得到。
4.如权利要求1所述的方法,其特征在于,所述通过所述区块链网络,基于所述目标用户的身份信息对所述待验证身份信息进行校验,得到校验结果,包括:
生成用于校验所述待验证身份信息的交易;
提交所述交易至所述区块链网络的节点,以使所述节点基于存储的所述目标用户的身份信息及待验证身份信息,得到校验结果。
5.如权利要求1-4任一项所述的方法,其特征在于,所述方法还包括:
响应于第三终端发送的针对所述目标用户的身份信息的访问请求,生成用于对所述第三终端进行授权验证的授权请求;
发送所述授权请求至所述目标用户对应的第一终端,以使所述第一终端基于所述授权请求,对所述第三终端进行授权验证,并返回验证结果;
当所述验证结果表征所述第三终端获得授权时,获取所述目标用户的身份信息;
发送获取的所述目标用户的身份信息至所述第三终端。
6.一种基于区块链的票务管理装置,其特征在于,所述装置包括:
认证模块,用于基于目标用户的第一身份标识,获取信息库中相应的用户身份信息;响应于携带所述目标用户的身份信息的注册请求,基于所述身份信息与所述用户身份信息进行比对,以对所述目标用户进行身份认证,得到认证结果;
存储模块,用于当所述认证结果表征对所述目标用户的身份认证通过时,生成用于对所述目标用户的身份信息进行加解密的公/私钥对;对所述目标用户的身份信息进行哈希变换,得到对应所述身份信息的摘要信息;采用生成的所述私钥对所述摘要信息进行加密,得到对应所述身份信息的数字签名信息;存储所述数字签名信息至所述区块链网络,并发送所述私钥至所述目标用户对应的第一终端;
接收模块,用于基于所述目标用户的身份信息,生成对应所述目标用户的第二身份标识;发送所述第二身份标识至所述第一终端,其中,所述第二身份标识区别于所述第一身份标识;接收所述第一终端发送的携带所述第二身份标识的购票请求;基于所述购票请求,生成对应的票务信息及对应所述票务信息的图形码;发送所述票务信息及所述图形码至所述第一终端;接收携带所述目标用户的待验证身份信息的票务核验请求;
校验模块,用于通过所述区块链网络,基于所述目标用户的身份信息对所述待验证身份信息进行校验,得到校验结果;
发送模块,用于基于所述校验结果,返回相应的票务核验结果。
7.一种计算机可读存储介质,其特征在于,存储有可执行指令,所述可执行指令被执行时,用于实现权利要求1-5任一项所述的基于区块链的票务管理方法。
8.一种基于区块链的票务管理装置,其特征在于,包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现权利要求1-5任一项所述的基于区块链的票务管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910844328.4A CN110555029B (zh) | 2019-09-06 | 2019-09-06 | 基于区块链的票务管理方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910844328.4A CN110555029B (zh) | 2019-09-06 | 2019-09-06 | 基于区块链的票务管理方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110555029A CN110555029A (zh) | 2019-12-10 |
CN110555029B true CN110555029B (zh) | 2024-05-14 |
Family
ID=68739573
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910844328.4A Active CN110555029B (zh) | 2019-09-06 | 2019-09-06 | 基于区块链的票务管理方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110555029B (zh) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111131269A (zh) * | 2019-12-27 | 2020-05-08 | 中国银行股份有限公司 | 基于区块链的用户信息验证方法及装置 |
CN111385755B (zh) * | 2020-03-18 | 2021-12-03 | 成都西加云杉科技有限公司 | 一种带宽资源共享方法、装置、设备及可读存储介质 |
CN111541671A (zh) * | 2020-04-16 | 2020-08-14 | 北京海益同展信息科技有限公司 | 人员信息存储、验证方法、系统及存储介质 |
CN111553691A (zh) * | 2020-05-21 | 2020-08-18 | 陈议尊 | 一种纯去中心化区块链方法及系统 |
CN111897826A (zh) * | 2020-06-27 | 2020-11-06 | 中国建设银行股份有限公司 | 参数信息更新方法、装置、电子设备及可读存储介质 |
CN111832001B (zh) * | 2020-07-20 | 2024-05-24 | 国家信息中心 | 基于区块链的身份管理方法及身份管理系统 |
CN112148379B (zh) * | 2020-08-28 | 2023-07-07 | 迅鳐成都科技有限公司 | 一种联盟链的用户合约卸载方法、装置、系统及存储介质 |
CN112953888B (zh) * | 2020-12-29 | 2023-10-31 | 合肥达朴汇联科技有限公司 | 应用于区块链客户端的区块链匿名用户审计方法、系统 |
CN113010600B (zh) * | 2021-02-02 | 2023-01-31 | 腾讯科技(深圳)有限公司 | 一种基于区块链的数据管理系统、方法、相关设备及介质 |
CN113221165B (zh) * | 2021-05-11 | 2022-04-22 | 支付宝(杭州)信息技术有限公司 | 一种基于区块链的用户要素认证方法及装置 |
CN113487321A (zh) * | 2021-07-06 | 2021-10-08 | 域世安(北京)科技有限公司 | 基于区块链钱包的身份识别与验证方法及系统 |
CN113660089B (zh) * | 2021-07-14 | 2024-02-06 | 方欣科技有限公司 | 一种基于区块链的纳税用户身份认证方法及装置 |
CN113765674B (zh) * | 2021-09-02 | 2024-02-09 | 杭州溪塔科技有限公司 | 一种基于区块链的跨平台注册方法及装置 |
CN114978529A (zh) * | 2022-05-10 | 2022-08-30 | 平安国际智慧城市科技股份有限公司 | 基于区块链的身份核验方法及相关设备 |
CN114780985B (zh) * | 2022-06-21 | 2022-10-11 | 湖南惟楚有才教育科技有限公司 | 一种区块链网络中的学生身份信息处理方法及系统 |
CN115484065A (zh) * | 2022-08-18 | 2022-12-16 | 蚂蚁区块链科技(上海)有限公司 | 一种基于区块链的身份核验方法、装置及设备 |
CN115796903B (zh) * | 2023-02-07 | 2023-12-26 | 中国民航信息网络股份有限公司 | 一种基于区块链的机票处理方法、装置及平台 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101377837A (zh) * | 2007-08-29 | 2009-03-04 | 北京方维银通科技有限公司 | 电子支票二维码凭证的生成及验证方法 |
CN106788972A (zh) * | 2016-12-16 | 2017-05-31 | 成都理工大学 | 一种基于区块链身份认证的火车票自助购票取票系统 |
TW201741955A (zh) * | 2016-05-18 | 2017-12-01 | 碩網資訊股份有限公司 | 使用區塊鏈之電子票務系統及其方法 |
CN109255084A (zh) * | 2018-08-28 | 2019-01-22 | 腾讯科技(深圳)有限公司 | 电子票据查询方法、装置、存储介质和计算机设备 |
CN109359444A (zh) * | 2018-09-13 | 2019-02-19 | 全链通有限公司 | 现场身份验证方法、装置及系统 |
-
2019
- 2019-09-06 CN CN201910844328.4A patent/CN110555029B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101377837A (zh) * | 2007-08-29 | 2009-03-04 | 北京方维银通科技有限公司 | 电子支票二维码凭证的生成及验证方法 |
TW201741955A (zh) * | 2016-05-18 | 2017-12-01 | 碩網資訊股份有限公司 | 使用區塊鏈之電子票務系統及其方法 |
CN106788972A (zh) * | 2016-12-16 | 2017-05-31 | 成都理工大学 | 一种基于区块链身份认证的火车票自助购票取票系统 |
CN109255084A (zh) * | 2018-08-28 | 2019-01-22 | 腾讯科技(深圳)有限公司 | 电子票据查询方法、装置、存储介质和计算机设备 |
CN109359444A (zh) * | 2018-09-13 | 2019-02-19 | 全链通有限公司 | 现场身份验证方法、装置及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110555029A (zh) | 2019-12-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110555029B (zh) | 基于区块链的票务管理方法、装置及存储介质 | |
CN110493007B (zh) | 一种基于区块链的信息验证方法、装置、设备及存储介质 | |
US20210028945A1 (en) | Dynamically managing exchanges of data using a distributed ledger and homomorphic commitments | |
US10764752B1 (en) | Secure mobile initiated authentication | |
US10554420B2 (en) | Wireless connections to a wireless access point | |
CN107231351B (zh) | 电子证件的管理方法及相关设备 | |
CN110958118B (zh) | 证书认证管理方法、装置、设备及计算机可读存储介质 | |
CN109274652B (zh) | 身份信息验证系统、方法及装置及计算机存储介质 | |
US10250613B2 (en) | Data access method based on cloud computing platform, and user terminal | |
WO2018115567A1 (en) | Method and apparatus for private data transfer between parties | |
CN112804354B (zh) | 跨链进行数据传输的方法、装置、计算机设备和存储介质 | |
TWI797738B (zh) | 資料獲取方法、裝置、設備和介質 | |
US20210152366A1 (en) | Verification and encryption scheme in data storage | |
WO2021204273A1 (zh) | 资产类型注册、交易记录验证 | |
CN112199721A (zh) | 认证信息处理方法、装置、设备及存储介质 | |
CN111651794A (zh) | 基于联盟链的电子数据管理方法、装置和存储介质 | |
CN112804217B (zh) | 一种基于区块链技术的存证方法和装置 | |
US20160063280A1 (en) | Secure access for sensitive digital information | |
US11356243B2 (en) | Information management system with blockchain authentication | |
CN111460457A (zh) | 不动产权登记监管方法、装置、电子设备及存储介质 | |
CN114513373B (zh) | 可信数据交换方法、装置、系统、电子设备和存储介质 | |
CN112632573A (zh) | 智能合约执行方法、装置、系统、存储介质及电子设备 | |
CN112446050B (zh) | 应用于区块链系统的业务数据处理方法及装置 | |
CN114143312A (zh) | 基于区块链的边缘计算终端认证方法、系统及设备 | |
CN115022039B (zh) | 信息处理方法、装置、设备和存储介质 |
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 |