CN111008718B - 基于区块链的酒店管理方法、装置、终端及存储介质 - Google Patents
基于区块链的酒店管理方法、装置、终端及存储介质 Download PDFInfo
- Publication number
- CN111008718B CN111008718B CN201911191986.4A CN201911191986A CN111008718B CN 111008718 B CN111008718 B CN 111008718B CN 201911191986 A CN201911191986 A CN 201911191986A CN 111008718 B CN111008718 B CN 111008718B
- Authority
- CN
- China
- Prior art keywords
- user
- information
- check
- request
- node
- 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 79
- 238000000034 method Methods 0.000 claims description 51
- 238000012545 processing Methods 0.000 claims description 24
- 238000000137 annealing Methods 0.000 claims description 23
- 238000004364 calculation method Methods 0.000 claims description 21
- 238000012795 verification Methods 0.000 claims description 20
- 230000010365 information processing Effects 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 13
- 238000012790 confirmation Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000001816 cooling Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000001815 facial effect Effects 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 210000001747 pupil Anatomy 0.000 description 1
- 238000010200 validation analysis 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
- G06Q10/00—Administration; Management
- G06Q10/02—Reservations, e.g. for tickets, services or events
-
- 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
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/12—Hotels or restaurants
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Tourism & Hospitality (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Economics (AREA)
- General Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Primary Health Care (AREA)
- Computing Systems (AREA)
- Development Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Data Mining & Analysis (AREA)
- Bioethics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请实施例公开了一种基于区块链的酒店管理方法、装置、终端及存储介质,该方法包括:获取第一用户节点发送的酒店预订请求,若确定酒店预订请求为合法请求,则基于酒店预订请求和第一签名信息生成订单信息,并将包含订单信息的预订信息区块添加至区块链。获取第二用户节点发送的入住办理请求,基于第二用户公钥对入住办理请求携带的第二签名信息进行解密得到第三哈希值,从预订信息区块中获取第二用户信息和预订详情信息以生成第四哈希值,若第三哈希值与第四哈希值相同,则生成入住信息,并将包含入住信息的入住信息区块添加至区块链中。采用本申请实施例,可提高酒店管理效率,规范酒店多人房的入住流程,加强酒店入住安全性。
Description
技术领域
本申请涉及区块链技术领域,尤其涉及一种基于区块链的酒店管理方法、装置、终端及存储介质。
背景技术
目前,酒店的入住流程通常为客人到达酒店后通过前台办理手续,身份证信息登记,订单号核对,房卡下发客人,客人在固定的时间段内入住,通过房卡给房屋进行供电,客人离开后,持有房卡去前台办理退房手续等,其中入住和退房的办理都需要依赖酒店前台的客服人员,酒店管理效率低。且由于酒店管理制度参差不齐,针对多人房型的入住管理,通常只要第一个到达酒店的客人在酒店前台办理手续后即可入住,使多人房的管理混乱,酒店入住安全性得不到保障。
发明内容
本申请实施例提供一种基于区块链的酒店管理方法、装置、终端及存储介质,可提高酒店管理效率,规范酒店多人房的入住流程,加强酒店入住安全性。
第一方面,本申请实施例提供了一种基于区块链的酒店管理方法,该方法包括:
获取第一用户对应的第一用户节点发送的酒店预订请求,所述酒店预订请求携带所述第一用户节点对所述酒店预订请求的第一签名信息,所述酒店预订请求中包括第一用户信息、第二用户信息、预订详情信息;
获取所述第一用户对应的第一用户公钥,根据所述第一用户公钥对所述第一签名信息进行解密以得到第一哈希值,基于所述第一用户信息、所述第二用户信息、所述预订详情信息生成第二哈希值,若所述第一哈希值与所述第二哈希值相同,则确定所述酒店预订请求为合法请求;
基于所述酒店预订请求和所述第一签名信息生成订单信息,将所述订单信息发送至区块链网络中的共识节点,以使所述共识节点对所述订单信息进行合法性校验以得到第一校验结果,根据接收到的所述共识节点返回的第一校验结果确定对所述订单信息的第一共识结果,若所述第一共识结果为达成共识,则将包含所述订单信息的预订信息区块添加至区块链中;
获取第二用户对应的第二用户节点发送的入住办理请求,所述入住办理请求携带所述第二用户节点对所述入住办理请求的第二签名信息,获取所述第二用户对应的第二用户公钥,根据所述第二用户公钥对所述第二签名信息进行解密以得到第三哈希值;
基于所述入住办理请求中包括的预订时间以及房间号从所述区块链中获取所述预订信息区块,从所述预订信息区块中获取所述第二用户信息和所述预订详情信息以生成第四哈希值,若所述第三哈希值与所述第四哈希值相同,则确定所述第二用户具备入住权限,基于所述入住办理请求和所述第二签名信息生成入住信息,并将包含所述入住信息的入住信息区块添加至所述区块链中,其中所述预订详情信息包括所述预订时间和所述房间号。
第二方面,本申请实施例提供了一种基于区块链的酒店管理装置,该装置包括:
预订请求获取模块,用于获取第一用户对应的第一用户节点发送的酒店预订请求,所述酒店预订请求携带所述第一用户节点对所述酒店预订请求的第一签名信息,所述酒店预订请求中包括第一用户信息、第二用户信息、预订详情信息;
预订请求校验模块,用于获取所述第一用户对应的第一用户公钥,根据所述第一用户公钥对所述第一签名信息进行解密以得到第一哈希值,基于所述第一用户信息、所述第二用户信息、所述预订详情信息生成第二哈希值,若所述第一哈希值与所述第二哈希值相同,则确定所述酒店预订请求为合法请求;
订单信息处理模块,用于基于所述酒店预订请求和所述第一签名信息生成订单信息,将所述订单信息发送至区块链网络中的共识节点,以使所述共识节点对所述订单信息进行合法性校验以得到第一校验结果,根据接收到的所述共识节点返回的第一校验结果确定对所述订单信息的第一共识结果,若所述第一共识结果为达成共识,则将包含所述订单信息的预订信息区块添加至区块链中;
入住请求获取模块,用于获取第二用户对应的第二用户节点发送的入住办理请求,所述入住办理请求携带所述第二用户节点对所述入住办理请求的第二签名信息,获取所述第二用户对应的第二用户公钥,根据所述第二用户公钥对所述第二签名信息进行解密以得到第三哈希值;
入住信息处理模块,用于基于所述入住办理请求中包括的预订时间以及房间号从所述区块链中获取所述预订信息区块,从所述预订信息区块中获取所述第二用户信息和所述预订详情信息以生成第四哈希值,若所述第三哈希值与所述第四哈希值相同,则确定所述第二用户具备入住权限,基于所述入住办理请求和所述第二签名信息生成入住信息,并将包含所述入住信息的入住信息区块添加至所述区块链中,其中所述预订详情信息包括所述预订时间和所述房间号。
结合第二方面,在一种可能的实施方式中,上述装置还包括预订详情校验模块,所述预订详情校验模块用于:
确定所述房间号对应的房间所属的房间类型,若所述房间类型为多人房型,且所述第一哈希值与所述第二哈希值相同,则确定所述酒店预订请求为合法请求。
结合第二方面,在一种可能的实施方式中,上述订单信息处理模块包括订单信息生成单元、订单信息共识单元、订单信息上链单元;所述订单信息共识单元用于:
若接收到的所述共识节点返回的第一校验结果中,校验通过的比例不小于预设通过比例,则确定对所述订单信息的第一共识结果为达成共识。
结合第二方面,在一种可能的实施方式中,上述入住信息处理模块包括入住请求校验单元、入住信息生成单元、入住信息上链单元;所述入住信息上链单元用于:
将所述入住信息发送至区块链网络中的共识节点,以使所述共识节点对所述入住信息进行合法性校验以得到第二校验结果,根据接收到的所述共识节点返回的第二校验结果确定对所述入住信息的第二共识结果,若所述第二共识结果为达成共识,则将包含所述入住信息的入住信息区块添加至所述区块链中。
结合第二方面,在一种可能的实施方式中,上述装置还包括密码信息处理模块,所述密码信息处理模块用于:
基于所述房间号确定所述房间号所在楼层,获取所述楼层对应的电梯密码以及所述房间号对应的房门密码;
基于所述第二用户公钥对所述电梯密码和所述房门密码进行加密,以得到加密密码信息,将所述加密密码信息发送至所述第二用户节点。
结合第二方面,在一种可能的实施方式中,上述装置还包括:
退房请求获取模块,用于获取所述第一用户节点发送的第一退房请求,以及所述第二用户节点发送的第二退房请求,所述第一退房请求携带所述第一用户节点对所述第一退房请求的第三签名信息,所述第二退房请求携带所述第二用户节点对所述第二退房请求的第四签名信息,所述第一退房请求中包括所述第一用户信息、所述房间号、第一退房时间,所述第二退房请求中包括所述第二用户信息、所述房间号、第二退房时间;
退房请求校验模块,用于根据所述第一用户公钥对所述第三签名信息进行解密以得到第五哈希值,对所述第一退房请求中包括所述第一用户信息、所述房间号、所述第一退房时间进行哈希计算以得到第六哈希值,根据所述第二用户公钥对所述第四签名信息进行解密以得到第七哈希值,对所述第二退房请求中包括所述第二用户信息、所述房间号、所述第二退房时间进行哈希计算以得到第八哈希值;
退房处理模块,用于若所述第五哈希值与所述第六哈希值相同,且所述第七哈希值与所述第八哈希值相同,则执行退房处理。
结合第二方面,在一种可能的实施方式中,所述退房处理模块包括:
入住时长确定单元,用于基于所述第一用户的第一入住时间和所述第一退房时间确定所述第一用户的第一入住时长,基于所述第二用户的第二入住时间和所述第二退房时间确定所述第二用户的第二入住时长;
消费账单确定单元,用于根据所述第一入住时长确定所述第一用户的第一费用结算账单,将所述第一费用结算账单发送至所述第一用户节点,根据所述第二入住时长确定所述第二用户的第二费用结算账单,将所述第二费用结算账单发送至所述第二用户节点;
收款请求发送单元,用于当接收到所述第一用户节点和所述第二用户节点返回的账单确认信息后,生成针对所述第一用户的第一收款请求和针对所述第二用户的第二收款请求,向所述第一用户节点发送所述第一收款请求,向所述第二用户节点发送所述第二收款请求;
退房信息上链单元,用于当接收到所述第一用户节点返回的第一付款信息以及所述第二节点返回的第二付款信息后,基于所述第一退房请求、所述第二退房请求、所述第三签名信息、所述第四签名信息、所述第一付款信息以及所述第二付款信息生成退房信息,并将包含所述退房信息的退房信息区块添加至所述区块链中。
第三方面,本申请实施例提供了一种终端设备,该终端设备包括处理器和存储器,该处理器和存储器相互连接。该存储器用于存储支持该终端设备执行上述第一方面和/或第一方面任一种可能的实现方式提供的方法的计算机程序,该计算机程序包括程序指令,该处理器被配置用于调用上述程序指令,执行上述第一方面和/或第一方面任一种可能的实施方式所提供的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包括程序指令,该程序指令当被处理器执行时使该处理器执行上述第一方面和/或第一方面任一种可能的实施方式所提供的方法。
在本申请实施例中,通过获取第一用户对应的第一用户节点发送的酒店预订请求,可得到所述酒店预订请求携带所述第一用户节点对所述酒店预订请求的第一签名信息,所述酒店预订请求中包括第一用户信息、第二用户信息、预订详情信息。通过获取所述第一用户对应的第一用户公钥,可根据所述第一用户公钥对所述第一签名信息进行解密以得到第一哈希值,基于所述第一用户信息、所述第二用户信息、所述预订详情信息生成第二哈希值,若所述第一哈希值与所述第二哈希值相同,则确定所述酒店预订请求为合法请求。基于所述酒店预订请求和所述第一签名信息生成订单信息,将所述订单信息发送至区块链网络中的共识节点,以使所述共识节点对所述订单信息进行合法性校验以得到第一校验结果,根据接收到的所述共识节点返回的第一校验结果确定对所述订单信息的第一共识结果,若所述第一共识结果为达成共识,则将包含所述订单信息的预订信息区块添加至区块链中。获取第二用户对应的第二用户节点发送的入住办理请求,所述入住办理请求携带所述第二用户节点对所述入住办理请求的第二签名信息,获取所述第二用户对应的第二用户公钥,根据所述第二用户公钥对所述第二签名信息进行解密以得到第三哈希值。基于所述入住办理请求中包括的预订时间以及房间号从所述区块链中获取所述预订信息区块,从所述预订信息区块中获取所述第二用户信息和所述预订详情信息以生成第四哈希值,若所述第三哈希值与所述第四哈希值相同,则确定所述第二用户具备入住权限,基于所述入住办理请求和所述第二签名信息生成入住信息,并将包含所述入住信息的入住信息区块添加至所述区块链中,其中所述预订详情信息包括所述预订时间和所述房间号。本申请实施例中,通过将订单信息进行上链,可在后续当第二用户办理入住时,基于区块链上的订单信息对第二用户的入住权限进行校验,因此可提高酒店管理效率,规范酒店多人房的入住流程,加强酒店入住安全性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种区块链网络拓扑结构的结构示意图;
图2是本申请实施例提供的基于区块链的酒店管理方法的一流程示意图;
图3是本申请实施例提供的验证第一签名信息的应用场景示意图;
图4是本申请实施例提供的酒店预订过程的场景示意图;
图5是本申请实施例提供的基于区块链的酒店管理方法的另一流程示意图;
图6是本申请实施例提供的基于区块链的酒店管理装置的一结构示意图;
图7是本申请实施例提供的基于区块链的酒店管理装置的另一结构示意图;
图8是本申请实施例提供的终端设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参见图1,图1是本申请实施例提供的一种区块链网络拓扑结构的结构示意图。如图1所示,区块链网络可包括酒店管理节点1,酒店管理节点2、酒店管理节点3、用户节点1、用户节点2以及用户征信节点等。为方便描述,可将酒店管理节点、用户节点以及用户征信节点都简称为节点。其中每个节点都与其他节点具有连接关系。可以理解的是,区块链网络拓扑结构中的任一节点可以是任意形式的计算设备,如服务器、终端等,在此不做限制。应当理解,终端包括但不限于手机、平板电脑、笔记本电脑、掌上电脑、移动互联网设备(mobile internet device,MID)等,在此不做限制。每个节点在进行正常工作时可以接收输入信息,并基于接收到的输入信息维护该区块链网络拓扑结构内的共享数据。其中,共识过程是由预先选好的节点(即共识节点)控制的。为了保证区块链网络拓扑结构内的信息互通,区块链网络拓扑结构中的每个节点之间可以存在信息连接,节点之间可以通过上述信息连接进行信息传输。应当理解,整个区块链网络是由各个节点共同维护的,共识节点可以是基于区块链网络的共识机制从区块链网络包括的多个节点中预先确定出的节点,例如共识节点可以是如图1所示的酒店管理节点1,酒店管理节点2、酒店管理节点3。
其中,对于区块链网络拓扑结构中的每个节点,均具有与其对应的节点标识,而且区块链网络拓扑结构中的每个节点均可以存储有区块链网络拓扑结构中其他节点的节点标识,以便后续根据其他节点的节点标识,将生成的区块广播至区块链网络拓扑结构中的其他节点。每个节点中可维护一个节点标识列表,将节点名称和节点标识对应存储至该节点标识列表中。其中,节点标识可为IP(Internet Protocol,网络之间互联的协议)地址以及其他任一种能够用于标识该节点的信息。
本申请实施例提供的基于区块链的酒店管理方法,可广泛适用于酒店管理节点。在本申请实施例中,酒店管理节点通过获取第一用户对应的第一用户节点发送的酒店预订请求,可得到所述酒店预订请求携带所述第一用户节点对所述酒店预订请求的第一签名信息,所述酒店预订请求中包括第一用户信息、第二用户信息、预订详情信息。通过获取所述第一用户对应的第一用户公钥,可根据所述第一用户公钥对所述第一签名信息进行解密以得到第一哈希值,基于所述第一用户信息、所述第二用户信息、所述预订详情信息生成第二哈希值,若所述第一哈希值与所述第二哈希值相同,则确定所述酒店预订请求为合法请求。基于所述酒店预订请求和所述第一签名信息生成订单信息,将所述订单信息发送至区块链网络中的共识节点,以使所述共识节点对所述订单信息进行合法性校验以得到第一校验结果,根据接收到的所述共识节点返回的第一校验结果确定对所述订单信息的第一共识结果,若所述第一共识结果为达成共识,则将包含所述订单信息的预订信息区块添加至区块链中。获取第二用户对应的第二用户节点发送的入住办理请求,所述入住办理请求携带所述第二用户节点对所述入住办理请求的第二签名信息,获取所述第二用户对应的第二用户公钥,根据所述第二用户公钥对所述第二签名信息进行解密以得到第三哈希值。基于所述入住办理请求中包括的预订时间以及房间号从所述区块链中获取所述预订信息区块,从所述预订信息区块中获取所述第二用户信息和所述预订详情信息以生成第四哈希值,若所述第三哈希值与所述第四哈希值相同,则确定所述第二用户具备入住权限,基于所述入住办理请求和所述第二签名信息生成入住信息,并将包含所述入住信息的入住信息区块添加至所述区块链中,其中所述预订详情信息包括所述预订时间和所述房间号。采用本申请实施例,通过将订单信息进行上链,可在后续当第二用户办理入住时,基于区块链上的订单信息对第二用户的入住权限进行校验,因此可提高酒店管理效率,规范酒店多人房的入住流程,加强酒店入住安全性。
下面将结合图2至图8分别对本申请实施例提供的方法及相关装置分别进行详细说明。本申请实施例提供的方法中可包括用于获取酒店预订请求及携带的第一签名信息、验证第一签名信息、生成订单信息并上链、获取酒店入住请求及第二签名信息、基于订单信息验证第二签名信息、生成入住信息并上链等数据处理阶段。其中,上述各个数据处理阶段的实现方式可参见如下图2和图5所示的实现方式。
参见图2,图2为本申请实施例提供的基于区块链的酒店管理方法的一流程示意图。本申请实施例提供的方法可以包括如下步骤101至105:
101、获取第一用户对应的第一用户节点发送的酒店预订请求,以得到酒店预订请求携带的第一用户节点对酒店预订请求的第一签名信息,酒店预订请求中包括第一用户信息、第二用户信息、预订详情信息。
在一些可行的实施方式中,酒店管理节点通过获取第一用户对应的第一用户节点发送的酒店预订请求,可得到酒店预订请求中包括的第一用户信息、第二用户信息、预订详情信息,以及酒店预订请求携带的第一用户节点对酒店预订请求的第一签名信息。应当理解,第一用户和第二用户为预订同一房间的住户,也就是说,第一用户和第二用户为预订两人房型的用户。其中第一用户信息中可包括第一用户标识(例如第一用户的身份证号)、联系方式(例如电话号码、邮箱等)、性别、用户信用等级等;第二用户信息可包括第二用户标识(例如第二用户的身份证号)、联系方式(例如电话号码、邮箱等)、性别、用户信用等级、生物信息(例如脸部信息、指纹信息、瞳孔信息、虹膜信息、声纹信息)等;预订详情信息包括预订的房间号、预订时间、预订数量等,在此不做限制。其中,第一签名信息为第一用户基于其对应的第一用户私钥对酒店预订请求中包括的第一用户信息、第二用户信息以及预订详情信息等内容进行加密后生成的数字签名。应当理解,针对多人房(两人或两人以上的房型)的预订,其酒店预订请求中应包括多人房中每个人对应的用户信息,为方便描述,以下本申请实施例皆以两人房为例进行说明。
举例来说,参见图3,图3是本申请实施例提供的验证第一签名信息的应用场景示意图。如图3所示,第一用户通过在第一用户节点的酒店预订页面上填写第一用户信息、第二用户信息和预订详情信息,可通过点击“提交”按钮,以生成酒店预订请求。其中,为保障酒店预订请求中所包括的内容的有效性和安全性,第一用户节点通过对要传输的内容(例如酒店预订请求中包括的第一用户信息、第二用户信息、预订详情信息)进行哈希运算,可得到对应的哈希值,再通过第一用户私钥对生成的该哈希值进行加密,可得到第一签名信息。然后,第一用户节点通过将酒店预订请求与第一签名信息进行拼接后,可将拼接后得到的数据发送给区块链网络中的酒店管理节点。当酒店管理节点接收到由第一用户节点所发送的数据时,首先会将接收到的数据进行解析,以得到分离后的酒店预订请求和第一签名信息。再通过从区块链的公钥存储区块中获取所述第一用户对应的第一用户公钥,可基于第一用户公钥对第一签名信息进行解密,以得到解密后的第一哈希值,同时对分离得到的酒店预订请求中所包括的内容进行哈希运算,可得到第二哈希值。最后酒店管理节点通过对第一哈希值和第二哈希值进行对比分析,可得到对酒店预订请求的校验结果。
102、获取第一用户对应的第一用户公钥,根据第一用户公钥对第一签名信息进行解密以得到第一哈希值,基于第一用户信息、第二用户信息、预订详情信息生成第二哈希值,若第一哈希值与第二哈希值相同,则确定酒店预订请求为合法请求。
在一些可行的实施方式中,通过获取第一用户对应的第一用户公钥,可根据第一用户公钥对第一签名信息进行解密以得到第一哈希值。通过对酒店预订请求中包括的第一用户信息、第二用户信息、预订详情信息进行哈希计算,可生成第二哈希值,其中若第一哈希值与第二哈希值相同,则可确定酒店预订请求为合法请求。具体地,可从区块链的公钥存储区块中基于第一用户标识获取第一用户标识对应的公钥,即第一用户公钥,然后根据第一用户公钥对第一签名信息进行解密。应当理解,若基于第一用户标识对应的第一用户公钥不能解密出摘要信息,则说明该酒店预订请求不是上述第一用户对应的第一用户节点所发送的,即有人冒用第一用户的名义发送了酒店预订请求,因此可确定酒店预订请求为不合法请求,进而拒绝该酒店预订请求。若通过该第一用户公钥对第一签名信息进行解密,可得到酒店预订请求的摘要信息,即第一哈希值,则通过进一步对酒店预订请求中包括的内容进行哈希计算,可得到酒店预订请求对应的第二哈希值。其中通过将第一哈希值与第二哈希值进行比较,若第一哈希值与第二哈希值相同,则可确定酒店预订请求为合法请求,即酒店预订请求中包括的内容未被篡改,反之,若第一哈希值与第二哈希值不相同,则说明该酒店预订请求中的内容已经被篡改,因此可确定酒店预订请求为不合法请求。
可选的,在一些可行的实施方式中,除了验证酒店预订请求的发送者的身份以及酒店预订请求中所包括内容的完整性,还可以对酒店预订请求中所包括的内容的合法性和真实性进行验证。例如,可验证酒店预订请求中包括的房间号是否满足入住人需求,即根据该房间号可查询房间号对应的房间所属的房间类型,若该房间号对应的房间类型为多人房型,且第一哈希值与第二哈希值相同,则可确定酒店预订请求为合法请求。可选的,还可以验证酒店预订请求包括的第一用户信息和第二用户信息中的用户信用等级是否满足要求,即,可从用户征信节点获取第一用户对应的第一用户信用等级,以及第二用户对应的第二用户信用等级,其中若酒店预订请求中包括的第一用户对应的用户信用等级与上述第一用户信用等级相同,酒店预订请求中包括的第二用户对应的用户信用等级与第二用户信用等级相同,且第一用户对应的用户信用等级和第二用户对应的用户信用等级皆不小于预设用户信用等级,则可确定酒店预订请求为合法请求。应当理解,用户征信节点为征信机构对应的节点,从用户征信节点所获取到的用户信用等级为用户的真实信用等级。可选的,还可以验证酒店预订请求包括的第一用户信息和第二用户信息中的生物信息(例如人脸信息)是否满足要求,即,通过将第一用户信息中包括的人脸信息与区块链中的第一用户标识对应的人脸信息进行比较,将第二用户信息中包括的人脸信息与区块链中的第二用户标识对应的人脸信息进行比较,可判断酒店预订请求中的用户信息是否为真实信息。
103、基于酒店预订请求和第一签名信息生成订单信息,将订单信息发送至区块链网络中的共识节点,以使共识节点对订单信息进行合法性校验以得到第一校验结果,根据接收到的共识节点返回的第一校验结果确定对订单信息的第一共识结果,若第一共识结果为达成共识,则将包含订单信息的预订信息区块添加至区块链中。
在一些可行的实施方式中,基于酒店预订请求和第一签名信息可生成订单信息,通过将订单信息发送至区块链网络中的共识节点,可使共识节点对订单信息进行合法性校验以得到第一校验结果。也就是说,订单信息中包括酒店预订请求中包括的内容以及第一签名信息。其中,共识节点通过获取订单信息,同样可对订单信息中包括的酒店预订请求的内容和第一签名信息进行校验,其校验过程参见上述步骤102中所描述的实现方式,在此不再进行赘述。不难理解的是,根据接收到的共识节点所返回的第一校验结果,可确定对订单信息的第一共识结果,一般来说,若接收到的共识节点返回的第一校验结果中,校验通过的比例不小于预设通过比例,则可确定区块链网络中的共识节点对订单信息的第一共识结果为达成共识,进而可将包含订单信息的预订信息区块添加至区块链中。应当理解,本申请实施例中的共识节点可以是基于区块链网络的共识机制从多个开发者节点中预先确定出的节点,例如,共识机制包括但不限于工作量证明(Proof of Work,PoW)共识机制、权益证明(Proof of Stake,PoS)共识机制、股权授权证明(Delegated Proof of Stake,DPoS)共识机制、实用拜占庭容错算法(Practical Byzantine Fault Tolerance,PBFT)、重要性证明(Proof of Importance,POI)共识机制、参与度证明(Proof of Participation,POP)共识机制,等等,在此不做限制。或者共识节点也可以是预设的任意节点,例如,共识节点可以是酒店各个管理层对应的节点等,在此不做限制。
举例来说,图4是本申请实施例提供的酒店预订过程的场景示意图。图4是本申请实施例提供的酒店预订过程的场景示意图。如图4中的区块链网络包括酒店管理节点1,酒店管理节点2、酒店管理节点3、用户节点1、用户节点2以及用户征信节点,其中各节点间具有连接关系。假设酒店管理节点1为本申请实施例中的酒店管理节点,用户节点1为本申请实施例中的第一用户节点。当用户节点1向酒店管理节点1发起酒店预订请求时,酒店管理节点1通过对酒店预订请求、酒店预订请求携带的第一签名信息进行校验并校验通过后,可根据酒店预订请求和第一签名信息生成订单信息,通过将订单信息发送至区块链网络中的共识节点,可使共识节点对订单信息进行合法性校验以得到第一校验结果,其中,共识节点为如图4所示的酒店管理节点2和酒店管理节点3。当区块链网络中的酒店管理节点2和酒店管理节点3都独立地对接收到的订单信息进行校验并生成第一校验结果后,可将第一校验结果再返回给酒店管理节点1。通常而言,当酒店管理节点1接收到的各第一校验结果中校验通过的比例不小于预设通过比例时,则可确定区块链网络中的共识节点对订单信息达成了共识,因此将订单信息添加至区块链中进行存储。
104、获取第二用户对应的第二用户节点发送的入住办理请求,以得到入住办理请求携带的第二用户节点对入住办理请求的第二签名信息,获取第二用户对应的第二用户公钥,根据第二用户公钥对第二签名信息进行解密以得到第三哈希值。
在一些可行的实施方式中,虽然第一用户和第二用户为同一房间的住户,但第一用户和第二用户到达酒店的时间可能是不一样的,因此为规范酒店多人房的入住流程,每个住户都应该在到达酒店后,进行入住办理后才能入住。为方便描述,以下本申请实施例以第一用户先到达酒店办理入住,第二用户后到达酒店进行入住办理为例进行说明。具体地,通过获取第二用户对应的第二用户节点发送的入住办理请求,可得到入住办理请求携带的第二用户节点对入住办理请求的第二签名信息。通过获取第二用户对应的第二用户公钥,可根据第二用户公钥对第二签名信息进行解密以得到第三哈希值。其中,可从区块链的公钥存储区块中基于第二用户标识获取第二用户标识对应的公钥,即第二用户公钥,然后根据第二用户公钥对第二签名信息进行解密。应当理解,若基于第二用户标识对应的第二用户公钥不能解密出摘要信息,则说明该入住办理请求不是上述第二用户对应的第二用户节点所发送的,即有人冒用第二用户的名义发送了入住办理请求,因此可确定入住办理请求为不合法请求,进而拒绝该入住办理请求。若通过该第二用户公钥对第二签名信息进行解密,可得到入住办理请求的摘要信息,即第三哈希值,则可根据入住办理请求中包括的预订时间以及房间号从区块链中获取对应的预订信息区块,并从获取到的预订信息区块中获取第二用户信息和预订详情信息,以对所述第二用户信息和预订详情信息进行哈希计算,得到第四哈希值,其中若第三哈希值与第四哈希值相同,则确定第二用户具备入住权限。可选的,若入住办理请求中包括了第二用户信息和预订详情信息,还可以进一步对入住办理请求中包括的内容进行哈希计算,以得到入住办理请求对应的第五哈希值。其中通过将第三哈希值、第四哈希值以及第五哈希值进行比较,若第三哈希值、第四哈希值、以及第五哈希值相同,则可确定入住办理请求为合法请求。
105、基于入住办理请求中包括的预订时间以及房间号从区块链中获取预订信息区块,从预订信息区块中获取第二用户信息和预订详情信息以生成第四哈希值,若第三哈希值与第四哈希值相同,则确定第二用户具备入住权限,基于入住办理请求和第二签名信息生成入住信息,并将包含入住信息的入住信息区块添加至区块链中,预订详情信息包括预订时间和房间号。
在一些可行的实施方式中,基于入住办理请求中包括的预订时间以及房间号,可从区块链中获取对应的预订信息区块,通过从预订信息区块中获取第二用户信息和预订详情信息,可根据第二用户信息和预订详情信息生成第四哈希值,其中,若第三哈希值与第四哈希值相同,则可确定第二用户具备入住权限,因此,可基于入住办理请求和第二签名信息生成入住信息,并将入住信息发送至区块链网络中的共识节点,以使共识节点对入住信息进行合法性校验以得到第二校验结果。也就是说,入住信息中包括入住办理请求中包括的内容以及第二签名信息。其中,共识节点通过获取入住信息,同样可对入住信息中包括的入住办理请求的内容和第二签名信息进行校验,其校验过程参见上述步骤104中所描述的实现方式,在此不再进行赘述。不难理解的是,根据接收到的共识节点所返回的第二校验结果,可确定对入住信息的第一共识结果,一般来说,若接收到的共识节点返回的第二校验结果中,校验通过的比例不小于预设通过比例,则可确定区块链网络中的共识节点对入住信息的第一共识结果为达成共识,进而可将包含入住信息的入住信息区块添加至区块链中。应当理解,共识节点可以是基于区块链网络的共识机制从多个开发者节点中预先确定出的节点,例如,共识机制包括但不限于工作量证明(Proof of Work,PoW)共识机制、权益证明(Proof of Stake,PoS)共识机制、股权授权证明(Delegated Proof of Stake,DPoS)共识机制、实用拜占庭容错算法(Practical Byzantine Fault Tolerance,PBFT)、重要性证明(Proof of Importance,POI)共识机制、参与度证明(Proof of Participation,POP)共识机制,等等,在此不做限制。或者共识节点也可以是预设的任意节点,例如,共识节点可以是酒店各个管理层对应的节点等,在此不做限制。
可选的,在一些可行的方式中,将包含入住信息的入住信息区块添加至区块链后,还可以基于第二用户入住的房间号确定该房间号所在楼层,通过获取该楼层对应的电梯密码以及房间号对应的房门密码,可利用第二用户公钥对电梯密码和房门密码进行加密,以得到加密密码信息,进而将加密密码信息发送至第二用户节点。应当理解,当第二用户节点接收到酒店管理节点发送的加密密码信息后,可基于自身对应的私钥,即第二用户对应的第二用户私钥对加密密码信息进行解密,以得到解密后的电梯密码和房门密码,因此,第二用户可在乘坐电梯时,通过解密得到的电梯密码进入其所预定的房间所在的楼层,并根据房门密码打开房门以进入房间内部。可以理解的是,酒店通过设置不同停留楼层的电梯密码,可避免酒店客人随意进出非预订房间所在楼层,有利于提高酒店管理的安全性。
在本申请实施例中,酒店管理节点通过获取第一用户对应的第一用户节点发送的酒店预订请求,可得到所述酒店预订请求携带所述第一用户节点对所述酒店预订请求的第一签名信息,所述酒店预订请求中包括第一用户信息、第二用户信息、预订详情信息。通过获取所述第一用户对应的第一用户公钥,可根据所述第一用户公钥对所述第一签名信息进行解密以得到第一哈希值,基于所述第一用户信息、所述第二用户信息、所述预订详情信息生成第二哈希值,若所述第一哈希值与所述第二哈希值相同,则确定所述酒店预订请求为合法请求。基于所述酒店预订请求和所述第一签名信息生成订单信息,将所述订单信息发送至区块链网络中的共识节点,以使所述共识节点对所述订单信息进行合法性校验以得到第一校验结果,根据接收到的所述共识节点返回的第一校验结果确定对所述订单信息的第一共识结果,若所述第一共识结果为达成共识,则将包含所述订单信息的预订信息区块添加至区块链中。获取第二用户对应的第二用户节点发送的入住办理请求,所述入住办理请求携带所述第二用户节点对所述入住办理请求的第二签名信息,获取所述第二用户对应的第二用户公钥,根据所述第二用户公钥对所述第二签名信息进行解密以得到第三哈希值。基于所述入住办理请求中包括的预订时间以及房间号从所述区块链中获取所述预订信息区块,从所述预订信息区块中获取所述第二用户信息和所述预订详情信息以生成第四哈希值,若所述第三哈希值与所述第四哈希值相同,则确定所述第二用户具备入住权限,基于所述入住办理请求和所述第二签名信息生成入住信息,并将包含所述入住信息的入住信息区块添加至所述区块链中,其中所述预订详情信息包括所述预订时间和所述房间号。本申请实施例中,通过将订单信息进行上链,可在后续当第二用户办理入住时,基于区块链上的订单信息对第二用户的入住权限进行校验,因此可提高酒店管理效率,规范酒店多人房的入住流程,加强酒店入住安全性。
参见图5,图5是本申请实施例提供的基于区块链的酒店管理方法的另一流程示意图。本申请实施例提供的方法可通过如下步骤201至208提供的实现方式进行说明:
201、获取第一用户对应的第一用户节点发送的酒店预订请求,以得到酒店预订请求携带的第一用户节点对酒店预订请求的第一签名信息,酒店预订请求中包括第一用户信息、第二用户信息、预订详情信息。
202、获取第一用户对应的第一用户公钥,根据第一用户公钥对第一签名信息进行解密以得到第一哈希值,基于第一用户信息、第二用户信息、预订详情信息生成第二哈希值,若第一哈希值与第二哈希值相同,则确定酒店预订请求为合法请求。
203、基于酒店预订请求和第一签名信息生成订单信息,将订单信息发送至区块链网络中的共识节点,以使共识节点对订单信息进行合法性校验以得到第一校验结果,根据接收到的共识节点返回的第一校验结果确定对订单信息的第一共识结果,若第一共识结果为达成共识,则将包含订单信息的预订信息区块添加至区块链中。
204、获取第二用户对应的第二用户节点发送的入住办理请求,以得到入住办理请求携带的第二用户节点对入住办理请求的第二签名信息,获取第二用户对应的第二用户公钥,根据第二用户公钥对第二签名信息进行解密以得到第三哈希值。
205、基于入住办理请求中包括的预订时间以及房间号从区块链中获取预订信息区块,从预订信息区块中获取第二用户信息和预订详情信息以生成第四哈希值,若第三哈希值与第四哈希值相同,则确定第二用户具备入住权限,基于入住办理请求和第二签名信息生成入住信息,并将包含入住信息的入住信息区块添加至区块链中,预订详情信息包括预订时间和房间号。
其中,步骤201至步骤205的具体实现方式可以参见图2对应的实施例中对步骤101至步骤105的描述,这里不再进行赘述。
206、获取第一用户节点发送的第一退房请求,以及第二用户节点发送的第二退房请求,第一退房请求携带第一用户节点对第一退房请求的第三签名信息,第二退房请求携带第二用户节点对第二退房请求的第四签名信息,第一退房请求中包括第一用户信息、房间号、第一退房时间,第二退房请求中包括第二用户信息、房间号、第二退房时间。
在一些可行的实施方式中,对于入住的多人房的退房办理,由于多人房中每位客人离开酒店的时间可以是不一样的,因此只有当接到多人房中的每个客人都提出的退房请求时,酒店管理节点才进行退房流程的处理。以下本申请实施例以双人房的退房办理为例进行说明。具体地,酒店管理节点通过获取第一用户对应的第一用户节点发送的第一退房请求,以及第二用户对应的第二用户节点发送的第二退房请求,可得到第一退房请求携带第一用户节点对第一退房请求的第三签名信息,第二退房请求携带第二用户节点对第二退房请求的第四签名信息,以及第一退房请求中包括第一用户信息、房间号、第一退房时间,第二退房请求中包括第二用户信息、房间号、第二退房时间等。
207、根据第一用户公钥对第三签名信息进行解密以得到第五哈希值,对第一退房请求中包括第一用户信息、房间号、第一退房时间进行哈希计算以得到第六哈希值,根据第二用户公钥对第四签名信息进行解密以得到第七哈希值,对第二退房请求中包括第二用户信息、房间号、第二退房时间进行哈希计算以得到第八哈希值。
在一些可行的实施方式中,通过从公钥存储区块中获取第一用户标识对应的公钥,即第一用户公钥,第二用户标识对应的公钥,即第二用户公钥,可根据第一用户公钥对第三签名信息进行解密,可得到第五哈希值,通过对第一退房请求中包括第一用户信息、房间号、第一退房时间进行哈希计算,可得到第六哈希值。进一步的,根据第二用户公钥对第四签名信息进行解密,可得到第七哈希值,通过对第二退房请求中包括第二用户信息、房间号、第二退房时间进行哈希计算,可得到第八哈希值。不难理解的是,第三签名信息是第一用户节点对第一退房请求中包括的内容进行哈希值计算,并根据第一用户私钥进行加密后得到的签名信息。第四签名信息是第二用户节点对第二退房请求中包括的内容进行哈希值计算,再根据第二用户私钥进行加密后得到的签名信息。其中,第一用户私钥和第一用户公钥是一对密钥对,第二用户私钥和第二用户公钥是一对密钥对。
208、若第五哈希值与第六哈希值相同,且第七哈希值与第八哈希值相同,则执行退房处理。
在一些可行的实施方式中,若第五哈希值与第六哈希值相同,且第七哈希值与第八哈希值相同,则可确定第一退房请求和第二退房皆为合法请求。即第一退房请求确为第一用户节点所发送,第二用户节点确为第一用户对应的第二用户节点所发送,且第一退房请求中包括的内容和第二退房请求中包括的内容未被篡改,因此酒店管理节点可基于第一退房请求和第二退房请求执行退房处理。具体地,酒店管理节点通过获取入住信息区块中包括的第一用户对应的第一入住时间,第二用户对应的第二入住时间,可根据第一用户的第一入住时间和第一退房时间确定第一用户的第一入住时长,基于第二用户的第二入住时间和第二退房时间确定第二用户的第二入住时长。因此,根据第一入住时长可计算出第一用户对应的第一费用结算账单,根据第二入住时长可确定出第二用户对应的第二费用结算账单,进而将第一费用结算账单发送至第一用户节点,将第二费用结算账单发送至第二用户节点。其中,当接收到第一用户节点和第二用户节点所返回的账单确认信息后,可生成针对第一用户的第一收款请求和针对第二用户的第二收款请求,并将第一收款请求发送至第一用户节点,将第二收款请求发送至第二用户节点。其中,当接收到第一用户节点付款后所返回的第一付款信息以及第二节点付款后所返回的第二付款信息后,可基于第一退房请求、第二退房请求、第三签名信息、第四签名信息、第一付款信息以及第二付款信息生成退房信息,并将退房信息发送至区块链网络中的共识节点,以使共识节点对退房信息进行合法性校验以得到第三校验结果。也就是说,退房信息中包括第一退房请求中包括的内容、第二退房请求中包括的内容、第三签名信息以及第四签名信息。其中,共识节点通过获取退房信息,可对退房信息中包括的第一退房请求的内容和第三签名信息,对第二退房请求的内容和第四签名信息进行校验,其校验过程参见上述步骤207中所描述的实现方式,在此不再进行赘述。不难理解的是,根据接收到的共识节点所返回的第三校验结果,可确定对退房信息的第三共识结果,一般来说,若接收到的共识节点返回的第三校验结果中,校验通过的比例不小于预设通过比例,则可确定区块链网络中的共识节点对退房信息的第三共识结果为达成共识,进而可将包含退房信息的退房信息区块添加至区块链中。应当理解,共识节点可以是基于区块链网络的共识机制从多个开发者节点中预先确定出的节点,例如,共识机制包括但不限于工作量证明(Proof of Work,PoW)共识机制、权益证明(Proof of Stake,PoS)共识机制、股权授权证明(Delegated Proof of Stake,DPoS)共识机制、实用拜占庭容错算法(Practical Byzantine Fault Tolerance,PBFT)、重要性证明(Proof ofImportance,POI)共识机制、参与度证明(Proof of Participation,POP)共识机制,等等,在此不做限制。或者共识节点也可以是预设的任意节点,例如,共识节点可以是酒店各个管理层对应的节点等,在此不做限制。
在本申请实施例中,酒店管理节点通过获取第一用户对应的第一用户节点发送的酒店预订请求,可得到所述酒店预订请求携带所述第一用户节点对所述酒店预订请求的第一签名信息,所述酒店预订请求中包括第一用户信息、第二用户信息、预订详情信息。通过获取所述第一用户对应的第一用户公钥,可根据所述第一用户公钥对所述第一签名信息进行解密以得到第一哈希值,基于所述第一用户信息、所述第二用户信息、所述预订详情信息生成第二哈希值,若所述第一哈希值与所述第二哈希值相同,则确定所述酒店预订请求为合法请求。基于所述酒店预订请求和所述第一签名信息生成订单信息,将所述订单信息发送至区块链网络中的共识节点,以使所述共识节点对所述订单信息进行合法性校验以得到第一校验结果,根据接收到的所述共识节点返回的第一校验结果确定对所述订单信息的第一共识结果,若所述第一共识结果为达成共识,则将包含所述订单信息的预订信息区块添加至区块链中。获取第二用户对应的第二用户节点发送的入住办理请求,所述入住办理请求携带所述第二用户节点对所述入住办理请求的第二签名信息,获取所述第二用户对应的第二用户公钥,根据所述第二用户公钥对所述第二签名信息进行解密以得到第三哈希值。基于所述入住办理请求中包括的预订时间以及房间号从所述区块链中获取所述预订信息区块,从所述预订信息区块中获取所述第二用户信息和所述预订详情信息以生成第四哈希值,若所述第三哈希值与所述第四哈希值相同,则确定所述第二用户具备入住权限,基于所述入住办理请求和所述第二签名信息生成入住信息,并将包含所述入住信息的入住信息区块添加至所述区块链中,其中所述预订详情信息包括所述预订时间和所述房间号。进一步的,通过获取第一用户节点发送的第一退房请求,以及第二用户节点发送的第二退房请求,可得到第一退房请求携带第一用户节点对第一退房请求的第三签名信息,第二退房请求携带第二用户节点对第二退房请求的第四签名信息,第一退房请求中包括第一用户信息、房间号、第一退房时间,第二退房请求中包括第二用户信息、房间号、第二退房时间。其中,根据第一用户公钥对第三签名信息进行解密,可得到第五哈希值,对第一退房请求中包括第一用户信息、房间号、第一退房时间进行哈希计算,可得到第六哈希值,根据第二用户公钥对第四签名信息进行解密,可得到第七哈希值,对第二退房请求中包括第二用户信息、房间号、第二退房时间进行哈希计算,可得到第八哈希值。若第五哈希值与第六哈希值相同,且第七哈希值与第八哈希值相同,则执行退房处理,并生成退房信息区块以添加至区块链中。本申请实施例中,通过将订单信息进行上链,可在后续当第二用户办理入住时,基于区块链上的订单信息对第二用户的入住权限进行校验,因此可提高酒店管理效率,规范酒店多人房的入住流程,加强酒店入住安全性,同时,当且仅当接收到多人房中每位用户发送的退房请求时,才进行退房处理,可规范退房处理流程,节省退房办理时间,适用性强。
参见图6,图6是本申请实施例提供的基于区块链的酒店管理装置的一结构示意图。本申请实施例提供的基于区块链的酒店管理装置包括:
预订请求获取模块31,用于获取第一用户对应的第一用户节点发送的酒店预订请求,所述酒店预订请求携带所述第一用户节点对所述酒店预订请求的第一签名信息,所述酒店预订请求中包括第一用户信息、第二用户信息、预订详情信息;
预订请求校验模块32,用于获取所述第一用户对应的第一用户公钥,根据所述第一用户公钥对所述第一签名信息进行解密以得到第一哈希值,基于所述第一用户信息、所述第二用户信息、所述预订详情信息生成第二哈希值,若所述第一哈希值与所述第二哈希值相同,则确定所述酒店预订请求为合法请求;
订单信息处理模块33,用于基于所述酒店预订请求和所述第一签名信息生成订单信息,将所述订单信息发送至区块链网络中的共识节点,以使所述共识节点对所述订单信息进行合法性校验以得到第一校验结果,根据接收到的所述共识节点返回的第一校验结果确定对所述订单信息的第一共识结果,若所述第一共识结果为达成共识,则将包含所述订单信息的预订信息区块添加至区块链中;
入住请求获取模块34,用于获取第二用户对应的第二用户节点发送的入住办理请求,所述入住办理请求携带所述第二用户节点对所述入住办理请求的第二签名信息,获取所述第二用户对应的第二用户公钥,根据所述第二用户公钥对所述第二签名信息进行解密以得到第三哈希值;
入住信息处理模块35,用于基于所述入住办理请求中包括的预订时间以及房间号从所述区块链中获取所述预订信息区块,从所述预订信息区块中获取所述第二用户信息和所述预订详情信息以生成第四哈希值,若所述第三哈希值与所述第四哈希值相同,则确定所述第二用户具备入住权限,基于所述入住办理请求和所述第二签名信息生成入住信息,并将包含所述入住信息的入住信息区块添加至所述区块链中,其中所述预订详情信息包括所述预订时间和所述房间号。
请一并参见图7,图7是本申请实施例提供的基于区块链的酒店管理装置的另一结构示意图。其中:
在一些可行的实施方式中,上述装置还包括预订详情校验模块36,所述预订详情校验模块36具体用于:
确定所述房间号对应的房间所属的房间类型,若所述房间类型为多人房型,且所述第一哈希值与所述第二哈希值相同,则确定所述酒店预订请求为合法请求。
在一些可行的实施方式中,上述订单信息处理模块33包括订单信息生成单元331、订单信息共识单元332、订单信息上链单元333;所述订单信息共识单元332用于:
若接收到的所述共识节点返回的第一校验结果中,校验通过的比例不小于预设通过比例,则确定对所述订单信息的第一共识结果为达成共识。
在一些可行的实施方式中,上述入住信息处理模块35包括入住请求校验单元351、入住信息生成单元352、入住信息上链单元353;所述入住信息上链单元353用于:
将所述入住信息发送至区块链网络中的共识节点,以使所述共识节点对所述入住信息进行合法性校验以得到第二校验结果,根据接收到的所述共识节点返回的第二校验结果确定对所述入住信息的第二共识结果,若所述第二共识结果为达成共识,则将包含所述入住信息的入住信息区块添加至所述区块链中。
在一些可行的实施方式中,上述装置还包括密码信息处理模块37,所述密码信息处理模块37具体用于:
基于所述房间号确定所述房间号所在楼层,获取所述楼层对应的电梯密码以及所述房间号对应的房门密码;
基于所述第二用户公钥对所述电梯密码和所述房门密码进行加密,以得到加密密码信息,将所述加密密码信息发送至所述第二用户节点。
在一些可行的实施方式中,上述装置还包括:
退房请求获取模块38,用于获取所述第一用户节点发送的第一退房请求,以及所述第二用户节点发送的第二退房请求,所述第一退房请求携带所述第一用户节点对所述第一退房请求的第三签名信息,所述第二退房请求携带所述第二用户节点对所述第二退房请求的第四签名信息,所述第一退房请求中包括所述第一用户信息、所述房间号、第一退房时间,所述第二退房请求中包括所述第二用户信息、所述房间号、第二退房时间;
退房请求校验模块39,用于根据所述第一用户公钥对所述第三签名信息进行解密以得到第五哈希值,对所述第一退房请求中包括所述第一用户信息、所述房间号、所述第一退房时间进行哈希计算以得到第六哈希值,根据所述第二用户公钥对所述第四签名信息进行解密以得到第七哈希值,对所述第二退房请求中包括所述第二用户信息、所述房间号、所述第二退房时间进行哈希计算以得到第八哈希值;
退房处理模块40,用于若所述第五哈希值与所述第六哈希值相同,且所述第七哈希值与所述第八哈希值相同,则执行退房处理。
在一些可行的实施方式中,所述退房处理模块40包括:
入住时长确定单元401,用于基于所述第一用户的第一入住时间和所述第一退房时间确定所述第一用户的第一入住时长,基于所述第二用户的第二入住时间和所述第二退房时间确定所述第二用户的第二入住时长;
消费账单确定单元402,用于根据所述第一入住时长确定所述第一用户的第一费用结算账单,将所述第一费用结算账单发送至所述第一用户节点,根据所述第二入住时长确定所述第二用户的第二费用结算账单,将所述第二费用结算账单发送至所述第二用户节点;
收款请求发送单元403,用于当接收到所述第一用户节点和所述第二用户节点返回的账单确认信息后,生成针对所述第一用户的第一收款请求和针对所述第二用户的第二收款请求,向所述第一用户节点发送所述第一收款请求,向所述第二用户节点发送所述第二收款请求;
退房信息上链单元404,用于当接收到所述第一用户节点返回的第一付款信息以及所述第二节点返回的第二付款信息后,基于所述第一退房请求、所述第二退房请求、所述第三签名信息、所述第四签名信息、所述第一付款信息以及所述第二付款信息生成退房信息,并将包含所述退房信息的退房信息区块添加至所述区块链中。
具体实现中,上述基于区块链的酒店管理装置可通过其内置的各个功能模块执行如上述图2和图5中各个步骤所提供的实现方式。例如,上述预订请求获取模块31可用于执行上述各个步骤中获取酒店预订请求等实现方式,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。上述预订请求校验模块32可用于执行上述各个步骤中获取第一用户公钥、基于第一用户公钥解密第一签名信息、计算酒店预订请求中所包括的内容的哈希值、确定所述酒店预订请求的合法性等相关步骤所描述的实现方式,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。上述订单信息处理模块33可用于执行上述各个步骤中生成订单信息、对订单信息进行共识、将包含订单信息的预订信息区块进行上链等实现方式,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。上述入住请求获取模块34可用于执行上述各个步骤中获取入住办理请求、获取第二用户公钥、基于第二用户公钥对第二签名信息进行解密得到第三哈希值等实现方式,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。上述入住信息处理模块35可用于执行上述各个步骤中获取预订信息区块、从预订信息区块中获取第二用户信息和预订详细信息以计算得到第四哈希值、基于第三哈希值和第四哈希值确定第二用户的入住权限,生成入住信息以添加至区块链中等实现方式,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。
在本申请实施例中,基于区块链的酒店管理装置通过获取第一用户对应的第一用户节点发送的酒店预订请求,可得到所述酒店预订请求携带所述第一用户节点对所述酒店预订请求的第一签名信息,所述酒店预订请求中包括第一用户信息、第二用户信息、预订详情信息。通过获取所述第一用户对应的第一用户公钥,可根据所述第一用户公钥对所述第一签名信息进行解密以得到第一哈希值,基于所述第一用户信息、所述第二用户信息、所述预订详情信息生成第二哈希值,若所述第一哈希值与所述第二哈希值相同,则确定所述酒店预订请求为合法请求。基于所述酒店预订请求和所述第一签名信息生成订单信息,将所述订单信息发送至区块链网络中的共识节点,以使所述共识节点对所述订单信息进行合法性校验以得到第一校验结果,根据接收到的所述共识节点返回的第一校验结果确定对所述订单信息的第一共识结果,若所述第一共识结果为达成共识,则将包含所述订单信息的预订信息区块添加至区块链中。获取第二用户对应的第二用户节点发送的入住办理请求,所述入住办理请求携带所述第二用户节点对所述入住办理请求的第二签名信息,获取所述第二用户对应的第二用户公钥,根据所述第二用户公钥对所述第二签名信息进行解密以得到第三哈希值。基于所述入住办理请求中包括的预订时间以及房间号从所述区块链中获取所述预订信息区块,从所述预订信息区块中获取所述第二用户信息和所述预订详情信息以生成第四哈希值,若所述第三哈希值与所述第四哈希值相同,则确定所述第二用户具备入住权限,基于所述入住办理请求和所述第二签名信息生成入住信息,并将包含所述入住信息的入住信息区块添加至所述区块链中,其中所述预订详情信息包括所述预订时间和所述房间号。进一步的,通过获取第一用户节点发送的第一退房请求,以及第二用户节点发送的第二退房请求,可得到第一退房请求携带第一用户节点对第一退房请求的第三签名信息,第二退房请求携带第二用户节点对第二退房请求的第四签名信息,第一退房请求中包括第一用户信息、房间号、第一退房时间,第二退房请求中包括第二用户信息、房间号、第二退房时间。其中,根据第一用户公钥对第三签名信息进行解密,可得到第五哈希值,对第一退房请求中包括第一用户信息、房间号、第一退房时间进行哈希计算,可得到第六哈希值,根据第二用户公钥对第四签名信息进行解密,可得到第七哈希值,对第二退房请求中包括第二用户信息、房间号、第二退房时间进行哈希计算,可得到第八哈希值。若第五哈希值与第六哈希值相同,且第七哈希值与第八哈希值相同,则执行退房处理,并生成退房信息区块以添加至区块链中。本申请实施例中,通过将订单信息进行上链,可在后续当第二用户办理入住时,基于区块链上的订单信息对第二用户的入住权限进行校验,因此可提高酒店管理效率,规范酒店多人房的入住流程,加强酒店入住安全性,同时,当且仅当接收到多人房中每位用户发送的退房请求时,才进行退房处理,可规范退房处理流程,节省退房办理时间,适用性强。
参见图8,图8是本申请实施例提供的终端设备的结构示意图。如图8所示,本实施例中的终端设备可以包括:一个或多个处理器401和存储器402。上述处理器401和存储器402通过总线403连接。存储器402用于存储计算机程序,该计算机程序包括程序指令,处理器401用于执行存储器402存储的程序指令,执行如下操作:
获取第一用户对应的第一用户节点发送的酒店预订请求,所述酒店预订请求携带所述第一用户节点对所述酒店预订请求的第一签名信息,所述酒店预订请求中包括第一用户信息、第二用户信息、预订详情信息;
获取所述第一用户对应的第一用户公钥,根据所述第一用户公钥对所述第一签名信息进行解密以得到第一哈希值,基于所述第一用户信息、所述第二用户信息、所述预订详情信息生成第二哈希值,若所述第一哈希值与所述第二哈希值相同,则确定所述酒店预订请求为合法请求;
基于所述酒店预订请求和所述第一签名信息生成订单信息,将所述订单信息发送至区块链网络中的共识节点,以使所述共识节点对所述订单信息进行合法性校验以得到第一校验结果,根据接收到的所述共识节点返回的第一校验结果确定对所述订单信息的第一共识结果,若所述第一共识结果为达成共识,则将包含所述订单信息的预订信息区块添加至区块链中;
获取第二用户对应的第二用户节点发送的入住办理请求,所述入住办理请求携带所述第二用户节点对所述入住办理请求的第二签名信息,获取所述第二用户对应的第二用户公钥,根据所述第二用户公钥对所述第二签名信息进行解密以得到第三哈希值;
基于所述入住办理请求中包括的预订时间以及房间号从所述区块链中获取所述预订信息区块,从所述预订信息区块中获取所述第二用户信息和所述预订详情信息以生成第四哈希值,若所述第三哈希值与所述第四哈希值相同,则确定所述第二用户具备入住权限,基于所述入住办理请求和所述第二签名信息生成入住信息,并将包含所述入住信息的入住信息区块添加至所述区块链中,其中所述预订详情信息包括所述预订时间和所述房间号。
在一些可行的实施方式中,上述处理器401用于:
确定所述房间号对应的房间所属的房间类型,若所述房间类型为多人房型,且所述第一哈希值与所述第二哈希值相同,则确定所述酒店预订请求为合法请求。
在一些可行的实施方式中,上述处理器401用于:
若接收到的所述共识节点返回的第一校验结果中,校验通过的比例不小于预设通过比例,则确定对所述订单信息的第一共识结果为达成共识。
在一些可行的实施方式中,上述处理器401用于:
将所述入住信息发送至区块链网络中的共识节点,以使所述共识节点对所述入住信息进行合法性校验以得到第二校验结果,根据接收到的所述共识节点返回的第二校验结果确定对所述入住信息的第二共识结果,若所述第二共识结果为达成共识,则将包含所述入住信息的入住信息区块添加至所述区块链中。
在一些可行的实施方式中,上述处理器401用于:
基于所述房间号确定所述房间号所在楼层,获取所述楼层对应的电梯密码以及所述房间号对应的房门密码;
基于所述第二用户公钥对所述电梯密码和所述房门密码进行加密,以得到加密密码信息,将所述加密密码信息发送至所述第二用户节点。
在一些可行的实施方式中,上述处理器401用于:
获取所述第一用户节点发送的第一退房请求,以及所述第二用户节点发送的第二退房请求,所述第一退房请求携带所述第一用户节点对所述第一退房请求的第三签名信息,所述第二退房请求携带所述第二用户节点对所述第二退房请求的第四签名信息,所述第一退房请求中包括所述第一用户信息、所述房间号、第一退房时间,所述第二退房请求中包括所述第二用户信息、所述房间号、第二退房时间;
根据所述第一用户公钥对所述第三签名信息进行解密以得到第五哈希值,对所述第一退房请求中包括所述第一用户信息、所述房间号、所述第一退房时间进行哈希计算以得到第六哈希值,根据所述第二用户公钥对所述第四签名信息进行解密以得到第七哈希值,对所述第二退房请求中包括所述第二用户信息、所述房间号、所述第二退房时间进行哈希计算以得到第八哈希值;
若所述第五哈希值与所述第六哈希值相同,且所述第七哈希值与所述第八哈希值相同,则执行退房处理。
在一些可行的实施方式中,上述处理器401用于:
基于所述第一用户的第一入住时间和所述第一退房时间确定所述第一用户的第一入住时长,基于所述第二用户的第二入住时间和所述第二退房时间确定所述第二用户的第二入住时长;
根据所述第一入住时长确定所述第一用户的第一费用结算账单,将所述第一费用结算账单发送至所述第一用户节点,根据所述第二入住时长确定所述第二用户的第二费用结算账单,将所述第二费用结算账单发送至所述第二用户节点;
当接收到所述第一用户节点和所述第二用户节点返回的账单确认信息后,生成针对所述第一用户的第一收款请求和针对所述第二用户的第二收款请求,向所述第一用户节点发送所述第一收款请求,向所述第二用户节点发送所述第二收款请求;
当接收到所述第一用户节点返回的第一付款信息以及所述第二节点返回的第二付款信息后,基于所述第一退房请求、所述第二退房请求、所述第三签名信息、所述第四签名信息、所述第一付款信息以及所述第二付款信息生成退房信息,并将包含所述退房信息的退房信息区块添加至所述区块链中。
应当理解,在一些可行的实施方式中,上述处理器401可以是中央处理单元(central processing unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integratedcircuit,ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。该存储器402可以包括只读存储器和随机存取存储器,并向处理器401提供指令和数据。存储器402的一部分还可以包括非易失性随机存取存储器。例如,存储器402还可以存储设备类型的信息。
具体实现中,上述终端设备可通过其内置的各个功能模块执行如上述图2和图5中各个步骤所提供的实现方式,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。
在本申请实施例中,终端设备通过获取第一用户对应的第一用户节点发送的酒店预订请求,可得到所述酒店预订请求携带所述第一用户节点对所述酒店预订请求的第一签名信息,所述酒店预订请求中包括第一用户信息、第二用户信息、预订详情信息。通过获取所述第一用户对应的第一用户公钥,可根据所述第一用户公钥对所述第一签名信息进行解密以得到第一哈希值,基于所述第一用户信息、所述第二用户信息、所述预订详情信息生成第二哈希值,若所述第一哈希值与所述第二哈希值相同,则确定所述酒店预订请求为合法请求。基于所述酒店预订请求和所述第一签名信息生成订单信息,将所述订单信息发送至区块链网络中的共识节点,以使所述共识节点对所述订单信息进行合法性校验以得到第一校验结果,根据接收到的所述共识节点返回的第一校验结果确定对所述订单信息的第一共识结果,若所述第一共识结果为达成共识,则将包含所述订单信息的预订信息区块添加至区块链中。获取第二用户对应的第二用户节点发送的入住办理请求,所述入住办理请求携带所述第二用户节点对所述入住办理请求的第二签名信息,获取所述第二用户对应的第二用户公钥,根据所述第二用户公钥对所述第二签名信息进行解密以得到第三哈希值。基于所述入住办理请求中包括的预订时间以及房间号从所述区块链中获取所述预订信息区块,从所述预订信息区块中获取所述第二用户信息和所述预订详情信息以生成第四哈希值,若所述第三哈希值与所述第四哈希值相同,则确定所述第二用户具备入住权限,基于所述入住办理请求和所述第二签名信息生成入住信息,并将包含所述入住信息的入住信息区块添加至所述区块链中,其中所述预订详情信息包括所述预订时间和所述房间号。进一步的,通过获取第一用户节点发送的第一退房请求,以及第二用户节点发送的第二退房请求,可得到第一退房请求携带第一用户节点对第一退房请求的第三签名信息,第二退房请求携带第二用户节点对第二退房请求的第四签名信息,第一退房请求中包括第一用户信息、房间号、第一退房时间,第二退房请求中包括第二用户信息、房间号、第二退房时间。其中,根据第一用户公钥对第三签名信息进行解密,可得到第五哈希值,对第一退房请求中包括第一用户信息、房间号、第一退房时间进行哈希计算,可得到第六哈希值,根据第二用户公钥对第四签名信息进行解密,可得到第七哈希值,对第二退房请求中包括第二用户信息、房间号、第二退房时间进行哈希计算,可得到第八哈希值。若第五哈希值与第六哈希值相同,且第七哈希值与第八哈希值相同,则执行退房处理,并生成退房信息区块以添加至区块链中。本申请实施例中,通过将订单信息进行上链,可在后续当第二用户办理入住时,基于区块链上的订单信息对第二用户的入住权限进行校验,因此可提高酒店管理效率,规范酒店多人房的入住流程,加强酒店入住安全性,同时,当且仅当接收到多人房中每位用户发送的退房请求时,才进行退房处理,可规范退房处理流程,节省退房办理时间,适用性强。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包括程序指令,该程序指令被处理器执行时实现图2和图5中各个步骤所提供的基于区块链的酒店管理方法,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。
上述计算机可读存储介质可以是前述任一实施例提供的基于区块链的酒店管理装置或者上述终端设备的内部存储单元,例如电子设备的硬盘或内存。该计算机可读存储介质也可以是该电子设备的外部存储设备,例如该电子设备上配备的插接式硬盘,智能存储卡(smart media card,SMC),安全数字(secure digital,SD)卡,闪存卡(flash card)等。进一步地,该计算机可读存储介质还可以既包括该电子设备的内部存储单元也包括外部存储设备。该计算机可读存储介质用于存储该计算机程序以及该电子设备所需的其他程序和数据。该计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
本申请的权利要求书和说明书及附图中的术语“第一”、“第二”、“第三”、“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、***、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置展示该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例提供的方法及相关装置是参照本申请实施例提供的方法流程图和/或结构示意图来描述的,具体可由计算机程序指令实现方法流程图和/或结构示意图的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。这些计算机程序指令可提供到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或结构示意图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或结构示意图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或结构示意一个方框或多个方框中指定的功能的步骤。
Claims (9)
1.一种基于区块链的酒店管理方法,其特征在于,所述方法包括:
获取第一用户对应的第一用户节点发送的酒店预订请求,所述酒店预订请求携带所述第一用户节点对所述酒店预订请求的第一签名信息,所述酒店预订请求中包括第一用户信息、第二用户信息、预订详情信息;
获取所述第一用户对应的第一用户公钥,根据所述第一用户公钥对所述第一签名信息进行解密以得到第一哈希值,基于所述第一用户信息、所述第二用户信息、所述预订详情信息生成第二哈希值,若所述第一哈希值与所述第二哈希值相同,则确定所述酒店预订请求为合法请求;
基于所述酒店预订请求和所述第一签名信息生成订单信息,将所述订单信息发送至区块链网络中的共识节点,以使所述共识节点对所述订单信息进行合法性校验以得到第一校验结果,根据接收到的所述共识节点返回的第一校验结果确定对所述订单信息的第一共识结果,若所述第一共识结果为达成共识,则将包含所述订单信息的预订信息区块添加至区块链中;
获取第二用户对应的第二用户节点发送的入住办理请求,所述入住办理请求携带所述第二用户节点对所述入住办理请求的第二签名信息,获取所述第二用户对应的第二用户公钥,根据所述第二用户公钥对所述第二签名信息进行解密以得到第三哈希值;
基于所述入住办理请求中包括的预订时间以及房间号从所述区块链中获取所述预订信息区块,从所述预订信息区块中获取所述第二用户信息和所述预订详情信息以生成第四哈希值,若所述第三哈希值与所述第四哈希值相同,则确定所述第二用户具备入住权限,基于所述入住办理请求和所述第二签名信息生成入住信息,并将包含所述入住信息的入住信息区块添加至所述区块链中,其中所述预订详情信息包括所述预订时间和所述房间号;
获取所述第一用户节点发送的第一退房请求,以及所述第二用户节点发送的第二退房请求,所述第一退房请求携带所述第一用户节点对所述第一退房请求的第三签名信息,所述第二退房请求携带所述第二用户节点对所述第二退房请求的第四签名信息,所述第一退房请求中包括所述第一用户信息、所述房间号、第一退房时间,所述第二退房请求中包括所述第二用户信息、所述房间号、第二退房时间;
基于所述第一用户的第一入住时间和所述第一退房时间确定所述第一用户的第一入住时长,基于所述第二用户的第二入住时间和所述第二退房时间确定所述第二用户的第二入住时长;
根据所述第一入住时长确定所述第一用户的第一费用结算账单,将所述第一费用结算账单发送至所述第一用户节点,根据所述第二入住时长确定所述第二用户的第二费用结算账单,将所述第二费用结算账单发送至所述第二用户节点;
当接收到所述第一用户节点和所述第二用户节点返回的账单确认信息后,生成针对所述第一用户的第一收款请求和针对所述第二用户的第二收款请求,向所述第一用户节点发送所述第一收款请求,向所述第二用户节点发送所述第二收款请求;
当接收到所述第一用户节点返回的第一付款信息以及所述第二用户节点返回的第二付款信息后,基于所述第一退房请求、所述第二退房请求、所述第三签名信息、所述第四签名信息、所述第一付款信息以及所述第二付款信息生成退房信息,并将包含所述退房信息的退房信息区块添加至所述区块链中。
2.根据权利要求1所述方法,其特征在于,所述方法还包括:
确定所述房间号对应的房间所属的房间类型,若所述房间类型为多人房型,且所述第一哈希值与所述第二哈希值相同,则确定所述酒店预订请求为合法请求。
3.根据权利要求1所述方法,其特征在于,所述根据接收到的所述共识节点返回的第一校验结果确定对所述订单信息的第一共识结果,包括:
若接收到的所述共识节点返回的第一校验结果中,校验通过的比例不小于预设通过比例,则确定对所述订单信息的第一共识结果为达成共识。
4.根据权利要求1所述方法,其特征在于,所述将包含所述入住信息的入住信息区块添加至所述区块链中,包括:
将所述入住信息发送至区块链网络中的共识节点,以使所述共识节点对所述入住信息进行合法性校验以得到第二校验结果,根据接收到的所述共识节点返回的第二校验结果确定对所述入住信息的第二共识结果,若所述第二共识结果为达成共识,则将包含所述入住信息的入住信息区块添加至所述区块链中。
5.根据权利要求1所述方法,其特征在于,所述将包含所述入住信息的入住信息区块添加至所述区块链中之后,所述方法还包括:
基于所述房间号确定所述房间号所在楼层,获取所述楼层对应的电梯密码以及所述房间号对应的房门密码;
基于所述第二用户公钥对所述电梯密码和所述房门密码进行加密,以得到加密密码信息,将所述加密密码信息发送至所述第二用户节点。
6.根据权利要求1所述方法,其特征在于,所述根据所述第一入住时长确定所述第一用户的第一费用结算账单,将所述第一费用结算账单发送至所述第一用户节点,根据所述第二入住时长确定所述第二用户的第二费用结算账单,将所述第二费用结算账单发送至所述第二用户节点之前,所述方法还包括:
根据所述第一用户公钥对所述第三签名信息进行解密以得到第五哈希值,对所述第一退房请求中包括所述第一用户信息、所述房间号、所述第一退房时间进行哈希计算以得到第六哈希值,根据所述第二用户公钥对所述第四签名信息进行解密以得到第七哈希值,对所述第二退房请求中包括所述第二用户信息、所述房间号、所述第二退房时间进行哈希计算以得到第八哈希值;
若所述第五哈希值与所述第六哈希值相同,且所述第七哈希值与所述第八哈希值相同,则执行所述根据所述第一入住时长确定所述第一用户的第一费用结算账单,将所述第一费用结算账单发送至所述第一用户节点,根据所述第二入住时长确定所述第二用户的第二费用结算账单,将所述第二费用结算账单发送至所述第二用户节点。
7.一种基于区块链的酒店管理装置,其特征在于,所述装置包括:
预订请求获取模块,用于获取第一用户对应的第一用户节点发送的酒店预订请求,所述酒店预订请求携带所述第一用户节点对所述酒店预订请求的第一签名信息,所述酒店预订请求中包括第一用户信息、第二用户信息、预订详情信息;
预订请求校验模块,用于获取所述第一用户对应的第一用户公钥,根据所述第一用户公钥对所述第一签名信息进行解密以得到第一哈希值,基于所述第一用户信息、所述第二用户信息、所述预订详情信息生成第二哈希值,若所述第一哈希值与所述第二哈希值相同,则确定所述酒店预订请求为合法请求;
订单信息处理模块,用于基于所述酒店预订请求和所述第一签名信息生成订单信息,将所述订单信息发送至区块链网络中的共识节点,以使所述共识节点对所述订单信息进行合法性校验以得到第一校验结果,根据接收到的所述共识节点返回的第一校验结果确定对所述订单信息的第一共识结果,若所述第一共识结果为达成共识,则将包含所述订单信息的预订信息区块添加至区块链中;
入住请求获取模块,用于获取第二用户对应的第二用户节点发送的入住办理请求,所述入住办理请求携带所述第二用户节点对所述入住办理请求的第二签名信息,获取所述第二用户对应的第二用户公钥,根据所述第二用户公钥对所述第二签名信息进行解密以得到第三哈希值;
入住信息处理模块,用于基于所述入住办理请求中包括的预订时间以及房间号从所述区块链中获取所述预订信息区块,从所述预订信息区块中获取所述第二用户信息和所述预订详情信息以生成第四哈希值,若所述第三哈希值与所述第四哈希值相同,则确定所述第二用户具备入住权限,基于所述入住办理请求和所述第二签名信息生成入住信息,并将包含所述入住信息的入住信息区块添加至所述区块链中,其中所述预订详情信息包括所述预订时间和所述房间号;
退房请求获取模块,用于获取所述第一用户节点发送的第一退房请求,以及所述第二用户节点发送的第二退房请求,所述第一退房请求携带所述第一用户节点对所述第一退房请求的第三签名信息,所述第二退房请求携带所述第二用户节点对所述第二退房请求的第四签名信息,所述第一退房请求中包括所述第一用户信息、所述房间号、第一退房时间,所述第二退房请求中包括所述第二用户信息、所述房间号、第二退房时间;
退房处理模块,用于执行退房处理;其中所述退房处理模块包括:
入住时长确定单元,用于基于所述第一用户的第一入住时间和所述第一退房时间确定所述第一用户的第一入住时长,基于所述第二用户的第二入住时间和所述第二退房时间确定所述第二用户的第二入住时长;
消费账单确定单元,用于根据所述第一入住时长确定所述第一用户的第一费用结算账单,将所述第一费用结算账单发送至所述第一用户节点,根据所述第二入住时长确定所述第二用户的第二费用结算账单,将所述第二费用结算账单发送至所述第二用户节点;
收款请求发送单元,用于当接收到所述第一用户节点和所述第二用户节点返回的账单确认信息后,生成针对所述第一用户的第一收款请求和针对所述第二用户的第二收款请求,向所述第一用户节点发送所述第一收款请求,向所述第二用户节点发送所述第二收款请求;
退房信息上链单元,用于当接收到所述第一用户节点返回的第一付款信息以及所述第二用户节点返回的第二付款信息后,基于所述第一退房请求、所述第二退房请求、所述第三签名信息、所述第四签名信息、所述第一付款信息以及所述第二付款信息生成退房信息,并将包含所述退房信息的退房信息区块添加至所述区块链中。
8.一种终端设备,其特征在于,包括处理器和存储器,所述处理器和存储器相互连接;
所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如权利要求1-6任一项所述的方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1-6任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911191986.4A CN111008718B (zh) | 2019-11-28 | 2019-11-28 | 基于区块链的酒店管理方法、装置、终端及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911191986.4A CN111008718B (zh) | 2019-11-28 | 2019-11-28 | 基于区块链的酒店管理方法、装置、终端及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111008718A CN111008718A (zh) | 2020-04-14 |
CN111008718B true CN111008718B (zh) | 2023-11-03 |
Family
ID=70113622
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911191986.4A Active CN111008718B (zh) | 2019-11-28 | 2019-11-28 | 基于区块链的酒店管理方法、装置、终端及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111008718B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111652397B (zh) * | 2020-05-09 | 2021-02-09 | 深圳市道旅旅游科技股份有限公司 | 房间预订方法、装置、设备及可读介质 |
CN111833216A (zh) * | 2020-07-14 | 2020-10-27 | 尚镒森 | 酒店入住管理方法、***和存储介质 |
CN112862132B (zh) * | 2021-02-23 | 2024-01-23 | 杭州趣链科技有限公司 | 基于区块链的酒店管理方法、***、装置、设备及介质 |
CN113052578A (zh) * | 2021-04-21 | 2021-06-29 | 深圳壹账通智能科技有限公司 | 基于区块链的旅游费用结算方法、装置、设备及存储介质 |
CN117474135B (zh) * | 2023-12-25 | 2024-05-03 | 快住智能科技(苏州)有限公司 | 一种基于区块链的酒店管理方法和*** |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108830994A (zh) * | 2018-06-23 | 2018-11-16 | 辽宁工程技术大学 | 一种基于云商务区块链的高安全性酒店入住*** |
CN109543869A (zh) * | 2018-11-27 | 2019-03-29 | 中链科技有限公司 | 基于区块链网络的酒店预订结算方法、装置及*** |
CN109584110A (zh) * | 2018-11-22 | 2019-04-05 | 广州点睿信息科技有限公司 | 一种基于区块链的智能酒店管理装置及方法 |
CN109800897A (zh) * | 2018-12-26 | 2019-05-24 | 中链科技有限公司 | 基于区块链的酒店入住处理方法、装置、***及计算设备 |
-
2019
- 2019-11-28 CN CN201911191986.4A patent/CN111008718B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108830994A (zh) * | 2018-06-23 | 2018-11-16 | 辽宁工程技术大学 | 一种基于云商务区块链的高安全性酒店入住*** |
CN109584110A (zh) * | 2018-11-22 | 2019-04-05 | 广州点睿信息科技有限公司 | 一种基于区块链的智能酒店管理装置及方法 |
CN109543869A (zh) * | 2018-11-27 | 2019-03-29 | 中链科技有限公司 | 基于区块链网络的酒店预订结算方法、装置及*** |
CN109800897A (zh) * | 2018-12-26 | 2019-05-24 | 中链科技有限公司 | 基于区块链的酒店入住处理方法、装置、***及计算设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111008718A (zh) | 2020-04-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111008718B (zh) | 基于区块链的酒店管理方法、装置、终端及存储介质 | |
CN108805573B (zh) | 一种信息验证方法、服务器及存储介质 | |
US11405395B2 (en) | Accessing an internet of things device using blockchain metadata | |
US10808427B1 (en) | Smart lock box | |
CN111080295B (zh) | 一种基于区块链的电子合同处理方法以及设备 | |
EP3213459B1 (en) | A multi-user strong authentication token | |
Wu | An e-voting system based on blockchain and ring signature | |
WO2017197974A1 (zh) | 一种基于生物特征的安全认证方法、装置及电子设备 | |
CN109379369A (zh) | 单点登录方法、装置、服务器及存储介质 | |
CN102930199B (zh) | 多承租人订阅环境中的安全机器登记 | |
US10212151B2 (en) | Method for operating a designated service, service unlocking method, and terminal | |
US11539526B2 (en) | Method and apparatus for managing user authentication in a blockchain network | |
CN109544302A (zh) | 基于区块链的租房管理方法、电子装置 | |
CN113743921B (zh) | 数字资产的处理方法、装置、设备及存储介质 | |
CN109361697A (zh) | 基于sim卡加载pki实现可信身份认证的方法 | |
CN110417790A (zh) | 区块链实名制排队***及方法 | |
CN111881483A (zh) | 基于区块链的资源账户绑定方法、装置、设备和介质 | |
US20170104748A1 (en) | System and method for managing network access with a certificate having soft expiration | |
US20190288833A1 (en) | System and Method for Securing Private Keys Behind a Biometric Authentication Gateway | |
CN110298152A (zh) | 一种保护用户隐私和***安全的线上身份管理方法 | |
CN110661779A (zh) | 基于区块链网络的电子证件管理方法、***、设备及介质 | |
LU93150B1 (en) | Method for providing secure digital signatures | |
CN111324666B (zh) | 基于区块链的数据处理方法及装置 | |
CN115935318B (zh) | 一种信息处理方法、装置、服务器、客户端及存储介质 | |
CN107196957A (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 |