GB2580874A - Method for generating verifiable random selections - Google Patents
Method for generating verifiable random selections Download PDFInfo
- Publication number
- GB2580874A GB2580874A GB1818124.8A GB201818124A GB2580874A GB 2580874 A GB2580874 A GB 2580874A GB 201818124 A GB201818124 A GB 201818124A GB 2580874 A GB2580874 A GB 2580874A
- Authority
- GB
- United Kingdom
- Prior art keywords
- secret
- data
- entropy
- party
- secret token
- 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.)
- Withdrawn
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/582—Pseudo-random number generators
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C15/00—Generating random numbers; Lottery apparatus
- G07C15/006—Generating random numbers; Lottery apparatus electronically
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3236—Cryptographic 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
- H04L9/3239—Cryptographic 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 involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3247—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic 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)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Validatable random seed generation. A secret token 3 is chosen e.g. a title, password etc. A cryptographic hash function 2 is applied to the secret. The resulting hash code 4 is cryptographically signed 5. The signature 7 and hashcode are submitted 8 to a second party, which may comprise a public blockchain. Entropy data 12 obtained from the second party is combined 11 with the secret token. The combined data is used as a seed 14 for a pseudrandom generator. The secret token and data based on the generated pseudorandom data is shared with second or third parties. The entropy data and secret token may be combined using a cryptographic hash function. The dominant source of entropy for the entropy data obtained from the second party may be taken from the hash code of the finalised blockchain block storing the submitted signature and hash of the secret token. The method allows verification by sharing the secret token with verifying parties. Applications may include verifying the randomness of lottery draws.
Description
ME'l'HOD FOR GENERATING VERIFIABLE RANDOM TiONS
FIELD AND BACKGROUND OF THE iNVENTION
The presented invention takes elements from the fields of cryptography and distributed computing to establish a system for trust--free auditing of processes based on random data.
An established way of aiding reproducibility of for example, a scientific study is to publish the seed values used to generate pseudo-randomness. Publishing the seed allows a third party to reproduce the used random data, but it does not prevent the published seed from being the result of data dredging, exhaustive searching of seed values to obtain reproducible results of misleading significance.
is The invention uses generated randomness (hereafter 'entropy') derived from a public blockchain, public-key cryptography, and cryptographic hash functions to provide means for ensuring that a result is reproducible and free of selection biases such as data dredging.
DETAILED DESGRI
The pasty requiring the use of random data, hereafter the 'usei starts (1) by choosing a secret (3) token. A token can be any piece of data, such as, but not limited to, a project title, a random number, a password, or any combination thereof. A cryptographic hash function (2), such as SfIA-3, is used to generate a hash code (4) of the secret (3). The user signs (5) the generated hash (4) using a digital signature algorithm and an asymmetric key pair (6), for example according to the OpenPOP standard. The user then submits (8), through a client tool, web interface or similar means, the hash (-1:) and signature (7) to a public Hock chain, to be included in the current working block as an entropy-request (9).
Once the current block is finalised (mined) (13), the block containing the entropy request is used to derive entropy (12), for example from the unused bits of its winning hash code. The user combines, preferably using a cryptographic hash function, the secret (3) with the entropy (12) to a form a pseudo-random generator seed (14). The user is then free to use the seed as required (15), for example generate random numbers or selections. When verification becomes desirable the user can share the secret (3) with specific verifying parties or publish it to allow verification by anyone.
The use of the secret (3) ensures that, until the moment of publication, no other parties can predict the seed (14). The entropy of the secret can be varied depending on the specific use-case. For example, a lottery can apply this method to guarantee a fair draw, using enough entropy in the secret to make predicting the draw impossible.
The generation of the entropy by an independent party, such as in a blockchain, ensures the obtained seed cannot be predicted by the user, Submitting the hash of the chosen secret to the blockchain ensures that the secret used for the entropy request is also used for the seed, without requiring the user to immediate disclose the secret.
The signature and asymmetric key pair (6) are used to leverage an existing web-o, u allowing a verifying party to ensure the key pair used is the expected publishing key pair.
Such web-of-trust systems are widely used to ribute (Linux) software packages.
An implementation of above method can be mostly automated, req, sr. minimal user interaction, allowing application in situations where an audit system would be previously have been unjustifiable.
This method also eliminates the requirement for trust between the user and third parties, 20 such as in a lottery draw, by allowing clients to verify the randomness of a draw. This creates substantial business efficiency improvements.
BRIEF DESCRIPTION OF THE DRAWINGS
Figure 1 show a flow chart of the generic process of obtaining a verifiable random seed, including interaction with the (external) blockchain.
Claims (4)
- CLAIMSWhat is clair 1. A method for generating a validatable random generator seed, comprising the steps of: choosing a secret token; applying a cryptographic hash function o said secret; cryptographically signing the hash code of the secret; submitting the signature and hash code to a second party; comb ng the entropy data obtained om the second party with thesecret token; using the said combined data as seed for a pseudorandom generator; sharing the secret token and data based on the generated pseudorandom data with second -or third parties.
- 2. A method according to claim 1, wherein the entropy data and score combined using a cryptographic hash function.
- 3. A method according o claim 1, wherein the third party constitutes a blockchain.
- 4. A method according to claim 3, wherein the dominant source of entropy for the entropy data obtained from the second party is taken from the hash code of the finalised 30 blockchain block storing the submitted signature and hash of the secret token.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1818124.8A GB2580874A (en) | 2018-11-07 | 2018-11-07 | Method for generating verifiable random selections |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1818124.8A GB2580874A (en) | 2018-11-07 | 2018-11-07 | Method for generating verifiable random selections |
Publications (2)
Publication Number | Publication Date |
---|---|
GB201818124D0 GB201818124D0 (en) | 2018-12-19 |
GB2580874A true GB2580874A (en) | 2020-08-05 |
Family
ID=64655463
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
GB1818124.8A Withdrawn GB2580874A (en) | 2018-11-07 | 2018-11-07 | Method for generating verifiable random selections |
Country Status (1)
Country | Link |
---|---|
GB (1) | GB2580874A (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110825349B (en) * | 2019-11-14 | 2023-03-28 | 深圳市迅雷网络技术有限公司 | Random number generation method, block chain node, system and medium |
CN111125259B (en) * | 2019-12-31 | 2023-08-18 | 预言机(重庆)科技有限公司 | Random seed providing method based on blockchain bottom layer |
CN112562168B (en) * | 2020-11-27 | 2022-08-02 | 中国联合网络通信集团有限公司 | Block chain-based online shaking method, system, equipment and storage medium |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140100014A1 (en) * | 2012-10-05 | 2014-04-10 | Scientific Games International, Inc. | Methods for Securing Data Generation via Multi-Part Generation Seeds |
WO2018104728A1 (en) * | 2016-12-05 | 2018-06-14 | Quanta Technology Ltd | Random number generation |
CN108845790A (en) * | 2018-06-20 | 2018-11-20 | 胡晓东 | A kind of application block chain generates the method and relevant apparatus of credible random number |
GB2563221A (en) * | 2017-06-05 | 2018-12-12 | Sigmacorp Oue | Random number generator |
-
2018
- 2018-11-07 GB GB1818124.8A patent/GB2580874A/en not_active Withdrawn
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140100014A1 (en) * | 2012-10-05 | 2014-04-10 | Scientific Games International, Inc. | Methods for Securing Data Generation via Multi-Part Generation Seeds |
WO2018104728A1 (en) * | 2016-12-05 | 2018-06-14 | Quanta Technology Ltd | Random number generation |
GB2563221A (en) * | 2017-06-05 | 2018-12-12 | Sigmacorp Oue | Random number generator |
CN108845790A (en) * | 2018-06-20 | 2018-11-20 | 胡晓东 | A kind of application block chain generates the method and relevant apparatus of credible random number |
Also Published As
Publication number | Publication date |
---|---|
GB201818124D0 (en) | 2018-12-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA3010116C (en) | Determining a common secret for the secure exchange of information and hierarchical, deterministic cryptographic keys | |
CN106603243B (en) | Private key processing method and device for digital signature | |
CN110011781B (en) | Homomorphic encryption method and medium for transaction amount encryption and supporting zero knowledge proof | |
JP5293745B2 (en) | Data reference system, database presentation distributed system, and data reference method | |
NL2013944B1 (en) | Public-key encryption system. | |
CN106341232B (en) | A kind of anonymous entity discrimination method based on password | |
RU2003111977A (en) | METHODS OF AUTHENTICATION OF POTENTIAL MEMBERS INVITED TO JOIN THE GROUP | |
US7000110B1 (en) | One-way function generation method, one-way function value generation device, proving device, authentication method, and authentication device | |
GB2398713A (en) | Anonymous access to online services for users registered with a group membership authority | |
CN110838915B (en) | Cloud storage data sharing method for forward security key aggregation | |
GB2580874A (en) | Method for generating verifiable random selections | |
US20220006615A1 (en) | Computer-implemented system and method for distributing shares of digitally signed data | |
GB2401014A (en) | Identifier based encryption method using an encrypted condition and a trusted party | |
Sharma et al. | Public key infrastructure and trust of web based knowledge discovery | |
KR20040099943A (en) | System and Method for Authenticating Content User | |
CN114257366A (en) | Information homomorphic processing method, device, equipment and computer readable storage medium | |
CN110619521A (en) | Anonymous tune investigation system based on block chain | |
CN114448640A (en) | Double-blind information distribution method and device and computer readable storage medium | |
CN111756722B (en) | Multi-authorization attribute-based encryption method and system without key escrow | |
CN107852328B (en) | Enhanced obfuscation or randomization for secure product identification and verification | |
Singh et al. | A Secure Communication Scheme for Cloud Environment | |
Chaudhari et al. | Secure and Verifiable Multi-Party Computation Using Indistinguishability Obfuscation | |
Brisson | Deterministic random number generation for one time pads: Creating a Whitenoise super key | |
US11902420B2 (en) | Partial cryptographic key transport using one-time pad encryption | |
US9281943B1 (en) | Defending against factoring by collision |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WAP | Application withdrawn, taken to be withdrawn or refused ** after publication under section 16(1) |