CN110780848A - Double-random generation method and supervision system based on block chain distributed random process - Google Patents

Double-random generation method and supervision system based on block chain distributed random process Download PDF

Info

Publication number
CN110780848A
CN110780848A CN201910983905.8A CN201910983905A CN110780848A CN 110780848 A CN110780848 A CN 110780848A CN 201910983905 A CN201910983905 A CN 201910983905A CN 110780848 A CN110780848 A CN 110780848A
Authority
CN
China
Prior art keywords
random
block
code
node
private
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
CN201910983905.8A
Other languages
Chinese (zh)
Other versions
CN110780848B (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.)
Shanghai Chaindo Technology Co Ltd
Original Assignee
Shanghai Chaindo 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 Shanghai Chaindo Technology Co Ltd filed Critical Shanghai Chaindo Technology Co Ltd
Priority to CN201910983905.8A priority Critical patent/CN110780848B/en
Publication of CN110780848A publication Critical patent/CN110780848A/en
Application granted granted Critical
Publication of CN110780848B publication Critical patent/CN110780848B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/588Random number generators, i.e. based on natural stochastic processes
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

The invention provides a double random generation method and a supervision system based on a block chain distributed random process, which comprises the steps that a random process participant locally generates a first random private code, and the first random private code is subjected to hash processing once to obtain a hash value; submitting the generated hash value to a block chain; the first random private codes of all random process participants are subjected to exclusive or to obtain a joint random public code; a random process participant locally generates a second random private code, and the second random private code and the joint random public code are subjected to exclusive OR to obtain a combined value M; subjecting the combined value M to hash processing and submitting the combined value M to a block chain; the second random private codes of all the random process participants are subjected to exclusive or to obtain a joint random code; and generating a final random code by the combined random code obtained in the two random processes according to an intelligent contract preset on the block chain. The invention can obtain credible random results and ensure that the whole process can be proved to be realized.

Description

Double-random generation method and supervision system based on block chain distributed random process
Technical Field
The invention relates to the technical field of computers, in particular to a double random generation method and a supervision system based on a block chain distributed random process.
Background
In life, various randomly generated decision results, such as a spot check, a lottery, a license plate number, a mobile phone number, a house number, etc., are often accessible. Whether the results are truly random or not and whether artificial control exists or not are difficult to judge.
Most of the existing generation modes which can be called true random are based on basic physical quantities such as thermodynamic noise, photoelectric effect, quantum phenomenon and the like, and the true random is obtained by amplifying small signals and then performing a random algorithm. The true random obtained in this way depends on the credibility of the standard of the hardware system, but the generated result cannot be proved, and the user can only trust the credibility and the reliability of the system and the hardware manufacturer thereof.
In recent years, as the country carries out a double random and one public spot check detection system, the random generation has affected the loss of interest of a plurality of relatives. How to generate the random and prove the fairness and justice of the random becomes the focus of the technology concerned by all people. At present, the double random generation mode of the traditional detection system is mainly generated by using the random function of the system, and the mode is limited by the credibility of a single machine and an independent system. In the past, security is carried out through an intermediate mechanism, but a certification mode is not disclosed, and whether the system is interfered by people or not can not be guaranteed.
Random function, linear congruence generator in computer system
Figure BDA0002236102820000011
The desired sequence of random numbers<X n>is then obtained by setting
X n+1=(aX n+c)mod m,n≥0. (2)
Where m, a, and c are initial fixed values of the algorithm, a random sequence can be obtained by initializing an X0 through a system function, and if the random seed X0 at the beginning is known, all subsequent random numbers can be speculated. When the system is used for randomness, the safety and the confidentiality of the random seed cannot be ensured, and the generated random number cannot ensure the credibility of the random seed. Therefore, the conventional system generation method depends on the safety and reliability of the equipment and the standardization of the operator. Moreover, the generated random data cannot be effectively proven.
To improve the reliability of detection systems, an open, provable stochastic process becomes of paramount importance. Some patent documents, such as CN 104699451a, disclose a true random number generation method, in which an interference program using a parallel execution mechanism is inserted into a software program, the interference program is activated and then runs in an overlapping manner with a pseudo random number generation program to generate a true random number, and the interference program exits from running. The method is characterized in that insertion points and insertion opportunities are flexibly selected, a pure software mechanism is utilized to generate true random numbers, and the generated true random numbers have randomness, unpredictability and good normal distribution, but the defects are still not completely solved.
Disclosure of Invention
Aiming at the defects in the prior art, the invention aims to provide a double random generation method and a supervision system based on a block chain distributed random process.
The invention provides a double random generation method based on a block chain distributed random process, which comprises the following steps:
a first random private code generating step: a random process participant locally generates a first random private code, and performs hash processing on the first random private code once to obtain a hash value;
a first submission step: submitting the generated hash value to a block chain;
generating a joint random public code: the first random private codes of all random process participants are subjected to exclusive or to obtain a joint random public code;
a second random private code generating step: a random process participant locally generates a second random private code, and the second random private code and the joint random public code are subjected to exclusive OR to obtain a combined value M;
a second submitting step: subjecting the combined value M to hash processing and submitting the combined value M to a block chain;
generating a joint random code: the second random private codes of all the random process participants are subjected to exclusive or to obtain a joint random code;
a double random generation step: and generating a final random code by the combined random code obtained in the two random processes according to an intelligent contract preset on the block chain.
Preferably, the block chain comprises:
and (3) out of the block node: carrying out block data packing generation;
the synchronous node: synchronously checking block data generated by packaging;
intelligent contract: program code solidified on the block chain and capable of being run and verified;
the committee for block export: and actually controlling the user group of the block-out node.
Preferably, the block output node polls out the block according to the authority index, and the authority index of each block output node changes according to the change of the current block number;
the authority index is Q, the number of the committees of the block output is n, the number of the block is m, the serial number of the node of the block output in the committee is x, and then:
q=(m mod n)-x
if q <0, q is n + q;
Q=n-q。
preferably, the synchronization node sorts the block time domains according to the Q value, and in the same block, the time period is sorted according to the Q value;
each block-out node loses the block right in (n/3) blocks after the block is out, and the block right is recovered after (n/3) blocks.
Preferably, the initiator and the participant of the two random processes are different.
The invention provides a double random generation supervision system based on a block chain distributed random process, which comprises the following steps:
the first random private code generating module: a random process participant locally generates a first random private code, and performs hash processing on the first random private code once to obtain a hash value;
a first commit module: submitting the generated hash value to a block chain;
a joint random public code generation module: the first random private codes of all random process participants are subjected to exclusive or to obtain a joint random public code;
a second random private code generation module: a random process participant locally generates a second random private code, and the second random private code and the joint random public code are subjected to exclusive OR to obtain a combined value M;
a second commit module: subjecting the combined value M to hash processing and submitting the combined value M to a block chain;
a joint random code generation module: the second random private codes of all random process participants are subjected to exclusive or to obtain a joint random code;
a double random generation module: and generating a final random code by the combined random code obtained in the two random processes according to an intelligent contract preset on the block chain.
Preferably, the block chain comprises:
and (3) out of the block node: carrying out block data packing generation;
the synchronous node: synchronously checking block data generated by packaging;
intelligent contract: program code solidified on the block chain and capable of being run and verified;
the committee for block export: and actually controlling the user group of the block-out node.
Preferably, the block output node polls out the block according to the authority index, and the authority index of each block output node changes according to the change of the current block number;
the authority index is Q, the number of the committees of the block output is n, the number of the block is m, the serial number of the node of the block output in the committee is x, and then:
q=(m mod n)-x
if q <0, q is n + q;
Q=n-q。
preferably, the synchronization node sorts the block time domains according to the Q value, and in the same block, the time period is sorted according to the Q value;
each block-out node loses the block right in (n/3) blocks after the block is out, and the block right is recovered after (n/3) blocks.
Preferably, the initiator and the participant of the two random processes are different.
Compared with the prior art, the invention has the following beneficial effects:
the invention comprises the principle, algorithm and provability of the random generation process and the principle and the provability of the double random detection system based on the method. The method uses the block chain technology to ensure safety and fairness in the processes of bottom layer communication, random number calculation and generation, thereby obtaining a credible random result. The double-random detection system adopting the method is further based on a distributed verification technology, and objective testability of random factors adopted in each generation process is guaranteed. The randomness of the generation method and the generation result and the block chain recording and publishing of the process and the result are ensured by the combination of all random factors, so that the whole process can be proved to be realized. The characteristics of the block chain ensure that the calculation process, the calculation factors and the calculation results can be back-traced and proved and can not be changed, so that the generated result is unique and credible, and the execution, decision and result of the double random inspection system realized by the invention have high random safety.
Drawings
Other features, objects and advantages of the present invention will become more apparent upon reading of the following detailed description of non-limiting embodiments thereof, with reference to the accompanying drawings.
FIG. 1 is an overall flow chart of the present invention.
Fig. 2 is a flow chart of dual random generation.
FIG. 3 is an alternate schematic of block and data states.
Fig. 4 is a schematic diagram of a chain out-of-block process.
Fig. 5 is a schematic diagram of a random generation process of a primary random number.
FIG. 6 is a diagram of a complete stochastic process.
FIG. 7 is a block chain system.
FIG. 8 is a flow chart illustrating a user operation of dual random.
FIG. 9 is a system flow for dual randomization.
Detailed Description
The present invention will be described in detail with reference to specific examples. The following examples will assist those skilled in the art in further understanding the invention, but are not intended to limit the invention in any way. It should be noted that it would be obvious to those skilled in the art that various changes and modifications can be made without departing from the spirit of the invention. All falling within the scope of the present invention.
As shown in fig. 1 and fig. 2, a dual random generation method based on a block chain distributed random process provided by the present invention includes:
a first random private code generating step: a random process participant locally generates a first random private code, and performs hash processing on the first random private code once to obtain a hash value;
a first submission step: submitting the generated hash value to a block chain;
generating a joint random public code: the first random private codes of all random process participants are subjected to exclusive or to obtain a joint random public code;
a second random private code generating step: a random process participant locally generates a second random private code, and the second random private code and the joint random public code are subjected to exclusive OR to obtain a combined value M;
a second submitting step: subjecting the combined value M to hash processing and submitting the combined value M to a block chain;
generating a joint random code: the second random private codes of all random process participants are subjected to exclusive or to obtain a joint random code;
a double random generation step: and generating a final random code by the combined random code obtained in the two random processes according to an intelligent contract preset on the block chain. The initiator and the participant of the two random processes are different.
On the basis of the double random generation method based on the block chain distributed random process, the invention also provides a double random generation supervision system based on the block chain distributed random process, which comprises the following steps:
the first random private code generating module: a random process participant locally generates a first random private code, and performs hash processing on the first random private code once to obtain a hash value;
a first commit module: submitting the generated hash value to a block chain;
a joint random public code generation module: the first random private codes of all random process participants are subjected to exclusive or to obtain a joint random public code;
a second random private code generation module: a random process participant locally generates a second random private code, and the second random private code and the joint random public code are subjected to exclusive OR to obtain a combined value M;
a second commit module: subjecting the combined value M to hash processing and submitting the combined value M to a block chain;
a joint random code generation module: the second random private codes of all the random process participants are subjected to exclusive or to obtain a joint random code;
a double random generation module: and generating a final random code by the combined random code obtained in the two random processes according to an intelligent contract preset on the block chain.
Example (b):
in this blockchain system, there are the following elements:
out-block node responsible for block data packing generation
Synchronous nodes, which can only synchronously check block data that have been generated by packaging
Smart contracts, curing program code that can be run and verified on a chain
Transactions, execution instructions broadcast by users on the chain to the network-wide, the data being authenticated by their user signatures
P2P network, decentralized network ensuring node-to-node communication
Consensus algorithm, Block-out strategy to guarantee consistency and Security of node data
The export Committee, actually controlling the user group of the export node
Random Process participants, participating in the random Generation Process
The block and data states are alternated as shown in FIG. 3
The block-out process of the chain is shown in FIG. 4
And polling out the blocks by the nodes of the committee according to the authority indexes, wherein the authority index of each node is changed according to the change of the current block number.
The block output nodes poll the blocks according to the authority indexes, and the authority index of each block output node changes according to the change of the current block number;
the authority index is Q, the number of the committees of the block output is n, the number of the block is m, the serial number of the node of the block output in the committee is x, and then:
q=(m mod n)-x
if q <0, q is n + q;
Q=n-q。
and all other synchronous nodes sort the block time domains according to the Q value, and sort the time periods according to the Q value in the same block. If all nodes are in the correct time order, the block data will not collide.
Each node will lose the block-out power within (n/3) after the block-out, and will recover the power after (n/3) blocks. Thus, if the number of malicious nodes does not reach (n/3+1), the whole chain cannot be forked.
If a malicious node occupies the block time domain, an excessively long time is generated for waiting, the weight of the chain is reduced, the subsequent node replaces the malicious node to perform block discharging, and the malicious node loses the block discharging power which the malicious node should have.
Authority of ordinary node user
The ordinary node has the right to verify the block chain synchronously, and each (n × 2/3) blocks is a confirmation period (T), and the rewriting of the blocks in the period beyond the period is rejected by the ordinary node. If the main chain does rewrite data exceeding the period, the main chain represents that at least more than (n/3+1) nodes in the block nodes are malicious nodes, the synchronous nodes can not synchronize data any more, the chain is not credible any more, and the incredible checking of the alliance chain can be initiated. The way of the lifting can be performed both on-chain and off-line.
Chain polling can break the chain and require a new committee to be initialized and the starting block location to be set for continued operation.
Verification logic
Sig(n)=ECC(Blk(hash(n-1),hash(n),…))
Ecrec(Sig(n))∈Committee[m0,m1,m2,……]
Time(n-1)<Time(n)<now
BlkDiff(now)>0
BlkDiff(n)>BlkDiff(n-1)
Delay(n)=K*Distance(m)
Time(n)>Time(n-1)+Delay(n)
The random generation process of the primary random number is shown in FIG. 5
All random commission optional personnel must register accounts for associated qualifications in the federation chain, which may be obtained through a reputation guarantee by an associated institution or organization.
Before the final divulgence of the second joint random process, the quitter makes a certain amount of punishment in the alliance chain according to the influence degree, such as disabling the function of the account for a period of time and the like.
And refusing to reveal the secret in the final secret revealing process of the second combined random process, considering the secret as malicious interference, punishing the secret and researching the related responsibility of the secret. s
The Hash codes have the distribution characteristics that the collision probability is as follows:
Figure BDA0002236102820000081
n is the number of attempted collisions and d is the number of value ranges
In order to ensure an extremely difficult collision probability, the value of d is large and can be set according to the existing technology level. The proposed values of the invention are:
the selection of the random committee participants may be based on the stakeholders who are randomly generated at this time. After the person is determined, generation of the random code may be initiated by the initiator
The detailed process is shown in FIG. 6
An operation timeout period can be set as t during operation, and if the operation is not overtime, the process can be considered to be actively exited.
The final result is obtained by conversion using the final random code, which must be in a chain in a uniform manner and confirmed by all committee members before initiating the randomization process.
The result generation mode is generated through a preset intelligent contract, and the consistency and the unification of the result are ensured.
Generation and verification logic
rh ═ sha (rand) private hash (secret)
H(0)=sha(rh)
H(1)=sha(h(0))
H(2)=ecc(H(1))
Hpriv=H(1)
Hpub=Hpriv(1)⊕Hpriv(2)⊕Hpriv(3)…
kh-block hash at the start of BHash task
H(3)=sha(rh+kh)
H(4)=ecc(H(3))
H(5)=sha(Hpub+H(3))
H (5) is public code and can reversely verify private code
Through the published private code, the random number is calculated and generated
Hret=rh(1)⊕rh(2)⊕rh(3)…
Rand1 ═ fun (hret) obtains random number by conversion function
System architecture implementation is shown in FIG. 7
Service layer (distributed access service, managed service, computing service)
Service layer (user terminal DAPP: participant management, random task management, private key management)
Management of system participants
The user in the system needs to obtain the admission condition of the system through the real-name authentication system, and after the real name is passed, the multi-party signature authentication in the block committee is obtained to generate a multi-signature certificate, and the certificate is used to obtain the use admission of the system.
Private key management
The management of the private key is divided into authorization escrow management and user-owned management.
The escrow management mode is that the account private key of the user is managed by a trusted escrow service node, so that the user is helped to maintain the security of the account, and the stability of account transaction is ensured.
The user self-contained management is that a user uses the intelligent terminal device to carry out private management on a private key, and the security of the private key is taken charge of by the user.
Random task management
And the intelligent terminal regularly updates the random task list by reading the information on the chain and feeds back the current operable state through the state of the task. The terminal system can check the historical task execution state and the result of the random process according to the relevant conditions.
Hosting service
For users who need to be guaranteed to be permanently online in the random process, the participation right of the random task can be managed to the trusted hosting node. The hosting node automatically processes the related random tasks according to the conditions set by the user, and the function can be closed when the user is online.
Distributed access
When a user uses a terminal to access a network, the user can freely select a distributed node with good current conditions through the P2P network to complete service access. When part of the services can not be used, the user terminal can still automatically switch the service access point in real time, and the normal operation of the service is ensured not to be disconnected.
Random number calculation
The main function service of the random number calculation type system is that a user can initiate or participate in a random calculation process by using terminal equipment.
Intelligent contract
The intelligent contract is a mode that a business designer solidified and releases program codes on a chain, and has verifiability and inflexibility.
Block chain API
The blockchain API provides a decentralized interface to access distributed applications on the chain, with any node providing the same interface. The business program can be built on the basis of the design.
Algorithm trust verification
The arithmetic operation process issued on the chain can be calculated and verified through backtracking of the chain, the same state and input data are stored in all the desired nodes, and the consistency verification of the result can be completed by executing the arithmetic operation process.
Detection of cheating
The synchronous node can verify the result of the original acid according to the synchronized data, and when the result is in a problem, the authenticity of the data can be proved through the data on the chain. Illegal operation of the nodes can be proved through detection of data collision.
Management of users
The user needs to obtain the access condition of the system through the real-name authentication system, and after the real-name authentication, the multi-party signature authentication in the block committee is obtained to generate a multi-signature certificate, and the certificate is used to obtain the use access of the system.
Management of nodes
The access of the node needs corresponding access permission management, the access permission information is carried out in a chain voting mode, and the admission permission of the node is completed through the voting of committee members. When a new node is added, the node information of the new node needs to be provided, and the new node can enter the admission network after multi-party authentication.
Consensus mechanism
The communication between the nodes adopts a consensus protocol to finish the consistency of data operation, and the reliability, the safety and the availability of data calculation are ensured through consensus.
Distributed storage
The service data network on the chain adopts a distributed redundant storage mode to ensure the reliability of data, and each data fragment is composed of a plurality of fragments which are verified mutually and jointly in different network nodes. The loss of any node data in the network will not affect the whole network, and the instant availability of user service data is ensured.
Data encryption
User data is stored in a distributed encryption mode, and the user performs access authorization on the data in an asymmetric encryption mode, so that privacy and safety of the user data are guaranteed.
Block chain network
The blockchain network is a distributed divergent network of P2P, and information can be osmotically transmitted to different local area networks through point-to-point transmission of the network, so that bridging transmission of the network is completed.
The flow of the user operation with double random is shown in FIG. 8
And (3) confirmation: all participants are required to confirm to open the random process, and the private random code of the participants is generated by the private key to improve the randomness
The flow of the system with double random is shown in FIG. 9
Double random two random results (different initiator and participant)
And for the generated result, the user can carry out validity detection through the synchronous node, and can initiate reporting if the user detects that a problem exists.
The invention comprises the principle, algorithm and provability of the random generation process and the principle and the provability of the double random detection system based on the method. The method uses the block chain technology to ensure safety and fairness in the processes of bottom layer communication, random number calculation and generation, thereby obtaining a credible random result. The double-random detection system adopting the method is further based on a distributed verification technology, and objective testability of random factors adopted in each generation process is guaranteed. The randomness of the generation method and the generation result and the block chain recording and publishing of the process and the result are ensured by the combination of all random factors, so that the whole process can be proved to be realized. The characteristics of the block chain ensure that the calculation process, the calculation factors and the calculation results can be back-traced and proved and can not be changed, so that the generated result is unique and credible, and the execution, decision and result of the double random inspection system realized by the invention have high random safety.
Those skilled in the art will appreciate that, in addition to implementing the system and its various devices, modules, units provided by the present invention as pure computer readable program code, the system and its various devices, modules, units provided by the present invention can be fully implemented by logically programming method steps in the form of logic gates, switches, application specific integrated circuits, programmable logic controllers, embedded microcontrollers and the like. Therefore, the system and various devices, modules and units thereof provided by the invention can be regarded as a hardware component, and the devices, modules and units included in the system for realizing various functions can also be regarded as structures in the hardware component; means, modules, units for performing the various functions may also be regarded as structures within both software modules and hardware components for performing the method.
The foregoing description of specific embodiments of the present invention has been presented. It is to be understood that the present invention is not limited to the specific embodiments described above, and that various changes or modifications may be made by one skilled in the art within the scope of the appended claims without departing from the spirit of the invention. The embodiments and features of the embodiments of the present application may be combined with each other arbitrarily without conflict.

Claims (10)

1. A double random generation method based on a block chain distributed random process is characterized by comprising the following steps:
a first random private code generating step: a random process participant locally generates a first random private code, and performs hash processing on the first random private code once to obtain a hash value;
a first submission step: submitting the generated hash value to a block chain;
generating a joint random public code: the first random private codes of all random process participants are subjected to exclusive or to obtain a joint random public code;
a second random private code generating step: a random process participant locally generates a second random private code, and the second random private code and the joint random public code are subjected to exclusive OR to obtain a combined value M;
a second submitting step: subjecting the combined value M to hash processing and submitting the combined value M to a block chain;
generating a joint random code: the second random private codes of all the random process participants are subjected to exclusive or to obtain a joint random code;
a double random generation step: and generating a final random code by the combined random code obtained in the two random processes according to an intelligent contract preset on the block chain.
2. The method of claim 1, wherein the blockchain comprises:
and (3) out of the block node: carrying out block data packing generation;
the synchronous node: synchronously checking block data generated by packaging;
intelligent contract: program code solidified on the block chain and capable of being run and verified;
the committee for block export: and actually controlling the user group of the block-out node.
3. The dual random generation method based on the blockchain distributed random process as claimed in claim 2, wherein the out-block nodes poll out blocks according to the authority index, and the authority index of each out-block node changes according to the change of the current block number;
the authority index is Q, the number of the committees of the block output is n, the number of the block is m, the serial number of the node of the block output in the committee is x, and then:
q=(m mod n)-x
if q <0, q is n + q;
Q=n-q。
4. the dual random generation method based on the block chain distributed random process as claimed in claim 3, wherein the synchronization node sorts the block time domains according to the Q value, and under the same block, the time periods are sorted according to the Q value;
each block-out node loses the block right in (n/3) blocks after the block is out, and the block right is recovered after (n/3) blocks.
5. The method of claim 1, wherein the initiator and the participant of the two random processes are different.
6. A dual random generation policing system based on a blockchain distributed random process, comprising:
the first random private code generating module: a random process participant locally generates a first random private code, and performs hash processing on the first random private code once to obtain a hash value;
a first commit module: submitting the generated hash value to a block chain;
a joint random public code generation module: the first random private codes of all random process participants are subjected to exclusive or to obtain a joint random public code;
a second random private code generation module: a random process participant locally generates a second random private code, and the second random private code and the joint random public code are subjected to exclusive OR to obtain a combined value M;
a second commit module: subjecting the combined value M to hash processing and submitting the combined value M to a block chain;
a joint random code generation module: the second random private codes of all random process participants are subjected to exclusive or to obtain a joint random code;
a double random generation module: and generating a final random code by the combined random code obtained in the two random processes according to an intelligent contract preset on the block chain.
7. The dual random generation supervisory system based on blockchain distributed random processes of claim 6, wherein the blockchain includes:
and (3) out of the block node: carrying out block data packing generation;
the synchronous node: synchronously checking block data generated by packaging;
intelligent contract: program code solidified on the block chain and capable of being run and verified;
the committee for block export: and actually controlling the user group of the block-out node.
8. The dual random generation supervisory system based on blockchain distributed random processes of claim 7, wherein the out-block nodes poll out blocks according to authority indexes, and the authority index of each out-block node changes according to the change of the current block number;
the authority index is Q, the number of the committees of the block output is n, the number of the block is m, the serial number of the node of the block output in the committee is x, and then:
q=(m mod n)-x
if q <0, q is n + q;
Q=n-q。
9. the system according to claim 8, wherein the synchronization node sorts the block-out time domains according to the Q value, and the time periods are sorted according to the Q value in the same block;
each block-out node loses the block right in (n/3) blocks after the block is out, and the block right is recovered after (n/3) blocks.
10. The system according to claim 6, wherein the initiator and the participant of the two random processes are different.
CN201910983905.8A 2019-10-16 2019-10-16 Dual-random generation method and supervision system based on block chain distributed random process Active CN110780848B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910983905.8A CN110780848B (en) 2019-10-16 2019-10-16 Dual-random generation method and supervision system based on block chain distributed random process

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910983905.8A CN110780848B (en) 2019-10-16 2019-10-16 Dual-random generation method and supervision system based on block chain distributed random process

Publications (2)

Publication Number Publication Date
CN110780848A true CN110780848A (en) 2020-02-11
CN110780848B CN110780848B (en) 2023-05-12

Family

ID=69385718

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910983905.8A Active CN110780848B (en) 2019-10-16 2019-10-16 Dual-random generation method and supervision system based on block chain distributed random process

Country Status (1)

Country Link
CN (1) CN110780848B (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112070613A (en) * 2020-11-11 2020-12-11 树根互联技术有限公司 Transaction data storage method, device, block chain system and storage medium
CN113761586A (en) * 2020-06-28 2021-12-07 北京同邦卓益科技有限公司 Method and device for randomly sampling and inspecting articles based on block chain
WO2024087347A1 (en) * 2022-10-24 2024-05-02 杭州舜时科技有限公司 Blockchain generation method and system, and corresponding data storage method and system

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103870525A (en) * 2012-12-13 2014-06-18 株式会社日立解决方案 Secure search processing system and secure search processing method
CN104699451A (en) * 2015-03-30 2015-06-10 河海大学 True random number generation method
US10102265B1 (en) * 2017-04-12 2018-10-16 Vijay K. Madisetti Method and system for tuning blockchain scalability for fast and low-cost payment and transaction processing
CN109558112A (en) * 2018-11-14 2019-04-02 杭州复杂美科技有限公司 Random digit generation method, anti-cheating block catenary system, equipment and storage medium
CN109583892A (en) * 2018-11-21 2019-04-05 安徽高山科技有限公司 A kind of random number selecting method in block chain
CN109617679A (en) * 2018-11-29 2019-04-12 哈希未来(北京)科技有限公司 Generate, obtain and provide method, system and the storage medium of random number
CN109615422A (en) * 2018-11-29 2019-04-12 哈希未来(北京)科技有限公司 Competing pumping method, system and storage medium based on block chain
CN109683851A (en) * 2018-11-16 2019-04-26 深圳市先河系统技术有限公司 The generation method of random number, generating random number device, computer storage medium
CN109831509A (en) * 2019-02-18 2019-05-31 深圳市优学链科技有限公司 A kind of common recognition algorithm going out block at random for realizing equal weight
CN109847365A (en) * 2019-01-24 2019-06-07 湖南天河国云科技有限公司 A kind of anti-cheating method and system towards the application of block chain
CN109981263A (en) * 2019-02-28 2019-07-05 复旦大学 A kind of distribution based on CP-ABE can verify that random digit generation method
CN110162996A (en) * 2019-04-23 2019-08-23 上海链度科技有限公司 Ballot system, method and voting terminal based on block chain

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103870525A (en) * 2012-12-13 2014-06-18 株式会社日立解决方案 Secure search processing system and secure search processing method
CN104699451A (en) * 2015-03-30 2015-06-10 河海大学 True random number generation method
US10102265B1 (en) * 2017-04-12 2018-10-16 Vijay K. Madisetti Method and system for tuning blockchain scalability for fast and low-cost payment and transaction processing
CN109558112A (en) * 2018-11-14 2019-04-02 杭州复杂美科技有限公司 Random digit generation method, anti-cheating block catenary system, equipment and storage medium
CN109683851A (en) * 2018-11-16 2019-04-26 深圳市先河系统技术有限公司 The generation method of random number, generating random number device, computer storage medium
CN109583892A (en) * 2018-11-21 2019-04-05 安徽高山科技有限公司 A kind of random number selecting method in block chain
CN109617679A (en) * 2018-11-29 2019-04-12 哈希未来(北京)科技有限公司 Generate, obtain and provide method, system and the storage medium of random number
CN109615422A (en) * 2018-11-29 2019-04-12 哈希未来(北京)科技有限公司 Competing pumping method, system and storage medium based on block chain
CN109847365A (en) * 2019-01-24 2019-06-07 湖南天河国云科技有限公司 A kind of anti-cheating method and system towards the application of block chain
CN109831509A (en) * 2019-02-18 2019-05-31 深圳市优学链科技有限公司 A kind of common recognition algorithm going out block at random for realizing equal weight
CN109981263A (en) * 2019-02-28 2019-07-05 复旦大学 A kind of distribution based on CP-ABE can verify that random digit generation method
CN110162996A (en) * 2019-04-23 2019-08-23 上海链度科技有限公司 Ballot system, method and voting terminal based on block chain

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
SU YUNLING: "An Overview of Incremental Hash Function Based on Pair Block Chaining" *
佟铮: "基于区块链的公开可验证随机数生成方法研究" *
刘懿中等: "区块链共识机制研究综述" *
张亮;刘百祥;张如意;江斌鑫;刘一江;: "区块链技术综述" *
颜春辉;游林;: "基于区块链的安全投票系统设计与实现" *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113761586A (en) * 2020-06-28 2021-12-07 北京同邦卓益科技有限公司 Method and device for randomly sampling and inspecting articles based on block chain
CN112070613A (en) * 2020-11-11 2020-12-11 树根互联技术有限公司 Transaction data storage method, device, block chain system and storage medium
WO2024087347A1 (en) * 2022-10-24 2024-05-02 杭州舜时科技有限公司 Blockchain generation method and system, and corresponding data storage method and system

Also Published As

Publication number Publication date
CN110780848B (en) 2023-05-12

Similar Documents

Publication Publication Date Title
CN109523683B (en) Anonymous electronic voting method based on block chain technology
Nguyen et al. A survey about consensus algorithms used in blockchain.
CN110391911B (en) System and method for anonymously voting block chain
Borge et al. Proof-of-personhood: Redemocratizing permissionless cryptocurrencies
CN110351067B (en) Block chain consensus method for master-slave multi-chains
CN109842606B (en) Block chain consensus algorithm and system based on consistent Hash algorithm
Pinkas Fair secure two-party computation
CN110780848A (en) Double-random generation method and supervision system based on block chain distributed random process
CN110784320A (en) Distributed key implementation method and system and user identity management method and system
CN110912705B (en) Distributed electronic voting method and system based on block chain
CN111709749A (en) Traceable blockchain transaction system with conditional privacy protection
KR20200087913A (en) System and method for providing secret electronic voting service based on blockchain
CN113837758A (en) Consensus method and device for block chain system
US20220278854A1 (en) Unity Protocol Consensus
Wang et al. Randchain: Practical scalable decentralized randomness attested by blockchain
CN110867012A (en) Method, device and system for de-centering electronic voting based on intelligent contract and storage medium
CN108494558B (en) Method and system for implementing fair switching
Xu et al. Redactable blockchain-based secure and accountable data management
Zhang et al. An efficient and robust committee structure for sharding blockchain
CN111865595B (en) Block chain consensus method and device
Gao et al. Quantum election protocol based on quantum public key cryptosystem
Corman et al. A Secure Group Agreement (SGA) protocol for peer-to-peer applications
CN114005217A (en) Electronic voting system and method based on block chain
Wang et al. Consensus algorithm based on verifiable quantum random numbers
Kubiak et al. Preventing a fork in a blockchain-david fighting goliath

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