IP Library Granted Patent US 11,695,752
Granted Patent B2
US 11,695,752 · App. 16/900,860 · Granted Jul 4, 2023

Work provenance in computing pools

Inventor: Kristy-Leigh Anne Minehan (Bellevue, WA)
Assignee: CORE SCIENTIFIC OPERATING COMPANY
H04L63/083G06F9/5011H04L9/30H04L9/3247
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,695,752
App. No.
16/900,860
Granted
Jul 4, 2023
Kind
B2
Abstract

A system and method for participating in and operating a distributed computing pool are disclosed. Computing pools combine computational resources from a plurality of computing devices over a network by splitting jobs into smaller jobs and distributing those smaller jobs to the computing devices so that they can be solved in parallel with little or no overlap in the work performed. The computing devices attempt to find solutions to the smaller jobs. Solutions found are signed and submitted back to the pool. The pool uses the signature to confirm the true origin of the solution and that the solution has not been tampered with.

Claims (71)

1. A method for participating in a computing pool that combines computational resources over a network, the method comprising:

authenticating a computing device by sending a username, a password, and a public key from the computing device to the pool via the network, wherein the public key corresponds to a private key associated with the computing device;

sending a connection request from the computing device to the pool;

receiving at the computing device a response to the connection request from the pool, wherein the response comprises a job;

executing the job on the computing device to calculate a solution;

signing the solution on the computing device with a signature based on the private key;

sending the signed solution from the computing device to the pool;

receiving a reward from the pool in response to submitting the signed solution if the signature of the signed solution is verified;

authenticating a second computing device by sending a second username and a second password from the second computing device to the pool via the network;

sending a second connection request from the second computing device to the pool;

receiving at the second computing device a second response to the second connection request from the pool, wherein the second response comprises a second job;

executing the second job on the second computing device to calculate a second solution;

sending the second solution in unsigned form from the second computing device to the pool; and

receiving a reduced reward from the pool in response if the unsigned second solution is valid and the pool is first to solve a blockchain block corresponding to the second solution.

2. The method of claim 1 , further comprising creating an SSL/TLS connection from the computing device to the pool.

3. The method of claim 1 , wherein the reward is received from the pool in response to submitting the signed solution if (i) the signature of the signed solution is verified, (ii) the signed solution is valid, and (iii) the pool is first to solve a blockchain block.

4. The method of claim 1 , further comprising receiving at a third computing device a share rejected notification from the pool in response to submitting an unsigned third solution to the pool.

5. A method for operating a computing pool, the method comprising:

receiving a connection request from a computing device to a pool;

responding to the connection request by sending a job to the computing device;

waiting for the computing device to execute the job and respond with a solution signed by a private key;

verifying the signature of the solution with a public key;

verifying the solution;

granting a first reward to the computing device if the signature is properly verified;

rejecting solutions that are not properly verified;

determining whether the solution is a block;

submitting the solution to a blockchain node;

receiving a username and a password from a second computing device via a network to authenticate the second computing device;

receiving a second connection request from the second computing device to the pool;

responding to the second connection request by sending a second job to the second computing device;

waiting for the second computing device to execute the second job and respond with a second solution;

receiving the second solution in unsigned form from the second computing device to the pool; and

granting a reduced reward from the pool to the second computing device if the unsigned second solution is verified and the pool is first to solve a blockchain block corresponding to the second solution.

6. The method of claim 5 , further comprising creating an SSL/TLS connection from the computing device to the pool.

7. The method of claim 5 , further comprising granting a reward to the computing device for signed solutions that are verified if the signature of the signed solution is verified and the pool is first to solve a current blockchain block.

8. The method of claim 7 , wherein the reward is proportional to the number of shares and share difficulty submitted by the computing device for the current blockchain block.

9. The method of claim 7 , wherein the reward is proportional to the number of shares and share difficulty submitted out of the last N verified shares received by the pool.

10. The method of claim 7 , further comprising:

receiving an unsigned third solution from a third computing device;

verifying the unsigned third solution; and

refraining from granting any reward to the third computing device for the unsigned third solution.

11. The method of claim 7 , further comprising:

receiving an unsigned third solution from a third computing device;

rejecting the unsigned third solution before performing any verification; and

refraining from granting any reward to the third computing device for the rejected unsigned third solution.

12. A method for operating a computing pool, the method comprising:

operating a computing pool management application on a server;

in response to receiving at the server a connection request from a computing device attempting to connect to the pool, responding by sending a job from the server to the computing device;

waiting for the computing device to execute the job and respond with a solution;

signing the solution on the computing device with a private key;

sending the signed solution from the computing device to the pool;

in response to receiving the solution to the job from the computing device, verifying the correctness of the solution;

verifying a signature of the solution with a public key;

allocating a share of any rewards the pool receives for the job to the computing device if the solution is correct and the signature is properly verified;

receiving a username and a password from a second computing device via a network to authenticate the second computing device;

receiving a second connection request from the second computing device to the pool;

responding to the second connection request by sending a second job from the server to the second computing device;

waiting for the second computing device to execute the second job and respond with a second solution;

receiving the second solution in unsigned form from the second computing device; and

granting a reduced share of the rewards the pool receives to the second computing device if the unsigned second solution is verified and the pool is first to solve a blockchain block corresponding to the second solution.

13. The method of claim 12 , further comprising:

not allocating any share of the rewards the pool receives in response to solutions without verified signatures.

14. The method of claim 12 , further comprising:

allocating a reduced share of the rewards the pool receives in response to valid solutions without verified signatures.

15. The method of claim 5 , wherein verifying the signature includes comparing the private key to the public key.

16. The method of claim 15 , wherein verifying the signature includes:

determining that the signature is valid when the private key matches or corresponds to the public key; and

determining that the signature is invalid when the private key does not match or correspond to the public key.

17. The method of claim 5 , wherein verifying the signature includes:

looking up the public key of the computing device on a data store or network; and

comparing the private key to the public key.

Assignments (19)
RELEASE OF SECURITY INTEREST Recorded May 6, 2026
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: CORE SCIENTIFIC, INC.
Reel/Frame 075520/0577 →
SECURITY INTEREST Recorded Mar 10, 2026
From: CORE SCIENTIFIC, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 075099/0814 →
RELEASE OF SECURITY INTEREST Recorded Sep 13, 2024
From: WILMINGTON TRUST, NATIONAL ASSOCIATION
To: CORE SCIENTIFIC, INC.
Reel/Frame 068968/0373 →
RELEASE OF SECURITY INTEREST Recorded Aug 28, 2024
From: B. RILEY COMMERCIAL CAPITAL, LLC
To: CORE SCIENTIFIC, INC.; CORE SCIENTIFIC OPERATING COMPANY
Reel/Frame 068803/0146 →
RELEASE OF SECURITY INTEREST Recorded Aug 20, 2024
From: WILMINGTON TRUST, NATIONAL ASSOCIATION
To: CORE SCIENTIFIC, INC.
Reel/Frame 068693/0052 →
RELEASE OF SECURITY INTEREST Recorded Aug 20, 2024
From: WILMINGTON TRUST, NATIONAL ASSOCIATION
To: CORE SCIENTIFIC, INC.
Reel/Frame 068719/0600 →
SECURITY INTEREST Recorded Jul 29, 2024
From: CORE SCIENTIFIC, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 068178/0677 →
SECURITY INTEREST Recorded Jul 29, 2024
From: CORE SCIENTIFIC, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 068178/0585 →
SECURITY INTEREST Recorded Jul 29, 2024
From: CORE SCIENTIFIC, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 068178/0700 →
MERGER Recorded Feb 6, 2024
From: CORE SCIENTIFIC OPERATING COMPANY
To: CORE SCIENTIFIC, INC.
Reel/Frame 066507/0675 →
RELEASE OF SECURITY INTEREST Recorded Jan 26, 2024
From: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: CORE SCIENTIFIC OPERATING COMPANY; CORE SCIENTIFIC ACQUIRED MINING LLC
Reel/Frame 066375/0324 →
RELEASE OF SECURITY INTEREST Recorded Jan 26, 2024
From: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: CORE SCIENTIFIC, INC.
Reel/Frame 066375/0365 →
CHANGE OF NAME Recorded May 18, 2023
From: CORE SCIENTIFIC, INC.
To: CORE SCIENTIFIC OPERATING COMPANY
Reel/Frame 063690/0697 →
SECURITY INTEREST Recorded Mar 1, 2023
From: CORE SCIENTIFIC, INC.; CORE SCIENTIFIC OPERATING COMPANY
To: B. RILEY COMMERCIAL CAPITAL, LLC
Reel/Frame 062899/0741 →
RELEASE OF SECURITY INTEREST Recorded Feb 3, 2023
From: WILMINGTON SAVINGS FUND SOCIETY, FSB
To: CORE SCIENTIFIC INC.; CORE SCIENTIFIC OPERATING COMPANY
Reel/Frame 063272/0450 →
SECURITY INTEREST Recorded Dec 23, 2022
From: CORE SCIENTIFIC OPERATING COMPANY; CORE SCIENTIFIC INC.
To: WILMINGTON SAVINGS FUND SOCIETY, FSB
Reel/Frame 062218/0713 →
SECURITY INTEREST Recorded Feb 10, 2022
From: CORE SCIENTIFIC OPERATING COMPANY; CORE SCIENTIFIC ACQUIRED MINING LLC
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 059004/0831 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 21, 2021
From: MINEHAN, KRISTY-LEIGH ANNE
To: CORE SCIENTIFIC, INC.
Reel/Frame 056308/0746 →
SECURITY INTEREST Recorded Apr 21, 2021
From: CORE SCIENTIFIC, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 055996/0839 →
Continuity (3)
Provisional Application 63025866 · May 15, 2020
Provisional Application 62863209 · Jun 18, 2019
Related Publication 20200403984A1 · Dec 24, 2020