CN109272383A - 基于区块链的商品信息生成方法、区块链节点及其系统 - Google Patents
基于区块链的商品信息生成方法、区块链节点及其系统 Download PDFInfo
- Publication number
- CN109272383A CN109272383A CN201811032914.0A CN201811032914A CN109272383A CN 109272383 A CN109272383 A CN 109272383A CN 201811032914 A CN201811032914 A CN 201811032914A CN 109272383 A CN109272383 A CN 109272383A
- Authority
- CN
- China
- Prior art keywords
- request
- node
- merchandise news
- purchase
- intelligent contract
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
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/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3821—Electronic credentials
-
- 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/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
- G06Q20/4014—Identity check for transactions
- G06Q20/40145—Biometric identity checks
-
- 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/407—Cancellation of a transaction
-
- 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/42—Confirmation, e.g. check or permission by the legal debtor of payment
-
- 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
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
-
- 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
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0609—Buyer or seller confidence or 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
- 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
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Engineering & Computer Science (AREA)
- Finance (AREA)
- General Physics & Mathematics (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Marketing (AREA)
- Economics (AREA)
- Development Economics (AREA)
- Technology Law (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及区块链技术领域,特别是涉及一种基于区块链的商品信息生成方法、区块链节点及其系统。方法包括:接收普通节点发送的商务请求;根据商务请求的请求类型,选择并执行对应类型的智能合约,以生成商品信息,商务请求的请求类型包括购买请求或贩卖请求,购买请求或贩卖请求皆对应有各自类型的智能合约;生成包含商品信息的区块数据;向共识节点发送区块数据,以使共识节点共识验证区块数据。由于区块链具有不可篡改、去中心化及高度透明化的特点,能够提供去信任化、高度透明化的交易方式。并且,该区块链包含购买请求或贩卖请求皆对应有各自类型的智能合约,无论是购买商品或贩卖商品,其都能够自动实现并促成交易,进而提高交易效率。
Description
技术领域
本发明涉及区块链技术领域,特别是涉及一种基于区块链的商品信息生成方法、区块链节点及其系统。
背景技术
商品交易分为购买商品与贩卖商品,无论是购买商品还是贩卖商品,商家与用户或者商家与商家之间的传统交易方式存在效率低下,尤其是交易的供应链比较长时,交易效率低下这一因素会更加明显。
发明内容
本发明实施例一个目的旨在提供一种基于区块链的商品信息生成方法、区块链节点及其系统,其能够提供去信任化、高度透明化并且提高交易效率的方式。
为解决上述技术问题,本发明实施例提供以下技术方案:
在第一方面,本发明实施例提供一种基于区块链的商品信息生成方法,所述方法包括:
接收普通节点发送的商务请求;
根据所述商务请求的请求类型,选择并执行对应类型的智能合约,以生成商品信息,所述商务请求的请求类型包括购买请求或贩卖请求,所述购买请求或所述贩卖请求皆对应有各自类型的智能合约;
生成包含所述商品信息的区块数据;
向共识节点发送所述区块数据,以使所述共识节点共识验证所述区块数据。
可选地,智能合约的类型包括购买型的智能合约与贩卖型的智能合约;
所述根据所述商务请求的请求类型,选择并执行对应类型的智能合约,以生成商品信息,包括:
判断所述商务请求的请求类型是购买请求还是贩卖请求;
若是购买请求,选择并执行所述购买型的智能合约,以生成商品信息;
若是贩卖请求,选择并执行所述贩卖型的智能合约,以生成商品信息。
可选地,所述执行所述购买型的智能合约,以生成商品信息,包括:
根据所述购买型的智能合约,等待购买确认请求,所述购买确认请求由商家触发所述普通节点产生的;
接收所述普通节点发送的所述购买确认请求;
根据所述购买确认请求,等待用户确认请求,所述用户确认请求由用户触发所述普通节点产生的;
接收所述普通节点发送的所述用户确认请求;
根据所述用户确认请求,向所述普通节点发送所述第一商品信息,以使所述普通节点向所述商家发送所述第一商品信息。
可选地,所述执行所述购买型的智能合约,以生成商品信息,还包括:
检测所述购买确认请求或所述用户确认请求在预设时间段内未被响应,自动取消本次交易。
可选地,所述执行所述贩卖型的智能合约,包括:
根据所述贩卖型的智能合约,等待贩卖确认请求,所述贩卖确认请求由用户触发所述普通节点产生的;
接收所述普通节点发送的所述贩卖确认请求;
根据所述贩卖确认请求,等待商家确认请求,所述商家确认请求由商家触发所述普通节点产生的;
接收所述普通节点发送的所述商家确认请求;
根据所述商家确认请求,向所述普通节点发送所述第二商品信息,以使所述普通节点向所述用户发送所述第二商品信息。
可选地,所述执行所述贩卖型的智能合约,还包括:
检测所述贩卖确认请求或所述商家确认请求在预设时间段内未被响应,自动取消本次交易。
在第二方面,本发明实施例提供一种基于区块链的商品信息生成装置,所述装置包括:
接收模块,用于接收普通节点发送的商务请求;
执行模块,用于根据所述商务请求的请求类型,选择并执行对应类型的智能合约,以生成商品信息,所述商务请求的请求类型包括购买请求或贩卖请求,所述购买请求或所述贩卖请求皆对应有各自类型的智能合约;
生成模块,用于生成包含所述商品信息的区块数据;
验证模块,用于向共识节点发送所述区块数据,以使所述共识节点共识验证所述区块数据。
在第三方面,本发明实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使代理节点执行任一项所述的基于区块链的商品信息生成方法。
在第四方面,本发明实施例提供一种区块链节点,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够用于执行任一项所述的基于区块链的商品信息生成方法。
在第五方面,本发明实施例提供一种区块链系统,包括若干所述的区块链节点。
在第六方面,本发明实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使区块链节点执行如上任一项所述的基于区块链的商品信息生成方法。
在第七方面,本发明实施例提供一种计算机程序产品,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被区块链节点执行时,使所述区块链节点执行任一项所述的基于区块链的商品信息生成方法。
在本发明各个实施例提供的基于区块链的商品信息生成方法、区块链节点及其系统中,首先,接收普通节点发送的商务请求;其次,根据所述商务请求的请求类型,选择并执行对应类型的智能合约,以生成商品信息,所述商务请求的请求类型包括购买请求或贩卖请求,所述购买请求或所述贩卖请求皆对应有各自类型的智能合约,每个类型的智能合约皆存储于所述区块链中;再次,生成包含所述商品信息的区块数据;最后,向共识节点发送所述区块数据,以使所述共识节点共识验证所述区块数据。因此,由于区块链具有不可篡改、去中心化及高度透明化的特点,能够提供去信任化、高度透明化的交易方式。并且,该区块链包含购买请求或贩卖请求皆对应有各自类型的智能合约,无论是购买商品或贩卖商品,其都能够自动实现并促成交易,进而提高交易效率。
附图说明
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
图1是本发明实施例提供一种区块链网络的架构模型示意图;
图2是本发明实施例提供一种区块链系统的结构示意图;
图3是本发明实施例提供一种无人商店的结构示意图;
图3a是本发明实施例提供一种无人商店的电路原理示意图;
图4是本发明实施例提供一种基于区块链的商品信息生成方法的流程示意图;
图5是本发明实施例提供一种基于区块链的商品信息生成装置的结构示意图;
图6是本发明实施例提供一种区块链节点的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
区块链技术亦称为分布式账本技术,是一种分布式互联网数据库技术。基于区块链技术构建的网络可以称之为区块链网络,区块链网络包含多个区块链节点,每一个节点对应至少一个区块链,每一个区块链上至少包含一个区块。区块链技术具备去中心化、公开透明、不可篡改、可信任等特点,因此,区块链技术应用领域越来越广泛。
请参阅图1,图1是本发明实施例提供一种区块链网络的架构模型示意图。如图1所示,该区块链网络100包括数据层11、网络层12、共识层13以及智能合约层14。
数据层11封装了底层数据区块以及相关的数据加密和时间戳等基础数据和基本算法。网络层12包括分布式组网机制、数据传播机制和数据验证机制等等。共识层13封装网络节点的各类共识算法。智能合约层14封装各类脚本、算法和智能合约。
本发明实施例的基于区块链的商品信息生成方法,可以在任何合适类型、具有运算能力的区块链节点中执行,例如服务器、台式计算机、智能手机、平板电脑以及其他电子产品中。其中,此处的服务器可以是一个物理服务器或者多个物理服务器虚拟而成的一个逻辑服务器。服务器也可以是多个可互联通信的服务器组成的服务器群,且各个功能模块可分别分布在服务器群中的各个服务器上。
本发明实施例的基于区块链的商品信息生成装置可以作为软件系统,独立设置在上述区块链节点中,也可以作为整合在处理器中的其中一个功能模块,执行本发明实施例的基于区块链的商品信息生成方法。
本发明实施例提供的区块链包括诸如公有区块链(Public Block Chains)、联合区块链(Consortium Block Chains)及私有区块链(Private Block Chains)。
请参阅图2,图2是本发明实施例提供一种区块链系统的结构示意图。如图2所示,区块链系统200包括购买客户端21、贩卖客户端22、普通节点23、代理节点24及共识节点25。
购买客户端21、贩卖客户端22皆与普通节点23通讯连接,普通节点23与代理节点24通讯连接,代理节点24还与共识节点25通讯连接。其中,各个区块链节点之间的通讯支持点对点通讯方式(Point to point communication,P2P)。
购买客户端21作为用户在线上向商家购买商品的工具,例如,用户A在线上向商家B购买一箱啤酒时,用户A通过购买客户端21在商家B的商品页面选择啤酒实施购买。
购买客户端21的显示屏呈现有特定商家的商品页面,用户可以在商品页面上挑选商品进行购买。当用户在商品页面完成了商品的购买行为,于是,购买客户端21向普通节点23发送第一请求,其中,第一请求携带有购买标识。普通节点23从第一请求解析出购买标识,并根据购买标识,向代理节点24发送购买请求,使得代理节点24根据购买请求执行购买型的智能合约,以完成商品的购买。
贩卖客户端22作为用户在线上向商家贩卖商品的工具,例如,用户C在线上向商家D出售一个二手手机时,将二手手机挂在商品页面上。商家选中该二手手机进行购买。当商家在商品页面上完成了商品的购买行为,于是,贩卖客户端22向普通节点23发送第二请求,其中,第二请求携带有贩卖标识。普通节点23从第二请求解析出贩卖标识,并根据贩卖标识,向代理节点24发送贩卖请求,使得代理节点24根据贩卖请求执行贩卖型的智能合约,以完成商品的购买。
在一些实施例中,购买行为所对应智能合约的流程与贩卖行为所对应智能合约的流程可以相同,亦可以不同。设计者可以根据业务逻辑,编写购买行为或贩卖行为对应的智能合约。
普通节点23持有流通的电子货币,在区块链系统中拥有投票选举的权利。普通节点23可以进行相关交易操作,但是没有区块的打包记账权,只能从拥有打包记账权的相关节点处同步记录区块数据。
在一些实施例中,普通节点23还可以完成商品信息生成工作。
代理节点24编写有智能合约代码,普通节点23向代理节点24发送原始区块数据,触发代理节点24的智能合约,使得代理节点的智能合约执行原始区块数据。其中,普通节点23维护有智能合约列表,该智能合约列表记录能够执行智能合约的各个代理节点名单。每当普通节点23接收到区块的原始数据时,普通节点23调取智能合约列表,从智能合约列表中查找出各个代理节点的地址,并向各个代理节点发送原始区块数据。
在本实施例中,代理节点24可以预存多种类型智能合约,其可以根据普通节点23发送的触发请求,解析出智能合约的执行类型。代理节点24再根据解析出的智能合约的执行类型,执行对应的智能合约。例如,在本实施例中,智能合约的类型包括购买型的智能合约与贩卖型的智能合约。所述购买型的智能合约用于用户向商家购买商品时,提供验证及执行合约时订定的条件;所述贩卖型的智能合约用于商家之间互相贩卖商品时,提供验证及执行合约时订定的条件。
当某个代理节点陷入故障,其余代理节点将该某个代理节点的地址广播至全网,普通节点23监测到该广播信息,并更新智能合约列表,后续发送区块的原始数据时,普通节点23不向该某个代理节点24发送数据,以提高工作效率。
智能合约的代码是根据业务场景逻辑编写的,例如,在无人商店中,智能合约可以用于商品信息生成。
代理节点24根据智能合约执行区块的原始数据后,输出待验证的区块数据。接着,代理节点24还将待验证的区块数据作签名,并将签名后的区块数据打包发送至共识节点25。共识节点25利用代理节点24的公钥验证签名后的区块数据,若验证成功,则认为该签名后的区块数据是合法代理节点24发送的,后续接着对该区块数据进行共识处理。若验证未成功,则认为该签名后的区块数据是非法代理节点24发送的。例如,代理节点24使用自身私钥对当前区块的哈希内容作签名运算,得到该签名。
共识节点25用于共识验证代理节点24上传的区块数据。其中,共识节点25可以支持以下任意一种共识算法:工作量证明(Proof of Work,PoW)、权益证明(Proof of Stake,POS)、股份授权证明(Delegate proof of Stake,DPoS)、实用拜占庭容错(practicalByzantine Fault Tolerance,PBFT)、授权拜占庭容错(Delegated Byzantine FaultTolerance,DBFT)等等。
每个共识节点25皆需要在代理节点24注册,待注册成功后,该共识节点便为合法共识节点。注册过程如下:
1、共识节点25向代理节点24提交注册信息。
其中,该注册信息包括以下一种或多种信息:共识节点25的设备序列号SN、用户信息及矿工钱包地址。
2、代理节点24对注册信息进行检查。
检查过程包括:检测SN编号格式是否正确、SN是否存在数据库中、SN是否已被绑定了其他用户等等。
3、代理节点24记录注册信息。
4、代理节点24将注册结果返回给共识节点25。
5、代理节点24将新的注册数据广播至区块链系统200。
在上述区块链系统200中,区块是用于存储交易摘要信息的载体,每个区块皆包含区块头与区块体,区块头记载的信息用于标识区块本身、前一个区块的信息摘要以及区块在整个账本中的位置。区块体用于存储交易摘要信息以及验证交易信息并保存交易不被篡改。
区块链为将每个区块按照生成时间的顺序逐个连接起来,便形成了一个链式的数据存储结构。在整个区块链中,第一个区块称为创世区块,其区块高度为0,之后的每个区块的区块高度依次加1,并且在区块头中写入前一个区块头的哈希值。区块链上的各个区块之间由各个区块上的上一个区块头哈希值进行链接。
因此,区块链具有不可篡改性。基于此,本发明实施例提供一种基于区块链的商品信息生成方法,基于区块链的商品信息生成方法应用于无人商店。
请参阅图3,图3是本发明实施例提供一种无人商店的结构示意图。如图3所示,该无人商店300设有结账区域30和商品区,商品区用于摆放商品,结账区域30用于对商品进行结算,该结账区域30设有第一出口31和第二出口32,当第一出口31开启时,结账区域30和商品区连通,用户可以从商品区进入该结账区域30,当第二出口32开启时,用户可以从结账区域30步行至无人商店300的外界环境,离开无人商店。
可选地,该结账区域30为“Z”形状,该第一出口31和第二出口32分别设置在该“Z”形状的结账区域。
该无人商店300还设有入口,该入口用于使用户进入该无人商店300,并且该入口只允许用户进入。
请一并参阅图3和图3a,该无人商店300还包括传感器33、摄像头34、射频读写设备35以及处理器36。
其中,传感器33、摄像头34以及射频读写设备35分别连接处理器36。
传感器33具体用于检测第一出口31的预设区域内是否存在用户的感应信号,当该预设区域内存在用户时,即触发该感应信号产生。该预设区域具体是商品区内接近第一出口31的区域,用户只有通过该区域才能进入结账区域30。因此,当检测到预设区域内存在用户的感应信号时,即表示有用户想离开无人商店,并且其当前状态是待进入结账区域30。
摄像头34包含多个,并且设置在无人商店300内,其具体设置在结账区域30内、第一出口31处、第二出口32处、无人商店300的进口处以及商品区等等。该摄像头34用于采集用户图像,并且将采集到的用户图像发送至处理器36。
在一些实施例中,摄像头34可以对同一用户进行运动轨迹追踪。例如,当无人商店300的进口处拍摄到用户A进入无人商店后,根据用户A在无人商店300内的活动区域,由该区域对应的摄像头34拍摄用户A的图像,一直到用户A离开该无人商店300,才结束对用户A的图像采集,获取用户A在无人商店内活动时的全部图像后,可以根据图像采集的先后顺序分析用户A的运动轨迹,从而可以根据该运动轨迹准确识别用户A,以及分析用户A所购买的商品的类别等。
射频读写设备35用于识别结账区域内是否存在商品,并且还用于读取用户所购买的商品的信息,该信息包括商品价格、商品品名、商品类别等等。该射频读写设备35将读取到的商品信息发送至处理器36。该射频读写设备35具体可以是RFID读写器。
处理器36用于接收传感器33、摄像头34以及射频读写设备35发送的相关信息,并且对这些相关信息进行处理。本实施例中的处理器36具体用于处理自动结账的问题。
具体地,当传感器33检测到第一出口31的预设区域内存在用户的感应信号后,将该感应信号发送至处理器36,此时,处理器36控制摄像头34采集该结账区域30内的第一区域图像,摄像头34将采集到的第一区域图像发送至处理器36。处理器36用于根据该第一区域图像,判断结账区域30内是否有人;如果没有人,控制第一出口31的门开启,以及控制摄像头34采集所述结账区域30的第二区域图像,并且获取所述第二区域图像,从而根据所述第二区域图像,判断所述结账区域30内是否只有一位用户;如果结账区域30内只有一位用户,并且通过射频读写设备35检测到结账区域30内存在商品时,则控制第一出口31的门关闭,以及获取所述用户的面部特征,并且根据所述面部特征获取所述用户的账号,以及通过所述射频读写设备35获取所述用户选购的商品信息以及其对应的价格;根据所述价格从所述用户的账号中扣除相应的金额,并且控制所述第二出口32的门开启。在这里,只有在结账区域30内只有一位用户并且存在商品时,才执行相应的结账操作,而且在结账时通过人脸识别来识别当前用户,从而能够准确的识别用户,以保证结账更准确。
请参阅图4,图4是本发明实施例提供一种基于区块链的商品信息生成方法的流程示意图。如图4所示,基于区块链的商品信息生成方法S400包括:
S41、接收普通节点发送的商务请求;
在本实施例中,商务请求包括购买请求与贩卖请求,购买请求由购买商品触发的,贩卖请求由贩卖商品触发的。例如,用户可以通过购买客户端触发普通节点向代理节点发送购买请求,或者,商家可以通过贩卖客户端触发普通节点向代理节点发送贩卖请求。
S42、根据商务请求的请求类型,选择并执行对应类型的智能合约,以生成商品信息,商务请求的请求类型包括购买请求或贩卖请求,购买请求或贩卖请求皆对应有各自类型的智能合约;
在本实施例中,商务请求携带有请求标识,例如,当商务请求为购买请求时,其携带有购买标识。当商务请求为贩卖请求时,其携带有贩卖标识。
选择对应类型的智能合约时,代理节点解析商务请求,若解析出购买标识,则选择购买型的智能合约。若解析出贩卖标识,则选择贩卖型的智能合约。因此,代理节点根据商务请求的请求类型,选择并执行对应类型的智能合约时,首先,判断商务请求的请求类型是购买请求还是贩卖请求;其次,若是购买请求,选择并执行购买型的智能合约,以生成商品信息;若是贩卖请求,选择并执行贩卖型的智能合约,以生成商品信息。
如前所述,代理节点皆预存有对应类型的智能合约的合约内容,执行对应类型的智能合约时,抓取其对应的合约内容进行执行即可。
商品信息包括购买人、贩卖人、购买地址、贩卖地址、购买/贩卖时间、商品名称、数量等等。
在本实施例中,执行不同类型智能合约,其智能合约内容皆不同。
举例而言:代理节点执行购买型的智能合约以生成商品信息的过程中,首先,代理节点根据购买型的智能合约,等待购买确认请求,购买确认请求由商家触发普通节点产生的,亦即,当代理节点解析出用户向商家发送的购买请求后,商家需要确认该购买请求,类似商家需要完成接单动作。当代理节点尚未接收到普通节点发送的购买确认请求时,代理节点无法完成下一步合约流程,商品还未购买成功。
当代理节点接收普通节点发送的购买确认请求后,根据购买确认请求,等待用户确认请求,用户确认请求由用户触发普通节点产生的,例如,一般的,商家接单后,向用户发送接单成功信息,于是,商家在等待用户支付商品货款后,再向用户配送商品,亦即,商家接单后,通过普通节点向代理节点发送购买确认请求,于是,代理节点根据购买确认请求,等待用户支付货款,亦即,在等待接收用户确认请求。当用户支付货款后,代理节点便接收到普通节点发送的用户确认请求。代理节点根据用户确认请求,向普通节点发送第一商品信息,以使普通节点向商家发送第一商品信息,商家凭借第一商品信息向该用户配送商品。
在一些实施例中,代理节点检测购买确认请求或用户确认请求在预设时间段内未被响应,自动取消本次交易。
通过此种方式,其能够提高交易效率。
再举例而言:代理节点执行贩卖型的智能合约的过程中,首先,代理节点根据贩卖型的智能合约,等待贩卖确认请求,贩卖确认请求由用户触发普通节点产生的。
其次,代理节点接收普通节点发送的贩卖确认请求,并根据贩卖确认请求,等待商家确认请求,商家确认请求由商家触发普通节点产生的。
再次,代理节点接收普通节点发送的商家确认请求;
最后,代理节点根据商家确认请求,向普通节点发送第二商品信息,以使普通节点向用户发送所述第二商品信息。
在一些实施例中,代理节点检测贩卖确认请求或商家确认请求在预设时间段内未被响应,自动取消本次交易。
S43、生成包含商品信息的区块数据;
S44、向共识节点发送区块数据,以使共识节点共识验证区块数据。
代理节点将区块数据发送给共识节点时,代理节点使用自身私钥对区块数据作签名运算,得到区块签名,其中与私钥对应的公钥广播至区块链系统。其次,代理节点再将区块签名与区块数据封装并向共识节点发送,共识节点验证签名后的区块数据时,共识节点使用代理节点的合法公钥验证区块签名,若区块签名合法,便认为新区块数据由合法代理节点发送的。若区块签名非法,便认为区块数据由非法代理节点发送的,因此,采用此种方式能够提高区块数据的安全性。
当共识节点验证区块数据为合法代理节点发送时,各个共识节点采用股份证明算法(Proof of Stake,POS)或者委任权益证明算法(Delegated Proof of Stake,DPOS)对区块数据进行验证。当验证通过该区块数据后,共识节点补全其它区块信息,其它区块信息包括区块签名、时间戳等等,打包新区块数据,广播全网。
当共识节点验证区块数据为非法代理节点发送的,丢弃该区块数据。
在一些实施例中,该基于区块链的商品信息生成方法应用于联盟链,当采用股份授权证明算法作为共识机制时,股份授权证明算法的股份占比按照各个运营商的无人商店规模分配。例如,联盟链的各个区块链节点为无人商店的各个运营商架设的服务器,无人商店规模包括无人商店总面积或注册用户量等等。其中,运营商A的无人商店规模最大,占比为10%,运营商B为6%,运营商C为3%......,以此类推。
有些共识节点陷入故障或者作恶(不签署验证新区块链数据),为了保证区块链系统能够正常出块,其余共识节点可以作视图更新,停止故障或作恶共识节点的共识权利。因此,在一些实施例中,共识节点共识验证区块数据的过程中,在检测到共识验证失败的次数大于预设阈值时,共识节点组成的共识服务器群确定恶意共识节点,恶意共识节点为未签署验证区块数据并导致共识验证失败次数最多的节点。共识节点组成的共识服务器群禁止恶意共识节点参与共识验证,并在剩余的共识节点重新分配股份并共识验证区块数据,例如,占比为10%的共识节点A作恶,于是,首先共识服务器群停止共识节点A的投票权利,其次,共识服务器将共识节点A的占比10%按照预设规则分配给其余共识节点,例如,均分给其余共识节点,或者,按照共识节点的工作年龄分配给其余节点,工作年龄越长,分配占比越高,工作年龄越短,分配占比越低。
再次,共识服务器群在检测到共识验证失败的次数小于预设阈值时,继续共识验证区块数据。
采用此种方式,其保证区块链系统能够顺利出块。
综上所述,由于区块链具有不可篡改、去中心化及高度透明化的特点,能够提供去信任化、高度透明化的交易方式。并且,该区块链包含购买请求或贩卖请求皆对应有各自类型的智能合约,无论是购买商品或贩卖商品,其都能够自动实现并促成交易,进而提高交易效率。
需要说明的是,在上述各个实施例中,上述各步骤之间并不必然存在一定的先后顺序,本领域普通技术人员,根据本发明实施例的描述可以理解,不同实施例中,上述各步骤可以有不同的执行顺序,亦即,可以并行执行,亦可以交换执行等等。
作为本发明实施例的另一方面,本发明实施例提供一种基于区块链的商品信息生成装置。本发明实施例的基于区块链的商品信息生成装置可以作为其中一个软件功能单元,基于区块链的商品信息生成装置包括若干指令,该若干指令存储于存储器内,处理器可以访问该存储器,调用指令进行执行,以完成上述基于区块链的商品信息生成方法。
请参阅图5,基于区块链的商品信息生成装置500包括:接收模块51、执行模块52、生成模块53及验证模块54。
接收模块51用于接收普通节点发送的商务请求;
执行模块52用于根据所述商务请求的请求类型,选择并执行对应类型的智能合约,以生成商品信息,所述商务请求的请求类型包括购买请求或贩卖请求,所述购买请求或所述贩卖请求皆对应有各自类型的智能合约;
生成模块53用于生成包含所述商品信息的区块数据;
验证模块54用于向共识节点发送所述区块数据,以使所述共识节点共识验证所述区块数据。
因此,由于区块链具有不可篡改、去中心化及高度透明化的特点,能够提供去信任化、高度透明化的交易方式。并且,该区块链包含购买请求或贩卖请求皆对应有各自类型的智能合约,无论是购买商品或贩卖商品,其都能够自动实现并促成交易,进而提高交易效率。
需要说明的是,上述基于区块链的商品信息生成装置可执行本发明实施例所提供的基于区块链的商品信息生成方法,具备执行方法相应的功能模块和有益效果。未在基于区块链的商品信息生成装置实施例中详尽描述的技术细节,可参见本发明实施例所提供的基于区块链的商品信息生成方法。
作为本发明实施例的另一方面,本发明实施例提供一种区块链节点。请参阅图6,该区块链节点600包括:一个或多个处理器61以及存储器62。其中,图6中以一个处理器61为例。
处理器61和存储器62可以通过总线或者其他方式连接,图6中以通过总线连接为例。
存储器62作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本发明实施例中的基于区块链的商品信息生成方法对应的程序指令/模块。处理器61通过运行存储在存储器62中的非易失性软件程序、指令以及模块,从而执行上述各个实施例的基于区块链的商品信息生成方法,或者上述各个实施例的基于区块链的基于区块链的商品信息生成装置的各种功能应用以及数据处理。
存储器62可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器62可选包括相对于处理器61远程设置的存储器,这些远程存储器可以通过网络连接至处理器61。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
所述程序指令/模块存储在所述存储器62中,当被所述一个或者多个处理器61执行时,执行上述任意方法实施例中的基于区块链的商品信息生成方法,例如,从而执行上述各个实施例的基于区块链的商品信息生成方法,或者上述各个实施例的基于区块链的商品信息生成装置的各种功能应用以及数据处理。
本发明实施例还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使区块链节点执行如上任一项所述的基于区块链的商品信息生成方法。
本发明实施例提供了一种计算机程序产品,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被区块链节点执行时,使所述区块链节点执行任一项所述的基于区块链的商品信息生成方法。
以上所描述的装置或设备实施例仅仅是示意性的,其中所述作为分离部件说明的单元模块可以是或者也可以不是物理上分开的,作为模块单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络模块单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明,它们没有在细节中提供;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (10)
1.一种基于区块链的商品信息生成方法,其特征在于,所述方法包括:
接收普通节点发送的商务请求;
根据所述商务请求的请求类型,选择并执行对应类型的智能合约,以生成商品信息,所述商务请求的请求类型包括购买请求或贩卖请求,所述购买请求或所述贩卖请求皆对应有各自类型的智能合约;
生成包含所述商品信息的区块数据;
向共识节点发送所述区块数据,以使所述共识节点共识验证所述区块数据。
2.根据权利要求1所述的方法,其特征在于,智能合约的类型包括购买型的智能合约与贩卖型的智能合约;
所述根据所述商务请求的请求类型,选择并执行对应类型的智能合约,以生成商品信息,包括:
判断所述商务请求的请求类型是购买请求还是贩卖请求;
若是购买请求,选择并执行所述购买型的智能合约,以生成商品信息;
若是贩卖请求,选择并执行所述贩卖型的智能合约,以生成商品信息。
3.根据权利要求2所述的方法,其特征在于,所述执行所述购买型的智能合约,以生成商品信息,包括:
根据所述购买型的智能合约,等待购买确认请求,所述购买确认请求由商家触发所述普通节点产生的;
接收所述普通节点发送的所述购买确认请求;
根据所述购买确认请求,等待用户确认请求,所述用户确认请求由用户触发所述普通节点产生的;
接收所述普通节点发送的所述用户确认请求;
根据所述用户确认请求,向所述普通节点发送所述第一商品信息,以使所述普通节点向所述商家发送所述第一商品信息。
4.根据权利要求3所述的方法,其特征在于,所述执行所述购买型的智能合约,以生成商品信息,还包括:
检测所述购买确认请求或所述用户确认请求在预设时间段内未被响应,自动取消本次交易。
5.根据权利要求2所述的方法,其特征在于,所述执行所述贩卖型的智能合约,包括:
根据所述贩卖型的智能合约,等待贩卖确认请求,所述贩卖确认请求由用户触发所述普通节点产生的;
接收所述普通节点发送的所述贩卖确认请求;
根据所述贩卖确认请求,等待商家确认请求,所述商家确认请求由商家触发所述普通节点产生的;
接收所述普通节点发送的所述商家确认请求;
根据所述商家确认请求,向所述普通节点发送所述第二商品信息,以使所述普通节点向所述用户发送所述第二商品信息。
6.根据权利要求5所述的方法,其特征在于,所述执行所述贩卖型的智能合约,还包括:
检测所述贩卖确认请求或所述商家确认请求在预设时间段内未被响应,自动取消本次交易。
7.一种基于区块链的商品信息生成装置,其特征在于,所述装置包括:
接收模块,用于接收普通节点发送的商务请求;
执行模块,用于根据所述商务请求的请求类型,选择并执行对应类型的智能合约,以生成商品信息,所述商务请求的请求类型包括购买请求或贩卖请求,所述购买请求或所述贩卖请求皆对应有各自类型的智能合约;
生成模块,用于生成包含所述商品信息的区块数据;
验证模块,用于向共识节点发送所述区块数据,以使所述共识节点共识验证所述区块数据。
8.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使代理节点执行如权利要求1至6任一项所述的基于区块链的商品信息生成方法。
9.一种区块链节点,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够用于执行如权利要求1至6任一项所述的基于区块链的商品信息生成方法。
10.一种区块链系统,其特征在于,包括若干如权利要求9所述的区块链节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811032914.0A CN109272383A (zh) | 2018-09-05 | 2018-09-05 | 基于区块链的商品信息生成方法、区块链节点及其系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811032914.0A CN109272383A (zh) | 2018-09-05 | 2018-09-05 | 基于区块链的商品信息生成方法、区块链节点及其系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109272383A true CN109272383A (zh) | 2019-01-25 |
Family
ID=65187249
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811032914.0A Pending CN109272383A (zh) | 2018-09-05 | 2018-09-05 | 基于区块链的商品信息生成方法、区块链节点及其系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109272383A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109934672A (zh) * | 2019-02-19 | 2019-06-25 | 薛伟忠 | 一种基于区块链通证经济的网上商城系统 |
CN110458671A (zh) * | 2019-08-16 | 2019-11-15 | 弦子科技(北京)有限公司 | 一种基于商品数字凭证的商品流通方法及装置 |
CN111522831A (zh) * | 2020-04-30 | 2020-08-11 | 中科软科技股份有限公司 | 一种联盟链账本平台的数据记录方法及系统 |
CN111652629A (zh) * | 2020-05-21 | 2020-09-11 | 杭州溪塔科技有限公司 | 一种基于区块链的商品防伪方法和装置 |
CN112070567A (zh) * | 2019-06-11 | 2020-12-11 | 青岛海链数字科技有限公司 | 基于区块链的品质管控系统及其控制方法 |
CN113159944A (zh) * | 2021-03-10 | 2021-07-23 | 华控清交信息科技(北京)有限公司 | 一种数据处理方法、装置和用于数据处理的装置 |
CN113271346A (zh) * | 2021-04-30 | 2021-08-17 | 复旦大学 | 一种基于区块链的盲盒出售平台 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103927659A (zh) * | 2014-04-18 | 2014-07-16 | 刘志望 | 一种虚拟货币的即时转移和安全支付方法 |
CN107688944A (zh) * | 2017-07-21 | 2018-02-13 | 杭州云象网络技术有限公司 | 一种基于区块链的电力系统交易方法 |
CN108109017A (zh) * | 2018-01-11 | 2018-06-01 | 杭州秘猿科技有限公司 | 基于区块链智能合约的商品交易系统 |
CN108256859A (zh) * | 2018-01-02 | 2018-07-06 | 中国工商银行股份有限公司 | 基于区块链的金融产品交易共识方法、节点及系统 |
-
2018
- 2018-09-05 CN CN201811032914.0A patent/CN109272383A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103927659A (zh) * | 2014-04-18 | 2014-07-16 | 刘志望 | 一种虚拟货币的即时转移和安全支付方法 |
CN107688944A (zh) * | 2017-07-21 | 2018-02-13 | 杭州云象网络技术有限公司 | 一种基于区块链的电力系统交易方法 |
CN108256859A (zh) * | 2018-01-02 | 2018-07-06 | 中国工商银行股份有限公司 | 基于区块链的金融产品交易共识方法、节点及系统 |
CN108109017A (zh) * | 2018-01-11 | 2018-06-01 | 杭州秘猿科技有限公司 | 基于区块链智能合约的商品交易系统 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109934672A (zh) * | 2019-02-19 | 2019-06-25 | 薛伟忠 | 一种基于区块链通证经济的网上商城系统 |
CN112070567A (zh) * | 2019-06-11 | 2020-12-11 | 青岛海链数字科技有限公司 | 基于区块链的品质管控系统及其控制方法 |
CN110458671A (zh) * | 2019-08-16 | 2019-11-15 | 弦子科技(北京)有限公司 | 一种基于商品数字凭证的商品流通方法及装置 |
CN111522831A (zh) * | 2020-04-30 | 2020-08-11 | 中科软科技股份有限公司 | 一种联盟链账本平台的数据记录方法及系统 |
CN111652629A (zh) * | 2020-05-21 | 2020-09-11 | 杭州溪塔科技有限公司 | 一种基于区块链的商品防伪方法和装置 |
CN113159944A (zh) * | 2021-03-10 | 2021-07-23 | 华控清交信息科技(北京)有限公司 | 一种数据处理方法、装置和用于数据处理的装置 |
CN113271346A (zh) * | 2021-04-30 | 2021-08-17 | 复旦大学 | 一种基于区块链的盲盒出售平台 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109272383A (zh) | 基于区块链的商品信息生成方法、区块链节点及其系统 | |
CN109146645A (zh) | 基于区块链的商品推荐方法、区块链节点及系统 | |
CN109034851A (zh) | 基于区块链的商品防伪溯源方法及其装置、区块链节点 | |
CN109102308A (zh) | 基于区块链的商品信息维护方法、区块链节点及其系统 | |
CN109146573A (zh) | 基于区块链的商品积分方法及其装置、区块链节点 | |
CN109146499A (zh) | 基于区块链的用户信用调整方法及其装置、区块链节点 | |
CN110322327A (zh) | 一种基于区块链技术的商场消费者购物推荐方法及装置 | |
CN107563754B (zh) | 一种基于区块链的冠字号码信息存储及验证方法 | |
US9747644B2 (en) | Transaction-history driven counterfeit fraud risk management solution | |
JP3574559B2 (ja) | 電子チケットシステム、回収端末、サービス提供端末、利用者端末、電子チケット回収方法及び記録媒体 | |
CN109478307A (zh) | 区块链实现的方法和系统 | |
CN109685551A (zh) | 信息处理方法及其装置、服务器及信息处理系统 | |
US20110251909A1 (en) | Credit card payment system for handling numerous payors | |
CN110458700A (zh) | 一种通证生成方法、供应链金融系统以及电子设备 | |
WO2008014321A9 (en) | System for managing multiple credit accounts | |
CN109255709A (zh) | 一种基于区块链的结账方法及其系统 | |
CN108985930A (zh) | 信息处理方法及装置、区块链节点及存储介质 | |
CN108701270A (zh) | 维修厂的管理方法、系统及数据管理服务器 | |
JP2011525264A (ja) | 自動販売ネットワークを提供するためのシステムおよび方法 | |
CN112037068A (zh) | 资源转移方法、系统、装置、计算机设备和存储介质 | |
CN109327312A (zh) | 认证方法及装置、电子设备 | |
WO2019027264A1 (ko) | 컨텐츠에 대한 가상 화폐 발행 및 유통 시스템 | |
CN109949057A (zh) | 基于区块链的数字艺术作品防伪溯源交易系统及交易方法 | |
CN109754292A (zh) | 停车自助开票方法、装置和电子设备 | |
CN109559179A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190125 |