CN113163001A - 区块链主子链的构建方法及其跨链方法 - Google Patents
区块链主子链的构建方法及其跨链方法 Download PDFInfo
- Publication number
- CN113163001A CN113163001A CN202110379081.0A CN202110379081A CN113163001A CN 113163001 A CN113163001 A CN 113163001A CN 202110379081 A CN202110379081 A CN 202110379081A CN 113163001 A CN113163001 A CN 113163001A
- Authority
- CN
- China
- Prior art keywords
- chain
- sub
- cross
- block
- access
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Abstract
本发明公开了区块链主子链的构建方法及其跨链方法,涉及区块链构建及跨链技术领域。本发明包括建立主链与初始子链间的索引信息;若初始子链访问量大于访问限制时,则创建初始子链;网络管理节点采用Actor集群实现接收以及并发处理;主链与子链间通过主链跨链合约以及子链跨链合约进行跨链交互。本发明通过建立主链与初始子链间的索引信息并配置主子链的节点网络通信参数;主链节点初始化子链读取区块及访问信息;主链新区块的区块头上记录所述区块hash Tree根,当主链产生新区块时,用于通知被索引的初始子链;实现各子链上的并行处理,保证子链访问吞吐量下的性能稳定,解决区块链网络的拥堵,提高区块链网路的并行处理效率。
Description
技术领域
本发明属于区块链构建及跨链技术领域,特别是涉及区块链主子链的构建方法及其跨链方法。
背景技术
链技术:原本存储在特定区块链上的资产可以转换成为另一条链的资产,简单支付验证技术,用于验证一笔交易存在于区块链中,SPV client存储着连续的区块头,但没有区块体,因此只需占用很小的存储空间,当获得一笔交易和这笔交易的Merkle path后,可以验证这笔交易是否存在于区块链上。
区块链技术有很多特点及优点,其中包括:去中心化、开放性、可编程和不可篡改等。区块链的去中心化是指数据的存储、验证和传输均是由分布式的网络节点来完成,系统中节点的权利和义务都是均等的,不依赖于中心的管理节点。无论是新的节点加入到系统中,还是系统原有节点突然停止工作,都不会影响系统的整体运作,从而能够实现数据的分布式记录、存储和更新。
未解决上述问题,本发明提供区块链主子链的构建方法及其跨链方法。
发明内容
本发明的目的在于提供区块链主子链的构建方法及其跨链方法,通过网络管理节点采用Actor集群实现接收以及并发处理,主链与子链间通过主链跨链合约以及子链跨链合约进行跨链交互;实现各子链上的并行处理,保证子链访问吞吐量下的性能稳定,解决区块链网络拥堵的技术问题。
为解决上述技术问题,本发明是通过以下技术方案实现的:
本发明为一种区块链主子链的构建方法,包括如下过程:
A0:建立主链与初始子链间的索引信息,包括如下:
A01:配置主子链的节点网络通信参数,包括IP地址、通信端口以及安全证书;
A02:主链节点初始化子链读取区块及访问信息,基于初始子链的信息生成区块hash Tree、访问hash Tree以及状态hash Tree;
A03:主链新区块的区块头上记录所述区块hash Tree根,当主链产生新区块时,用于通知被索引的初始子链;
A04:当初始子链接收到主链新区块的生成消息,记录主链新区块高度并更新索引信息;
A1:若初始子链访问量大于访问限制时,则创建初始子链,包括如下:
A11:网络管理节点发送初始访问至初始子链用于创建管理合约,根据初始子链提供的子链ID创建一新子链;
A12:网络管理节点或Token所有者向区块链网络广播新访问;
A13:判断初始子链的访问量是否大于访问限制;若是,则执行A14;若否,则新子链创建失败;
A14:通过子链提供的服务完成新子链的注册;
A15:新子链的注册完成后,网络管理节点放弃用当前子链请求,终止服务请求后子链停止当前子链的索引工作;
A2:网络管理节点采用Actor集群实现接收以及并发处理;
A3:主链与子链间通过主链跨链合约以及子链跨链合约进行跨链交互。
作为一种优选的技术方案,A02中网络管理节点采用Actor集群实现接收以及并发处理过程如下:
B00:网络管理节点接收从用户发过来的访问并接收服务处理访问请求,依据当前访问的子链ID将访问放入不同的子链访问队列中;
B01:子链从子链方位队列中按顺序读取并发送给相对应的worker;
其中,任一子链均有对应worker负责当前子链上访问的处理;
B02:worker组中各worker对应处理完访问后,将处理结果以及错误访问返回给子链供新子链区块实用;
其中,任一网络管理节点均有对应的worker组,负责网络管理节点接收的访问的处理。
作为一种优选的技术方案,worker组中的worker数量根据访问队列中待处理访问的数量动态调整。
一种区块链主子链的跨链方法,包括如下过程:
C00:在主链上通过主链跨链合约发起跨链交易请求并记录在交易请求表中;
C01:主链跨链插件监听主链发起的跨链交易请求;
C02:当主链跨链插件收到跨链交易成功后发送给子链跨链插件;
C03:当子链跨链插件接收到主链交易请求后,调用子链跨链合约验证主链交易请求;
C04:当主链交易请求验证通过后,子链跨链插件监听子链交易;
C05:当子链宽脸插件监听到子链交易成功后发送至主链跨链插件;
C06:当主链跨链插件收到子链交易成功后,删除交易请求表中的跨链交易请求。
作为一种优选的技术方案,C03中调用子链跨链合约验证主链交易请求包括如下过程:
子链跨链插件调用子链跨链合约通过核验插件验证主链交易请求。
作为一种优选的技术方案,C06中当主链跨链插件收到子链交易成功后,主链跨链插件调用核验插件核验子链交易成功。
作为一种优选的技术方案,核验插件运行过程如下:
D00:通过区块编号验证是否能够连接到最新的节点;
D01:在处理分叉时,通过后者代替前者的方式实现对分叉的处理,而后删除旧数据;
D02:通过区块id验证是否能够连接到最新节点;
D03:构造区块头并验证秘钥签名。
本发明具有以下有益效果:
1、本发明首先建立主链与初始子链间的索引信息并配置主子链的节点网络通信参数;主链节点初始化子链读取区块及访问信息,基于初始子链的信息生成区块hashTree、访问hash Tree以及状态hash Tree;主链新区块的区块头上记录所述区块hash Tree根,当主链产生新区块时,用于通知被索引的初始子链;实现各子链上的并行处理,保证子链访问吞吐量下的性能稳定,解决区块链网络的拥堵,提高区块链网路的并行处理效率。
2、本发明当子链跨链插件接收到主链交易请求后,调用子链跨链合约验证主链交易请求;当主链交易请求验证通过后,子链跨链插件监听子链交易;跨链交易并行,不同的跨链交易之间互不影响,可以并行执行,因此支持很大的并发量,具有安全性。
当然,实施本发明的任一产品并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的一种区块链主子链的构建方法的流程图;
图2为本发明中网络管理节点采用Actor集群实现接收以及并发处理的流程图;
图3为本发明中一种区块链主子链的跨链方法的流程图;
图4为本发明中核验插件运行的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
请参阅图1所示,本发明为一种区块链主子链的构建方法,包括如下过程:
A0:建立主链与初始子链间的索引信息,包括如下:
A01:配置主子链的节点网络通信参数,包括IP地址、通信端口以及安全证书;
A02:主链节点初始化子链读取区块及访问信息,基于初始子链的信息生成区块hash Tree、访问hash Tree以及状态hash Tree;
A03:主链新区块的区块头上记录区块hash Tree根,当主链产生新区块时,用于通知被索引的初始子链;
A04:当初始子链接收到主链新区块的生成消息,记录主链新区块高度并更新索引信息;
A1:若初始子链访问量大于访问限制时,则创建初始子链,包括如下:
A11:网络管理节点发送初始访问至初始子链用于创建管理合约,根据初始子链提供的子链ID创建一新子链;
A12:网络管理节点或Token所有者向区块链网络广播新访问;
A13:判断初始子链的访问量是否大于访问限制;若是,则执行A14;若否,则新子链创建失败;
A14:通过子链提供的服务完成新子链的注册;
A15:新子链的注册完成后,网络管理节点放弃用当前子链请求,终止服务请求后子链停止当前子链的索引工作;
A2:网络管理节点采用Actor集群实现接收以及并发处理;
A3:主链与子链间通过主链跨链合约以及子链跨链合约进行跨链交互。
请参阅图2所示,A02中网络管理节点采用Actor集群实现接收以及并发处理过程如下:
B00:网络管理节点接收从用户发过来的访问并接收服务处理访问请求,依据当前访问的子链ID将访问放入不同的子链访问队列中;
B01:子链从子链方位队列中按顺序读取并发送给相对应的worker;
其中,任一子链均有对应worker负责当前子链上访问的处理;
B02:worker组中各worker对应处理完访问后,将处理结果以及错误访问返回给子链供新子链区块实用;
其中,任一网络管理节点均有对应的worker组,负责网络管理节点接收的访问的处理;另外,worker组中的worker数量根据访问队列中待处理访问的数量动态调整。
实际使用时,首先建立主链与初始子链间的索引信息并配置主子链的节点网络通信参数;主链节点初始化子链读取区块及访问信息,基于初始子链的信息生成区块hashTree、访问hash Tree以及状态hash Tree;主链新区块的区块头上记录所述区块hash Tree根,当主链产生新区块时,用于通知被索引的初始子链;实现各子链上的并行处理,保证子链访问吞吐量下的性能稳定,解决区块链网络的拥堵,提高区块链网路的并行处理效率。
请参阅图3所示,一种区块链主子链的跨链方法,包括如下过程:
C00:在主链上通过主链跨链合约发起跨链交易请求并记录在交易请求表中;
C01:主链跨链插件监听主链发起的跨链交易请求;
C02:当主链跨链插件收到跨链交易成功后发送给子链跨链插件;
C03:当子链跨链插件接收到主链交易请求后,调用子链跨链合约验证主链交易请求;
C04:当主链交易请求验证通过后,子链跨链插件监听子链交易;
C05:当子链宽脸插件监听到子链交易成功后发送至主链跨链插件;
C06:当主链跨链插件收到子链交易成功后,删除交易请求表中的跨链交易请求;具体的;子链跨链插件调用子链跨链合约通过核验插件验证主链交易请求;另外,C06中当主链跨链插件收到子链交易成功后,主链跨链插件调用核验插件核验子链交易成功。
请参阅图4所示,核验插件运行过程如下:
D00:通过区块编号验证是否能够连接到最新的节点;
D01:在处理分叉时,通过后者代替前者的方式实现对分叉的处理,而后删除旧数据;
D02:通过区块id验证是否能够连接到最新节点;
D03:构造区块头并验证秘钥签名。
本发明实际使用时,建立主链与初始子链间的索引信息;若初始子链访问量大于访问限制时,则创建初始子链;网络管理节点采用Actor集群实现接收以及并发处理;主链与子链间通过主链跨链合约以及子链跨链合约进行跨链交互;实现各子链上的并行处理,保证子链访问吞吐量下的性能稳定,解决区块链网络的拥堵,提高区块链网路的并行处理效率。
另外,当子链跨链插件接收到主链交易请求后,调用子链跨链合约验证主链交易请求;当主链交易请求验证通过后,子链跨链插件监听子链交易;跨链交易并行,不同的跨链交易之间互不影响,可以并行执行,因此支持很大的并发量,具有安全性。
值得注意的是,上述系统实施例中,所包括的各个单元只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
另外,本领域普通技术人员可以理解实现上述各实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,相应的程序可以存储于一计算机可读取存储介质中。
以上公开的本发明优选实施例只是用于帮助阐述本发明。优选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本发明。本发明仅受权利要求书及其全部范围和等效物的限制。
Claims (7)
1.一种区块链主子链的构建方法,其特征在于,包括如下过程:
A0:建立主链与初始子链间的索引信息,包括如下:
A01:配置主子链的节点网络通信参数,包括IP地址、通信端口以及安全证书;
A02:主链节点初始化子链读取区块及访问信息,基于初始子链的信息生成区块hashTree、访问hash Tree以及状态hash Tree;
A03:主链新区块的区块头上记录所述区块hash Tree根,当主链产生新区块时,用于通知被索引的初始子链;
A04:当初始子链接收到主链新区块的生成消息,记录主链新区块高度并更新索引信息;
A1:若初始子链访问量大于访问限制时,则创建初始子链,包括如下:
A11:网络管理节点发送初始访问至初始子链用于创建管理合约,根据初始子链提供的子链ID创建一新子链;
A12:网络管理节点或Token所有者向区块链网络广播新访问;
A13:判断初始子链的访问量是否大于访问限制;若是,则执行A14;若否,则新子链创建失败;
A14:通过子链提供的服务完成新子链的注册;
A15:新子链的注册完成后,网络管理节点放弃用当前子链请求,终止服务请求后子链停止当前子链的索引工作;
A2:网络管理节点采用Actor集群实现接收以及并发处理;
A3:主链与子链间通过主链跨链合约以及子链跨链合约进行跨链交互。
2.根据权利要求1所述的一种区块链主子链的构建方法,其特征在于,A02中网络管理节点采用Actor集群实现接收以及并发处理过程如下:
B00:网络管理节点接收从用户发过来的访问并接收服务处理访问请求,依据当前访问的子链ID将访问放入不同的子链访问队列中;
B01:子链从子链方位队列中按顺序读取并发送给相对应的worker;
其中,任一子链均有对应worker负责当前子链上访问的处理;
B02:worker组中各worker对应处理完访问后,将处理结果以及错误访问返回给子链供新子链区块实用;
其中,任一网络管理节点均有对应的worker组,负责网络管理节点接收的访问的处理。
3.根据权利要求2所述的一种区块链主子链的构建方法,其特征在于,worker组中的worker数量根据访问队列中待处理访问的数量动态调整。
4.一种区块链主子链的跨链方法,其特征在于,包括如下过程:
C00:在主链上通过主链跨链合约发起跨链交易请求并记录在交易请求表中;
C01:主链跨链插件监听主链发起的跨链交易请求;
C02:当主链跨链插件收到跨链交易成功后发送给子链跨链插件;
C03:当子链跨链插件接收到主链交易请求后,调用子链跨链合约验证主链交易请求;
C04:当主链交易请求验证通过后,子链跨链插件监听子链交易;
C05:当子链宽脸插件监听到子链交易成功后发送至主链跨链插件;
C06:当主链跨链插件收到子链交易成功后,删除交易请求表中的跨链交易请求。
5.根据权利要求4所述的一种区块链主子链的跨链方法,其特征在于,C03中调用子链跨链合约验证主链交易请求包括如下过程:
子链跨链插件调用子链跨链合约通过核验插件验证主链交易请求。
6.根据权利要求5所述的一种区块链主子链的跨链方法,其特征在于,C06中当主链跨链插件收到子链交易成功后,主链跨链插件调用核验插件核验子链交易成功。
7.根据权利要求6所述的一种区块链主子链的跨链方法,其特征在于,核验插件运行过程如下:
D00:通过区块编号验证是否能够连接到最新的节点;
D01:在处理分叉时,通过后者代替前者的方式实现对分叉的处理,而后删除旧数据;
D02:通过区块id验证是否能够连接到最新节点;
D03:构造区块头并验证秘钥签名。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110379081.0A CN113163001A (zh) | 2021-04-08 | 2021-04-08 | 区块链主子链的构建方法及其跨链方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110379081.0A CN113163001A (zh) | 2021-04-08 | 2021-04-08 | 区块链主子链的构建方法及其跨链方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113163001A true CN113163001A (zh) | 2021-07-23 |
Family
ID=76889021
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110379081.0A Pending CN113163001A (zh) | 2021-04-08 | 2021-04-08 | 区块链主子链的构建方法及其跨链方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113163001A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110233802A (zh) * | 2019-05-14 | 2019-09-13 | 天津大学 | 一种构建一主链多侧链的区块链架构的方法 |
CN110288345A (zh) * | 2019-06-26 | 2019-09-27 | 深圳市网心科技有限公司 | 跨链通信方法、装置、主链节点及存储介质 |
US20190340267A1 (en) * | 2018-05-01 | 2019-11-07 | International Business Machines Corporation | Blockchain implementing cross-chain transactions |
CN111047445A (zh) * | 2019-12-11 | 2020-04-21 | 深圳区块大陆科技有限公司 | 一种完全去中心化的侧链跨链方法 |
-
2021
- 2021-04-08 CN CN202110379081.0A patent/CN113163001A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190340267A1 (en) * | 2018-05-01 | 2019-11-07 | International Business Machines Corporation | Blockchain implementing cross-chain transactions |
CN110233802A (zh) * | 2019-05-14 | 2019-09-13 | 天津大学 | 一种构建一主链多侧链的区块链架构的方法 |
CN110288345A (zh) * | 2019-06-26 | 2019-09-27 | 深圳市网心科技有限公司 | 跨链通信方法、装置、主链节点及存储介质 |
CN111047445A (zh) * | 2019-12-11 | 2020-04-21 | 深圳区块大陆科技有限公司 | 一种完全去中心化的侧链跨链方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110868308B (zh) | 一种区块链网络接入方法及系统 | |
EP3889870A1 (en) | Background architecture method and system for aggregation payment, computer device, and storage medium | |
CN112087502B (zh) | 处理请求的方法、装置、设备及存储介质 | |
CN111447066A (zh) | 一种基于区块链的物联网平台 | |
CN111683118B (zh) | 基于区块链的共识方法、装置、主节点设备及从节点设备 | |
CN112511350B (zh) | 联盟链多级共识方法、设备及存储介质 | |
CN109359948A (zh) | 一种基于区块链的合同管理方法及相关设备 | |
CN112529577A (zh) | 基于激励治理的区块链跨链系统和方法 | |
CN101998354A (zh) | 用户数据一致性的核查方法及装置 | |
CN112235193A (zh) | 基于跨网络多级路由的数据传输方法、装置、设备和介质 | |
CN110555079A (zh) | 数据处理方法、装置、设备以及存储介质 | |
WO2023020242A1 (zh) | 基于区块链的数据处理方法、装置、计算机设备、计算机可读存储介质及计算机程序产品 | |
CN112069169A (zh) | 区块数据存储方法、装置、电子设备及可读存储介质 | |
CN112950201A (zh) | 一种应用于区块链系统的节点管理方法及相关装置 | |
CN112699136B (zh) | 一种跨链存证方法及相关装置 | |
CN113905031A (zh) | 一种多功能http服务请求预处理系统及方法 | |
CN111310945B (zh) | 运维管理方法、装置和电子设备 | |
CN113163001A (zh) | 区块链主子链的构建方法及其跨链方法 | |
CN112272114A (zh) | 跨区块链网络发送信息的方法、装置、设备及存储介质 | |
CN102546552B (zh) | 认证方法、设备和系统 | |
CN111131329A (zh) | 区块链系统的数据共识方法、装置及硬件设备 | |
CN111524009A (zh) | 区块链系统的交易验证方法、装置及硬件设备 | |
CN114022150B (zh) | 资源转移方法、装置、电子设备及存储介质 | |
CN114006911B (zh) | 数据处理方法、装置、终端设备及存储介质 | |
CN113904847B (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: 20210723 |