IP Library Granted Patent US 11,509,470
Granted Patent B1
US 11,509,470 · App. 17/744,038 · Granted Nov 22, 2022

Systems and methods for providing a privacy-preserving training approach in blind learning with secure enclaves

Inventors: Gharib Gharibi (Overland Park, KS); Babak Poorebrahim Gilkalaye (Kansas City, MO); Andrew Rademacher (Kansas City, MO); Riddhiman Das (Parkville, MO); Steve Penrod (Kansas City, MO); David Wagner (Shawnee, KS)
Assignee: TripleBlind, Inc.
H04L9/0894G06K9/6257H04L9/3215H04L2209/46
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,509,470
App. No.
17/744,038
Granted
Nov 22, 2022
Kind
B1
Abstract

A system and method are disclosed for providing a privacy-preserving training approach for split learning methods, including blind learning. A method includes receiving, at a server device, encrypted smashed data from a client device, using a secure enclave on the server device, moving, on the server device, a server model, the encrypted smashed data and computer code for a blind learning operation into the secure enclave, performing, in the secure enclave, forward propagation using the decrypted smashed data to generate predicted values, comparing the predicted values to true labels using a loss function to yield a loss value, repeating the comparing step for all smashed data received at the server device from a plurality of clients to yield a plurality of loss values, averaging the plurality of loss values to yield an average loss value, updating model weights of the server model using the average loss value to yield gradients of the smashed data and transmitting the gradients of the smashed data to the client device.

Claims (56)

1. A method comprising:

receiving, at a server device, smashed data from a client device;

moving, on the server device, a server model, the smashed data and computer code for a split learning operation into a secure enclave on the server device;

performing, in the secure enclave, forward propagation using the smashed data to generate predicted values;

comparing the predicted values to true labels using a loss function to yield a loss value;

updating model weights of the server model using a loss value to yield gradients of the smashed data; and

sending the gradients of the smashed data to the client device.

2. The method of claim 1 , further comprising:

receiving encrypted smashed data at the server device; and

providing the encrypted smashed data to the secure enclave where it can be decrypted for further processing.

3. The method of claim 1 , further comprising:

encrypting, in the secure enclave, the gradients of the smashed data to yield encrypted smashed data; and

transmitting the encrypted smashed data to the client device.

4. The method of claim 1 , wherein the client device uses the received gradients and updates a local client-side model.

5. The method of claim 1 , further comprising:

after a certain number of rounds of training, applying, at the client device, a multi-party computation protocol to average all client-side models.

6. The method of claim 5 , further comprising:

attaching a final client-side model to the service side model to generate a global model.

7. The method of claim 1 , further comprising performing an attestation process to confirm the integrity of one or more of the server model, the smashed data and the computer code moved to the secure enclave.

8. A method comprising:

transmitting, to a server device, smashed data from a client device, wherein the server device:

moves a server model, the smashed data and computer code for a blind learning operation into a secure enclave on the server device;

performs, in the secure enclave, forward propagation using the smashed data to generate predicted values;

compares the predicted values to true labels using a loss function to yield a loss value;

updates model weights of the server model using a loss value to yield gradients of the smashed data;

receiving, at the client device, the gradients of the smashed data; and

updating a local client model using the gradients of the smashed data.

9. The method of claim 8 , wherein the method is performed in a client device secure enclave.

10. The method of claim 8 , further comprising:

calculating, using a multi-party computation protocol, an average of all local client models from the plurality of client devices for combination with the server-side model to generate a global model.

11. The method of claim 9 , wherein the smashed data comprises encrypted smashed data.

12. The method of claim 11 , wherein the encrypted smashed data is transmitted across a secure channel to the server device.

13. A system comprising:

a processor;

an operating system;

a secure enclave configured to operate independent of the operating system; and

a computer-readable storage device storing instructions which, when executed by the processor, cause the processor to perform operations comprising:

receiving smashed data from a client device;

moving a server model, the smashed data and computer code for a blind learning operation into a secure enclave configured on the system;

performing, in the secure enclave, forward propagation using the smashed data to generate predicted values;

comparing the predicted values to true labels using a loss function to yield a loss value;

updating model weights of the server model using a loss value to yield gradients of the smashed data; and

transmitting the gradients of the smashed data to the client device.

14. The system of claim 12 , wherein the computer-readable storage device stores additional instructions which, when executed by the processor, cause the processor to perform operations further comprising:

receiving encrypted smashed data at the server device; and

providing the encrypted smashed data to the secure enclave where it can be decrypted for further processing.

15. The system of claim 12 , wherein the computer-readable storage device stores additional instructions which, when executed by the processor, cause the processor to perform operations further comprising:

encrypting, in the secure enclave, the gradients of the smashed data to yield encrypted gradients of the smashed data; and

transmitting the encrypted gradients of the smashed data to the client device.

16. The method of claim 1 , wherein the client device uses the gradients of the smashed data and updates a local client-side model.

17. The system of claim 12 , wherein the computer-readable storage device stores additional instructions which, when executed by the processor, cause the processor to perform operations further comprising:

after a certain number of rounds of training, applying, at the client device, a multi-party computation protocol to average all client-side models.

18. The system of claim 17 , wherein the computer-readable storage device stores additional instructions which, when executed by the processor, cause the processor to perform operations further comprising:

attaching a final client-side model to the service side model to generate a global model.

19. The system of claim 12 , wherein operations occur on the client device are performed in a client-side secure enclave.

20. The system of claim 12 , further comprising an application processor that creates the secure enclave.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 10, 2024
From: TRIPLEBLIND HOLDINGS, INC.
To: SELFIIE CORPORATION
Reel/Frame 068907/0556 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE SHOULD BE CORRECTED FROM TRIPLEBLIND HOLDING COMPANY TO TRIPLEBLIND HOLDINGS, INC. PREVIOUSLY RECORDED AT REEL: 67568 FRAME: 689. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jul 24, 2024
From: TRIPLEBLIND, INC.
To: TRIPLEBLIND HOLDINGS, INC.
Reel/Frame 068722/0100 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 30, 2024
From: TRIPLEBLIND, INC.
To: TRIPLEBLIND HOLDING COMPANY
Reel/Frame 067568/0689 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 9, 2022
From: GHARIBI, GHARIB; POOREBRAHIM GILKALAYE, BABAK; RADEMACHER, ANDREW; DAS, RIDDHIMAN; PENROD, STEVE; WAGNER, DAVID
To: TRIPLEBLIND, INC.
Reel/Frame 060754/0492 →