CN110474762A - The construction method of ring type editable block chain - Google Patents

The construction method of ring type editable block chain Download PDF

Info

Publication number
CN110474762A
CN110474762A CN201910777120.5A CN201910777120A CN110474762A CN 110474762 A CN110474762 A CN 110474762A CN 201910777120 A CN201910777120 A CN 201910777120A CN 110474762 A CN110474762 A CN 110474762A
Authority
CN
China
Prior art keywords
block
ring type
block chain
new
parameter
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
CN201910777120.5A
Other languages
Chinese (zh)
Other versions
CN110474762B (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.)
University of Electronic Science and Technology of China
Original Assignee
University of Electronic Science and Technology of China
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 University of Electronic Science and Technology of China filed Critical University of Electronic Science and Technology of China
Priority to CN201910777120.5A priority Critical patent/CN110474762B/en
Publication of CN110474762A publication Critical patent/CN110474762A/en
Application granted granted Critical
Publication of CN110474762B publication Critical patent/CN110474762B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Power Engineering (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The present invention relates to the construction methods of ring type editable block chain, comprising: A. initialization: according to security parameter, by hash function, output system discloses parameter and original block;B. it generates key: the private key x of user is obtained according to system public parameteriWith public key yi;C. it generates ring type editable block chain: Transaction Information is recorded in block, the last one block of arrangement is connected by each block by generation Time alignment with original block, forms ring type editable block chain;Public key set is obtained according to ring type editable block chain, wherein each block corresponds to a public key yi, each public key yiA corresponding private key xi.The present invention, which is realized, provides efficient management and editor to block chain, and the editor of batch can be carried out to block chain, also supports to delete the batch of block on block chain.And after having executed batch editor, the ring structures of block chain still maintain constant.

Description

The construction method of ring type editable block chain
Technical field
The present invention relates to network safety fileds, are especially the construction method of ring type editable block chain.
Background technique
The concept of block chain is suggested in first official in 2008, it can be used to implement the public affairs under decentralization environment Account book and not modifiable transaction record altogether.
Traditional block chain is inserted into using chain structure, i.e., new block from the tail portion of chain.However, current block chain The problem of being faced with storage consuming and scalability.That is the data content of block chain is excessively huge, is not easy to store, and block Structure is single, preferably can not further be extended from chain structure, thus support it is more diversified service and Function.In order to solve this problem, have multiple research projects at present, such as lightning payment chain, for solving the payment of block chain Slow and scalability problem, the research in ether mill is for extending block chain, to support more diversified Design and Features etc..But Current all research contents are all based on the chain structure of block chain.
Ateniese et al proposes " Redactable Blokchain-or-rewirting history within 2016 Bitcoin and friends ", propose in this article based on chameleon hash function can block chain technology to be edited, permit Perhaps in the case where keeping cryptographic Hash constant, (such as illegal information is related to illegally handing over content of the realization to problem block block It easily) is updated, so that it is guaranteed that the operation that block chain is safe and reliable.However, how the program is not specifically mentioned complete It goes in the environment of center to realize the editor of block content.In addition, the program is again based on traditional chain type block chain, i.e., it is new Block is inserted into from the tail portion of chain.Therefore, once certain Partial Block is updated, then the institute later to the block is needed There is block chain to be traversed, calculating consuming is huge caused by editor (it is especially considering that the length of current block chain, it is up to ten thousand a The traversal difficulty and complexity issue of block chain).In addition, editable block chain can not be obtained based on traditional chain type block chain Obtain better Function Extension.Therefore, for these reasons, the application prospect of editable block chain is limited.
Summary of the invention
The present invention provides a kind of construction methods of ring type editable block chain, in the environment of going to center, to block chain Safe and efficient management and editor are provided, and provide wider application scenarios by ring structures for block chain.
The construction method of ring type editable block chain of the present invention, comprising:
A. initialize: according to security parameter λ, by hash function, output system discloses parameter P and original block B1 (Genesis Block);Wherein the security parameter λ is to be inputted as needed in system initialisation phase by initialization side Parameter, it is a well known parameter which, which is widely embodied in the design of existing any cryptography scheme, usually institute The key length of selection (such as 128256 than top grade).Initialization side can be system owners, be also possible to need to run the calculation The user etc. of method.
B. it generates key: according to the system public parameter P, the private key x of user is calculatediWith public key yi, wherein 1 ≤ i≤n, n are the sum for generating the block of block chain;The user includes that any miner (it is true to be responsible for transaction in block chain Recognize the role being packaged with data) or any user that block chain network is added.
C. it generating ring type editable block chain: Transaction Information is recorded in block, each block, which is pressed, generates Time alignment, and By the last one block of arrangement and the original block B1It is connected, forms ring type editable block chain RCn;According to the ring Formula editable block chain RCnObtain public key set L={ yi}1≤i≤n, wherein each block BiPublic key y described in one correspondingi, often A public key yiPrivate key x described in one correspondingi
The present invention can provide block chain in conjunction with chameleon hash function by the novel block chain structure of ring type Efficient management and editor.Under the support of ring structures, the editor that batch is carried out to block chain can be realized, and also support The batch of block on block chain is deleted.And after having executed batch editor, the ring structures of block chain still maintain constant. Wider application scenarios are provided by ring structures for block chain.For example, the application scenarios based on ring or group ranking all may be used It is transplanted on the block chain with ring structure and is achieved, such as ring signatures, group ranking, vote anonymously.
Further, it by the ring structures of block chain, realizes to the batch editor of block and deletion, includes:
D. it verifies ring type editable block chain: exporting verification result after calculating according to the verifying formula of block chain;
E. new block is added to ring type block chain: according to the ring type editable block chain RCnWith need newly to be added Block { B 'i}n+1≤i≤n+k, new ring type editable block chain RC is exported after calculatingn+kOr the mark of failure is added, wherein k is to need The number for the new block to be added;
F. ring type block chain is edited: according to ring type editable block chain RCnWith the private key set { x of useri}1≤i≤n, pass through Recalculate the new chameleon random value r ' of each blocki, keep the content of each block different and chameleon hash valueIt is identical, By original block sets { Bi}1≤i≤nIt is compiled as new block sets { B 'i}1≤i≤n, ring type editable block after output edit Chain RC 'n
G. ring reconstructs: from the ring type editable block chain RCnAfter middle d block of deletion, the ring type being reconstructed is exported Editable block chain RCn-d, wherein d is ring type editable block chain RCnUpper block number that need to be deleted, and n-2 > d.
Specifically, step A includes:
A1. select to generate member according to security parameter λ as g and group G that group's order is q;
A2. setting hash function is respectively as follows: H1:{0,1}*→ G and H2:{0,1}*→Zq, wherein H1For the first Hash letter Number, effect is by the character string { 0,1 } of 0 or 1 formed random length*It is mapped on an arbitrary element of crowd G, * indicates word Symbol string { 0,1 } is random length, H2For the second hash function, effect be by the character string of 0 or 1 formed random length 0, 1}*It is mapped to the group of integers Z of the q rank composed by (0,1 ..., q-1) elementqOn, Z indicates group of integers;
A3. output system discloses parameter P=< G, q, g, H1,H2>;
A4. original block B is generated1, original block B is written into the system public parameter P1
Specifically, calculating the private key x of user described in step BiWith public key yiAre as follows: according to the system public parameter P, Select a random numberPrivate key x as useri, group of integers Z of the R expression from q rankqOne element x of middle random selectioni, According to the private key xiCalculate public key
Specifically, step C includes: to be packaged the Transaction Information of current slot, and be recorded in block, by block {Bi}1≤i≤nBy the sequence arrangement for generating the time, and by the last one block B of arrangementnWith the original block B1It is connected, shape At B1||…||Bn||B1End to end ring structure, then by calculate { Bi}1≤i≤nCryptographic Hash, obtain ring type editable Block chainWherein, c1For with original block B1Join for the calculating of ring starting point Number, array { Bi,riiIn element successively indicate i-th of block BiContent, chameleon random value and common random value, table Show that L is the public key set for generating block,It indicates to bind newest block BnCorresponding private key xnParameter, wherein h=H1 (L), it indicates public key set L passing through the first hash function H1An element being mapped on crowd G, (u, v) are new for being inserted into The calculating parameter of block.
Specifically, calculating { the Bi}1≤i≤nCryptographic Hash are as follows:
C1. h=H is calculated1(L) andSelect two random numbersCalculate original block B1Calculating ginseng Number(u, v) is the calculating parameter for being inserted into new block;
C2. two random numbers are selectedWherein i=(1 ..., n-1) calculates chameleon random valueWith chameleon hash valueWherein BiFor the content of i-th of block, then calculation block Bi+1 Calculating parameterAccording to the connected characteristic of ring structure ending, c is obtainedn+1=c1
C3. n-th of block B is calculatednRandom number αn=(u-xncnMod q), βn=(v-xncnMod q), it obtains n-th Block BnChameleon random value
When operating to block chain, step D includes: the ring type editable block chain for being n to lengthWherein, c1For original block B1Calculating parameter, array { Bi,riiIn Element successively indicate i-th of block BiContent, chameleon random value and common random value, indicate L be generation block public affairs Key set,It indicates to bind newest block BnCorresponding private key xnParameter, wherein h=H1(L), it indicates public key set L passes through the first hash function H1An element being mapped on crowd G, (u, v) are the calculating parameter for being inserted into new block;
The first hash function H is respectively set1:{0,1}*→ G and the second hash function H2:{0,1}*→Zq, q is group's order, Calculate h=H1(L), h indicates public key set L passing through the first hash function H1An element being mapped on crowd G, according to i-th Block BiChameleon random valueαi=(u-xiciMod q), ciFor block BiCalculating parameter;Calculating pair The chameleon hash value answeredWith block Bi+1Calculating parameter
Then equation is verified:AndWhether set up, exports 1 if setting up, otherwise export 0.
Specifically, step E includes:
E1. new public key is added to public key set L, generates new public key set L '=L | | { yi}n+1≤i≤n+k, calculate h '=H1 (L ') and the newest block B of bindingn+kCorresponding private key xn+kNew parameterObtain block B1New calculating parameter G is to generate member;
E2. new chameleon hash value is calculatedαi=(u-xiciMod q), i=(1 ..., n), so Calculation block B afterwardsi+1New calculating parameterβi=(v-xicimod q);
E3. two random numbers are selectedI=(n+1 ..., n+k) calculates chameleon random valueWith new chameleon hash valueBiFor the content of i-th of block, block is then obtained Bi+1New calculating parameter
E4. for i=n+k, calculation block Bn+kCorresponding random number αn+k=(u-xn+kc′n+kMod q) and its correspondence Common random value βn+k=(v-xn+kc′n+kMod q) and corresponding chameleon random value
E5. equation is verifiedWith Whether set up, if so, then new block { B 'i}n+1≤i≤n+kIt is successfully joined, output insertion new block {B′i}n+1≤i≤n+kRing type editable block chain afterwardsOtherwise it exports Insertion unsuccessfully identifies.
Specifically, step F includes: with length is n, block sets are { Bi}1≤i≤nRing type editable block chain 1≤i≤n, according to private key set { xi}1≤i≤n, calculate new chameleon random valueMake each new chameleon hash value It is identical, it may be assumed thatThen export new length be n, new block sets be { B 'i}1≤i≤n Ring type editable block chain
Specifically, in step G, the ring type editable block chain for being n from lengthMiddle d block of deletion, comprising steps of
G1. ring type editable block chain RC is calculatednAfter deleting d block, the new ring type that remaining block is constituted can be compiled Collect public key set L "=L { y of block chaini}i≤|n-d|, h=H1(L ") andWherein, xn-d-1It is new described in indicating The corresponding private key of ring type editable block chain front end block,Indicate xn-d-1Corresponding parameter;
G2. the "=H according to h1(L ") calculates the parameter of the corresponding private key of new ring type editable block chain And it calculatesWherein h " indicating the public key set L of new ring type editable block chain " passes through first Hash function H1An element being mapped on crowd G, c "1For from one of block on new ring type editable block chain is The calculating parameter of point, guIndicate that the variable of the new ring type editable block chain of calculating, u and v are respectively to realize block chain ring type structure Random number;
G3. new chameleon hash value is calculated separatelyWithI=(1 ..., n-d-2) calculates new ring type editable block chain front end area The corresponding random number α of blockn-d-1=(u-xn-d-1c″n-d-1Mod q), block Bn-d-1Corresponding common random value βn-d-1=(v- xn-d-1c″n-d-1Mod q), obtain block Bn-d-1Chameleon random value
G4. equation is verifiedWithWhether set up, if so, then indicate that block chain reconstructs Cheng work, the new ring type after output reconstruct can Edit block chainOtherwise, output unsuccessfully identifies,.
The construction method of ring type editable block chain of the present invention can be realized and carry out batch editor to block, is added or deletes It removes, and the editorial efficiency of block chain can be effectively improved by the executive mode of the automations such as such as intelligent contract and reduce volume Difficulty is collected, expands the application scenarios of block chain, and improve the scalability of block chain.
Specific embodiment with reference to embodiments is described in further detail above content of the invention again. But the range that this should not be interpreted as to the above-mentioned theme of the present invention is only limitted to example below.Think not departing from the above-mentioned technology of the present invention In the case of thinking, the various replacements or change made according to ordinary skill knowledge and customary means should all be included in this hair In bright range.
Detailed description of the invention
Fig. 1 is the flow chart of the construction method of ring type editable block chain of the present invention.
Specific embodiment
The construction method of ring type editable block chain of the present invention as shown in Figure 1, comprising:
A. it initializes:
A1. select to generate member according to security parameter λ as g and group G that group's order is q;
A2. setting hash function is respectively as follows: H1:{0,1}*→ G and H2:{0,1}*→Zq, wherein H1For the first Hash letter Number, effect is by the character string { 0,1 } of 0 or 1 formed random length*It is mapped on an arbitrary element of crowd G, * indicates word Symbol string { 0,1 } is random length, H2For the second hash function, effect be by the character string of 0 or 1 formed random length 0, 1}*It is mapped to the group of integers Z of the q rank composed by (0,1 ..., q-1) elementqOn, Z indicates group of integers;
A3. output system discloses parameter P=< G, q, g, H1,H2>;
A4. original block B is generated1Original block B is written in the system public parameter P by (Genesis Block)1
B. it generates key: calculating the private key x of useriWith public key yi: according to the system public parameter P, select one with Machine numberPrivate key x as useri, group of integers Z of the R expression from q rankqOne element x of middle random selectioni, according to the private Key xiCalculate public keyWherein 1≤i≤n, n are the sum for generating the block of block chain;The user includes appointing What miner (being responsible for the role that trade confirmation and data are packaged in block chain) or any user that block chain network is added.
C. it generates ring type editable block chain: the Transaction Information of current slot being packaged, and is recorded in block, by area Block { Bi}1≤i≤n(otherwise n >=3 can not constitute end to end ring) by the sequence arrangement for generating the time, and by the last of arrangement One block BnWith the original block B1It is connected, forms B1||…||Bn||B1End to end ring structure, then pass through Calculate { Bi}1≤i≤nCryptographic Hash, obtain ring type editable block chainIts In, c1For with original block B1For the calculating parameter of ring starting point, array { Bi,riiIn element successively indicate i-th of block Bi Content, chameleon random value and common random value,It indicates to bind newest block BnCorresponding private key xnParameter, L ={ yi}1≤i≤nFor the public key set for generating block, each block BiPublic key y described in one correspondingi, each public key yiCorresponding one A private key xi, h=H1(L), it indicates public key set L passing through the first hash function H1A member being mapped on crowd G Element, (u, v) are the calculating parameter for being inserted into new block.Wherein calculate { Bi}1≤i≤nCryptographic Hash are as follows:
C1. h=H is calculated1(L) andSelect two random numbersCalculate original block B1Calculating ginseng Number(u, v) is the calculating parameter for being inserted into new block;
C2. two random numbers are selectedWherein i=(1 ..., n-1) calculates chameleon random valueWith chameleon hash valueWherein BiFor the content of i-th of block, then calculation block Bi+1 Calculating parameterAccording to the connected characteristic of ring structure ending, c is obtainedn+1=c1
C3. n-th of block B is calculatednRandom number αn=(u-xncnMod q), βn=(v-xncnMod q), it obtains n-th Block BnChameleon random value
By the ring structures of block chain, realizes to the batch editor of block and deletion, includes:
D. ring type editable block chain is verified: the ring type editable block chain for being n to lengthWherein, c1For original block B1Calculating parameter, array { Bi,riiIn Element successively indicate i-th of block BiContent, chameleon random value and common random value,Indicate that binding is newest Block BnCorresponding private key xnParameter, L be generate block public key set, h=H1(L), it indicates public key set L by the One hash function H1An element being mapped on crowd G, (u, v) are the calculating parameter for being inserted into new block;
The first hash function H is respectively set1:{0,1}*→ G and the second hash function H2:{0,1}*→Zq, q is group's order, Calculate h=H1(L), public key set L is passed through into the first hash function H1It is mapped to crowd G, according to i-th of block BiChameleon with Machine valueαi=(u-xiciMod q), ciFor block BiCalculating parameter;Calculate corresponding chameleon hash valueWith block Bi+1Calculating parameter
Then equation is verified:AndWhether set up, exports 1 if setting up, otherwise export 0.
E. new block is added to ring type block chain: to ring type editable block chain RCnIt is middle that new block is added {B′i}n+1≤i≤n+k, wherein k is the number for needing the new block being added, step are as follows:
E1. new public key is added to public key set L, generates new public key set L '=L | | { yi}n+1≤i≤n+k, calculate h '=H1 (L '), the newest block B of bind calculationn+kCorresponding private key xn+kNew parameterObtain block B1New calculating ginseng NumberG is to generate member;
E2. new chameleon hash value is calculatedαi=(u-xiciMod q), i=(1 ..., n), so Calculation block B afterwardsi+1New calculating parameterβi=(v-xicimod q);
E3. two random numbers are selectedI=(n+1 ..., n+k) calculates chameleon random valueWith new chameleon hash valueBiFor the content of i-th of block, block is then obtained Bi+1New calculating parameter
E4. for i=n+k, calculation block Bn+kCorresponding random number αn+k=(u-xn+kc′n+kMod q) and its correspondence Common random value βn+k=(v-xn+kc′n+kMod q) and corresponding chameleon random value
E5. equation is verifiedWithWhether set up, if so, then new block { B 'i}n+1≤i≤n+kIt is successfully joined, output insertion new block {B′i}n+1≤i≤n+kRing type editable block chain afterwardsOtherwise it exports Insertion unsuccessfully identifies 0.
F. edit ring type block chain: with length be n, block sets are { Bi}1≤i≤nRing type editable block chain 1≤i≤n, according to private key set { xi}1≤i≤n, calculate new chameleon random valueMake each new chameleon hash value It is identical, it may be assumed thatIt is possible thereby under the premise of not influencing block cryptographic Hash consistency, it is right Block is edited.Then export new length be n, new block sets be { B 'i}1≤i≤nRing type editable block chain
G. ring reconstructs: the ring type editable block chain for being n from lengthIn Delete d block, n-2 > d, step are as follows:
G1. ring type editable block chain RC is calculatednAfter deleting d block, the new ring type that remaining block is constituted can be compiled Collect public key set L "=L { y of block chaini}i≤|n-d|, h=H1(L ") andWherein, xn-d-1It is new described in indicating The corresponding private key of ring type editable block chain front end block,Indicate xn-d-1Corresponding parameter;
G2. the "=H according to h1(L ") calculates the parameter of the corresponding private key of new ring type editable block chain And it calculatesWherein h " indicating the public key set L of new ring type editable block chain " passes through first Hash function H1An element being mapped on crowd G, c "1For from one of block on new ring type editable block chain is The calculating parameter of point, guIndicate that the variable of the new ring type editable block chain of calculating, u and v are respectively to realize block chain ring type structure Random number;
G3. new chameleon hash value is calculated separatelyWithI=(1 ..., n-d-2) calculates new ring type editable block chain front end area The corresponding random number α of blockn-d-1=(u-xn-d-1c″n-d-1Mod q), block Bn-d-1Corresponding common random value βn-d-1=(v- xn-d-1c″n-d-1Mod q), obtain block Bn-d-1Chameleon random value
G4. equation is verifiedWithWhether set up, if so, then indicate that block chain reconstructs Cheng work, the new ring type after output reconstruct can Edit block chainOtherwise, output unsuccessfully identifies.
By the block chain structure of ring type, in conjunction with chameleon hash function, realizes and efficient pipe is provided to block chain Reason and editor, the editor including that can carry out batch to block chain, also support to delete the batch of block on block chain.And After having executed batch editor, the ring structures of block chain still maintain constant.

Claims (10)

1. the construction method of ring type editable block chain, feature include:
A. initialize: according to security parameter λ, by hash function, output system discloses parameter P and original block B1
B. it generates key: according to the system public parameter P, the private key x of user is calculatediWith public key yi, wherein 1≤i≤ N, n are the sum for generating the block of block chain;
C. it generates ring type editable block chain: Transaction Information is recorded in block, each block will be arranged by generation Time alignment The last one block of column and the original block B1It is connected, forms ring type editable block chain RCn;It can according to the ring type Edit block chain RCnObtain public key set L={ yi}1≤i≤n, wherein each block BiPublic key y described in one correspondingi, Mei Gegong Key yiPrivate key x described in one correspondingi
2. the construction method of ring type editable block chain as described in claim 1, it is characterized in that: after step C further include:
D. it verifies ring type editable block chain: exporting verification result after calculating according to the verifying formula of block chain;
E. new block is added to ring type block chain: according to the ring type editable block chain RCnWith the block for needing newly to be added {B′i}n+1≤i≤n+k, new ring type editable block chain RC is exported after calculatingn+kOr the mark of new block failure is added, wherein k is The number for the new block for needing to be added;
F. ring type block chain is edited: according to ring type editable block chain RCnWith the private key set { x of useri}1≤i≤n, by again Calculate the new chameleon random value r ' of each blocki, keep the content of each block different and chameleon hash valueIt is identical, it will be former Some block sets { Bi}1≤i≤nIt is compiled as new block sets { B 'i}1≤i≤n, ring type editable block chain after output edit RC′n
G. ring reconstructs: from the ring type editable block chain RCnAfter middle d block of deletion, the ring type editable being reconstructed is exported Block chain RCn-d, wherein d is ring type editable block chain RCnUpper block number that need to be deleted, and n-2 > d.
3. the construction method of ring type editable block chain as described in claim 1, it is characterized in that: step A includes:
A1. select to generate member according to security parameter λ as g and group G that group's order is q;
A2. setting hash function is respectively as follows: H1:{0,1}*→ G and H2:{0,1}*→Zq, wherein H1For the first hash function, make With being by the character string { 0,1 } of 0 or 1 formed random length*It is mapped on an arbitrary element of crowd G, * indicates character string It { 0,1 } is random length, H2For the second hash function, effect is by the character string { 0,1 } of 0 or 1 formed random length*It reflects It is mapped to the group of integers Z of the q rank composed by (0,1 ..., q-1) elementqOn, Z indicates group of integers;
A3. output system discloses parameter P=< G, q, g, H1,H2>;
A4. original block B is generated1, original block B is written into the system public parameter P1
4. the construction method of ring type editable block chain as claimed in claim 3, it is characterized in that: it calculates and uses described in step B The private key x at familyiWith public key yiAre as follows: according to the system public parameter P, select a random numberPrivate as user Key xi, group of integers Z of the R expression from q rankqOne element x of middle random selectioni, according to the private key xiCalculate public key
5. the construction method of ring type editable block chain as claimed in claim 4, it is characterized in that: step C includes: when will be current Between the Transaction Information of section be packaged, and be recorded in block, by block { Bi}1≤i≤nBy the sequence arrangement for generating the time, and will arrangement The last one block BnWith the original block B1It is connected, forms B1||…||Bn||B1End to end ring structure, so Afterwards by calculating { Bi}1≤i≤nCryptographic Hash, obtain ring type editable block chainWherein, c1For with original block B1For the calculating parameter of ring starting point, array {Bi,riiIn element successively indicate i-th of block BiContent, chameleon random value and common random value, L is generation area The public key set of block,It indicates to bind newest block BnCorresponding private key xnParameter, wherein h=H1(L), indicating will be public Key set L passes through the first hash function H1An element being mapped on crowd G, (u, v) are to join for being inserted into the calculating of new block Number.
6. the construction method of ring type editable block chain as claimed in claim 5, it is characterized in that: the calculating { Bi }1≤i≤n's Cryptographic Hash are as follows:
C1. h=H is calculated1(L) andSelect two random numbersCalculate original block B1Calculating parameter(u, v) is the calculating parameter for being inserted into new block;
C2. two random numbers are selectedWherein i=(1 ..., n-1) calculates chameleon random value With chameleon hash valueWherein BiFor the content of i-th of block, then calculation block Bi+1Calculating parameterAccording to the connected characteristic of ring structure ending, c is obtainedn+1=c1
C3. n-th of block B is calculatednRandom number αn=(u-xncnMod q), βn=(v-xncnMod q), obtain n-th of area Block BnChameleon random value
7. the construction method of ring type editable block chain as claimed in claim 2, it is characterized in that: step D includes: to be to length The ring type editable block chain of nWherein, c1For original block B1Calculating ginseng Number, array { Bi,riiIn element successively indicate i-th of block BiContent, chameleon random value and common random value, table Show that L is the public key set for generating block,It indicates to bind newest block BnCorresponding private key xnParameter, wherein h=H1 (L), it indicates public key set L passing through the first hash function H1An element being mapped on crowd G, (u, v) are new for being inserted into The calculating parameter of block;
The first hash function: H is respectively set1:{0,1}*→ G and the second hash function H2:{0,1}*→Zq, q is group's order, is calculated H=H1(L), h indicates public key set L passing through the first hash function H1An element being mapped on crowd G, according to i-th of block BiChameleon random valueαi=(u-xiciMod q), ciFor block BiCalculating parameter;It calculates corresponding Chameleon hash valueWith block Bi+1Calculating parameter
Then equation is verified:AndIt is It is no to set up, 1 is exported if setting up, otherwise exports 0.
8. the construction method of ring type editable block chain as claimed in claim 7, it is characterized in that: step E includes:
E1. new public key is added to public key set L, generates new public key set L '=L | | { yi}n+1≤i≤n+k, calculate h '=H1(L′) With the newest block B of bindingn+kCorresponding private key xn+kNew parameterObtain block B1New calculating parameter G is to generate member;
E2. new chameleon hash value is calculatedαi=(u-xiciMod q), i=(1 ..., n) is then counted Calculate block Bi+1New calculating parameterβi=(v-xicimod q);
E3. two random numbers are selectedCalculate chameleon random value With new chameleon hash valueBiFor the content of i-th of block, block B is then obtainedi+1New calculating Parameter
E4. for i=n+k, calculation block Bn+kCorresponding random number αn+k=(u-xn+kc′n+kMod q) and its is corresponding Common random value βn+k=(v-xn+kc′n+kMod q) and corresponding chameleon random value
E5. equation is verifiedWith Whether set up, if so, then new block { B 'i}n+1≤i≤n+kIt is successfully joined, output insertion new block {B′i}n+1≤i≤n+kRing type editable block chain afterwardsOtherwise it exports Insertion unsuccessfully identifies.
9. the construction method of ring type editable block chain as claimed in claim 8, it is characterized in that: step F includes: to be with length N, block sets are { Bi}1≤i≤nRing type editable block chain1≤i≤ N, according to private key set { xi}1≤i≤n, calculate new chameleon random valueMake each new chameleon hash value It is identical, it may be assumed thatThen export new length be n, new block sets be { B 'i}1≤i≤n Ring type editable block chain
10. the construction method of ring type editable block chain as claimed in claim 9, it is characterized in that: it is n from length in step G Ring type editable block chainMiddle d block of deletion, comprising steps of
G1. ring type editable block chain RC is calculatednAfter deleting d block, the new ring type editable block of remaining block composition The public key set L " of chain=L { yi}i≤|n-d|, h=H1(L ") andWherein, xn-d-1Indicate the new ring type The corresponding private key of editable block chain front end block,Indicate xn-d-1Corresponding parameter;
G2. the "=H according to h1(L ") calculates the parameter of the corresponding private key of new ring type editable block chainAnd it counts It calculatesWherein h " indicating the public key set L of new ring type editable block chain " passes through the first Hash Function H1An element being mapped on crowd G, c "1To be starting point from one of block on new ring type editable block chain Calculating parameter, guIndicate to calculate the variable of new ring type editable block chain, u and v be respectively realize block chain ring type structure with Machine number;
G3. new chameleon hash value is calculated separatelyWith Calculate the corresponding random number α of new ring type editable block chain front end blockn-d-1=(u-xn-d- 1c″n-d-1Mod q), block Bn-d-1Corresponding common random value βn-d-1=(v-xn-d-1c″n-d-1Mod q), obtain block Bn-d-1Chameleon random value
G4. equation is verified WithWhether set up, if so, then indicate that block chain reconstructs Cheng work, the new ring type after output reconstruct Editable block chainOtherwise, output unsuccessfully identifies.
CN201910777120.5A 2019-08-22 2019-08-22 Method for constructing ring-type editable block chain Active CN110474762B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910777120.5A CN110474762B (en) 2019-08-22 2019-08-22 Method for constructing ring-type editable block chain

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910777120.5A CN110474762B (en) 2019-08-22 2019-08-22 Method for constructing ring-type editable block chain

Publications (2)

Publication Number Publication Date
CN110474762A true CN110474762A (en) 2019-11-19
CN110474762B CN110474762B (en) 2021-05-25

Family

ID=68513529

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910777120.5A Active CN110474762B (en) 2019-08-22 2019-08-22 Method for constructing ring-type editable block chain

Country Status (1)

Country Link
CN (1) CN110474762B (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111339185A (en) * 2020-02-13 2020-06-26 北京工业大学 Incomplete decentralization method based on block chain technology
CN112070501A (en) * 2020-11-10 2020-12-11 支付宝(杭州)信息技术有限公司 Block chain transaction initiating and verifying method and system
CN112272092A (en) * 2020-08-30 2021-01-26 河南大学 Data editing method applied to block chain
WO2021118614A1 (en) * 2019-12-11 2021-06-17 The Bank Of New York Mellon Ring chain architecture
CN113225324A (en) * 2021-04-26 2021-08-06 安徽中科晶格技术有限公司 Block chain anonymous account creation method, system, device and storage medium
CN113536389A (en) * 2021-06-15 2021-10-22 复旦大学 Fine-grained controllable decentralized editable block chain construction method and system
CN114417429A (en) * 2022-04-02 2022-04-29 湖南宸瀚信息科技有限责任公司 Editable block chain system based on ring type verification

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170338957A1 (en) * 2016-05-23 2017-11-23 Accenture Global Solutions Limited Rewritable blockchain
CN109067547A (en) * 2018-09-21 2018-12-21 北京计算机技术及应用研究所 A kind of block chain method for secret protection based on disposable ring signatures
CN110061850A (en) * 2019-04-24 2019-07-26 电子科技大学 The collision calculation method and editable block chain building method of chameleon hash function
CN110071812A (en) * 2019-04-29 2019-07-30 电子科技大学 A kind of editable can link, the ring signatures method of non-repudiation

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170338957A1 (en) * 2016-05-23 2017-11-23 Accenture Global Solutions Limited Rewritable blockchain
CN109067547A (en) * 2018-09-21 2018-12-21 北京计算机技术及应用研究所 A kind of block chain method for secret protection based on disposable ring signatures
CN110061850A (en) * 2019-04-24 2019-07-26 电子科技大学 The collision calculation method and editable block chain building method of chameleon hash function
CN110071812A (en) * 2019-04-29 2019-07-30 电子科技大学 A kind of editable can link, the ring signatures method of non-repudiation

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
李佩丽 等: "可更改区块链技术研究", 《密码学报》 *

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021118614A1 (en) * 2019-12-11 2021-06-17 The Bank Of New York Mellon Ring chain architecture
US11323246B2 (en) 2019-12-11 2022-05-03 The Bank Of New York Mellon Ring chain architecture
CN111339185A (en) * 2020-02-13 2020-06-26 北京工业大学 Incomplete decentralization method based on block chain technology
CN111339185B (en) * 2020-02-13 2023-12-15 北京工业大学 Incomplete decentralization method based on block chain technology
CN112272092A (en) * 2020-08-30 2021-01-26 河南大学 Data editing method applied to block chain
CN112884477B (en) * 2020-11-10 2022-08-19 支付宝(杭州)信息技术有限公司 Block chain transaction initiating method and system
CN112070501A (en) * 2020-11-10 2020-12-11 支付宝(杭州)信息技术有限公司 Block chain transaction initiating and verifying method and system
CN112884477A (en) * 2020-11-10 2021-06-01 支付宝(杭州)信息技术有限公司 Block chain transaction initiating and verifying method and system
CN113225324A (en) * 2021-04-26 2021-08-06 安徽中科晶格技术有限公司 Block chain anonymous account creation method, system, device and storage medium
CN113225324B (en) * 2021-04-26 2022-10-04 安徽中科晶格技术有限公司 Block chain anonymous account creation method, system, device and storage medium
CN113536389A (en) * 2021-06-15 2021-10-22 复旦大学 Fine-grained controllable decentralized editable block chain construction method and system
CN113536389B (en) * 2021-06-15 2022-05-20 复旦大学 Fine-grained controllable decentralized editable block chain construction method and system
CN114417429B (en) * 2022-04-02 2022-06-07 湖南宸瀚科技有限公司 Editable block chain system based on ring type verification
CN114417429A (en) * 2022-04-02 2022-04-29 湖南宸瀚信息科技有限责任公司 Editable block chain system based on ring type verification

Also Published As

Publication number Publication date
CN110474762B (en) 2021-05-25

Similar Documents

Publication Publication Date Title
CN110474762A (en) The construction method of ring type editable block chain
Rizun A transaction fee market exists without a block size limit
CN101976322B (en) Safety metadata management method based on integrality checking
CN110866751A (en) Block chain parallel chain maintenance method and block chain parallel chain
CN102096644B (en) system and method for permanently deleting file data
CN108615156A (en) A kind of data structure based on block chain
CN107506447A (en) A kind of small documents reading/writing method and system based on local file system
CN108512650A (en) Dynamic Hash calculation method, apparatus, node and storage medium towards block chain
CN103814361A (en) Scalable deduplication system with small blocks
CN107181797A (en) The block compression method and system of a kind of block chain
CN106415530A (en) Block mining methods and apparatus
CN110941676B (en) Configuration method, device, equipment and medium
CN112862490B (en) Output consensus method under asynchronous network
CN109471836A (en) A kind of data migration method, device and system
CN109245878B (en) Method and device for generating new blocks of block chain and readable storage medium
CN105141681B (en) The synchronous method and device of RPKI files
CN108512649A (en) The processing method and processing device of the reversed Hash link of block chain
CN109410043A (en) A kind of block chain information high-efficiency storage method and device based on hierarchical tree structure
Hoel Monopoly resource extractions under the presence of predetermined substitute production
CN112272092B (en) Data editing method applied to block chain
CN110109926A (en) A kind of collator and sort method of Equihash algorithm data
CN110365493A (en) The polymorphic cyclic annular block chain building method derived from
KR100905434B1 (en) File uploading method with function of abstracting index-information in real-time and web-storage system using the same
CN114328518A (en) UTXO model-based low storage consumption method and system
CN113256417A (en) Transaction sharing-based consensus block method and system

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