CN113393241A - 一种区块链账本数据的编辑方法及装置 - Google Patents
一种区块链账本数据的编辑方法及装置 Download PDFInfo
- Publication number
- CN113393241A CN113393241A CN202110682603.4A CN202110682603A CN113393241A CN 113393241 A CN113393241 A CN 113393241A CN 202110682603 A CN202110682603 A CN 202110682603A CN 113393241 A CN113393241 A CN 113393241A
- Authority
- CN
- China
- Prior art keywords
- data
- block chain
- editing
- node
- replacement
- 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
- 238000000034 method Methods 0.000 title claims abstract description 62
- 238000012795 verification Methods 0.000 claims abstract description 51
- 239000012634 fragment Substances 0.000 claims description 35
- 238000004364 calculation method Methods 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 12
- 238000004891 communication Methods 0.000 claims description 10
- 238000012545 processing Methods 0.000 claims description 7
- 238000005516 engineering process Methods 0.000 abstract description 8
- 230000007547 defect Effects 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 7
- 238000012546 transfer Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 2
- 241000122205 Chamaeleonidae Species 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
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/3827—Use of message hashing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or 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/08—Payment architectures
- G06Q20/10—Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
- G06Q20/102—Bill distribution or payments
-
- 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/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Accounting & Taxation (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Finance (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Storage Device Security (AREA)
Abstract
本发明提供了一种区块链账本数据的编辑方法及装置,涉及区块链技术和金融领域,该方法包括:向区块链节点发送账本数据编辑请求;根据所述区块链节点反馈的身份验证请求生成身份验证信息,并将所述身份验证信息发送至所述区块链节点进行身份验证;当所述区块链节点反馈的信息为身份验证通过时,根据所述原始数据、所述原始数据对应的哈希冲突值以及所述替换数据计算所述替换数据对应的哈希冲突值;将所述替换数据对应的哈希冲突值发送至所述区块链节点,以使所述区块链节点将所述原始数据更改为所述替换数据。本申请的区块链账本数据的编辑方法及装置可以实现区块链账本数据的公平编辑,以克服现存区块链技术完全无法修改账本数据的不足。
Description
技术领域
本申请涉及区块链技术和金融领域,特别涉及一种区块链账本数据的编辑方法及装置。
背景技术
近些年来,区块链作为一种分布式记账技术,因其去中心化、防篡改、可溯源的特性受到了社会各界尤其是金融界和计算机领域的广泛应用。以比特币为例,去中心化的好处就是不需要有一个类似银行或者支付宝的机构来为双方交易提供信任和担保。由于区块链使用额是分布式计算和存储结构,不存在中心化的硬件或管理机构,任意节点的权力和义务都是均等的,系统中的数据块由整个系统中具有维护功能的节点来共同维护。同时链上的数据对所有人公开,任何人都可以通过公开的接口来查询区块链数据和开发相关应用,因此整个系统信息高度透明。同时区块之间通过交易的哈希值进行验证,保证了区块链的内容不能够被任意的篡改。
然而,现有的区块链的缺点主要体现在完全无法修改区块链上的数据,这会导致很多现实的问题,例如:如果现金的转账地址填错,会直接造成永久损失且无法撤销;同时如果丢失密钥也一样会造成永久损失无法挽回;节点可以在区块链上匿名发布不良信息而无法被追责,其发布的内容也无法修改等。这一特点可能会引发很多违反国家制度和条例的行为,同时也不符合数据库内容增删改查的基本需要。
发明内容
为了解决现有技术中存在的问题,本申请提供一种区块链账本数据的编辑方法,涉及区块链技术和金融领域。该区块链账本数据的编辑方法包括:
向区块链节点发送账本数据编辑请求,所述账本数据编辑请求包括原始数据及对应的替换数据;
根据所述区块链节点反馈的身份验证请求生成身份验证信息,并将所述身份验证信息发送至所述区块链节点进行身份验证;
当所述区块链节点反馈的信息为身份验证通过时,根据所述原始数据、所述原始数据对应的哈希冲突值以及所述替换数据计算所述替换数据对应的哈希冲突值;
将所述替换数据对应的哈希冲突值发送至所述区块链节点,以使所述区块链节点将所述原始数据更改为所述替换数据。
在一实施例中,所述向区块链节点发送账本数据编辑请求之前,还包括:
抽取随机数以生成至少一个陷门分片;
根据所述陷门分片进行安全多方计算得到陷门公钥;
根据所述陷门分片生成所述陷门分片对应的身份信息;
将所述陷门公钥以及所述身份信息发送至所述区块链节点。
前述几个实施例从特权区块链节点的角度进行描述,本申请还提供另一种区块链账本数据的编辑方法,从特权区块链节点之外的其他区块链节点的角度进行描述,该方法包括:
根据预先选举的特权区块链节点发送的账本数据编辑请求生成身份验证请求;其中,所述账本数据编辑请求包括原始数据和对应的替换数据;
接收所述特权区块链节点根据所述身份验证请求生成的身份验证信息;
接收所述特权区块链节点在身份验证通过后发送的所述替换数据对应的哈希冲突值,以对所述替换数据进行合法性验证;所述替换数据对应的哈希冲突值由所述特权区块链节点根据所述原始数据、所述原始数据对应的哈希冲突值以及所述替换数据计算得到;
当所述替换数据通过合法性验证后,将所述原始数据更改为所述替换数据。
在一实施例中,所述区块链账本数据的编辑方法还包括:
接收所述特权区块链节点发送的陷门公钥以及所述特权区块链节点对应的身份信息;
将所述陷门公钥以及所述身份信息存储至不可编辑存储模块。
在一实施例中,所述区块链账本数据的编辑方法还包括:
所述账本数据存储于可编辑存储模块。
在一实施例中,所述区块链账本数据的编辑方法还包括:
将所述替换数据以及所述替换数据对应的哈希冲突值进行公告,以使其他区块链节点同步更新各自的账本数据。
本申请还提供一种区块链账本数据的编辑方法,包括:
特权区块链节点向区块链节点发送账本数据编辑请求,所述账本数据编辑请求包括原始数据以及对应的替换数据;
所述区块链节点根据所述账本数据编辑请求生成身份验证请求;
所述特权区块链节点根据所述身份验证请求生成身份验证信息;
所述区块链节点接收所述身份验证信息并进行身份验证;当身份验证通过时,所述区块链节点根据所述原始数据、所述原始数据对应的哈希冲突值以及所述替换数据计算所述替换数据对应的哈希冲突值,并将所述替换数据对应的哈希冲突值发送至所述区块链节点;
所述区块链节点根据所述替换数据对应的哈希冲突值对所述替换数据进行合法性验证,且在合法性验证通过时,将所述原始数据更改为所述替换数据。
本申请还一种区块链账本数据的编辑装置,该装置包括:
编辑请求发送模块,用于向区块链节点发送账本数据编辑请求,所述账本数据编辑请求包括原始数据及对应的替换数据;
身份验证信息生成模块,用于根据所述区块链节点反馈的身份验证请求生成身份验证信息,并将所述身份验证信息发送至所述区块链节点进行身份验证;
哈希冲突值计算模块,用于当所述区块链节点反馈的信息为身份验证通过时,根据所述原始数据、所述原始数据对应的哈希冲突值以及所述替换数据计算所述替换数据对应的哈希冲突值;
哈希冲突值发送模块,用于将所述替换数据对应的哈希冲突值发送至所述区块链节点,以使所述区块链节点将所述原始数据更改为所述替换数据。
在一实施例中,所述区块链账本数据的编辑装置还包括:
陷门分片生成模块,用于抽取随机数以生成至少一个陷门分片;
陷门公钥计算模块,用于根据所述陷门分片进行安全多方计算得到陷门公钥;
身份信息生成模块,用于根据所述陷门分片生成所述陷门分片对应的身份信息;
验证信息发送模块,用于将所述陷门公钥以及所述身份信息发送至所述区块链节点。
本申请还提供另一种区块链账本数据的编辑装置,包括:
身份验证请求发送模块,用于根据预先选举的特权区块链节点发送的账本数据编辑请求生成身份验证请求;其中,所述账本数据编辑请求包括原始数据和对应的替换数据;
身份验证信息接收模块,用于接收所述特权区块链节点根据所述身份验证请求生成的身份验证信息;
哈希冲突值接收模块,用于接收所述特权区块链节点在身份验证通过后发送的所述替换数据对应的哈希冲突值,以对所述替换数据进行合法性验证;所述替换数据对应的哈希冲突值由所述特权区块链节点根据所述原始数据、所述原始数据对应的哈希冲突值以及所述替换数据计算得到;
账本数据替换模块,用于当所述替换数据通过合法性验证后,将所述原始数据更改为所述替换数据。
在一实施例中,所述的区块链账本数据的编辑装置还包括:
验证信息接收模块,用于接收所述特权区块链节点发送的陷门公钥以及所述特权区块链节点对应的身份信息;
不可编辑存储模块,用于存储所述陷门公钥以及所述身份信息。
在一实施例中,所述区块链账本数据的编辑装置还包括:
可编辑存储模块,用于存储区块链节点对应的账本数据。
在一实施例中,所述区块链账本数据的编辑装置还包括:
数据更新公告模块,用于将所述替换数据以及所述替换数据对应的哈希冲突值进行公告,以使其他区块链节点同步更新各自的账本数据。
本申请还提供一种区块链账本数据的编辑系统,包括:区块链节点以及预先选举的特权区块链节点;
所述特权区块链节点向区块链节点发送账本数据编辑请求,所述账本数据编辑请求包括原始数据以及对应的替换数据;
所述区块链节点根据所述账本数据编辑请求生成身份验证请求;
所述特权区块链节点根据所述身份验证请求生成身份验证信息;
所述区块链节点接收所述身份验证信息并进行身份验证;当身份验证通过时,所述区块链节点根据所述原始数据、所述原始数据对应的哈希冲突值以及所述替换数据计算所述替换数据对应的哈希冲突值,并将所述替换数据对应的哈希冲突值发送至所述区块链节点;
所述区块链节点根据所述替换数据对应的哈希冲突值对所述替换数据进行合法性验证,且在合法性验证通过时,将所述原始数据更改为所述替换数据。
本申请的区块链账本数据的编辑方法及装置可以实现区块链账本数据的公平编辑,以克服现存区块链技术完全无法修改账本数据的不足。本发明提供的公平、高效和去中心化的区块链编辑方法,可以解决区块链节点的账本数据不能修改所造成的功能性问题和规范管理问题,以及减少区块链节点的账本数据无法撤销所引发的各类损失。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请的区块链系统的示意图。
图2为区块链账本数据的编辑方法的示意图。
图3为区块链账本数据的编辑方法的另一种示意图。
图4为区块链账本数据的编辑方法的另一种示意图。
图5为区块链账本数据的编辑方法的另一种示意图。
图6为区块链账本数据的编辑装置的示意图。
图7为区块链账本数据的编辑装置的另一种示意图。
图8为区块链账本数据的编辑装置的另一种示意图。
图9为区块链账本数据的编辑装置的另一种示意图。
图10为区块链账本数据的编辑装置的另一种示意图。
图11为一种电子设备的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请提供一种区块链账本数据的编辑方法,可用于编辑区块链节点的账本数据。该方法可应用于包含普通的区块链节点以及特权区块链节点的区块链系统中。为了便于描述本申请的区块链账本数据的编辑方法,此处首先对区块链系统进行说明。
如图1所示,本申请的区块链系统包括两种节点,一种为普通的区块链节点1,另一种为特权区块链节点2。
其中,特权区块链节点的产生过程为:区块链系统的全部节点对该区块链系统中的各节点进行投票选举,将得到投票数最多的N个节点作为特权区块链节点,N为大于或等于1的整数,也即特权区块链节点可以为一个,也可以是多个。特权区块链节点可对普通的区块链节点的账本数据进行编辑操作。本说明书以包含多个特权区块链节点为例进行描述,但并非用以限定本发明。
当存在多个特权区块链节点时,各特权区块链节点构成可对区块链节点的账本数据进行编辑操作的共识团体。各特权区块链节点之间达成POA(权利证明机制)共识。当有对区块链节点的账本数据进行编辑的需求时,超过半数的特权区块链节点同意编辑时,即可使该共识团体生成账本数据编辑请求,并向对应的区块链节点发送该账本数据编辑请求。
特权区块链节点与普通的区块链节点的区别仅在于特权区块链节点可以发起编辑请求,其余功能均与普通的区块链节点相同,也即特权区块链节点被选举为特权区块链节点之前,也是区块链中的一个普通节点,也参与投票选举的过程。
普通的区块链节点和特权区块链节点中均包括两个存储模块,即可编辑存储模块和不可编辑存储模块。其中,可编辑存储模块用于存储各类交易数据,不可编辑存储模块用于存储需要防止篡改的验证信息,例如身份信息、密钥等不可更改的信息。本申请的账本数据存储于可编辑存储模块中。
基于上述区块链系统,本申请首先提供一种区块链账本数据的编辑方法,本实施例的方法的执行主体为区块链系统中的特权区块链节点。如图2所示,该方法包括以下步骤:
步骤S201,向区块链节点发送账本数据编辑请求,所述账本数据编辑请求包括原始数据及对应的替换数据。
具体地,当产生数据编辑需求时,例如某一区块链节点的发布了错误的现金转账地址或不适合传播的信息时,可以由特权区块链节点根据需要编辑的数据发送账本数据编辑请求,以更正待编辑信息。例如,当原始数据为错误的现金转账地址时,替换数据为正确的现金转账地址,即执行更正操作;可以理解的是,替换数据尽管包含在特权区块链节点的账本数据编辑请求中,却是由特权区块链节点向该普通区块链节点确认后得到的。
步骤S202,根据所述区块链节点反馈的身份验证请求生成身份验证信息,并将所述身份验证信息发送至所述区块链节点进行身份验证。
由于只有特权区块链节点可以发起账本数据编辑请求,因此,普通的区块链节点接收到账本数据编辑请求后,会对特权区块链节点的身份进行验证。
特权区块链节点根据该普通的区块链节点的身份验证请求生成身份验证信息,该身份验证信息包括加密后的可唯一代表特权区块链节点身份的信息,例如预先生成的陷门分片。
步骤S203,当所述区块链节点反馈的信息为身份验证通过时,根据所述原始数据、所述原始数据对应的哈希冲突值以及所述替换数据计算所述替换数据对应的哈希冲突值。
具体地,假设原始数据表示为m,替换数据表示为m’,原始数据对应的哈希冲突值表示为r,替换数据对应的哈希冲突值表示为r’,则根据以下公式组:
H=gm·hr
H′=gm′·hr′mod q
H=H′
即可得到替换数据对应的哈希冲突值:
r′=F(m,m′,r)=(m-m′+xr)x-1mod q
其中,g和q为常数。
步骤S204,将所述替换数据对应的哈希冲突值发送至所述区块链节点,以使所述区块链节点将所述原始数据更改为所述替换数据。
在步骤S202中,特权区块链节点可将预先生成的陷门分片加密后作为身份验证信息发送至普通的区块链节点进行身份验证。因此,在一实施例中,如图3所示,步骤S201,向区块链节点发送账本数据编辑请求之前,还包括以下步骤:
步骤S301,抽取随机数以生成至少一个陷门分片。
具体地,假设存在多个(n个,n为大于1的正整数)特权区块链节点P1,P2,…,Pn,且每个特权区块链节点有且仅有一个陷门分片,则各特权区块链节点的陷门分片分别表示为x1,x2,…,xn。
步骤S302,根据所述陷门分片进行安全多方计算得到陷门公钥。
其中,陷门公钥h的合成公式具体为:
由于各特权区块链节点Pi(1<<i<<n)的陷门分片xi(1<<i<<n)不被其他节点所知,为了保证陷门分片不被泄露,各特权区块链节点需要进行一次安全多方计算(MPC)来得到陷门x的值。
具体为,设置一个同态的加解密工具(sk,pk,M,C,E,D),其中sk代表加解密工具的私钥,pk代表加解密工具的公钥,M和C分别代表加解密工具的明文空间和密文空间,E和D分别代表加解密工具的加密算法和解密算法。其中,加密算法E具有同态性。
各特权区块链节点Pi(1<<i<<n)分别将自己的陷门分片xi(1<<i<<n)用公钥pk加密得到对应的密文E(xi)(1<<i<<n),并将密文E(xi)公开。各特权区块链节点分别获取其余全部特权区块链节点公开的陷门分片的密文。之后通过Paillier同态加密法得到函数值密文E(x)=E(x1·x2…xn)=E(x1)E(x2)…E(xn)。
然后全部特权区块链节点使用各自的私钥联合对E(x)进行解密操作,即可得到陷门x的值。
最后将x的值代入陷门公钥h的合成公式中,即可得到陷门公钥的h值。
步骤S303,根据所述陷门分片生成所述陷门分片对应的身份信息。
该步骤即为各特权区块链节点使用同态的加解密工具(sk,pk,M,C,E,D)对陷门分片加密后得到身份信息。
步骤S304,将所述陷门公钥以及所述身份信息发送至所述区块链节点。
其中,使用该普通的区块链节点的通信公钥对身份信息和陷门公钥进行加密。其中该普通的区块链节点的通信公钥是公开的,使用该通信公钥加密后的信息仅能使用该普通的区块链节点的通信私钥解密,且该通信私钥仅被该普通的区块链节点掌握,以保证陷门公钥和身份信息的安全。
该步骤将陷门公钥以及各特权区块链节点的身份信息发送至普通的区块链节点,以使该普通的区块链节点将陷门公钥和各特权区块链节点的身份信息存储至不可编辑存储模块中,便于后续对各特权区块链节点的身份进行验证。
前述几个实施例从特权区块链节点的角度进行描述,在另一实施例中,本申请还提供另一种区块链账本数据的编辑方法,从普通的区块链节点的角度进行描述。在特权区块链节点一端执行的步骤可参照前述实施例的步骤S201~S204以及步骤S301~S304,此处不再赘述。如图4所示,该方法包括以下步骤:
步骤S401,根据预先选举的特权区块链节点发送的账本数据编辑请求生成身份验证请求。
其中,所述账本数据编辑请求包括原始数据和对应的替换数据,所述原始数据存储于普通区块链节点的可编辑存储模块中。
步骤S402,接收所述特权区块链节点根据所述身份验证请求生成的身份验证信息,并根据所述身份验证请求对所述特权区块链节点的身份进行验证。
具体地,该普通的区块链节点中预存有各特权区块链节点的身份信息。当特权区块链节点再次发送身份验证信息时,使用同态-变色龙函数f(x)=gxmod q进行身份验证。
验证步骤具体为:将预存于不可编辑存储模块中的特权区块链节点的身份信息作为x代入上述同态-变色龙函数,得到第一个f(x)值;在将步骤S402中接收到的特权区块链节点的身份验证信息作为x代入上述同态-变色龙函数,得到第二个f(x)值。若两个f(x)值相同,则特权区块链节点的身份验证通过;否则不通过。
步骤S403,接收所述特权区块链节点在身份验证通过后发送的所述替换数据对应的哈希冲突值;所述替换数据对应的哈希冲突值由所述特权区块链节点根据所述原始数据、所述原始数据对应的哈希冲突值以及所述替换数据计算得到。
步骤S404,当所述替换数据通过合法性验证后,将所述原始数据更改为所述替换数据。
其中,合法性验证的过程同样可使用步骤S203中的公式进行验证,即将原始数据以及原始数据对应的哈希冲突值代入公式H=gm·hr中,将替换数据以及替换数据对应的哈希冲突值代入公式H′=gm′·hr′mod q中,当两个公式的结果一致时,合法性验证通过;否则不通过。
在一实施例中,如图5所示,在步骤S401之前,所述区块链账本数据的编辑方法还包括:
步骤S501,接收所述特权区块链节点发送的陷门公钥以及所述特权区块链节点对应的身份信息。
步骤S502,将所述陷门公钥以及所述身份信息存储至不可编辑存储模块。
在一实施例中,所述区块链账本数据的编辑方法还包括:
将所述替换数据以及所述替换数据对应的哈希冲突值进行公告,以使其他区块链节点同步更新各自的账本数据。
这一步骤也可以由特权区块链节点执行,特权节点同步共识区块链系统中所有普通的区块链节点,并发布区块版本。各普通的区块链节点收到更新公告后进行版本验证。当特权节点发布的区块版本与当前的区块版本一致时,普通的区块链节点同步更新各自的账本数据。
在另一实施例中,基于上述区块链系统,本申请还提供一种区块链账本数据的编辑方法。如图6所示,具体步骤包括:
步骤S601,特权区块链节点向普通的区块链节点发送账本数据编辑请求,所述账本数据编辑请求包括原始数据以及对应的替换数据。
其中,该普通的区块链节点为发布所述原始数据的节点,后续统称为区块链节点,以与特权区块链节点区分开来。步骤S101中,特权区块链节点向该普通的区块链节点发送需要修改的原始数据以及用于替换原始数据的替换数据。
步骤S602,所述区块链节点根据所述账本数据编辑请求生成身份验证请求。
由于只有特权区块链节点拥有编辑账本数据的权限,因此,普通区块链节点在接收到账本数据编辑请求之后,需要验证发送该账本数据编辑请求的节点是否是特权区块链节点。验证的方式即为向特权区块链节点发送身份验证请求。
步骤S603,所述特权区块链节点根据所述身份验证请求生成身份验证信息。
特权区块链节点接收到身份验证请求后,将可以表明自己身份的数据进行加密处理,得到身份验证信息,并发送至普通的区块链节点。
步骤S604,所述区块链节点接收所述身份验证信息并进行身份验证。
步骤S605,当身份验证通过时,所述特权区块链节点根据所述原始数据、所述原始数据对应的哈希冲突值以及所述替换数据计算所述替换数据对应的哈希冲突值,并将所述替换数据对应的哈希冲突值发送至所述区块链节点。
步骤S606,所述区块链节点根据所述替换数据对应的哈希冲突值对所述替换数据进行合法性验证,且在合法性验证通过时,将所述原始数据更改为所述替换数据。
本实施例中各步骤的具体执行过程可参见之前各实施例的描述,此处不再赘述。
本申请的区块链账本数据的编辑方法可以实现区块链账本数据的公平编辑,以克服现存区块链技术完全无法修改账本数据的不足。本发明提供的公平、高效和去中心化的区块链编辑方法,可以解决区块链节点的账本数据不能修改所造成的功能性问题和规范管理问题,以及减少区块链节点的账本数据无法撤销所引发的各类损失。
基于同一发明构思,本申请实施例还提供了一种区块链账本数据的编辑装置,可以用于实现上述实施例所描述的方法,如下面的实施例所述。由于区块链账本数据的编辑装置解决问题的原理与区块链账本数据的编辑方法相似,因此区块链账本数据的编辑装置的实施可以参见区块链账本数据的编辑方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的系统较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
在一实施例中,本申请还一种区块链账本数据的编辑装置,如图7所示,该装置包括:
编辑请求发送模块701,用于向区块链节点发送账本数据编辑请求,所述账本数据编辑请求包括原始数据及对应的替换数据;
身份验证信息生成模块702,用于根据所述区块链节点反馈的身份验证请求生成身份验证信息,并将所述身份验证信息发送至所述区块链节点进行身份验证;
哈希冲突值计算模块703,用于当所述区块链节点反馈的信息为身份验证通过时,根据所述原始数据、所述原始数据对应的哈希冲突值以及所述替换数据计算所述替换数据对应的哈希冲突值;
哈希冲突值发送模块704,用于将所述替换数据对应的哈希冲突值发送至所述区块链节点,以使所述区块链节点将所述原始数据更改为所述替换数据。
在一实施例中,如图8所示,所述区块链账本数据的编辑装置还包括:
陷门分片生成模块705,用于抽取随机数以生成至少一个陷门分片;
陷门公钥计算模块706,用于根据所述陷门分片进行安全多方计算得到陷门公钥;
身份信息生成模块707,用于根据所述陷门分片生成所述陷门分片对应的身份信息;
验证信息发送模块708,用于将所述陷门公钥以及所述身份信息发送至所述区块链节点。
在另一实施例中,本申请还提供另一种区块链账本数据的编辑装置,如图9所示,包括:
身份验证请求发送模块901,用于根据预先选举的特权区块链节点发送的账本数据编辑请求生成身份验证请求;其中,所述账本数据编辑请求包括原始数据和对应的替换数据;
身份验证信息接收模块902,用于接收所述特权区块链节点根据所述身份验证请求生成的身份验证信息;
哈希冲突值接收模块903,用于接收所述特权区块链节点在身份验证通过后发送的所述替换数据对应的哈希冲突值;所述替换数据对应的哈希冲突值由所述特权区块链节点根据所述原始数据、所述原始数据对应的哈希冲突值以及所述替换数据计算得到;
账本数据替换模块904,用于当所述替换数据通过合法性验证后,将所述原始数据更改为所述替换数据。
在一实施例中,如图10所示,所述的区块链账本数据的编辑装置还包括:
验证信息接收模块905,用于接收所述特权区块链节点发送的陷门公钥以及所述特权区块链节点对应的身份信息;
不可编辑存储模块906,用于存储所述陷门公钥以及所述身份信息。
在一实施例中,如图10所示,所述区块链账本数据的编辑装置还包括:
可编辑存储模块907,用于存储区块链节点对应的账本数据。
在一实施例中,如图10所示,所述区块链账本数据的编辑装置还包括:
数据更新公告模块908,用于将所述替换数据以及所述替换数据对应的哈希冲突值进行公告,以使其他区块链节点同步更新各自的账本数据。
在另一实施例中,本申请还提供一种区块链账本数据的编辑系统,可参见图1,包括:普通的区块链节点1以及预先选举的特权区块链节点2;
所述特权区块链节点向区块链节点发送账本数据编辑请求,所述账本数据编辑请求包括原始数据以及对应的替换数据;
所述区块链节点根据所述账本数据编辑请求生成身份验证请求;
所述特权区块链节点根据所述身份验证请求生成身份验证信息;
所述区块链节点接收所述身份验证信息并进行身份验证;当身份验证通过时,所述区块链节点根据所述原始数据、所述原始数据对应的哈希冲突值以及所述替换数据计算所述替换数据对应的哈希冲突值,并将所述替换数据对应的哈希冲突值发送至所述区块链节点;
所述区块链节点根据所述替换数据对应的哈希冲突值对所述替换数据进行合法性验证,且在合法性验证通过时,将所述原始数据更改为所述替换数据。
本申请的区块链账本数据的编辑系统及装置可以实现区块链账本数据的公平编辑,以克服现存区块链技术完全无法修改账本数据的不足。本发明提供的公平、高效和去中心化的区块链编辑方法,可以解决区块链节点的账本数据不能修改所造成的功能性问题和规范管理问题,以及减少区块链节点的账本数据无法撤销所引发的各类损失。
本发明还提供一种电子设备,参见图11,所述电子设备100具体包括:
中央处理器(processor)110、存储器(memory)120、通信模块(Communications)130、输入单元140、输出单元150以及电源160。
其中,所述存储器(memory)120、通信模块(Communications)130、输入单元140、输出单元150以及电源160分别与所述中央处理器(processor)110相连接。所述存储器120中存储有计算机程序,所述中央处理器110可调用所述计算机程序,所述中央处理器110执行所述计算机程序时实现上述实施例中的区块链账本数据的编辑方法中的全部步骤。
本申请的实施例还提供一种计算机存储介质,用于存储计算机程序,所述计算机程序可被处理器执行。所述计算机程序被处理器执行时实现本发明所提供的任一区块链账本数据的编辑方法。
本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本说明书实施例的至少一个实施例或示例中。
在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。以上所述仅为本说明书实施例的实施例而已,并不用于限制本说明书实施例。对于本领域技术人员来说,本说明书实施例可以有各种更改和变化。凡在本说明书实施例的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书实施例的权利要求的范围之内。
Claims (16)
1.一种区块链账本数据的编辑方法,其特征在于,包括:
向区块链节点发送账本数据编辑请求,所述账本数据编辑请求包括原始数据及对应的替换数据;
根据所述区块链节点反馈的身份验证请求生成身份验证信息,并将所述身份验证信息发送至所述区块链节点进行身份验证;
当所述区块链节点反馈的信息为身份验证通过时,根据所述原始数据、所述原始数据对应的哈希冲突值以及所述替换数据计算所述替换数据对应的哈希冲突值;
将所述替换数据对应的哈希冲突值发送至所述区块链节点,以使所述区块链节点将所述原始数据更改为所述替换数据。
2.根据权利要求1所述的区块链账本数据的编辑方法,其特征在于,所述向区块链节点发送账本数据编辑请求之前,还包括:
抽取随机数以生成至少一个陷门分片;
根据所述陷门分片进行安全多方计算得到陷门公钥;
根据所述陷门分片生成所述陷门分片对应的身份信息;
将所述陷门公钥以及所述身份信息发送至所述区块链节点。
3.一种区块链账本数据的编辑方法,其特征在于,包括:
根据预先选举的特权区块链节点发送的账本数据编辑请求生成身份验证请求;其中,所述账本数据编辑请求包括原始数据和对应的替换数据;
接收所述特权区块链节点根据所述身份验证请求生成的身份验证信息;
接收所述特权区块链节点在身份验证通过后发送的所述替换数据对应的哈希冲突值,以对所述替换数据进行合法性验证;所述替换数据对应的哈希冲突值由所述特权区块链节点根据所述原始数据、所述原始数据对应的哈希冲突值以及所述替换数据计算得到;
当所述替换数据通过合法性验证后,将所述原始数据更改为所述替换数据。
4.根据权利要求3所述的区块链账本数据的编辑方法,其特征在于,还包括:
接收所述特权区块链节点发送的陷门公钥以及所述特权区块链节点对应的身份信息;
将所述陷门公钥以及所述身份信息存储至不可编辑存储模块。
5.根据权利要求4所述的区块链账本数据的编辑方法,其特征在于,所述账本数据存储于可编辑存储模块。
6.根据权利要求5所述的区块链账本数据的编辑方法,其特征在于,还包括:
将所述替换数据以及所述替换数据对应的哈希冲突值进行公告,以使其他区块链节点同步更新各自的账本数据。
7.一种区块链账本数据的编辑方法,其特征在于,包括:
特权区块链节点向区块链节点发送账本数据编辑请求,所述账本数据编辑请求包括原始数据以及对应的替换数据;
所述区块链节点根据所述账本数据编辑请求生成身份验证请求;
所述特权区块链节点根据所述身份验证请求生成身份验证信息;
所述区块链节点接收所述身份验证信息并进行身份验证;
当身份验证通过时,所述特权区块链节点根据所述原始数据、所述原始数据对应的哈希冲突值以及所述替换数据计算所述替换数据对应的哈希冲突值,并将所述替换数据对应的哈希冲突值发送至所述区块链节点;
所述区块链节点根据所述替换数据对应的哈希冲突值对所述替换数据进行合法性验证,且在合法性验证通过时,将所述原始数据更改为所述替换数据。
8.一种区块链账本数据的编辑装置,其特征在于,包括:
编辑请求发送模块,用于向区块链节点发送账本数据编辑请求,所述账本数据编辑请求包括原始数据及对应的替换数据;
身份验证信息生成模块,用于根据所述区块链节点反馈的身份验证请求生成身份验证信息,并将所述身份验证信息发送至所述区块链节点进行身份验证;
哈希冲突值计算模块,用于当所述区块链节点反馈的信息为身份验证通过时,根据所述原始数据、所述原始数据对应的哈希冲突值以及所述替换数据计算所述替换数据对应的哈希冲突值;
哈希冲突值发送模块,用于将所述替换数据对应的哈希冲突值发送至所述区块链节点,以使所述区块链节点将所述原始数据更改为所述替换数据。
9.根据权利要求8所述的区块链账本数据的编辑装置,其特征在于,还包括:
陷门分片生成模块,用于抽取随机数以生成至少一个陷门分片;
陷门公钥计算模块,用于根据所述陷门分片进行安全多方计算得到陷门公钥;
身份信息生成模块,用于根据所述陷门分片生成所述陷门分片对应的身份信息;
验证信息发送模块,用于将所述陷门公钥以及所述身份信息发送至所述区块链节点。
10.一种区块链账本数据的编辑装置,其特征在于,包括:
身份验证请求发送模块,用于根据预先选举的特权区块链节点发送的账本数据编辑请求生成身份验证请求;其中,所述账本数据编辑请求包括原始数据和对应的替换数据;
身份验证信息接收模块,用于接收所述特权区块链节点根据所述身份验证请求生成的身份验证信息;
哈希冲突值接收模块,用于接收所述特权区块链节点在身份验证通过后发送的所述替换数据对应的哈希冲突值,以对所述替换数据进行合法性验证;所述替换数据对应的哈希冲突值由所述特权区块链节点根据所述原始数据、所述原始数据对应的哈希冲突值以及所述替换数据计算得到;
账本数据替换模块,用于当所述替换数据通过合法性验证后,将所述原始数据更改为所述替换数据。
11.根据权利要求10所述的区块链账本数据的编辑装置,其特征在于,还包括:
验证信息接收模块,用于接收所述特权区块链节点发送的陷门公钥以及所述特权区块链节点对应的身份信息;
不可编辑存储模块,用于存储所述陷门公钥以及所述身份信息。
12.根据权利要求11所述的区块链账本数据的编辑装置,其特征在于,还包括:
可编辑存储模块,用于存储区块链节点对应的账本数据。
13.根据权利要求12所述的区块链账本数据的编辑装置,其特征在于,还包括:
数据更新公告模块,用于将所述替换数据以及所述替换数据对应的哈希冲突值进行公告,以使其他区块链节点同步更新各自的账本数据。
14.一种区块链账本数据的编辑系统,其特征在于,包括:区块链节点以及预先选举的特权区块链节点;
所述特权区块链节点向区块链节点发送账本数据编辑请求,所述账本数据编辑请求包括原始数据以及对应的替换数据;
所述区块链节点根据所述账本数据编辑请求生成身份验证请求;
所述特权区块链节点根据所述身份验证请求生成身份验证信息;
所述区块链节点接收所述身份验证信息并进行身份验证;当身份验证通过时,所述区块链节点根据所述原始数据、所述原始数据对应的哈希冲突值以及所述替换数据计算所述替换数据对应的哈希冲突值,并将所述替换数据对应的哈希冲突值发送至所述区块链节点;
所述区块链节点根据所述替换数据对应的哈希冲突值对所述替换数据进行合法性验证,且在合法性验证通过时,将所述原始数据更改为所述替换数据。
15.一种电子设备,其特征在于,包括:
中央处理器、存储器、通信模块,所述存储器中存储有计算机程序,所述中央处理器可调用所述计算机程序,所述中央处理器执行所述计算机程序时实现如权利要求1-6中任一项所述的区块链账本数据的编辑方法。
16.一种计算机存储介质,用于存储计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-6中任一项所述的区块链账本数据的编辑方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110682603.4A CN113393241A (zh) | 2021-06-18 | 2021-06-18 | 一种区块链账本数据的编辑方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110682603.4A CN113393241A (zh) | 2021-06-18 | 2021-06-18 | 一种区块链账本数据的编辑方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113393241A true CN113393241A (zh) | 2021-09-14 |
Family
ID=77623040
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110682603.4A Pending CN113393241A (zh) | 2021-06-18 | 2021-06-18 | 一种区块链账本数据的编辑方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113393241A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116781697A (zh) * | 2023-07-08 | 2023-09-19 | 武昌理工学院 | 基于大数据处理技术的5g信号处理系统及其方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105593872A (zh) * | 2013-07-01 | 2016-05-18 | 三星电子株式会社 | 数据认证的方法和设备 |
CN111460497A (zh) * | 2020-03-30 | 2020-07-28 | 中南大学 | 一种可编辑区块链系统 |
CN111639935A (zh) * | 2020-04-30 | 2020-09-08 | 南京理工大学 | 适用于可编辑区块链的账本修改方法 |
CN111683090A (zh) * | 2020-06-08 | 2020-09-18 | 盛唐威讯数媒科技(北京)有限公司 | 一种基于分布式存储的区块链数字签名方法及装置 |
CN112187455A (zh) * | 2020-09-24 | 2021-01-05 | 西南交通大学 | 一种基于可编辑区块链的分布式公钥基础设施构建方法 |
-
2021
- 2021-06-18 CN CN202110682603.4A patent/CN113393241A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105593872A (zh) * | 2013-07-01 | 2016-05-18 | 三星电子株式会社 | 数据认证的方法和设备 |
CN111460497A (zh) * | 2020-03-30 | 2020-07-28 | 中南大学 | 一种可编辑区块链系统 |
CN111639935A (zh) * | 2020-04-30 | 2020-09-08 | 南京理工大学 | 适用于可编辑区块链的账本修改方法 |
CN111683090A (zh) * | 2020-06-08 | 2020-09-18 | 盛唐威讯数媒科技(北京)有限公司 | 一种基于分布式存储的区块链数字签名方法及装置 |
CN112187455A (zh) * | 2020-09-24 | 2021-01-05 | 西南交通大学 | 一种基于可编辑区块链的分布式公钥基础设施构建方法 |
Non-Patent Citations (1)
Title |
---|
李佩丽;徐海霞;马添军;穆永恒;: "可更改区块链技术研究", 密码学报, no. 05, 15 October 2018 (2018-10-15) * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116781697A (zh) * | 2023-07-08 | 2023-09-19 | 武昌理工学院 | 基于大数据处理技术的5g信号处理系统及其方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11139951B2 (en) | Blockchain system and data processing method for blockchain system | |
EP3841702B1 (en) | Method, user device, management device, storage medium and computer program product for key management | |
CN110011781B (zh) | 用于交易金额加密且支持零知识证明的同态加密方法和介质 | |
Ashritha et al. | Redactable blockchain using enhanced chameleon hash function | |
JP4593533B2 (ja) | 公開鍵暗号方式に使用する鍵を更新するシステムおよび方法 | |
TW201733303A (zh) | 決定用於資訊的安全交換的共同私密,及階層化的決定性加密金鑰 | |
Lyu et al. | A secure decentralized trustless E-voting system based on smart contract | |
US20140089670A1 (en) | Unique code in message for signature generation in asymmetric cryptographic device | |
JPWO2005071881A1 (ja) | ミックスネットシステム | |
Killer et al. | Provotum: A blockchain-based and end-to-end verifiable remote electronic voting system | |
US20230224147A1 (en) | Generating shared private keys | |
US20230319103A1 (en) | Identifying denial-of-service attacks | |
CN114666032A (zh) | 基于同态加密的区块链交易数据隐私保护方法 | |
CN118160275A (zh) | 阈值签名方案 | |
US20240121109A1 (en) | Digital signatures | |
US20230163977A1 (en) | Digital signatures | |
Zhang et al. | Data security in cloud storage | |
CN113393241A (zh) | 一种区块链账本数据的编辑方法及装置 | |
CN114697038A (zh) | 一种抗量子攻击的电子签章方法和系统 | |
WO2023016729A1 (en) | Generating digital signature shares | |
CN113362065A (zh) | 一种基于分散式私钥的在线签名交易实现方法 | |
Priyadarshini et al. | Digital signature and its pivotal role in affording security services | |
CN114697040B (zh) | 一种基于对称密钥的电子签章方法和系统 | |
KR102589792B1 (ko) | 연쇄상호보증 기반 전자공증 서비스 제공 시스템 | |
CN111861473B (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 |