CN111049653A - Drawing method for electing consensus node - Google Patents

Drawing method for electing consensus node Download PDF

Info

Publication number
CN111049653A
CN111049653A CN201811480761.6A CN201811480761A CN111049653A CN 111049653 A CN111049653 A CN 111049653A CN 201811480761 A CN201811480761 A CN 201811480761A CN 111049653 A CN111049653 A CN 111049653A
Authority
CN
China
Prior art keywords
node
contribution
contribution value
resource
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.)
Pending
Application number
CN201811480761.6A
Other languages
Chinese (zh)
Inventor
艾本仁
林祥兴
姜长龙
杜聚龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baustem Information Technology Co ltd
Original Assignee
Beijing Baustem Information Technology Co ltd
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 Beijing Baustem Information Technology Co ltd filed Critical Beijing Baustem Information Technology Co ltd
Publication of CN111049653A publication Critical patent/CN111049653A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • 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/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

The invention relates to a drawing method for electing a consensus node, which comprises the following steps: respectively signing the seed parameters by using the own private key of each node, and processing a signature result according to a random algorithm to obtain a first parameter; respectively carrying out fusion processing on PoW, PoS and PoC of each node to obtain a second parameter; obtaining the self-certificate of each node according to the corresponding first parameter and second parameter of each node; according to the invention, a generalized workload proving method is introduced into the lottery algorithm for selecting the nodes participating in the consensus, and the lottery machine is strengthened and supplemented aiming at various attack modes, so that the potential safety and stability hazards when the lottery algorithm is attacked by a network and market fluctuation are eliminated.

Description

Drawing method for electing consensus node
Technical Field
The invention relates to the technical field of block chains, in particular to a drawing method for electing a common-knowledge node.
Background
Various prior blockchain consensus algorithms suffer from respective drawbacks, for example, the consensus participant that the Byzantine general algorithm (Byzantine) highly relies on 2/3 is honest. If the consensus nodes above 1/3 are maliciously controlled, the network may be attacked by denial of service, and if the surrounding nodes beyond 2/3 are controlled, the malicious consensus may be achieved. In an algorithm for electing a consensus node by a node snapshot, represented by Algorand (not limited to Algorand), if the node snapshot process is attacked, the same malicious consensus can be achieved as long as the candidate node of 2/3 is malicious. For example, in the case of 100-ten-thousand honest nodes, 200-thousand malicious nodes can be manufactured, which is too costly to attack the network. But if the node-drawing process is controlled, less than 700 malicious nodes may succeed in the attack (if the enrollment ratio is 1/1000).
The security of native Algorand class of algorithms can be based on PoS. However, if we rely entirely on PoS, the security significance of the drawing mechanism of Algorand class of algorithms is not great. Since the integrity of the node needs to be proven by the equity (rake), the drawing is not an important part of security. If PoS is locally relied on, the security of the native algoranand drawing algorithm plays an important role in the security of the network. For example, in the case of 1000 participating nodes, if 30 representatives are drawn to participate in the consensus, if a Stake proof of the full net 2/3 is required to be provided, the draw will not compromise the net even if it is attacked. If it is required to provide 2/3 stabe proof of 10 representatives (only 2% of stabe is required on the assumption of equal distribution), if the drawing mechanism is attacked, in theory, an attacker can gain network decision with more than 2% of stabe.
In reality, the amount of interest per node pledge is difficult to specify because of the reduced chance that token pledges will give an attacker; too much affects circulation making the currency system unstable. For example, when the revenue of the token market is higher than the revenue of holding a coin (digging up a mine), the user may well be trending to fry the coin instead of holding it, resulting in a reduction in accounting nodes. Under the extreme condition that only a few honest nodes compete for entry, the malicious nodes with small quantity, little rights and interests can launch effective attack. Obviously, an incentive mechanism completely depending on PoS cannot effectively encourage honest nodes to be online all the time, and the extreme situation cannot be guaranteed not to occur. While enhancing the security strength of the drawing process is a prerequisite to reduce the dependence on PoS.
Disclosure of Invention
Aiming at the hidden dangers of safety and stability when the existing lottery algorithm is attacked by a network and fluctuates in the market, the invention provides a lottery method for electing a consensus node.
The technical scheme for solving the technical problems is as follows: a drawing method for electing a consensus node, comprising:
step 1, signing the seed parameters selected by the previous round of consensus nodes by using the private keys of all the nodes, and processing the signature result according to a preset hash algorithm to obtain a first parameter;
step 2, respectively carrying out fusion processing on the calculation power demonstration PoW, the currency holding certification PoS and the contribution certification PoC of each node to obtain a second parameter, wherein the PoW, the PoS and the PoC are respectively functions of the calculation power difficulty, the token and the contribution value of the node;
step 3, obtaining the self certificate of each node according to the first parameter and the second parameter corresponding to each node;
and 4, obtaining a consensus node according to the comparison result of the certificate of each node and the preset enclosure entering probability.
The invention has the advantages that a generalized workload proving method is introduced into the lottery algorithm for selecting the consensus participation node, and the lottery machine is strengthened and supplemented aiming at various attack modes, so that the potential safety and stability hazards of the lottery algorithm under network attack and market fluctuation are eliminated.
Drawings
Fig. 1 is a flowchart of a drawing method for electing a consensus node according to an embodiment of the present invention.
Detailed Description
The principles and features of this invention are described below in conjunction with the following drawings, which are set forth by way of illustration only and are not intended to limit the scope of the invention.
Fig. 1 is a flowchart of a drawing method for electing a consensus node according to an embodiment of the present invention, as shown in fig. 1, the method includes:
s1, signing the seed parameters selected by the previous round of consensus nodes by using the private keys of the nodes respectively, and processing the signature result according to a preset Hash algorithm to obtain a first parameter;
s2, performing fusion processing on the calculation force demonstration PoW, the currency holding demonstration PoS and the contribution demonstration PoC of each node respectively to obtain a second parameter, wherein the PoW, the PoS and the PoC are functions of calculation force difficulty, tokens and contribution values of the nodes respectively;
s3, obtaining the self certificate of each node according to the first parameter and the second parameter corresponding to each node;
and S4, obtaining a consensus node according to the comparison result of the certificate of each node and the preset enclosure entering probability.
Specifically, the common lottery algorithm is a ticket which is used as a node enrollment after combining the identity characteristic quantity of the node and a random number, and a typical lottery algorithm is an Algorand algorithm:
.H[SIGi(r,s,Qr-1)]<p
in the formula, H is a Hash operator, SIG is encrypted by a node private key, p is the enclosure probability, i is the node number, r is the block height, and s is the voting step sequence number, that is, any node holding a Hash value smaller than the p certificate can participate in the consensus process. It can be seen that such algorithms have low computational requirements and attackers may seek unequal opportunities to enter into the fence. For example, a very computationally intensive node may create a large pool of participants to construct a node pool to achieve a higher mid-subscription rate. By dynamically calling the general computing resources, the super node can draw lots with a plurality of identities (for example, 1000 identities) and perform opportunity asymmetric entry competition with the honest nodes without increasing the computing cost.
The present invention complements the raffle algorithm (e.g., Algorand) for this attack scenario. A special containment as of-of-Work (hereinafter, CaPoW) algorithm is adopted to seek a substitute for reducing the requirement on the coin holding capacity of the node. And the hidden dangers of safety and stability when the Algorand is attacked by the network and fluctuated by the market are eliminated.
The contribution of the invention to the credit acquisition is three types:
1) the Proof of possession of money PoS (PoS) refers to the balance of possession of money and the mortgage commitment of a node account, and is PoS in the traditional sense;
2) proof of Contribution PoC (PoC), resource sharing or service credits;
3) the computing power proves that the PoW (Proof of Work, PoW) is the PoW in the traditional sense;
the PoC can stimulate the nodes to be online all the time, avoid the influence of the market fluctuation of token transactions on the network security, and ensure that honest nodes can dig mines and benefit under the condition of little or no coin holding. The specific explanation is as follows:
the integrity of the node is proved according to the contribution value (shown as the score/Star in the following) of the node to the network, so that the security is not lost after the money holding of the node is reduced. The node may have multiple ways to obtain the integral, for example, the node obtains the integral through shared storage, and it should be noted that: credits are obtained by nodes from the blockchain network as they contribute resources and services, i.e. only contributions verifiable in the blockchain network are credited. For example, resource sharing targeting a network resource pool is a verifiable contribution, and when other users purchase resources or services within the pool, the pool proceeds are distributed according to a weighted average of all contributions, and the contributors are credited accordingly.
And the introduced calculation force proves that the PoW can reduce the requirement on the currency through the inhibiting effect of the PoW on the attack, so that the threshold of the node for online profit is lower, and the return is higher. The impact of the coin on the network security is reduced, and the nodes can have various ways of realizing the PoW, for example, the nodes provide the computing power evidence in the way described by the bitcoin.
Optionally, in this embodiment, the calculation formula of the credential is as follows:
.H[SIGi(r,1,Qr-1)]/ωiw,ωs,ωc)
wherein,. H [ SIGi(r,1,Qr-1)]A first parameter of the i-th node, wherein H [ 2 ]]For hash algorithms, SIGi() Signing the private key of the ith node, wherein r is the number of current election rounds, Qr-1The r-1 round of election is the seed parameter, and r is a positive integer; omegaiw,ωs,ωc) Is the second parameter of the ith node, whereini() Is a fusion function, ωw、ωsAnd ωcPoW, PoS, and PoC of the ith node, respectively.
Specifically, the equity certificate of the present invention is a certificate of mutual complementation of three contributions of PoS, PoC and PoW, specifically, p in the Algorand algorithm is weighted and adjusted, and the entry probability p 'of the ith node is used'iInstead of p, one can obtain:
.H[SIGi(r,s,Qr-1)]<p′i
wherein:
p′i=p·ωiw,ωs,ωc)
thus, the conditions for node enrollment as a consensus node are:
Figure BDA0001893326840000051
alternatively, in this embodiment, ωsThe function is monotonically increasing with the amount of virtual currency or tokens (Token) held by the node:
ωs=Fs(s)
in the above formula, s is the money holding right (number of tokens) of the node, and when s is 0, ω iss=0。
On the other hand, CaPoW also needs to avoid centralization due to loss of randomness of the enclosed selection caused by centralized coin holding. E.g. ωsThe functional expression of (a) is set as follows:
Figure BDA0001893326840000052
wherein, KsIs the adjustment factor of PoS, s is the token of the node, s0Is a minimum token, omegas0Is the minimum PoS coefficient.
According to the expression, the more tokens the node holds, the token holding proof omegasThe larger, i.e. the greater the chance of encumbrance.
Alternatively, in this embodiment, ωcThe function is a monotonically increasing function with the contribution (integral) held by the node:
ωc=Fc(c)
in the above formula, c is a contribution value (hereinafter, expressed as an integral), and when c is 0, ω isc=0。
E.g. ωcThe functional expression of (a) is set as follows:
Figure BDA0001893326840000061
wherein, KcIs the PoC adjustment coefficient, c is the contribution value of the node, c0Is the lowest contribution, ωc0Is the minimum PoC coefficient.
Unlike tokens, which are assets, a holder can represent a benefit. While credits are proof of the contribution of resources and services by the node. The present invention provides a method for calculating available workloads from their contribution. That is, a workload confirmation method in which a contribution beneficiary issues a workload certificate is a method of providing an unforgeable contribution certificate for a useful workload.
Providing proof by the workload beneficiary is a natural way to prove that the workload is available. For example, in a fair trading environment, the beneficiary pays a price commensurate with the value of the workload contribution. However, this does not prevent the contributor and the beneficiary from colluding to carry out a false transaction, a proof of counterfeit workload. The basic principle of the invention is as follows: the contribution is pooled, all charges are paid to the common account of the contribution pool, and the beneficiary and the contributor can not mutually select. Collusion is no longer zero cost, and the benefit of a false trading attack approaches zero if the contributors are sufficient. The present invention employs a blockchain technique, which introduces a chain of blocks referred to herein as a entitlement certificate block (hereinafter simply referred to as an entitlement chain). The specific implementation method is to construct a equity certification blockchain for recording the transaction of converting the contribution into the value (in order to improve the confirmation efficiency of the contribution conversion, the equity chain can be a special blockchain for recording the contribution conversion). Proof of contribution that cannot be forged is obtained from the transaction record.
The invention uses the block chain technology to realize the equity certification which is used as a function in the conventional block chain. Or, the entitlement chain is embedded into the regular block chain (hereinafter, the regular block chain is referred to as the block chain). Of course, transactions associated with entitlement certificates may be recorded directly in the blockchain.
First, one of the features of the present invention is the unit of measure converted with integral as a contribution. Credits are typically set to a validity period such that only a limited period of transactions (e.g., 3 years) need be recorded at a node of the equity chain, i.e., the equity chain may be a blockchain of limited length. Therefore, the occupied storage and calculation resources have upper limits, and the block chain embedded in the interest chain has better feasibility. For example, if there are 1000 ten thousand nodes, the contribution book of years can be recorded with less than 1GB of local storage. Moreover, block records with an upper bound on growth will allow the performance of the verification contribution to be within a controlled range.
Of course, there is a possibility that a user may offer his or her credit at a lower price, but this does not affect the security of the network, because another benefit of credit compared to virtual currency is that transactions may be restricted, and in the case of limited credit, security issues may be resolved. Setting the import/export spread (e.g., the spread is absorbed by the contributing pool account) may also make the risk controllable, assuming that an attacker collects a large number of points at a price below the open exchange rate, effectively only discounting his attack cost. These are all the features brought about by the integral metering contribution.
Secondly, the credit substitution for the virtual currency brings system security, and at the same time, the incentive to the contributor is weakened or even eliminated without corresponding measures. The present invention provides a mechanism for converting points into virtual currency, i.e. a method in which all points can be converted into virtual currency in the end.
Optionally, in this embodiment, before step S2, the method further includes: after the contribution value donation commitment is sent to the public account number in the blockchain, the contribution value set in the contribution value donation commitment is deducted from the node obtaining the mining reward, the contribution value is counted into the public account number, and the change of the contribution value is recorded in the blockchain.
Specifically, the conversion of contribution values into token incentives is equivalent to mining of traditional blockchains, i.e., providing billing services for blockchains. For example, a billing node may donate its own credit commitment to a public account (credit pool account) in the equity chain, with the contribution record being used for equity verification. Interest details are noted in the donation record, such as: block height, contribution, etc. participating in billing. When the node receives a reward from the blockchain, the points are credited (to a public account number). If the reward is not successfully earned, the points are not credited (to the public account number). It may also be a lottery mechanism, i.e., if unsuccessful, the points are still credited (to a public account number). Since the odds-averaging lottery mechanism is also statistically fair.
Optionally, in this embodiment, before step S2, the method further includes:
deducting a contribution value from a node initiating a resource request according to the price of the resource, recording the contribution value into a public account in a block chain, and recording the change of the contribution value in the block chain;
generating a resource use certificate and sending the resource use certificate to the node initiating the resource request, so that the node initiating the resource request uses resources according to the resource use certificate;
and after the resource usage certificate is additionally signed, transferring the resource usage certificate to a resource contributor providing the resource, so that the resource contributor exchanges a contribution value from the public account according to the additionally signed resource usage certificate, and records the change of the contribution value in a block chain.
Specifically, the resource contributor obtains the rights and interests credential from a public account (e.g., the credit pool account mentioned above), and when a user (which may be a node) initiates a resource request (e.g., downloads a piece of data, or issues a calculation task), the user can obtain the resource usage credential after paying the credit or purchasing the credit (if there is not enough credit) to the public account according to the price of the resource (the price of the resource can be notified (including the price) by the resource provider in the rights and interests chain and recorded in the public account in the rights and interests chain). The user uses the resource according to the resource use certificate, and adds a signature to the resource use certificate and transfers the signature to the resource contributor. The resource contributor uses the voucher to redeem points from a public account, recorded under its own account on the equity chain.
With the present invention, a user is generally unaware of where a particular resource (e.g., a piece of data) came from. Moreover, even if the user uses a node resource owned by himself or interest associated therewith, a fee needs to be paid.
Optionally, in this embodiment, before step S2, the method further includes:
the node converts the contribution value into a token through a public account number in the blockchain and records the change of the contribution value in the blockchain.
Specifically, attacks can be resisted as long as the price for purchasing the points is higher than the benefit available for the points; in brief, it is safe to contribute resources to earn points less expensive than purchasing points, for example, it is safe to contribute 1GB of download traffic to earn 1 point, if 1 point can generate a 1Token profit, and if the price for purchasing 1 point is not less than 1Token, there is no incentive to earn the purchase point.
Therefore, the price of the points needs to satisfy:
Figure BDA0001893326840000091
wherein Price isstarIs the Price of the point, PricetokenIs the price of the token, E { } is the mathematical expectation, εminingAwarding gamma for miningPoCThe number of points participating in the consensus extinction. Note thatminingAnd gammaPoCAre not fixed values.
A node wishing to participate in consensus adds the contribution points to the network, and then the node can use the points to participate in the consensus after reaching the minimum point, and only the continuous contribution can continuously participate in the consensus to obtain the token reward.
One important role of the credit is to encourage nodes to be online at all times, which can increase the cost of a "virtual" node attack without adding token mortgages, because letting a "virtual" node provide resources such as shared storage, shared bandwidth, etc. is equivalent to requiring the attacker to convert a "virtual" node into a "real" node, otherwise using a large number of token mortgages.
Under the condition that the block chain sharing economy is fully developed and stably runs, the CaPoW is automatically degenerated into PoC (proof of control), the PoC does not need to hold coins, and a user can obtain the experience of the PoW: the ore digging excitation can be obtained only by on-line. In this way, all tokens can be put into circulation. For example, a network of 100 million nodes, 6 billion circulating tokens, can guarantee absolute security if only PoS is accepted, with all honest nodes co-depositing 1/3 circulating tokens; if 50% of the nodes can contribute resources to obtain points (corresponding to 50% of the nodes being honest nodes and no token mortgage is required), the same level of security can be achieved with only 1/6 token mortgages. Only PoC can mine all nodes by using contribution points, in extreme case, if circulated 6 hundred million tokens are all used for attacking the network, 3 hundred million equivalent points are needed for sniping, 3 hundred million equivalent points are needed to be added in time so as to occupy 1/3 of the total amount to be capable of blocking, and if 3000 million tokens are produced by annual mining, as long as the conversion rate of the points and the held coins reaches 1: 10(s)0200 tokens, or c030 points) can ensure absolute security of the network. Namely, token mortgage is not needed at all, and the network security is not influenced by the coin frying.
Optionally, in this embodiment, an algorithm for fusing pows into weighted randomly-drawn entry nodes is defined, and the minimum computation difficulty is set0And ensuring that the computational difficulty difficiency of the ith node meets the following conditions:
FPoW(nonce)<difficultyi≤difficulty0
in the formula, FPoWThe method is a PoW algorithm, nonces are random numbers, and each node can select the self computational difficulty. OmegawIs difficultyiFunction of (c):
ωw=Fw(difficultyi)
one inherent challenge of PoW is moore's law, the computational power advantage of nodes at deployment is quickly lost to new technologies, and the opportunities for entry of nodes already deployed are gradually reduced. For this reason, we also need to be at ωwTo avoid this problem in the adjustment function of (a).
E.g. ωwThe function of (a) is expressed as follows:
ωw=ωw0Kw[1+log2len)]
wherein, KwIs the adjustment factor of PoW, ωw0Is the minimum PoW coefficient, ΔlenIndicating a minimum computational difficulty difficuty0And the difficulty of computing the difficulty of the ith nodeiDifference in length, differencei≤difficulty0,ΔlenIs expressed mathematically as follows:
Figure BDA0001893326840000101
for example, in the 10-year life cycle of the equipment, when the computational difficulty of the new equipment is increased by 16 times, 128 times or 1024 times, if K iswThe force difficulty weight is 1, 5, 8 and 11 times. Meanwhile, the adjusting function can also avoid uneven enclosure entering opportunities caused by adding of nodes with high computational difficulty.
Note that unlike PoS, PoC, the identity of pows is not verifiable in blockchains, so when a node employs pows as identity, nonces and difficulities must be providediAnd is used for verification of identity.
Optionally, in this embodiment, before step S2, the method further includes: and respectively carrying out Hash operation on the whole of the signature, the block and the random number of each node to the block, verifying whether the operation result of each node is less than the calculation difficulty of the node, and if so, executing the step S2.
Specifically, in the lottery algorithm, the normal PoW needs to be modified appropriately to be used. For example, we adopt the PoW algorithm of bitcoin as the algorithm of PoW certification. The PoW algorithm for bitcoins can be described as: hash (Block, nonce), where Block is a newly generated Block, nonce is a random number, and Hash () is the Hash algorithm. Before a node publishes a Block, other nodes do not know its Block and nonce, and once the Block and nonce are published, other nodes either adopt the Block or do not. That is, in the bitcoin scenario, only one node is needed to generate Block. However, in the drawing algorithm, there are many nodes in drawing, and then PoW may be "stolen". For example, in the lot algorithm, node a calculates a nonce that satisfies the requirement, and node B "steals" the nonce, then both node a and node B will be selected. This undermines the fairness of the lot algorithm. In order to prevent the situation, the invention improves the common PoW, and adds the node ID information in the PoW to adapt to the drawing scene. Taking the bitcoin PoW algorithm as an example, in the lot algorithm, the bitcoin PoW algorithm is modified as follows: hash (Block, sign)i(Block), nonce), wherein signi(Block) is the signature of Block by node i. signi(Block) contains node ID information and each node is different and other nodes can authenticate.
In summary of the above description, the CapoW entitlement coefficients are defined as follows:
ω0={(Kw,difficulty0),(Ks,s0),(Kc,c0)}
the CaPoW counts the identity certificates provided by the nodes participating in the lottery drawing in the network according to a preset period, and adjusts the rights and interests certificate coefficient. CapoW through Regulation (K)w,Ks,Kc) The proportion of the participation of the three kinds of identification certificates is adjusted by adjusting (sensitivity)0,s0,c0) To adjust the difficulty of participation of the corresponding identification.
For example, we set the proportion of three certificates participating, corresponding to (K)w,Ks,Kc) The values are as follows:
Figure BDA0001893326840000121
in the case of increasing the credit contribution proof, the token proof can be effectively reduced, thereby avoiding the influence caused by the instability of the currency system.
For example, we set the difficulty of PoW, PoS, PoC, and the corresponding (sensitivity) according to the following conditions0,s0,c0) The values are as follows:
Figure BDA0001893326840000122
the actual participation degree is the number of the nodes which provide each kind of identity certificate and actually participate in the consensus, and the actual participation degree can be obtained through a statistical consensus process. The expected engagement may be pre-configured.
In conclusion, the algorithm CaPoW designed by the invention not only keeps the randomness of the random drawing algorithm, but also ensures the integrity of the nodes by increasing the PoS, PoC and PoW identity certificates. Meanwhile, in the CaPoW, PoS, PoC and PoW are all designed into a non-competitive mechanism with an upper limit, and a ceiling is set for possible equipment competition and money accumulation competition by formulating reasonable rules, so that the cost balance can be achieved by simply increasing the calculation power, increasing the money holding capacity and comparing the income of verifiable resource sharing.
The above description is only for the purpose of illustrating the preferred embodiments of the present invention and is not to be construed as limiting the invention, and any modifications, equivalents, improvements and the like that fall within the spirit and principle of the present invention are intended to be included therein.

Claims (10)

1. A drawing method for electing a consensus node, comprising:
step 1, signing the seed parameters selected by the previous round of consensus nodes by using the private keys of all the nodes, and processing the signature result according to a preset hash algorithm to obtain a first parameter;
step 2, respectively carrying out fusion processing on the calculation capacity demonstration PoW, the currency holding demonstration PoS and the contribution demonstration PoC of each node to obtain a second parameter, wherein the PoW, the PoS and the PoC are respectively functions of calculation capacity difficulty, tokens and contribution values of the nodes;
step 3, obtaining the self certificate of each node according to the first parameter and the second parameter corresponding to each node;
and 4, obtaining a consensus node according to the comparison result of the certificate of each node and the preset enclosure entering probability.
2. The method according to claim 1, wherein the step 4 specifically comprises:
and taking the node with the certificate smaller than the enclosure entering probability as a consensus node.
3. The method of claim 1, wherein the credential is calculated as follows:
.H[SIGi(r,1,Qr-1)]/ωiw,ωs,ωc)
wherein,. H [ SIGi(r,1,Qr-1)]A first parameter of the i-th node, wherein H [ 2 ]]For hash algorithms, SIGi() Signing the private key of the ith node, wherein r is the number of current election rounds, Qr-1The r-1 round of election is the seed parameter, and r is a positive integer;ωiw,ωs,ωc) Is the second parameter of the ith node, whereini() Is a fusion function, ωw、ωsAnd ωcPoW, PoS, and PoC of the ith node, respectively.
4. A method according to claim 3, wherein ω issThe function of (a) is expressed as follows:
Figure FDA0001893326830000011
wherein, KsIs the adjustment factor of PoS, s is the token of the node, s0Is a minimum token, omegas0Is the minimum PoS coefficient.
5. A method according to claim 3, wherein ω iscThe function of (a) is expressed as follows:
Figure FDA0001893326830000021
wherein, KcIs the adjustment coefficient of PoC, c is the contribution value of the node, c0Is the lowest contribution, ωc0Is the minimum PoC coefficient.
6. A method according to claim 3, wherein ω iswThe function of (a) is expressed as follows:
ωw=ωw0Kw[1+log2len)]
wherein, KwIs the adjustment factor of PoW, ωw0Is the minimum PoW coefficient, ΔlenIndicating a minimum computational difficulty difficuty0And the difficulty of computing the difficulty of the ith nodeiDifference in length, differencei≤difficulty0
7. The method of claim 1, prior to step 2, further comprising: and respectively carrying out Hash operation on the whole of the signature, the block and the random number of each node to the block, verifying whether the operation result of each node is less than the calculation difficulty of the node, and if so, executing the step 2.
8. The method of claim 1, prior to step 2, further comprising: after the contribution value donation commitment is sent to the public account number in the blockchain, the contribution value set in the contribution value donation commitment is deducted from the node obtaining the mining reward, the contribution value is counted into the public account number, and the change of the contribution value is recorded in the blockchain.
9. The method of claim 1, prior to step 2, further comprising:
deducting a contribution value from a node initiating a resource request according to the price of the resource, recording the contribution value into a public account in a block chain, and recording the change of the contribution value in the block chain;
generating a resource use certificate and sending the resource use certificate to the node initiating the resource request, so that the node initiating the resource request uses resources according to the resource use certificate;
and after the resource usage certificate is additionally signed, transferring the resource usage certificate to a resource contributor providing the resource, so that the resource contributor exchanges a contribution value from the public account according to the additionally signed resource usage certificate, and records the change of the contribution value in a block chain.
10. The method of claim 1, prior to step 2, further comprising:
the node converts the contribution value into the token through the public account number in the blockchain, and records the change of the contribution value in the blockchain, wherein the contribution value and the price of the token satisfy the following relation:
Figure FDA0001893326830000031
wherein Price isstarIs the Price of the contribution value, PricetokenIs the price of the token, E { } is the mathematical expectation, εminingAwarding gamma for miningPoCIs the number of contribution values for the conversion.
CN201811480761.6A 2018-10-12 2018-12-05 Drawing method for electing consensus node Pending CN111049653A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201811191032 2018-10-12
CN2018111910329 2018-10-12

Publications (1)

Publication Number Publication Date
CN111049653A true CN111049653A (en) 2020-04-21

Family

ID=70230467

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811480761.6A Pending CN111049653A (en) 2018-10-12 2018-12-05 Drawing method for electing consensus node

Country Status (1)

Country Link
CN (1) CN111049653A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111726222A (en) * 2020-04-30 2020-09-29 华北电力大学 Quantum network drawing method based on multi-particle entanglement
CN112883338A (en) * 2021-03-01 2021-06-01 北京欧凯联创网络科技有限公司 Lottery drawing method based on random shuffling algorithm with weight and application
CN114362930A (en) * 2021-12-09 2022-04-15 重庆海尔制冷电器有限公司 Block chain consensus method and computer-readable storage medium

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111726222A (en) * 2020-04-30 2020-09-29 华北电力大学 Quantum network drawing method based on multi-particle entanglement
CN112883338A (en) * 2021-03-01 2021-06-01 北京欧凯联创网络科技有限公司 Lottery drawing method based on random shuffling algorithm with weight and application
CN112883338B (en) * 2021-03-01 2024-03-22 奥科塞尔控股公司 Drawing method based on weighted random shuffling algorithm
CN114362930A (en) * 2021-12-09 2022-04-15 重庆海尔制冷电器有限公司 Block chain consensus method and computer-readable storage medium

Similar Documents

Publication Publication Date Title
Peterson et al. Augur: a decentralized, open-source platform for prediction markets
KR102240939B1 (en) Blockchain system with consensus algorithm based on proof-of -transaction and method there of
Bentov et al. Proof of activity: Extending bitcoin's proof of work via proof of stake [extended abstract] y
WO2019226099A1 (en) A system and a method for achieving consensus between multiple parties on an event
CN111049653A (en) Drawing method for electing consensus node
Bugday et al. Creating consensus group using online learning based reputation in blockchain networks
KR20220065259A (en) A method for providing exchange services of ownership item assets using non-fungible tokens based on block chain networks, an apparatus and a system using it
KR20220065273A (en) A method for providing liquidity value adjustment services of ownership item assets using non-fungible tokens based on block chain networks, an apparatus and a system using it
Gjermundrød et al. Going beyond the coinbase transaction fee: Alternative reward schemes for miners in blockchain systems
Bashar et al. Contextualizing consensus protocols in blockchain: A short survey
KR20220065271A (en) A method for providing liquidity value adjustment services of ownership item assets using non-fungible tokens based on block chain networks, an apparatus and a system using it
WO2022224585A1 (en) Information processing device, information processing method, and information processing program
KR20220065265A (en) A method for providing community services related to ownership item assets using non-fungible tokens based on block chain networks, an apparatus and a system using it
KR102178895B1 (en) Proof-of-Probability based blockchain compensation method and apparatus
WO2022079431A1 (en) Block reward management in blockchain
KR20220065256A (en) A method for providing exchange services of ownership item assets using non-fungible tokens based on block chain networks, an apparatus and a system using it
KR102104646B1 (en) Method and system for issuance of lottery based on blockchain
CN113742761B (en) Digital identity casting method and device
Masseport et al. Proof of usage: User-centric consensus for data provision and exchange
Rahimpour et al. Hashcashed reputation with application in designing watchtowers
WO2022189780A1 (en) Improved blockchain relying on advanced consensus
CN109829716B (en) Block chain-based application evidence-based circulation method and device
KR20220065274A (en) A method for providing liquidity value adjustment services of ownership item assets using non-fungible tokens based on block chain networks, an apparatus and a system using it
KR20220065255A (en) A method for providing exchange services of ownership item assets using non-fungible tokens based on block chain networks, an apparatus and a system using it
Mazurok et al. Proof-of-greed approach in the nxt consensus

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