CN115578088A - 一种基于后量子密码的高效区块链支付系统 - Google Patents

一种基于后量子密码的高效区块链支付系统 Download PDF

Info

Publication number
CN115578088A
CN115578088A CN202211261402.8A CN202211261402A CN115578088A CN 115578088 A CN115578088 A CN 115578088A CN 202211261402 A CN202211261402 A CN 202211261402A CN 115578088 A CN115578088 A CN 115578088A
Authority
CN
China
Prior art keywords
payment
signature
agent
payer
public key
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.)
Granted
Application number
CN202211261402.8A
Other languages
English (en)
Other versions
CN115578088B (zh
Inventor
易海博
邓伟平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Polytechnic
Original Assignee
Shenzhen Polytechnic
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Polytechnic filed Critical Shenzhen Polytechnic
Priority to CN202211261402.8A priority Critical patent/CN115578088B/zh
Publication of CN115578088A publication Critical patent/CN115578088A/zh
Application granted granted Critical
Publication of CN115578088B publication Critical patent/CN115578088B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/10Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
    • G06Q20/102Bill distribution or payments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3821Electronic credentials
    • G06Q20/38215Use of certificates or encrypted proofs of transaction rights
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, 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/401Transaction verification

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

本发明公开了一种基于后量子密码的高效区块链支付系统,包括:系统启动模块,用于生成区块链用户的公钥私钥对,所述区块链用户包括付款者、收款者、代理;代理请求模块,用于请求付款者和代理间进行转账;收款地址生成模块,用于生成一次性收款地址;收款信息盲化模块,用于由付款方向代理获取盲化付款凭证;匿名付款模块,用于生成一次性付款地址,并基于所述一次性付款地址通过代理向所述一次性收款地址进行支付;支付收据模块,用于生成和验证支付收据。基于后量子密码的高效区块链支付系统能够安全高效地进行区块链支付,能够抵御量子计算攻击,能够保护用户隐私。

Description

一种基于后量子密码的高效区块链支付系统
技术领域
本发明属于区块链支付领域,特别是涉及一种基于后量子密码的高效区块链支付系统。
背景技术
区块链是一种分布式去中心化技术。在近十年来,区块链技术的研究和应用的发展非常迅猛。最著名的区块链应用是比特币,它是一种互联网加密货币。除了比特币,其他加密货币包括Ethereum、XRP、Litecoin和EOS等,它们都构建在区块链平台上。基于区块链技术,加密货币可以提供匿名、可追溯、防篡改等功能,从而为网上支付提供保障。
区块链用户使用他们的公钥作为区块链上的身份。所以,某种程度上来说,区块链支付是匿名的。区块链支付信息被存储在区块列表上,后序区块与前序区块连接,能够实现支付信息的可追溯。区块链以分布式冗余存储,所以非常难实现区块链支付信息篡改。
区块链在金融、银行、供应链等领域的应用越来越广泛,但是区块链的安全性、效率、和隐私保护问题越来越受到关注。首先,区块链安全依赖于椭圆曲线密码保护,但是椭圆曲线密码被认为将被量子计算机攻破。其次,基于区块链支付信息的统计分析,将威胁到区块链用户的隐私安全。最后,区块链支付确认时间非常长,效率低下。
所以,非常有必要研究新的高效区块链支付系统。
发明内容
本发明的目的是提供一种基于后量子密码的高效区块链支付系统,以解决上述现有技术存在的问题。
为实现上述目的,本发明提供了一种基于后量子密码的高效区块链支付系统,包括:
系统启动模块,用于生成区块链用户的公钥私钥对,所述区块链用户包括付款者、收款者、代理;
代理请求模块,与所述系统启动模块连接,用于请求付款者和代理间进行转账;
收款地址生成模块,与所述代理请求模块连接,用于生成一次性收款地址;
收款信息盲化模块,与所述收款地址生成模块连接,用于由付款者向代理获取盲化付款凭证;
匿名付款模块,与所述收款信息盲化模块连接,用于生成一次性付款地址,并基于所述一次性付款地址通过代理向所述一次性收款地址进行支付;
支付收据模块,与所述匿名付款模块连接,用于生成和验证支付收据。
可选的,所述系统启动模块随机生成每个区块链用户的私钥后,基于后量子密码方案生成对应的公钥;所述私钥由对应的区块链用户保密存储,所述公钥作为对应的区块链用户在区块链上的地址。
可选的,所述代理请求模块接收所述系统启动模块生成的付款者私钥,并生成所述付款者私钥对应的付款者公钥、第一支付请求、代理公钥、第一时间戳和第一预设数量;基于付款者私钥的信息生成过程,采用签名生成算法获得付款者第一签名;付款者将所述付款者公钥、第一支付请求、代理公钥、第一时间戳、第一预设数量和付款者第一签名发送至代理,代理接收信息并基于签名验证算法利用所述付款者公钥去验证所述付款者第一签名;
若所述付款者第一签名为真,则所述代理请求模块基于代理私钥生成对应的第一支付申请确认信息、付款者公钥、第一时间戳、付款者第一签名、代理公钥、第二时间戳和第一预设数量,并基于代理私钥的信息生成过程,获得代理第一签名;代理将所述第一支付申请确认信息、付款者公钥、第一时间戳、第一签名、第二时间戳、第一预设数量和代理第一签名发送至付款者,付款者接收信息并利用所述代理公钥去验证所述代理第一签名;
若所述代理第一签名为真,付款者将所述付款者公钥作为付款地址向代理的收款地址转账第一预设数量的货币,所述代理的收款地址即为代理公钥;代理接收货币,并基于代理私钥生成第一支付收据、付款者公钥、第三时间戳、代理公钥和第一预设数量,基于代理私钥的信息生成过程,获得代理第二签名;代理将所述第一支付收据、付款者公钥、第三时间戳、代理公钥、第一预设数量和代理第二签名发送至用户,用户接收信息并利用所述代理公钥去验证所述代理第二签名。
可选的,所述收款地址生成模块接收所述代理公钥对所述代理第二签名的验证结果;
若所述代理第二签名为真,则基于所述收款地址生成模块生成付款者私钥对应的第二支付请求、付款者公钥、收款者公钥、第四时间戳和第二预设数量,并基于付款者私钥的信息生成过程,获得付款者第二签名;付款者将所述第二支付请求、付款者公钥、收款者公钥、第四时间戳、第二预设数量和付款者第二签名发送至收款者;收款者接收信息并利用所述付款者公钥去验证所述付款者第二签名;
若所述付款者第二签名为真,收款者生成第一随机私钥,并基于公钥计算算法生成对应的第一随机公钥,所述第一随机公钥作为付款者向代理第一次支付的一次性收款地址;同时基于收款者私钥生成对应的第二支付申请确认信息、付款者公钥、收款者公钥、第四时间戳、付款者第二签名、第一次支付的一次性收款地址、第五时间戳和第二预设数量,基于收款者私钥的信息生成过程,获得收款者第一签名;收款者将所述第二支付申请确认信息、付款者公钥、收款者公钥、第四时间戳、付款者第二签名、第一次支付的一次性收款地址、第五时间戳、第二预设数量和收款者第一签名发送至付款者,付款者接收信息并利用所述收款者公钥去验证所述收款者第一签名。
可选的,所述收款信息盲化模块用于接收第一次支付的一次性收款地址,并基于后量子盲签名盲化所述第一次支付的一次性收款地址,生成盲化地址;同时基于付款者私钥生成对应的第三支付请求、付款者公钥、盲化地址、第二支付收据、第六时间戳和第二预设数量,基于付款者私钥的信息生成过程,获得付款者第三签名;付款者将所述第三支付请求、付款者公钥、盲化地址、第二支付收据、第六时间戳、第二预设数量和付款者第三签名发送至代理,代理接收信息并利用所述付款者公钥去验证所述付款者第三签名;
若所述付款者第三签名为真,代理判断所述第二支付收据的有效性,若所述第二支付收据有效,判断第二预设数量是否小于等于第一预设数量,若满足要求,代理将第三支付申请确认信息、代理公钥、第二预设数量、盲化地址和代理第三签名发送至付款者;其中,基于代理私钥生成对应的第三支付申请确认信息、代理公钥、第二预设数量和盲化地址,基于所述代理私钥的信息生成过程,获得代理第三签名;付款者接收信息并利用所述代理公钥去验证所述代理第三签名;同时,付款者基于后量子盲签名对所述代理第三签名进行去盲,获得去盲后的代理第三签名。
可选的,所述匿名付款模块用于生成第二随机私钥,并基于公钥计算算法获得对应的第二随机公钥,所述第二随机公钥作为付款者向代理第二次支付的一次性付款地址;付款者采用所述第二随机公钥向代理发送第四支付请求、第二随机公钥、代理公钥、去盲后的代理第三签名、第七时间戳和第二次支付的一次性付款地址的第一签名;其中,基于所述第二随机私钥生成第四支付请求、第二随机公钥、代理公钥、去盲后的代理第三签名和第七时间戳,基于所述第二随机私钥的信息生成过程,获得第二次支付的一次性付款地址的第一签名;
代理接收信息并利用所述第二次支付的一次性付款地址的公钥验证所述第二次支付的一次性付款地址的第一签名;若所述第二次支付的一次性付款地址的第一签名为真,代理利用代理公钥验证去盲后的代理第三签名;
代理采用第一随机公钥作为收款地址向收款者转账第二预设数量的货币;收款者接收所述第二预设数量的货币,并向代理发送第三支付收据、代理公钥、第二次支付的一次性收款地址、第二预设数量、第八时间戳和第二次支付的一次性收款地址的第二签名;其中,基于第二次支付的一次性收款地址的私钥生成第三支付收据、代理公钥、一次性收款地址、第二预设数量和第八时间戳,基于所述第二次支付的一次性收款地址的私钥的信息生成过程,获得第二次支付的一次性收款地址的第二签名。
可选的,所述支付收据模块用于接收第三支付收据、代理公钥、第二次支付的一次性收款地址、第二预设数量、第八时间戳和第二次支付的一次性收款地址的第二签名,并采用所述第二次支付的一次性收款地址的私钥验证所述第二次支付的一次性收款地址的第二签名;
若所述第二次支付的一次性收款地址的第二签名为真,代理向付款者发送第四支付收据、代理公钥、第二次支付的一次性收款地址、第二预设数量、第八时间戳、第九时间戳、第二次支付的一次性收款地址的第二签名和代理第四签名;其中,基于代理的私钥生成第四支付收据、代理公钥、第二次支付的一次性收款地址、第二预设数量、第八时间戳、第九时间戳、第二次支付的一次性收款地址的第二签名,基于所述代理的私钥的信息生成过程,获得代理第四签名;
付款者接收所述第四支付收据、代理公钥、第二次支付的一次性收款地址、第二预设数量、第八时间戳、第九时间戳、第二次支付的一次性收款地址的第二签名和代理第四签名,并利用代理的公钥验证所述代理第四签名。
可选的,所述后量子密码方案包括求解二次方程组和线性变换;
所述求解二次方程组的过程包括,预设二次方程组,将有限域元素密钥代入所述预设二次方程组中,获得有限域元素变量的方程组;采用高斯消元或高斯约当法对所述有限域元素变量的方程组进行求解;
所述线性变换的过程包括,预设有限域线性仿射方程,基于有限域元素密钥对所述有限域线性仿射方程进行线性变换。
本发明的技术效果为:
本发明提供的一种基于后量子密码的高效区块链支付系统,由系统启动模块、代理请求模块、收款地址生成模块、收款信息盲化模块、匿名付款模块、支付收据模块组成。区块链支付系统的安全由后量子密码方案保护,包括求解二次方程组和线性变换。基于后量子密码的高效区块链支付系统能够安全高效地进行区块链支付,能够抵御量子计算攻击,能够保护用户隐私。
附图说明
构成本申请的一部分的附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本发明实施例中的一种基于后量子密码的高效区块链支付系统示意图;
图2为本发明实施例中的种基于后量子密码的高效区块链支付系统的区块链示意图;
图3为本发明实施例中的一种基于后量子密码的高效区块链支付系统的付款者和代理通信示意图;
图4为本发明实施例中的一种基于后量子密码的高效区块链支付系统的一次性收款地址生成示意图;
图5为本发明实施例中的一种基于后量子密码的高效区块链支付系统的收款地址盲化示意图;
图6为本发明实施例中的一种基于后量子密码的高效区块链支付系统的支付付款示意图;
图7为本发明实施例中的一种基于后量子密码的高效区块链支付系统的完成付款示意图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
实施例一
如图1所示,本实施例的一种基于后量子密码的高效区块链支付系统,由系统启动模块、代理请求模块、收款地址生成模块、收款信息盲化模块、匿名付款模块、支付收据模块组成。
系统启动模块,主要用于生成区块链用户公钥私钥对;
代理请求模块,主要用于请求代理和付款方代理间转账;
收款地址生成模块,主要用于生成一次性收款地址;
收款信息盲化模块,主要用于付款方从代理获取盲化付款凭证;
匿名付款模块,主要用于一次性付款地址通过代理向一次性收款地址支付;
支付收据模块,主要用于生成和验证支付收据。
一种基于后量子密码的高效区块链支付系统建立在区块链网络上。该区块链网络包括三类用户,分别是付款方、收款方和代理。
付款方是区块链普通用户,拥有一定数量的货币。当付款方需要进行支付,他将货币转账至代理,再由代理支付收款方。
收款方是区块链普通用户,一般来说,一个普通用户可以是付款方也可以同时是收款方。
代理是区块链特殊用户,每个代理被赋予一个信用分数。当代理参与的支付顺利完成,代理的信用分数上升,否则下降。
区块链网络由互联网上连接的若干用户节点组成,每个节点保存完整的区块链。
区块链由连接的区块组成,每个后序区块存储前一个区块的哈希值。
区块由区块头、区块体和区块验证体组成,区块链存储区块元数据和前一个区块的哈希值,区块体存储区块链支付信息,区块验证体存储区块体内所有支付信息的哈希值。
假定用户A需要向用户B支付一定数量(数量为m)的货币,并且用户A选取的支付代理是T,本实施例的一种基于后量子密码的高效区块链支付系统的工作过程如下:
系统启动模块,主要用于生成区块链用户公钥私钥对。每个区块链用户生成随机私钥,并根据后量子密码方案计算公钥,私钥由用户保密存储,公钥公开并作为用户在区块链上的地址。
代理请求模块,主要用于请求代理和付款方代理间转账:
每个区块链用户生成随机私钥,并根据后量子密码方案计算公钥,私钥由用户保密存储,公钥公开并作为用户在区块链上的地址。
用户A发送Request,PubA,PubT,n,t1和签名SigA1至代理T,其中PubA是用户A的公钥,t1是当前时间戳。Request代表这是一个从用户A到代理T的支付请求。SigA1是使用用户A的私钥PriA生成消息Request,PubA,PubT,n,t1的签名。其中,签名生成算法基于后量子密码方案。
代理T收到Request,PubA,PubT,n,t1,SigA1,然后使用用户A的公钥PubA去验证签名SigA1。签名验证算法基于后量子密码方案。如果验证结果是Request,PubA,PubT,n,t1,则该签名为真。否则,该签名是伪造的。
如果签名SigA1为真,代理T发送确认消息Ack,PubA,n,t1,SigA1,PubT,t2和签名SigT1至用户A,其中PubT是代理T的公钥,t2是当前时间戳。Ack代表这是一个支付申请确认信息。SigT1是使用代理T的私钥PriT生成消息Ack,PubA,n,t1,SigA1,PubT,t2的签名。其中,签名生成算法基于后量子密码方案。
用户A收到Ack,PubA,n,t1,SigA1,PubT,t2,SigT1,然后使用代理T的公钥PubT去验证签名SigT1。签名验证算法基于后量子密码方案。如果验证结果是Ack,PubA,n,t1,SigA1,PubT,t2,则该签名为真。否则,该签名是伪造的。
用户A在区块链上使用用户A的公钥PubA作为付款地址向代理T的公钥收款地址PubT转账数量为n的货币。
代理T接收来自用户A的货币,然后发送收据Inv,PubA,n,t3,PubT和签名SigT2给用户A,其中,t3是当前时间戳。Inv代表这是一个支付收据。SigT2是使用代理T的私钥PriT生成消息Inv,PubA,n,t3,PubT的签名。其中,签名生成算法基于后量子密码方案。
用户A收到Inv,PubA,n,t3,PubT,SigT2,然后使用代理T的公钥PubT去验证签名SigT2。签名验证算法基于后量子密码方案。如果验证结果是Inv,PubA,n,t3,PubT,则签名SigT2为真。否则,该签名是伪造的。
收款地址生成模块,主要用于生成一次性收款地址:
用户A发送Request,PubA,PubB,m,t4和签名SigA2至用户B,其中PubA是用户A的公钥,其中PubB是用户B的公钥,t4是当前时间戳。Request代表这是一个从用户A到用户B的支付请求。SigA2是使用用户A的私钥PriA生成消息Request,PubA,PubB,m,t4的签名。其中,签名生成算法基于后量子密码方案。
用户B收到Request,PubA,PubB,m,t4,SigA2,然后使用用户A的公钥PubA去验证签名SigA2。签名验证算法基于后量子密码方案。如果验证结果是Request,PubA,PubB,m,t4,则签名SigA2为真。否则,该签名是伪造的。
如果签名SigA2为真,用户B生成随机私钥Pridis,然后计算相应公钥Pubdis。其中,公钥计算算法基于后量子密码方案。私钥公钥对是一次性的,保密不公开。公钥Pubdis作为本次支付的一次性收款地址。
用户B发送确认消息Ack,PubA,PubB,m,t4,SigA2,Pubdis,t5和签名SigB1至用户A,其中PubB是用户B的公钥,t5是当前时间戳。Ack代表这是一个支付申请确认信息。SigB1是使用用户B的私钥PriB生成消息Ack,PubA,PubB,m,t4,SigA2,Pubdis,t5的签名。其中,签名生成算法基于后量子密码方案。
用户A收到Ack,PubA,PubB,m,t4,SigA2,Pubdis,t5,SigB1,然后使用用户B的公钥PubB去验证签名SigB1。签名验证算法基于后量子密码方案。如果验证结果是Ack,PubA,PubB,m,t4,SigA2,Pubdis,t5,则该签名SigB1为真。否则,该签名是伪造的。
收款信息盲化模块,主要用于付款方从代理获取盲化付款凭证:
用户A基于后量子盲签名盲化一次性收款地址Pubdis,生成盲化地址
Figure BDA0003891162970000121
用户A发送Request,PubA,
Figure BDA0003891162970000122
m,SigT2,t6和签名SigA3至代理T,其中PubA是用户A的公钥,SigT2是支付收据,t6是当前时间戳。Request代表这是一个从用户A到代理T的支付请求。SigA3是使用用户A的私钥PriA生成消息Request,PubA,
Figure BDA0003891162970000123
m,SigT2,t6的签名。其中,签名生成算法基于后量子密码方案。
代理T收到Request,PubA,
Figure BDA0003891162970000124
m,SigT2,t6,SigA3,然后使用用户A的公钥PubA去验证签名SigA3。签名验证算法基于后量子密码方案。如果验证结果是Request,PubA,
Figure BDA0003891162970000125
m,SigT2,t6,则该签名SigA3为真。否则,该签名是伪造的。
如果签名SigA3为真,代理T检查支付收据SigT2的有效性,如果SigT2有效,代理T检查m≤n是否满足。如果满足,代理T发送确认消息Ack,PubT,m,
Figure BDA0003891162970000126
和签名SigT3至用户A,其中PubT是代理T的公钥。Ack代表这是一个支付申请确认信息。SigT3是使用代理T的私钥PriT生成消息Ack,PubT,m,
Figure BDA0003891162970000127
的签名。其中,签名生成算法基于后量子密码方案。
用户A收到Ack,PubT,m,
Figure BDA0003891162970000131
SigT3,然后使用代理T的公钥PubT去验证签名SigT3。签名验证算法基于后量子密码方案。如果验证结果是Ack,PubT,m,
Figure BDA0003891162970000132
则该签名SigT3为真。否则,该签名是伪造的。
用户A基于后量子盲签名方案对签名SigT3去盲,获得去盲结果
Figure BDA0003891162970000133
匿名付款模块,主要用于一次性付款地址通过代理向一次性收款地址支付;
用户A生成随机私钥Pri′dis,然后计算相应公钥Pub′dis。其中,公钥计算算法基于后量子密码方案。私钥公钥对是一次性的,保密不公开。公钥Pub′dis作为本次支付的一次性付款地址。
用户A使用一次性付款地址Pub′dis发送Request,Pub′dis,PubT,
Figure BDA0003891162970000134
t7和签名SigD1至代理T,其中PubT是代理T的公钥,t7是当前时间戳。Request代表这是一个从一次性付款地址Pub′dis到一次性收款地址Pubdis的支付请求。SigD1是使用一次性付款地址的私钥Pri′dis生成消息Request,Pub′dis,PubT,
Figure BDA0003891162970000135
t7的签名。其中,签名生成算法基于后量子密码方案。
支付收据模块,主要用于生成和验证支付收据:
代理T收到Request,Pub′dis,PubT,
Figure BDA0003891162970000136
t7,SigD1,然后使用一次性付款地址公钥Pub′dis去验证签名SigD1。签名验证算法基于后量子密码方案。如果验证结果是Request,Pub′dis,PubT,
Figure BDA0003891162970000137
t7,则该签名SigD1为真。否则,该签名是伪造的。
如果签名SigD1为真,代理T使用他的公钥PubT去验证签名
Figure BDA0003891162970000138
签名验证算法基于后量子密码方案。验证运算获得结果Ack,PubT,m,Pubdis
代理T在区块链上使用一次性收款地址Pubdis作为收款地址转账数量为m的货币。
用户B接收一次性收款地址Pubdis的货币,然后发送收据Inv,PubT,Pubdis,m,t8和签名SigD2给代理T,其中,t8是当前时间戳。Inv代表这是一个支付收据。SigD2是使用一次性收款地址的私钥Pridis生成消息Inv,PubT,Pubdis,m,t8的签名。其中,签名生成算法基于后量子密码方案。
代理T收到Inv,PubT,Pubdis,m,t8,SigD2,然后使用一次性收款地址的公钥Pubdis去验证签名SigD2。签名验证算法基于后量子密码方案。如果验证结果是Inv,PubT,Pubdis,m,t8,则签名SigD2为真。否则,该签名是伪造的。
代理T发送收据Inv,PubT,Pubdis,m,t8,t9,SigD2和签名SigT4给用户A的一次性付款地址Pub′dis,其中,t9是当前时间戳。Inv代表这是一个支付收据。SigT4是使用代理T的私钥PriT生成消息Inv,PubT,Pubdis,m,t8,t9,SigD2的签名。其中,签名生成算法基于后量子密码方案。
用户A收到Inv,PubT,Pubdis,m,t8,t9,SigD2,SigT4,然后使用代理T的公钥PubT去验证签名SigT4。签名验证算法基于后量子密码方案。如果验证结果是Inv,PubT,Pubdis,m,t8,t9,SigD2,则签名SigT4为真。否则,该签名是伪造的。
后量子密码方案包括求解二次方程组和线性变换:
有限域的求解二次方程组是NP困难问题。我们假定y=F(x)是二次方程组,y是常量向量,x是变量向量,并分为醋变量向量
Figure BDA0003891162970000151
和油变量向量
Figure BDA0003891162970000152
醋变量向量是k1个有限域元素密钥。油变量向量是k2个有限域元素变量。y=F(x)的二次方程可以描述为:
yk=αij∑vivjij∑vioji∑vii∑oi
根据二次方程,αij、βij、χi、δi这些系数被当作密钥使用。为了求解y=F(x),密钥
Figure BDA0003891162970000153
和方程组系数被代入,转变为关于油变量向量
Figure BDA0003891162970000154
的方程组,
Figure BDA0003891162970000155
接着,使用高斯消元或高斯约当法对
Figure BDA0003891162970000156
进行求解获得
Figure BDA0003891162970000157
有限域线性仿射y=L(x)中,y和x都是向量。x被代入y=L(x),计算x′=ax,a是矩阵。接着,计算y=x′+b,b是向量。a和b都是密钥。
以上所述,仅为本申请较佳的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。

Claims (8)

1.一种基于后量子密码的高效区块链支付系统,其特征在于,包括:
系统启动模块,用于生成区块链用户的公钥私钥对,所述区块链用户包括付款者、收款者、代理;
代理请求模块,与所述系统启动模块连接,用于请求付款者和代理间进行转账;
收款地址生成模块,与所述代理请求模块连接,用于生成一次性收款地址;
收款信息盲化模块,与所述收款地址生成模块连接,用于由付款者向代理获取盲化付款凭证;
匿名付款模块,与所述收款信息盲化模块连接,用于生成一次性付款地址,并基于所述一次性付款地址通过代理向所述一次性收款地址进行支付;
支付收据模块,与所述匿名付款模块连接,用于生成和验证支付收据。
2.根据权利要求1所述的基于后量子密码的高效区块链支付系统,其特征在于,
所述系统启动模块随机生成每个区块链用户的私钥后,基于后量子密码方案生成对应的公钥;所述私钥由对应的区块链用户保密存储,所述公钥作为对应的区块链用户在区块链上的地址。
3.根据权利要求1所述的基于后量子密码的高效区块链支付系统,其特征在于,
所述代理请求模块接收所述系统启动模块生成的付款者私钥,并生成所述付款者私钥对应的付款者公钥、第一支付请求、代理公钥、第一时间戳和第一预设数量;基于付款者私钥的信息生成过程,采用签名生成算法获得付款者第一签名;付款者将所述付款者公钥、第一支付请求、代理公钥、第一时间戳、第一预设数量和付款者第一签名发送至代理,代理接收信息并基于签名验证算法利用所述付款者公钥去验证所述付款者第一签名;
若所述付款者第一签名为真,则所述代理请求模块基于代理私钥生成对应的第一支付申请确认信息、付款者公钥、第一时间戳、付款者第一签名、代理公钥、第二时间戳和第一预设数量,并基于代理私钥的信息生成过程,获得代理第一签名;代理将所述第一支付申请确认信息、付款者公钥、第一时间戳、第一签名、第二时间戳、第一预设数量和代理第一签名发送至付款者,付款者接收信息并利用所述代理公钥去验证所述代理第一签名;
若所述代理第一签名为真,付款者将所述付款者公钥作为付款地址向代理的收款地址转账第一预设数量的货币,所述代理的收款地址即为代理公钥;代理接收货币,并基于代理私钥生成第一支付收据、付款者公钥、第三时间戳、代理公钥和第一预设数量,基于代理私钥的信息生成过程,获得代理第二签名;代理将所述第一支付收据、付款者公钥、第三时间戳、代理公钥、第一预设数量和代理第二签名发送至用户,用户接收信息并利用所述代理公钥去验证所述代理第二签名。
4.根据权利要求1所述的基于后量子密码的高效区块链支付系统,其特征在于,
所述收款地址生成模块接收所述代理公钥对所述代理第二签名的验证结果;
若所述代理第二签名为真,则基于所述收款地址生成模块生成付款者私钥对应的第二支付请求、付款者公钥、收款者公钥、第四时间戳和第二预设数量,并基于付款者私钥的信息生成过程,获得付款者第二签名;付款者将所述第二支付请求、付款者公钥、收款者公钥、第四时间戳、第二预设数量和付款者第二签名发送至收款者;收款者接收信息并利用所述付款者公钥去验证所述付款者第二签名;
若所述付款者第二签名为真,收款者生成第一随机私钥,并基于公钥计算算法生成对应的第一随机公钥,所述第一随机公钥作为付款者向代理第一次支付的一次性收款地址;同时基于收款者私钥生成对应的第二支付申请确认信息、付款者公钥、收款者公钥、第四时间戳、付款者第二签名、第一次支付的一次性收款地址、第五时间戳和第二预设数量,基于收款者私钥的信息生成过程,获得收款者第一签名;收款者将所述第二支付申请确认信息、付款者公钥、收款者公钥、第四时间戳、付款者第二签名、第一次支付的一次性收款地址、第五时间戳、第二预设数量和收款者第一签名发送至付款者,付款者接收信息并利用所述收款者公钥去验证所述收款者第一签名。
5.根据权利要求1所述的基于后量子密码的高效区块链支付系统,其特征在于,
所述收款信息盲化模块用于接收第一次支付的一次性收款地址,并基于后量子盲签名盲化所述第一次支付的一次性收款地址,生成盲化地址;同时基于付款者私钥生成对应的第三支付请求、付款者公钥、盲化地址、第二支付收据、第六时间戳和第二预设数量,基于付款者私钥的信息生成过程,获得付款者第三签名;付款者将所述第三支付请求、付款者公钥、盲化地址、第二支付收据、第六时间戳、第二预设数量和付款者第三签名发送至代理,代理接收信息并利用所述付款者公钥去验证所述付款者第三签名;
若所述付款者第三签名为真,代理判断所述第二支付收据的有效性,若所述第二支付收据有效,判断第二预设数量是否小于等于第一预设数量,若满足要求,代理将第三支付申请确认信息、代理公钥、第二预设数量、盲化地址和代理第三签名发送至付款者;其中,基于代理私钥生成对应的第三支付申请确认信息、代理公钥、第二预设数量和盲化地址,基于所述代理私钥的信息生成过程,获得代理第三签名;付款者接收信息并利用所述代理公钥去验证所述代理第三签名;同时,付款者基于后量子盲签名对所述代理第三签名进行去盲,获得去盲后的代理第三签名。
6.根据权利要求1所述的基于后量子密码的高效区块链支付系统,其特征在于,
所述匿名付款模块用于生成第二随机私钥,并基于公钥计算算法获得对应的第二随机公钥,所述第二随机公钥作为付款者向代理第二次支付的一次性付款地址;付款者采用所述第二随机公钥向代理发送第四支付请求、第二随机公钥、代理公钥、去盲后的代理第三签名、第七时间戳和第二次支付的一次性付款地址的第一签名;其中,基于所述第二随机私钥生成第四支付请求、第二随机公钥、代理公钥、去盲后的代理第三签名和第七时间戳,基于所述第二随机私钥的信息生成过程,获得第二次支付的一次性付款地址的第一签名;
代理接收信息并利用所述第二次支付的一次性付款地址的公钥验证所述第二次支付的一次性付款地址的第一签名;若所述第二次支付的一次性付款地址的第一签名为真,代理利用代理公钥验证去盲后的代理第三签名;
代理采用第一随机公钥作为收款地址向收款者转账第二预设数量的货币;收款者接收所述第二预设数量的货币,并向代理发送第三支付收据、代理公钥、第二次支付的一次性收款地址、第二预设数量、第八时间戳和第二次支付的一次性收款地址的第二签名;其中,基于第二次支付的一次性收款地址的私钥生成第三支付收据、代理公钥、一次性收款地址、第二预设数量和第八时间戳,基于所述第二次支付的一次性收款地址的私钥的信息生成过程,获得第二次支付的一次性收款地址的第二签名。
7.根据权利要求1所述的基于后量子密码的高效区块链支付系统,其特征在于,
所述支付收据模块用于接收第三支付收据、代理公钥、第二次支付的一次性收款地址、第二预设数量、第八时间戳和第二次支付的一次性收款地址的第二签名,并采用所述第二次支付的一次性收款地址的私钥验证所述第二次支付的一次性收款地址的第二签名;
若所述第二次支付的一次性收款地址的第二签名为真,代理向付款者发送第四支付收据、代理公钥、第二次支付的一次性收款地址、第二预设数量、第八时间戳、第九时间戳、第二次支付的一次性收款地址的第二签名和代理第四签名;其中,基于代理的私钥生成第四支付收据、代理公钥、第二次支付的一次性收款地址、第二预设数量、第八时间戳、第九时间戳、第二次支付的一次性收款地址的第二签名,基于所述代理的私钥的信息生成过程,获得代理第四签名;
付款者接收所述第四支付收据、代理公钥、第二次支付的一次性收款地址、第二预设数量、第八时间戳、第九时间戳、第二次支付的一次性收款地址的第二签名和代理第四签名,并利用代理的公钥验证所述代理第四签名。
8.根据权利要求2所述的基于后量子密码的高效区块链支付系统,其特征在于,
所述后量子密码方案包括求解二次方程组和线性变换;
所述求解二次方程组的过程包括,预设二次方程组,将有限域元素密钥代入所述预设二次方程组中,获得有限域元素变量的方程组;采用高斯消元或高斯约当法对所述有限域元素变量的方程组进行求解;
所述线性变换的过程包括,预设有限域线性仿射方程,基于有限域元素密钥对所述有限域线性仿射方程进行线性变换。
CN202211261402.8A 2022-10-14 2022-10-14 一种基于后量子密码的高效区块链支付系统 Active CN115578088B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211261402.8A CN115578088B (zh) 2022-10-14 2022-10-14 一种基于后量子密码的高效区块链支付系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211261402.8A CN115578088B (zh) 2022-10-14 2022-10-14 一种基于后量子密码的高效区块链支付系统

Publications (2)

Publication Number Publication Date
CN115578088A true CN115578088A (zh) 2023-01-06
CN115578088B CN115578088B (zh) 2023-06-13

Family

ID=84584111

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211261402.8A Active CN115578088B (zh) 2022-10-14 2022-10-14 一种基于后量子密码的高效区块链支付系统

Country Status (1)

Country Link
CN (1) CN115578088B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102164032A (zh) * 2011-05-19 2011-08-24 吉林大学 抗量子攻击的非确定的公钥密码构造方法
CN109165934A (zh) * 2018-07-18 2019-01-08 郑州信大捷安信息技术股份有限公司 一种基于标识密码的安全移动支付方法及系统
CN109716375A (zh) * 2018-07-27 2019-05-03 区链通网络有限公司 区块链账户的处理方法、装置和存储介质
CN113744036A (zh) * 2021-08-04 2021-12-03 三峡大学 一种基于区块链数字签名的量子支票交易方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102164032A (zh) * 2011-05-19 2011-08-24 吉林大学 抗量子攻击的非确定的公钥密码构造方法
CN109165934A (zh) * 2018-07-18 2019-01-08 郑州信大捷安信息技术股份有限公司 一种基于标识密码的安全移动支付方法及系统
CN109716375A (zh) * 2018-07-27 2019-05-03 区链通网络有限公司 区块链账户的处理方法、装置和存储介质
CN113744036A (zh) * 2021-08-04 2021-12-03 三峡大学 一种基于区块链数字签名的量子支票交易方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
HAIBO YI: "Secure Social Internet of Things Based on Post-Quantum Blockchain", 《IEEE TRANSACTIONS ON NETWORK SCIENCE AND ENGINEERING》 *
孙昌毅: "基于多变量公钥密码的代理环签名方案", 《信息工程大学学报》 *
李朝阳: "基于区块链的分布式系统隐私保护方法研究", 《中国博士学位论文全文数据库信息科技辑》 *

Also Published As

Publication number Publication date
CN115578088B (zh) 2023-06-13

Similar Documents

Publication Publication Date Title
Bellare et al. iKP-A Family of Secure Electronic Payment Protocols.
US11245653B2 (en) Methods and systems for creating and using massless currency
CN108768652A (zh) 一种可抗量子攻击的联盟区块链底层加密方法
CN110223067B (zh) 一种具有去中心化特性的链下一对多支付方法及系统
CN113095826B (zh) 基于区块链多签名的隐蔽通信方法及系统
Kessler et al. A sound logic for analysing electronic commerce protocols
CN111738857B (zh) 应用于区块链的隐匿支付证明的生成与验证方法及装置
CN112419021A (zh) 电子发票验证方法、系统、存储介质、计算机设备、终端
Cao et al. Strong anonymous mobile payment against curious third-party provider
CN117769707A (zh) 用于在电子交易系统中传输令牌的方法和交易系统
CN108805574A (zh) 基于隐私保护的交易方法和系统
CN112511314B (zh) 一种基于身份的可恢复消息盲签名生成方法
Lin et al. Efficient vehicle ownership identification scheme based on triple-trapdoor chameleon hash function
CN112150281B (zh) 一种数字货币的交易方法、装置及系统
Baek et al. IOTA: A cryptographic perspective
CN115578088A (zh) 一种基于后量子密码的高效区块链支付系统
Kumar et al. Elliptic curve based authenticated encryption scheme and its application for electronic payment system
CN112837064A (zh) 联盟链的签名方法、签名验证方法及装置
He et al. A new signature scheme: joint-signature
Ahubele et al. Towards a Scalable and Secure Blockchain Based on Post-Quantum Cryptography.
CN104580145A (zh) 可验证秘密分享的移动代理安全支付方法
Ogiela et al. Protocol for detection of counterfeit transactions in electronic currency exchange
Yang Practical escrow protocol for cryptocurrencies
Zhao et al. Yet Another Simple Internet Electronic Payment System
CN113793149A (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