# US 12,010,236 B2 · Blockchain-based crowdsourcing

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,010,236 B2
- Document ID: US12010236B2
- Status: Granted
- Kind: B2
- Application number: 17/603,591
- Filed: 2020-04-23
- Published: 2022-06-23
- Granted: 2024-06-11
- Earliest claimed: 2019-04-24
- Assignees: Sony Group Corporation
- Applicants: Sony Group Corporation
- Inventors: Patrick Varilly; Thomas Carette; Conor Aylward; Rik Claesen
- Web page: https://patentgrep.com/patent/US12010236B2

## CPC

- G06F 21/64: Protecting data integrity, e.g. using checksums, certificates or signatures
- H04L 9/3218: {using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs}
- H04L 9/3239: {involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD}
- H04L 63/0435: {wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption (cryptographic mechanisms or cryptographic arrangements for symmetric key encryption H04L9/06)}
- H04L 63/0442: {wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption (cryptographic mechanisms or cryptographic arrangements for public-key encryption H04L9/30)}
- H04L 9/50: {using hash chains, e.g. blockchains or hash trees}
- H04L 2209/56: Financial cryptography, e.g. electronic payment or e-cash
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A system comprising a distributed ledger (BC) configured to store a smart contract (SB) related to a problem statement (Z), the smart contract (SB) enabling a zero-knowledge proof (ZK) concerning the problem statement (Z).

## Claims

### Claim 1

A system, comprising:
a distributed ledger stored on physical peer-to-peer network nodes having a smart contract related to a problem statement, the smart contract enabling a zero-knowledge proof concerning the problem statement,
wherein the zero-knowledge proof is based on a validation function which takes a putative solution and returns a score that represents the quality of the putative solution,
wherein the smart contract defines a function which is configured to be called on smart contract creation by a Requestor, wherein the function is configured to record a timestamp after which no further solutions will be accepted by smart contract and before which Requestor cannot withdraw a bounty.

### Claim 2 (depends on 1)

The system of claim 1, wherein the distributed ledger is configured to receive a putative solution to a problem statement, and to verify the putative solution to the problem statement using the zero-knowledge proof.

### Claim 3 (depends on 1)

The system of claim 1, wherein the zero-knowledge proof is generated based on a computation object which is based on the validation function.

### Claim 4 (depends on 1)

The system of claim 1, wherein the zero-knowledge proof is implemented using a zkSNARK scheme.

### Claim 5 (depends on 1)

The system of claim 1, wherein the distributed ledger is implemented as a blockchain.

### Claim 6 (depends on 1)

The system of claim 1, wherein the zero-knowledge proof defines a function configured to verify a proof of solution.

### Claim 7 (depends on 1)

The system of claim 1, wherein the zero-knowledge proof defines a function configured to build a proof of solution according to the zero-knowledge proof.

### Claim 8 (depends on 1)

The system of claim 1,
wherein the smart contract defines a function which is configured to be called only by a Requestor, and only after the deadline set by the initialize function has passed and no valid solution has been submitted.

### Claim 9 (depends on 1)

The system of claim 1, wherein the smart contract defines a function which is configured to accept a proof of solution.

### Claim 10 (depends on 9)

The system of claim 9, wherein the function is configured to timestamp the received proof of solution in order to record the time and date of receipt of the proof of solution.

### Claim 11 (depends on 1)

The system of claim 1 wherein the smart contract defines a function which is configured to accept an encrypted solution as payload.

### Claim 12 (depends on 11)

The system of claim 11, wherein the function is configured to run a verifier function against a proof of solution, and wherein the function is configured to, if the verification result is positive, automatically transfer a bounty to the address of the function-caller, and to provide an encrypted solution to Requestor.

### Claim 13 (depends on 1)

The system of claim 1 wherein the distributed ledger is configured to manage a bounty related to the problem statement or wherein the distributed ledger is configured to manage a bounty in the form of cryptocurrency.

### Claim 14 (depends on 1)

The system of claim 1, wherein the smart contract defines
a function configured to provide a proof-generating software to Solvers; or
a function configured to provide an auxiliary application to Solvers which is configured to help a Solver to find an optimal solution to the problem statement; or
a function configured to provide auxiliary data available from the smart contract, such as the problem statement Z, a Requestor's public key, a proving key, and/or functionality to build a proof.

### Claim 15 (depends on 1)

The system of claim 1, further comprising a distributed file system for storing a solution to the problem statement.

### Claim 16 (depends on 1)

The system of claim 1, wherein the smart contract defines
a function which accepts an amount and date; and/or
a function which accepts a bounty amount, a duration of validity, a public key, and a set of public inputs for a zero-knowledge proof; and/or
a function which accepts status information and which returns a list of bounties filtered on their status information; and/or
a function which deactivates the function for submitting a bounty.

### Claim 17

A computer-implemented method, comprising:
storing, by a distributed ledger. a smart contract related to a problem statement;
requesting, by a Requestor, solutions to the problem statements; and
verifying, by the distributed ledger a putative solution to the problem statement provided by a Solver using a zero-knowledge proof,
wherein the zero-knowledge proof is based on a validation function which takes a putative solution and returns a score that represents the quality of the putative solution; and
defining, by the smart contract, a function which is configured to be called on smart contract creation by a Requestor, wherein the function is configured to record a timestamp after which no further solutions will be accepted by the smart contract and before which Requestor cannot withdraw a bounty.

### Claim 18

An electronic device comprising circuitry configured to implement a zero knowledge scheme in a smart contract and to store the smart contract on a distributed ledger,
wherein the smart contract enables a zero-knowledge proof concerning the problem statement, wherein the zero-knowledge proof is based on a validation function which takes a putative solution and returns a score that represents the quality of the putative solution,
wherein the smart contract defines a function which is configured to be called on smart contract creation by a Requestor, wherein the function is configured to record a timestamp after which no further solutions will be accepted by the smart contract and before which Requestor cannot withdraw a bounty.

### Claim 19

An electronic device comprising circuitry configured to create a proof of solution from a solution to a problem statement using a zeroknowledge proof implemented in a smart contract stored on a distributed ledger,
wherein the zero-knowledge proof is based on a validation function which takes a putative solution and returns a score that represents the quality of the putative solution,
wherein the smart contract defines a function which is configured to be called on smart contract creation by a Requestor, wherein the function is configured to record a timestamp after which no further solutions will be accepted by the smart contract and before which Requestor cannot withdraw a bounty.
