CN114547695A - 一种物联网中基于同态加密的区块链交易隐私保护方法 - Google Patents

一种物联网中基于同态加密的区块链交易隐私保护方法 Download PDF

Info

Publication number
CN114547695A
CN114547695A CN202210211078.2A CN202210211078A CN114547695A CN 114547695 A CN114547695 A CN 114547695A CN 202210211078 A CN202210211078 A CN 202210211078A CN 114547695 A CN114547695 A CN 114547695A
Authority
CN
China
Prior art keywords
transaction
user
block chain
parties
balance
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
Application number
CN202210211078.2A
Other languages
English (en)
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.)
Kunming University of Science and Technology
Original Assignee
Kunming University of Science and Technology
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 Kunming University of Science and Technology filed Critical Kunming University of Science and Technology
Priority to CN202210211078.2A priority Critical patent/CN114547695A/zh
Publication of CN114547695A publication Critical patent/CN114547695A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • 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
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Technology Law (AREA)
  • Strategic Management (AREA)
  • Marketing (AREA)
  • Development Economics (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

本发明公开了一种物联网中基于同态加密的区块链交易隐私保护方法,它包括:采用基于Paillier的加法同态加密方案为公共区块链上的账户金额以及交易时的转账金额提供完整的隐私保护机制;在发生争议时,权威机构完成对交易双方上传加密数据的解密。此外,为了解决能源区块链交易费用较高和确认时间过长对小额支付造成的交易限制问题,本发明提出使用基于支付渠道网络的链下支付方案,在支持快速、频繁的交易的同时赋予链下交易的账户余额以及交易金额完整的隐私保护机制。最后在交易安全和隐私保护需求背景下对该方案进行了安全性分析和性能评估,所得结果表明该方案在利用区块链保护基础交易的同时实现了交易数据的完整机密性。

Description

一种物联网中基于同态加密的区块链交易隐私保护方法
技术领域
本发明涉及一种物联网中基于同态加密的区块链交易隐私保护方法,属于物联网中隐私保护方法技术领域。
背景技术
区块链近年来以其去中心化、去信任、分布式共享和不可篡改交易记录等优点在物联网多种交易中被研究应用。区块链的分布式结构削弱了传统中心化组织的功能,基于区块链技术的加密货币是一个在互不信任的个体之间共享的仅可添加的分布式账本,提供了分布式存储机制。近年来,关于基于区块链的交易模型的文献越来越多。例如,在能源交易领域,Li Z等人2017年在IEEE transactions on industrial informatics,发表的“Consortium blockchain for secure energy trading in industrial internet ofthings”提出了一个基于信用的支付方案,支持能源节点之间通过信用快速支付能源交易;Chaudhary R等人在2019年在Computers&Security发表的“BEST:Blockchain-basedsecure energy trading in SDN-enabled intelligent transportation system”提出了基于区块链的电动汽车安全能源交易方案,该方案使用SDN(Software De nedNetworking)作为基础架构使其对网络资源的通信和计算费用达到最小化。但是,这些方案所基于的区块链机制并不是无条件安全的,它的去信任体制依赖于全局账本的公开化。为了使链上所有参与者达成共识,要求所有参与者都能查看及验证其他参与者的交易数据以共同维护全局账本,这使用户面临隐私泄露的风险,同时带来区块链系统的可扩展性问题。
目前应用于加密货币的区块链系统其分布式账本主要记录交易数据,隐私信息主要分为:(1)交易内容:包含转账支付方、转账接收方、转账金额以及其他交易信息;(2)账户地址:区块链的账户地址由用户公钥哈希生成,一个用户可拥有多个账户地址(即假名),其中包含一个地址关联的交易记录、账户余额以及和其他不同账户地址间的关联交易等信息。由于区块链交易在全局分布式账本中的整个交易历史都是公开的,且交易关联紧密,这就意味着攻击者可以通过分析账本中的交易数据,窃取用户的交易信息。迄今为止,已有一些研究试图解决基于区块链交易的隐私保护问题。其中一些试图通过聚合隐私数据来保护用户的敏感信息。Singh P等人于2021年在Computers&Electrical Engineering,发表的“Blockchain and homomorphic encryption-based privacy-preserving dataaggregation model in smart grid”提出了一种基于深度学习的隐私保护数据聚合模型,该模型确保了安全的数据聚合过程和低的计算开销;Wang Y等人2019年在IET Cyber-Physical Systems发表的“Distributed meter data aggregation framework based onBlockchain and homomorphic encryption”提出了一种分布式隐私保护和安全的电表数据聚合框架,采用分层的区块链系统对仪表数据进行聚合和验证另一个方向是交易数据的隐私保护。另一个方向是用户身份信息的隐私保护。例如,Aitzhan N Z等人20016年在IEEETransactions on Dependable and Secure Computering发表的“Security and privacyin decentralized energy trading through multi-signatures,blockchain andanonymous messaging streams”使用区块链技术、多签名和匿名加密消息流提出了一个分布式能源交易系统,使同行能够匿名协商能源价格并安全地执行交易。Liu D等人2019年在IEEE Transactions on Industrial Informatics发表的“Anonymous reputation systemfor IIoT-enabled retail marketing atop PoS blockchain”建立了一个匿名声誉系统,利用一个可随机签名与非交互式零知识证明技术保留消费者身份和个人审查机密性。然而,这些方案都忽略了区块链交易带来的巨大开销和确认时间过长的问题,不能满足物联网市场的要求。
为了解决上述的可扩展问题,链外支付被提出用于消除向区块链提交每个私人交易的要求,支付渠道网络(payment channel network)为目前最有前景的方法。PCN中的交易本质上是由交易双方商定通道余额的更新,交易双方建立一个共同账户用于进行多比支付而只需登记首尾余额至区块链,通道受智能合约保护进行中交易的有效性和不可否认性。PCN交易不仅支持快速和频繁的支付,同时隐藏了大量中间交易的信息。然而可以看到,PCN只能为用户提供部分的交易隐私保护。
基于区块链的交易数据隐私保护方案应该具有两方面特性:一是交易数据的完整机密性,二是在保证数据不公开的条件下具有可验证性。基于以上分析,本发明提出基Paillier同态加密(Homomorphic En-cryption)的数据隐私保护方案,在不暴露交易数据的同时可验证区块链交易合法性。同态加密允许直接对加密数据执行计算,如加法和乘法,而计算过程不会泄露原数据的任何信息。计算的结果仍然是加密的,拥有密钥的用户对处理过的密文数据进行解密后,得到的正好是处理后原数据的结果。根据支持的计算类型和支持程度,同态加密可以分为半同态加密(如RSA、GM、Elgamal、Paillier),部分同态加密(如BGN)和全同态加密(如Gentry、DGHV、LWE、BGV)三种类型。由于全同态加密需花费巨大开销而不符合交易吞吐量的要求,以及交易量巨大而部分同态加密仅支持有限次计算,而仅满足加法性质的同态加密就能完成通常的交易验证。
发明内容
本发明要解决的技术问题是提供一种物联网中基于同态加密的区块链交易隐私保护方法,即一种基于Paillier算法完成对区块链链下交易数据的加密方案,在满足物联网交易吞吐量的同时保护区块链交易信息的隐私性。
本发明方案贡献如下:(1)提出了一个基于加法同态加密的区块链交易隐私保护机制,为需要上传至公开区块链的交易双方账户金额提供一种可验证的隐藏方案。交易双方分别发送加密后的账户余额,方案使得在金额不被解密的情况下得到共同账户余额并上传至区块链;(2)本发明采用基于PCN的支付方案以克服传统区块链的不可扩展问题,PCN链下交易支持交易双方进行频繁且快速的支付,而每笔链下支付不需要上传至区块链。同时将同态加密方案应用于隐藏开始交易和结束交易时需上传至公共区块链的交易双方余额,形成一个完整的隐私保护机制;(3)搭建了一个加密方案的模拟平台并统计加密算法的时间开销,分析了应用于PCN交易所需的加密操作以及各参与方执行这些操作的时间开销。综上所述,为了解决区块链交易带来的巨大开销和确认时间过长的问题,以满足能源市场的要求,本发明采用PCN和同态加密技术实现一种高吞吐量的、安全的物联网交易方案。
为了实现上述的目的,本发明所采用的技术方案是:一种物联网中基于同态加密的区块链交易隐私保护方法,包含基于同态加密技术的隐私数据保护过程和基于支付渠道网络PCN的交易过程,其步骤如下:
步骤一:建立系统模型:将共同账户余额表示为BC,其中用户A存入的初始金额为B0,用户B存入的初始金额为B1,随后进行多笔链下交易{Tran1,Tran2,...,Trann},每一次交易转账金额为{v1,v2,...,vn},在交易结束需要关闭支付通道时,假设用户A剩余比特币金额为b0,n,用户B剩余比特币金额为b1,n,该余额信息将由交易双方加密后上传至区块链;
步骤二:使用基于Paillier加法同态加密的区块链交易隐私保护机制,交易双方分别加密自己的隐私交易数据,包括初始存入金额B0、B1,转账金额{v1,v2,...,vn},交易结束账户余额b0,n、b1,n,然后发送给CA以供验证交易合法性与仲裁争议;
步骤三:网络中用户在通过验证获取其公私钥后,交易双方使用PCN网络支付渠道在链下进行点对点交易;
步骤四:当交易发生争议时,由CA收集用户私钥以解密数据而后完成交易验证工作。
具体地,步骤一、步骤二的具体的步骤如下:
Step1:生成密钥KeyGen()→(PKi,SKi):随机选取两个大素数a和b,求
Figure BDA0003533279530000041
令λ=lcm(a-1;b-1),选取参数
Figure BDA0003533279530000042
其中
Figure BDA0003533279530000043
Figure BDA0003533279530000044
使得g满足
Figure BDA0003533279530000045
定义上式中
Figure BDA0003533279530000046
即可得到公钥
Figure BDA0003533279530000047
私钥SK=λ,用户A的公私钥对为(PK0,SK0),用户B的公私钥对为(PK1,SK1);
Step2:加密Enc(PKi,Bi)→(Mi):选取随机数
Figure BDA0003533279530000048
用户A和用户B分别使用其私钥加密存入共同账户的初始金额B0,B1得到密文M1,M2,并将密文发送给CA,CA通过计算ENC(M1,M2)得到共同账户的余额BC,并将该余额写入区块链;
Step3:加密Enc(PKi,vi,b0,i)→(Mi):在开始第一笔链下交易Tran1前,用户A分别加密该次转账金额v1以及转账后账户余额b0,1,得到密文m1,m2,并将其发送给CA以验证其初始转账Tran1的合法性;
Step4:加密Enc(PKi,bi,n)→(mi):在交易结束需要关闭支付通道时,用户A和用户B将分别加密其当前账户余额b0,n,b1,n得到密文M3,M4并发送给CA,CA验证ENC(M3,M4)=BC是否成立,若等式成立,CA将双方加密后的余额(M3,M4)写入区块链后关闭支付通道,若CA验证等式ENC(M3,M4)=BC不成立,则需双方提交私钥解密M3,M4以得到b0,n,b1,n
Step5:当交易双方对CA上传至区块链的共同账户余额有争议时,需分别提交私钥,输入双方私钥对M1,M2解密得到B0,B1
具体地,步骤三中,交易双方使用PCN网络支付渠道在链下进行点对点交易步骤如下:
Step 3.1:系统进行初始化,每个节点在CA注册后每个节点成为一个合法实体,经过Step1的KeyGen()→(PKi,SKi)方法获得其公私钥后可进行PCN交易,假设从发送方u0到接收方us通过路径(u1,u2...ui...un)为间接支付的标准方案;
Step 3.2:在交易开始前,u0本地执行HTLC,合约锁定仅在合约如期履行后才能释放的a个比特币;u0随机选取随机字符串αi,并定义
Figure BDA0003533279530000051
使得j≥i,αj为随机字符串αi根据j的取值范围变化生成的随机字符串;随后u0向每个中间用户ui发送(αi,yi);
Step3.3:发送方u0在向接收方us付款前,需要事先创建一个初始账户,其中包含交易双方钱包地址(Addr0,Addrl)、初始通道容量β、HTLC容差τ、通道转账费用f和当前账户余额amount,双方对账户信息进行验证,验证通过后输出一个通道标识符δ(u0,us),即可建立支付通道
Figure BDA0003533279530000052
随后将该账户余额上载至Blockchain;
3.4:如果PCN中存在一条从发送方u0到接收方us的支付路由,且路径中每条通道
Figure BDA0003533279530000053
上至少存在余额γi≥v’i,其中v’i表示每个中间节点ui的转账金额,双方方可开始交易。
本发明的有益效果是:提出了一个基于同态加密的区块链交易隐私保护方案,采用Paillier加密算法为公共区块链中的交易提供隐私数据的完整性隐私保护机制。此外,使用基于PCN的链下交易方案用于物联网中的节点P2P快速进行交易,克服了区块链网络确认交易时间过长造成的限制问题,支持交易双方脱链快速和频繁地进行多比支付,其中HTLC保证了其交易资金的安全性和交易的不可否认性。将同态加密算法与PCN交易方案想结合,使得交易双方需上传至公共区块链的账户余额和交易金额都以密文形式呈现,在交易不发生争议的情况下,不会暴露交易者任何隐私金额。安全分析表明,提出的方案为交易双方提供有效的完整性匿名保护,与其他方案相比,在使用户点对点快速完成交易的同时,有效地解决隐私数据上传至区块链遭到泄露的问题。
附图说明
图1为PCN交易链下示例;
图2为PCN支付渠道通道容量示例;
图3为加密方案的交易数据形式化;
图4为基于Paillier方案的交易数据加密流程图;
图5为基于同态加密的链下交易隐私保护方案流程图。
具体实施方式
为了更详细的描述本发明和便于本领域人员的理解,下面结合附图以及实施例对本发明做进一步的描述,本部分的实施例用于解释说明本发明,便于理解的目的,不以此来限制本发明。
实施例1:使用区块链技术可以实现不同货币之间的实时结账,但因其交易广播和工作量证明机制开销过大不能被广泛使用,交易处理速率有限。为了克服这种可扩展性问题,基于PCN的交易可以无需通过昂贵和缓慢的区块链交易而完成即时支付,用户交易时只需注册每个通道的初始和最终余额。在PCN交易中,交易双方需要事先建立一个交易渠道,各自向共同账户存入一定金额并将这笔交易添加到区块链上,该交易实质上是由他们商定的通道余额更新。当不再需要转账或存款耗尽需要关闭通道时,一个交易关闭的消息将广播到区块链上,并将根据最新余额向该用户发送存款金额通知。
将共同账户余额表示为BC,其中用户A存入的初始金额为B0,用户B存入的初始金额为B1。随后进行多笔链下交易{Tran1,Tran2,...,Trann},每一次交易转账金额为{v1,v2,...,vn}。在交易结束需要关闭支付通道时,假设用户A剩余比特币金额为b0,n,用户B剩余比特币金额为b1,n,该余额信息将上传至区块链。当交易需要验证或者出现争议需仲裁时,由权威认证中心CA进行。
具体加密方案如下:
1、生成密钥KeyGen()→(PKi,SKi):随机选取两个大素数a和b,求
Figure BDA0003533279530000061
令λ=lcm(a-1;b-1)。选取参数
Figure BDA0003533279530000062
其中
Figure BDA0003533279530000063
Figure BDA0003533279530000064
使得g满足
Figure BDA0003533279530000065
定义上式中
Figure BDA0003533279530000066
即可得到公钥
Figure BDA0003533279530000067
私钥SK=λ。分别为交易发送者用户A生成公私钥对(PK0,SK0),为交易接收者用户B生成的公私钥对表示为(PK1,SK1)。
2、加密Enc(PKi,vi,Bi,b0,i)→(mi,Mi):选取随机数
Figure BDA0003533279530000068
Step 2.1:用户A和用户B分别加密其存入共同账户的金额B0,B1得到密文M1,M2,并将密文发送给CA。CA通过计算ENC(M1,M2)得到共同账户的余额BC,并将该余额写入区块链。具体计算过程如下:
Figure BDA0003533279530000071
Figure BDA0003533279530000072
Figure BDA0003533279530000073
Step2.2:在开始第一笔链下交易前,用户A分别加密该次转账金额v1以及转账后账户余额b0,1,得到密文m1,m2,并将其发送给CA以验证其初始转账Tran1的合法性。
Figure BDA0003533279530000074
Figure BDA0003533279530000075
CA根据Paillier同态加密算法的加法同态属性验证等式m1×m2=M1。若等式成立,则意味着b0,1+v1=B0,满足对初始账户的余额要求。其中,该式成立需要满足前提条件r3×r4=r1,因此需要在生成随机数时加上约束条件。
Step2.3:在交易结束需要关闭支付通道时,用户A和用户B将分别加密其当前账户余额b0,n,b1,n并发送给CA。CA验证ENC(M3,M4)=BC是否成立。若等式成立,CA将双方加密后的余额(M3,M4)写入区块链后关闭支付通道。
Figure BDA0003533279530000076
Figure BDA0003533279530000077
Figure BDA0003533279530000078
3、解密:对应上述交易过程,交易中可能发生的争议如下:
Step3.1:当交易双方对CA上传至区块链的共同账户余额有争议时,需分别提交私钥。输入双方私钥对M1,M2解密得到B0,B1
Figure BDA0003533279530000079
Figure BDA00035332795300000710
Step3.2:同理,在Step2.3中若CA验证等式ENC(M3,M4)=BC不成立,则需双方提交私钥解密M3,M4以得到b0,n,b1,n
4、系统设置:将节点u0,us分别表示发送方用户A和接收方用户B,且0≤i<j≤s;每条有向边(ui,uj)上的权重表示转让人ui可以支付给受让人uj的剩余比特币数量βi,j;同时每条边(ui,uj)上有一个HTLC容差τi,j,即随机数R被提交的最大等待时间。两个用户之间付款成功与否取决于连接两个用户的路径上可用的容量γ以及中间节点收取的费用f。假设用户A通过路径u0→u1→u2→...→un→us向用户B支付α比特币,f(i,j)表示中间节点ui到uj收取的总费用:
Figure BDA0003533279530000081
要使付款成功,须有每个通道容量Yi,i+1≥βi,i+1,其中βi,i+1≥β0,1-f(1,i-1)(即初始可支付比特币金额减去前序支付路径上中间节点收取的费用)。为了确保用户B成功接收到α比特币,用户A初始支付金额α0=α+f(1,n)
5、系统初始化:本系统利用基于Paillier同态加密方案进行系统初始化,每个节点在CA注册后每个节点成为一个合法实体,经过KeyGen()→(PKi,SKi)方法获得其公私钥后可进行PCN交易。假设从发送方u0到接收方us通过路径(u1,u2...un)为间接支付的标准方案。
在交易开始前,u0本地执行HTLC,合约锁定仅在合约如期履行后才能释放的α个比特币;u0随机选取随机字符串αi,并定义
Figure BDA0003533279530000082
使得j≥i;随后u0向每个中间用户ui发送(αi,yi)。其中τi为HTLC容差,表示使用当前通道的最大容忍时间,对于所有i∈[n]:τi-1=τi+Δ(Δ>0),Δ为任意正数。
6、OpenChannel(ui,uj,β,τ,f):u0在向us付款前,需要事先创建一个初始账户Acc={PID0,Addr0,Addrl,β,τ,f,account},其中包含交易双方钱包地址(Addr0,Addrl)、初始通道容量β、HTLC容差τ、通道转账费用f和当前账户余额account。双方对账户信息进行验证,验证通过后输出一个通道标识符δ(u0,us)。即可建立支付通道
Figure BDA0003533279530000083
随后将该账户余额上载至Blockchain。
7、
Figure BDA0003533279530000084
如果PCN中存在一条从发送方u0到接收方us的支付路由,且路径中每条通道
Figure BDA0003533279530000085
上至少存在余额βi,i+1≤γi,i+1,交易方可开始,算法描述如下所示:
u0发送付款前,首先计算向us发送v比特币所需总成本:β0,1=α+f(1,n)以及支付路径中每个中间节点的相关成本;如果u0没有足够比特币金额,则放弃付款,否则向每个转让人发送合约。
每个中间节点验证其HTLC关联值是否小于或等于其之后支付路径中的通道容量,以及传入HTLC的超时与传出HTLC的超时的差值Δ为正。若相关验证都正确,则为支付路径中的后续用户生成其相应的HTLC;否则将中止付款。
如果路径中的每个中间用户都在规定时间内完成合同,付款最终到达接收者us,即un,un+1之间的合同成立,us便可以通过发布αi提出v个比特币;一旦知道了αi的值,un-1则可以通过简单地计算
Figure BDA0003533279530000091
来推出un-2,un-1之间的合同的随机数并发布,以此类推,该机制会在付款方接收转账后使路由中所有中间节点得到其转账费用。
8、closeChannel(δ(u0,us),v)→{1,0}:共享支付渠道CHij的两个用户u0,us将在双方商定的交易完成后锁定账户余额的状态下将通道关闭,并更新区块链上账户余额,当且仅当该交易正确添加到区块链时返回1。
实施例2:本实施例提供一种基于PCN链下交易过程,参见图1,用户A与用户B通过实例化一个第三方账户并分别存入6比特币和4比特币,创建了一个初始容量为10比特币的支付渠道,然后通过中间节点C、D、E分别进行了两笔交易用户A付给用户B3比特币以及用户B付给用户A5比特币,这里假设节点C、D、E的通道转账费用为0。当交易结局关闭通道时,用户A剩余8比特币,用户B剩余2比特币的余额信息将写入区块链。
PCN与传统计算机临时网络的两点区别:一是在转账交易过程中需要连同使用渠道的费用一起发送给接收方,在按交易路由顺序收取费用时会造成在不同链路上的余额要求,即可行性约束;例如在图2所示的付款示例中,如果用户A想要通过C、D、E向用户B支付3比特币,其中节点C、D、E的通道转账费用分别为0.5、1、0.5比特币,假设各链接通道容量均为10比特币。为此,她开始需要付出5比特币(3比特币付款加上支付路径中用户收取的费用2比特币)。然后按以下方式结算付款:用户A→C的通道容量减少5。此外,如果需要收取0.5比特币的通道使用费用,C通过将链接C→D的容量减少4.5比特币来收费。遵循相同的原则,将链接D→E的容量设置为6.5,将链接E→用户B的容量设置为7。二是在PCN中由跃点个数决定交易时间,用户对交易时间的容忍度造成了及时性约束,用户在HTLC哈希时间锁合同中规定自己的最大容忍时间。HTLC由哈希锁和时间锁组成。在哈希锁中,接收方产生一个随机数R并将其哈希值H发送给发件人,发件人或者每一个中间节点在交易合同中包含哈希H,只有机密数R被提交给转发者时该转账资金才可被提取,这确保了付款接收的不可否认性。在时间锁定中,每笔交易受制于一个完成期限,如果转发者在规定时间内没有收到随机数R,这笔转账资金将会被退回。
每个能源节点可以获得经过区块链网络中参与节点认证之后的假名,并以该假名进行能源交易。由于申请者真实身份经过申请者P0私钥签名后才发送给CA进行身份验证,除假名的拥有者外,在少于t个参与者合作恢复秘密之前,包括参与验证的能源站在内的任何一个节点都不能将该假名与P0的真实ID关联。因此,本方案具有较强的匿名性。
基于图1的交易过程,将共同账户余额表示为BC,其中用户A存入的初始金额为B0,用户B存入的初始金额为B1。随后进行多比链下交易{Tran1,Tran2,...,Trann},每一次交易转账金额为{v1,v2,...,vn}。在交易结束需要关闭支付通道时,假设用户A剩余比特币金额为b0,n,用户B剩余比特币金额为b1,n,该余额信息将上传至区块链。当交易需要验证或者出现争议需仲裁时,由权威认证中心CA进行。将涉及本发明加密方案的交易数据形式化如图3所示。
对上述交易中涉及金额的数据分别加密,以进行完全保密的交易上完整的的加密方案,具体流程如图4所示。
使用PCN交易的用户需要将交易开始时共同账户余额和结束时的余额上传至区块链,HTLC规定使得收款人只有在发布正确HASH随机数后才能提取付款,没有人可以接收转账而否认收款,且付款人和中间节点在收款方未接收转账前不能得到任何报酬,以此保证交易双方不可否认交易记录的存在和合理性。本发明方案主要涉及隐藏交易双方账户余额的方法和交易合法性验证的方法两个方面,下面分别展开分析。
1)隐藏账户余额的正确性分析:CA可使用用户A私钥SK0解密公式M1得到用户A转入共同账户的金额B0
2)初始交易合法性验证的正确性分析:CA可通过验证等式m1×m2=M1是否成立以确认用户A初始转账是否合法。
3)算法安全性分析:攻击者无法从加密后密文中得到任何关于转账金额或账户余额的消息。因为Paillier算法的安全性基于判定n阶剩余类难题,在n的分解未知的情况下,破解Paillier加密后的密文困难性相当于大整数的分解,因此,当大整数分解是困难的,本发明的加密方案就是安全的。
以及除非交易双方提交私钥以供CA验证交易争议,否则包括CA在内的所有网络节点无法得到任何关于转账金额或账户余额的消息。交易初始,双方将存入共同账户的金额加密后发送给CA,CA通过计算M1M2得到共同账户余额B上传至区块链;在发送第一笔交易前,用户A将当前余额与本次转账金额分别加密后发送给CA,同上,CA通过计算m1×m2=M1是否成立以验证初始交易的可行性;交易结束,双方将账户余额加密发送给CA,CA通过验证b0,1+v=B0是否成立。
本发明提出了一个基于同态加密的区块链交易隐私保护方案,采用Paillier加密算法为公共区块链中的交易提供隐私数据的完整性隐私保护机制,总体方案流程如图5所示。此外,使用基于PCN的链下交易方案用于物联网中的节点P2P快速进行交易,克服了区块链网络确认交易时间过长造成的限制问题,支持交易双方脱链快速和频繁地进行多比支付,其中HTLC保证了其交易资金的安全性和交易的不可否认性。将同态加密算法与PCN交易方案想结合,使得交易双方需上传至公共区块链的账户余额和交易金额都以密文形式呈现,在交易不发生争议的情况下,不会暴露交易者任何隐私金额。安全分析表明,提出的方案为交易双方提供有效的完整性匿名保护,与其他方案相比,在使用户点对点快速完成交易的同时,有效地解决隐私数据上传至区块链遭到泄露的问题。
以上所述仅是本发明的具体思路,以便于该领域研究人员理解,但本发明的实施方式并不只限于上述所述,本领域相关技术人员均可基于本发明做出改进或变形,一切利用本发明构想的改进或变形视为本发明的保护范围。

Claims (3)

1.一种物联网中基于同态加密的区块链交易隐私保护方法,其特征在于:包含基于同态加密技术的隐私数据保护过程和基于支付渠道网络PCN的交易过程,其步骤如下:
步骤一:建立系统模型:将共同账户余额表示为BC,其中用户A存入的初始金额为B0,用户B存入的初始金额为B1,随后进行多笔链下交易{Tran1,Tran2,...,Trann},每一次交易转账金额为{v1,v2,...,vn},在交易结束需要关闭支付通道时,假设用户A剩余比特币金额为b0,n,用户B剩余比特币金额为b1,n,该余额信息将由交易双方加密后上传至区块链;
步骤二:使用基于Paillier加法同态加密的区块链交易隐私保护机制,交易双方分别加密自己的隐私交易数据,包括初始存入金额B0、B1,转账金额{v1,v2,...,vn},交易结束账户余额b0,n、b1,n,然后发送给CA以供验证交易合法性与仲裁争议;
步骤三:网络中用户在通过验证获取其公私钥后,交易双方使用PCN网络支付渠道在链下进行点对点交易;
步骤四:当交易发生争议时,由CA收集用户私钥以解密数据而后完成交易验证工作。
2.根据权利要求1所述的一种物联网中基于同态加密的区块链交易隐私保护方法,其特征在于:步骤一、步骤二的具体的步骤如下:
Step1:生成密钥KeyGen()→(PKi,SKi):随机选取两个大素数a和b,求
Figure FDA0003533279520000011
令λ=lcm(a-1;b-1),选取参数
Figure FDA0003533279520000012
其中
Figure FDA0003533279520000013
Figure FDA0003533279520000014
使得g满足
Figure FDA0003533279520000015
定义上式中
Figure FDA0003533279520000016
即可得到公钥
Figure FDA0003533279520000017
私钥SK=λ,用户A的公私钥对为(PK0,SK0),用户B的公私钥对为(PK1,SK1);
Step2:加密Enc(PKi,Bi)→(Mi):选取随机数
Figure FDA0003533279520000018
用户A和用户B分别使用其私钥加密存入共同账户的初始金额B0,B1得到密文M1,M2,并将密文发送给CA,CA通过计算ENC(M1,M2)得到共同账户的余额BC,并将该余额写入区块链;
Step3:加密Enc(PKi,vi,b0,i)→(Mi):在开始第一笔链下交易Tran1前,用户A分别加密该次转账金额v1以及转账后账户余额b0,1,得到密文m1,m2,并将其发送给CA以验证其初始转账Tran1的合法性;
Step4:加密Enc(PKi,bi,n)→(mi):在交易结束需要关闭支付通道时,用户A和用户B将分别加密其当前账户余额b0,n,b1,n得到密文M3,M4并发送给CA,CA验证ENC(M3,M4)=BC是否成立,若等式成立,CA将双方加密后的余额(M3,M4)写入区块链后关闭支付通道,若CA验证等式ENC(M3,M4)=BC不成立,则需双方提交私钥解密M3,M4以得到b0,n,b1,n
Step5:当交易双方对CA上传至区块链的共同账户余额有争议时,需分别提交私钥,输入双方私钥对M1,M2解密得到B0,B1
3.根据权利要求2中所述的基于支付渠道网络PCN的交易过程,其特征在于,步骤三中,交易双方使用PCN网络支付渠道在链下进行点对点交易步骤如下:
Step3.1:系统进行初始化,每个节点在CA注册后每个节点成为一个合法实体,经过Step1的KeyGen()→(PKi,SKi)方法获得其公私钥后可进行PCN交易,假设从发送方u0到接收方us通过路径(u1,u2...ui...un)为间接支付的标准方案;
Step3.2:在交易开始前,u0本地执行HTLC,合约锁定仅在合约如期履行后才能释放的a个比特币;u0随机选取随机字符串αi,并定义
Figure FDA0003533279520000021
使得j≥i,αj为随机字符串αi根据j的取值范围变化生成的随机字符串;随后u0向每个中间用户ui发送(αi,yi);
Step3.3:发送方u0在向接收方us付款前,需要事先创建一个初始账户,其中包含交易双方钱包地址(Addr0,Addrl)、初始通道容量β、HTLC容差τ、通道转账费用f和当前账户余额amount,双方对账户信息进行验证,验证通过后输出一个通道标识符δ(u0,us),即可建立支付通道
Figure FDA0003533279520000022
随后将该账户余额上载至Blockchain;
3.4:如果PCN中存在一条从发送方u0到接收方us的支付路由,且路径中每条通道
Figure FDA0003533279520000023
上至少存在余额γi≥v’i,其中v’i表示每个中间节点ui的转账金额,双方方可开始交易。
CN202210211078.2A 2022-03-04 2022-03-04 一种物联网中基于同态加密的区块链交易隐私保护方法 Pending CN114547695A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210211078.2A CN114547695A (zh) 2022-03-04 2022-03-04 一种物联网中基于同态加密的区块链交易隐私保护方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210211078.2A CN114547695A (zh) 2022-03-04 2022-03-04 一种物联网中基于同态加密的区块链交易隐私保护方法

Publications (1)

Publication Number Publication Date
CN114547695A true CN114547695A (zh) 2022-05-27

Family

ID=81660768

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210211078.2A Pending CN114547695A (zh) 2022-03-04 2022-03-04 一种物联网中基于同态加密的区块链交易隐私保护方法

Country Status (1)

Country Link
CN (1) CN114547695A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116109416A (zh) * 2023-04-12 2023-05-12 北京邮电大学 一种基于区块链的碳交易支付通道路由选择方法及装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116109416A (zh) * 2023-04-12 2023-05-12 北京邮电大学 一种基于区块链的碳交易支付通道路由选择方法及装置

Similar Documents

Publication Publication Date Title
Baza et al. Privacy-preserving blockchain-based energy trading schemes for electric vehicles
US11257077B2 (en) Blockchain system for confidential and anonymous smart contracts
US20200193432A1 (en) Method and system for settling a blockchain transaction
EP3396612A1 (en) Method and system for creating a user identity
Ray et al. Fair exchange in e-commerce
CN110612547A (zh) 一种用于信息保护的系统和方法
CN110677395B9 (zh) 基于安全且具备隐私保护的激励方法及实时地图更新系统
CN112257102B (zh) 基于区块链的能源交易隐私保护方法
CN110728576A (zh) 一种基于零知识证明的去中心化匿名数据交易方法
Zhang et al. An anonymous off-blockchain micropayments scheme for cryptocurrencies in the real world
US9171324B2 (en) Hybrid virtual account and token-based digital cash protocols
CN112470423A (zh) 用于资产混合的计算机实现的系统和方法
Cao et al. Strong anonymous mobile payment against curious third-party provider
CN115801260A (zh) 一种不可信网络环境下区块链辅助的协作式攻防博弈方法
CN110278266B (zh) 一种基于区块链的资源处理方法及装置
CN111784483A (zh) 一种融合Pedersen承诺与Schnorr协议的安全多方计算协议算法
Zhang et al. A novel privacy protection of permissioned blockchains with conditionally anonymous ring signature
Islam A privacy-preserving transparent central bank digital currency system based on consortium blockchain and unspent transaction outputs
CN114547695A (zh) 一种物联网中基于同态加密的区块链交易隐私保护方法
CN114565382A (zh) 一种交易账户匿名支付方法及系统
Fan et al. An anonymous fair offline micropayment scheme
Madhusudan Applying Smart Contracts to Secure CarSharing Systems
Chen et al. PACDAM: Privacy-Preserving and Adaptive Cross-Chain Digital Asset Marketplace
Cheng et al. LBFP: A Lightweight Bitcoin-Based Fair Payment for Outsourced Computation
Chenli et al. Fair 2 Trade: Digital Trading Platform Ensuring Exchange and Distribution Fairness

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