System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种央行数字货币系统中共识算法的模块化分析方法技术方案_技高网

一种央行数字货币系统中共识算法的模块化分析方法技术方案

技术编号:40210092 阅读:10 留言:0更新日期:2024-02-02 22:20
本发明专利技术公开了一种央行数字货币系统中共识算法的模块化分析方法,S1、接收央行数字货币系统的标准;S2、接收具体的央行数字货币的运营架构;S3、确认运营架构内的不同共识网络;S4、为每一个共识网络进行共识算法模块化分析;S5、确认不同共识网络中的共识算法。通过本发明专利技术提供的分析方法,可以更好地分析和推荐CBDC系统中的新共识算法;可用于任何有共识过程的CBDC场景,用户可以按照流程,确定共识算法的每一个组件带来的影响,从而有效帮助CBDC设计者针对不同的场景进行快速且有效的共识算法设计。

【技术实现步骤摘要】

本专利技术涉及共识算法,具体而言涉及一种央行数字货币系统中共识算法的模块化分析方法


技术介绍

1、在今天的商业世界中,许多应用或系统中都包含共识算法,特别是在区块链或分布式账本系统中。其中,区块链系统已经被广泛运用到金融、医疗、物联网等场景中。行业从业者针对不同的场景,提出了不同的共识算法来满足业务需求。

2、然而,商业场景数量极大。为新场景计一种共识算法十分耗时。对于任一新场景,很难有效地找到一种共识算法来满足需求。央行数字货币(cbdc)中也存在这个问题,不同国家有着不同的业务需求,因而需要不同的共识算法来作为技术基础。

3、申请号为cn202110306409.6的专利技术申请中公开了一种基于账户模型的总量受控的数字货币发行方法,基于区块链技术进行数字货币发行,数字货币发行中的参与实体包括央行实体、可发钞实体和其他参与实体,它们分别作为区块链网络中的一个参与实体;央行实体和可发钞实体在区块链中进行交易发起、交易验证、参与共识、维护本地账本,以此来实现授权发钞和发钞,央行实体通过授权发钞交易为每个可发钞实体确定可发钞额度,可发钞实体通过发钞交易在受控总量内进行发钞,任意实体可以对可发钞实体的发钞量进行审计,以确保可发钞实体诚实地在发钞额度内发钞,避免多个可发钞实体联合破坏共识。

4、现有的央行数字货币场景中存在多种共识算法,并通过白皮书展现给社会。其中很多共识算法并没有得到技术验证和场景针对化优化,存在很多问题。目前并没有一种有效的技术方案来提出适合不同场景的共识算法。


技术实现思路

1、针对现有技术的不足,本专利技术的目的在于提供一种央行数字货币系统中共识算法的模块化分析方法,以便更好地分析和推荐cbdc系统中的新共识算法;该方法可用于任何有共识过程的cbdc场景,用户可以按照流程,确定共识算法的每一个组件带来的影响。

2、本专利技术解决技术问题所采用的技术方案是:一种央行数字货币系统中共识算法的模块化分析方法,所述方法主要包括以下步骤:

3、s1、接收央行数字货币系统的标准;

4、s2、接收具体的央行数字货币的运营架构;

5、s3、确认运营架构内的不同共识网络;

6、s4、为每一个共识网络进行共识算法模块化分析;

7、s5、确认不同共识网络中的共识算法。

8、进一步地,步骤s2中,所述央行数字货币的运营架构包括批发端cbdc网络(101)和零售端cbdc网络(102);所述批发端cbdc网络(101)涉及中央银行(103)和一级机构(104),处理一级机构(104)与中央银行(103)之间的批发交易;所述批发端cbdc网络(101)中的参与者通过批发端网络(108)进行交流;所述零售端cbdc网络(102)涉及若干个零售客户(105、106、107)和一级机构(104),处理零售客户(105、106、107)与一级机构(104)之间的零售交易,所述零售端cbdc网络(102)通过零售端网络(109)进行交流。

9、进一步地,步骤s2中,所述一级机构(104)直接连接到中央银行(103),所述零售客户(105、106、107)直接连接到一级机构(104);所述一级机构(104)承担着央行数字货币系统分发的责任,并提供央行数字货币系统认证服务。

10、更进一步地,所述一级机构(104)为商业银行;所述批发端cbdc网络(101)、零售端cbdc网络(102)对共识算法有不同的实现方式。

11、进一步地,步骤s4中,每一个所述的共识网络中运行着一个共识算法;所述共识算法的运行流程包括以下内容:

12、s4.1、在共识网络部署之前,需要确定选举机制,以便有一个主节点存在并与终端用户打交道;

13、s4.2、终端用户向共识网络发送请求;

14、s4.3、主节点对该请求进行预处理,然后将请求发送给共识网络中的验证节点;

15、s4.4、验证节点对该提议进行处理;

16、s4.5、验证节点决定是否执行该交易;

17、s4.6、代表通过验证节点的响应来确定请求是否成功。

18、进一步地,步骤s4.1中,所述选举机制包括投票、预先决定、轮流制、倡议者这几种方式中的至少一种;所述投票指系统为主节点投票,投票方式存在很多延伸,如增加成为主节点的额外要求,raft在投票中采用了选举超时的方式来决定网络的主节点;所述预先决定指系统预先确定主节点,例如corda平台中的公证节点在网络部署前就已确定;所述轮流制指一组节点按特定顺序轮流担任主节点,例如pbft使用轮流的方式来选择主节点;所述倡议者指系统没有主节点,例如,在一些公共区块链系统中,倡议者收集用户的交易,并通过工作证明、股权证明向网络提议。

19、进一步地,步骤s4.2中,所述客户向网络提交其支付请求;所述客户向网络发送请求的方式包括对一或者对所有;所述对一是指一个客户端只向一个节点发送请求;例如,在raft中,如果客户没有收到回应,他们会将请求发送给另一个节点。所述对所有是指客户端将请求发送给所有节点,以确保任一节点及时接受请求。

20、进一步地,步骤s4.3中,主节点在收到请求后在本地进行预处理;所述预处理的内容包括以下四种方式中的至少一种:1)唯一性证明,主节点利用唯一性证明机制,如工作量证明,来发布交易;2)验证,主节点具体验证请求的交易,如检查输入是否等于输出;3)互相沟通与验证,主节点与验证节点进行沟通,并过滤交易,过滤可以减少非法交易;4)无操作,主节点不做任何事情。

21、进一步地,步骤s4.4中,所述验证节点的处理内容包括以下三种方式中的至少一种:1)投票,验证节点对请求进行投票;2)互相沟通与投票,验证节点相互交流并为请求投票,例如,pbft采用这种方式来防止恶意行为的发生;3)无操作,验证节点不做任何事情,例如,raft中的验证节点(称为跟随者)什么都不做。

22、进一步地,步骤s4.5中,所述验证节点的执行包括以下三种方式中的至少一种:1)数据备份,验证节点在其本地数据库中进行备份;2)相互交流&数据备份,验证节点在备份前进行交流;3)无操作,验证节点不做任何事情。

23、进一步地,步骤s4.6中,主节点最终确定请求的方式主要包括以下三种:1)x%备份回复,主节点收到超过x%的备份回复,例如,在raft中,主节点需要在响应其客户端之前收到50%的回复;2)x%投票回复,主节点收到超过x%的投票回复;3)自主决定,主节点自己决定交易,例如,corda中的公证节点自己验证提议的交易。

24、进一步地,所述验证节点为可以参与共识的非主节点,所述验证节点为动态验证节点或固定验证节点。一些共识算法需要所有节点参与共识,而另一些则需要部分或随机的动态节点。例如,raft和pbft需要所有节点参与数据备份,而ibft则依靠动态数量的验证节点。动态验证节点可以提供本文档来自技高网...

【技术保护点】

1.一种央行数字货币系统中共识算法的模块化分析方法,其特征在于,所述方法主要包括以下步骤:

2.如权利要求1所述的一种央行数字货币系统中共识算法的模块化分析方法,其特征在于:步骤S2中,所述央行数字货币的运营架构包括批发端CBDC网络(101)和零售端CBDC网络(102);所述批发端CBDC网络(101)涉及中央银行(103)和一级机构(104),处理一级机构(104)与中央银行(103)之间的批发交易;所述批发端CBDC网络(101)中的参与者通过批发端网络(108)进行交流;所述零售端CBDC网络(102)涉及若干个零售客户(105、106、107)和一级机构(104),处理零售客户(105、106、107)与一级机构(104)之间的零售交易,所述零售端CBDC网络(102)通过零售端网络(109)进行交流。

3.如权利要求2所述的一种央行数字货币系统中共识算法的模块化分析方法,其特征在于:步骤S2中,所述一级机构(104)直接连接到中央银行(103),所述零售客户(105、106、107)直接连接到一级机构(104);所述一级机构(104)承担着央行数字货币系统分发的责任,并提供央行数字货币系统认证服务。

4.如权利要求2或3所述的一种央行数字货币系统中共识算法的模块化分析方法,其特征在于:所述一级机构(104)为商业银行;所述批发端CBDC网络(101)、零售端CBDC网络(102)对共识算法有不同的实现方式。

5.如权利要求1所述的一种央行数字货币系统中共识算法的模块化分析方法,其特征在于,步骤S4中,每一个所述的共识网络中运行着一个共识算法;所述共识算法的运行流程包括以下内容:

6.如权利要求5所述的一种央行数字货币系统中共识算法的模块化分析方法,其特征在于:步骤S4.1中,所述选举机制包括投票、预先决定、轮流制、倡议者这几种方式中的至少一种;所述投票指系统为主节点投票;所述预先决定指系统预先确定主节点;所述轮流制指一组节点按特定顺序轮流担任主节点;所述倡议者指系统没有主节点。

7.如权利要求5所述的一种央行数字货币系统中共识算法的模块化分析方法,其特征在于:步骤S4.2中,所述客户向网络发送请求的方式包括对一或者对所有;所述对一是指一个客户端只向一个节点发送请求;所述对所有是指客户端将请求发送给所有节点,以确保任一节点及时接受请求。

8.如权利要求5所述的一种央行数字货币系统中共识算法的模块化分析方法,其特征在于,步骤S4.3中,所述预处理的内容包括以下四种方式中的至少一种:1)唯一性证明,主节点利用唯一性证明机制来发布交易;2)验证,主节点具体验证请求的交易;3)互相沟通与验证,主节点与验证节点进行沟通,并过滤交易;4)无操作,主节点不做任何事情。

9.如权利要求5所述的一种央行数字货币系统中共识算法的模块化分析方法,其特征在于,步骤S4.4中,所述验证节点的处理内容包括以下三种方式中的至少一种:1)投票,验证节点对请求进行投票;2)互相沟通与投票,验证节点相互交流并为请求投票;3)无操作,验证节点不做任何事情。

10.如权利要求5所述的一种央行数字货币系统中共识算法的模块化分析方法,其特征在于,步骤S4.5中,所述验证节点的执行包括以下三种方式中的至少一种:1)数据备份,验证节点在其本地数据库中进行备份;2)相互交流&数据备份,验证节点在备份前进行交流;3)无操作,验证节点不做任何事情。

11.如权利要求5所述的一种央行数字货币系统中共识算法的模块化分析方法,其特征在于,步骤S4.6中,主节点最终确定请求的方式主要包括以下三种:1)x%备份回复,主节点收到超过x%的备份回复;2)x%投票回复,主节点收到超过x%的投票回复;3)自主决定,主节点自己决定交易。

12.如权利要求5所述的一种央行数字货币系统中共识算法的模块化分析方法,其特征在于:所述验证节点为可以参与共识的非主节点,所述验证节点为动态验证节点或固定验证节点。

13.如权利要求5所述的一种央行数字货币系统中共识算法的模块化分析方法,其特征在于:所述共识算法的运行流程中的每一个步骤均使用加密来保证传输信息的安全。

...

【技术特征摘要】

1.一种央行数字货币系统中共识算法的模块化分析方法,其特征在于,所述方法主要包括以下步骤:

2.如权利要求1所述的一种央行数字货币系统中共识算法的模块化分析方法,其特征在于:步骤s2中,所述央行数字货币的运营架构包括批发端cbdc网络(101)和零售端cbdc网络(102);所述批发端cbdc网络(101)涉及中央银行(103)和一级机构(104),处理一级机构(104)与中央银行(103)之间的批发交易;所述批发端cbdc网络(101)中的参与者通过批发端网络(108)进行交流;所述零售端cbdc网络(102)涉及若干个零售客户(105、106、107)和一级机构(104),处理零售客户(105、106、107)与一级机构(104)之间的零售交易,所述零售端cbdc网络(102)通过零售端网络(109)进行交流。

3.如权利要求2所述的一种央行数字货币系统中共识算法的模块化分析方法,其特征在于:步骤s2中,所述一级机构(104)直接连接到中央银行(103),所述零售客户(105、106、107)直接连接到一级机构(104);所述一级机构(104)承担着央行数字货币系统分发的责任,并提供央行数字货币系统认证服务。

4.如权利要求2或3所述的一种央行数字货币系统中共识算法的模块化分析方法,其特征在于:所述一级机构(104)为商业银行;所述批发端cbdc网络(101)、零售端cbdc网络(102)对共识算法有不同的实现方式。

5.如权利要求1所述的一种央行数字货币系统中共识算法的模块化分析方法,其特征在于,步骤s4中,每一个所述的共识网络中运行着一个共识算法;所述共识算法的运行流程包括以下内容:

6.如权利要求5所述的一种央行数字货币系统中共识算法的模块化分析方法,其特征在于:步骤s4.1中,所述选举机制包括投票、预先决定、轮流制、倡议者这几种方式中的至少一种;所述投票指系统为主节点投票;所述预先决定指系统预先确定主节点;所述轮流制指一组节点按特定顺序轮流担任主节点;所述倡议者指系统没有主节点。

7.如权...

【专利技术属性】
技术研发人员:金思远夏勇
申请(专利权)人:汇丰软件开发广东有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1