IP Library Granted Patent US 12,388,799
Granted Patent B1
US 12,388,799 · App. 17/939,836 · Granted Aug 12, 2025

Systems and methods for providing a split inference approach to protect data and model

Inventors: Greg Storm (Kansas City, MO); Gharib Gharibi (Overland Park, KS); Riddhiman Das (Parkville, MO)
Assignee: Selfiie Corporation
H04L63/0428G06F17/16G06F18/2113G06F18/24G06N3/04G06N3/082G06Q20/401G06Q30/0623H04L9/008H04L9/0625G06Q2220/00H04L2209/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 12,388,799
App. No.
17/939,836
Granted
Aug 12, 2025
Kind
B1
Abstract

A system and method for dividing a model between a client and server for inference. The method include dividing, at a first computing device, a model into a first portion of the model and a second portion of the model, transmitting the second portion to a second computing device, wherein the second computing device provides private data the second portion, receiving a activation values at the first computing device from the second computing device, applying the activation values to the first portion and transmitting a model output from the first computing device to the second computing device. The model can also be divided into three or more parts.

Claims (46)

1. A method comprising:

dividing, at a first computing device, a trained model into a first portion of the trained model and a second portion of the trained model;

transmitting the second portion of the trained model to a second computing device, wherein the second computing device provides private data to the second portion of the trained model to generate activation values and wherein the private data is kept secret from the first computing device;

receiving the activation values at the first computing device from the second computing device;

applying the activation values to the first portion of the trained model to yield a trained model output, wherein applying the activation values to the first portion of the trained model is part of a prediction process of predicting the trained model output based on the private data that preservers privacy between the first computing device and the second computing device;

and transmitting the trained model output from the first computing device to the second computing device, wherein computations occurring with the first portion of the trained model on the first computing device and computations occurring with the second portion of the trained model on the second computing device both use secure multi-party computation which implements a Secure Multi function, and a SecureCompare function operating on a Ring R and wherein the Secure Multi function and SecureCompare function enables the first computing device and the second computing device to securely perform multiplication and comparison on their respective portion of the trained model utilizing the Ring R to yield the trained model output.

2. The method of claim 1 , wherein providing the private data to the second portion and applying the activation values to the first portion occurs in a consecutive manner.

3. The method of claim 1 , wherein the activation values are encrypted.

4. The method of claim 1 , where second computing device does not share data with first computing device.

5. The method of claim 1 , wherein second portion is relatively smaller than the first portion of the trained model.

6. A system comprising:

at least one processor;

and a non-transitory computer-readable storage device storing instructions which, when executed by the at least one processor, cause the at least one processor to perform operations comprising:

dividing a trained model into a first portion of the trained model and a second portion of the trained model;

transmitting the second portion of the trained model to a computing device, wherein the computing device provides private data to the second portion of the trained model to generate activation values and wherein the private data is kept secret from the system;

receiving the activation values from the computing device;

applying the activation values to the first portion of the trained model to yield a trained model output, wherein applying the activation values to the first portion is part of a prediction process of predicting the trained model output based on the private data that preservers privacy between the computing device and the system;

and transmitting the trained model output to the computing device, wherein computations occurring with the first portion of the trained model on the system and computations occurring with the second portion of the trained model on the computing device: both use secure multi-party computation which implements a Secure Multi function, and a SecureCompare function operating on a Ring R and wherein the Secure Multi function and SecureCompare function enables the computing device and the system to securely perform multiplication and comparison on their respective portion of the trained model utilizing the Ring R to yield the trained model output.

7. The system of claim 6 , wherein providing the private data to the second portion and applying the activation values to the first portion occurs in a consecutive manner.

8. The system of claim 6 , wherein the activation values are encrypted.

9. The system of claim 6 , wherein the computing device does not share data.

10. The system of claim 6 , second portion is relatively smaller than the first portion of the trained model.

11. A method comprising:

dividing, at a first computing device, a trained model into a first portion of the trained model, a second portion of the trained model and a third portion of the trained model;

transmitting the first portion of the trained model and the second portion of the trained model to a second computing device, wherein the second computing device provides private data, the private data being kept secret from the first computing device, to the first portion of the trained model to generate first smashed data;

receiving the first smashed data at the first computing device from the second computing device;

applying the first smashed data to the third portion of the trained model to yield second smashed data, wherein applying the first smashed data to the third portion is part of a prediction process of predicting a trained model output based on the private data that preservers privacy between the first computing device and the second computing device;

and transmitting the second smashed data from the first computing device to the second computing device, wherein the second computing device applies the second smashed data to the second portion of the trained model to generate the trained model output, wherein computations occurring with the first portion of the trained model and the second portion of the trained model on the second computing device and computations occurring with the third portion of the trained model on the first computing device both use secure multi-party computation which implements a Secure Multi function, and a SecureCompare function operating on a Ring Rand wherein the Secure Multi function and SecureCompare function enables the first computing device and the second computing device to securely perform multiplication and comparison on their respective portion of the trained model utilizing the Ring R to yield the trained model output.

12. The method of claim 11 , wherein providing the private data to the first portion of the trained model and applying the first smashed data to the third portion of the trained model and then applying the second smashed data to the second portion of the trained model occurs in a consecutive manner.

13. The method of claim 11 , wherein the first smashed data and the second smashed data are encrypted.

14. The method of claim 11 , wherein the second computing device does not share data with first computing device.

15. A system comprising:

at least one processor; and

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

dividing a trained model into a first portion of the trained model, a second portion of the trained model and a third portion of the trained model;

transmitting the first portion of the trained model and the second portion of the trained model to a computing device, wherein the computing device provides private data, not available to the system, to the first portion of the trained model to generate first smashed data;

receiving the first smashed data from the computing device;

applying the first smashed data to the third portion of the trained model to yield second smashed data, wherein applying the first smashed data to the first portion of the trained model is part of a prediction process of predicting a trained model output based on the private data that preservers privacy between the computing device and the system;

and transmitting the second smashed data to the computing device, wherein the computing device applies the second smashed data to the second portion of the trained model to generate the trained model output, wherein computations occurring with the first portion of the trained model and the second portion of the trained model on the computing device and computations occurring with the third portion of the trained model on the system both use secure multi-party computation which implements a Secure Multi function, and a SecureCompare function operating on a Ring R and wherein the Secure Multi function and SecureCompare function enables the computing device and the system to securely perform multiplication and comparison on their respective portion of the trained model utilizing the Ring R to yield the trained model output.

16. The system of claim 15 , wherein the computing device does not share data with system.

17. A method comprising:

dividing, at a first computing device, a trained model into a first portion of the trained model and a second portion of the trained model;

transmitting the second portion of the trained model to a second computing device, wherein the second computing device provides private data to the second portion of the trained model to generate activation values and wherein the private data is kept secret from the first computing device;

receiving the activation values at the first computing device from the second computing device;

applying the activation values to the first portion of the trained model to yield a trained model output, wherein applying the activation values to the first portion is part of a prediction process of predicting the trained model output based on the private data that preservers privacy between the first computing device and the second computing device;

and transmitting the trained model output from the first computing device to the second computing device, wherein the first computing device and the second computing device both uses secure multi-party computation which implements a Secure Multi function and a SecureCompare function operating on a Ring R and wherein the Secure Multi function and SecureCompare function enables the first computing device and the second computing device to securely perform multiplication and comparison on their respective portion of the trained model utilizing the Ring R to yield the trained model output.

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 Mar 7, 2024
From: STORM, GREG; GHARIBI, GHARIB; DAS, RIDDHIMAN
To: TRIPLEBLIND, INC.
Reel/Frame 066683/0175 →
Continuity (11)
Continuation 17180475 · Feb 19, 2021
Continuation In Part 16828085 · Mar 24, 2020
Continuation In Part 16828216 · Mar 24, 2020
Continuation In Part 17176530 · Feb 16, 2021
Continuation 16828354 · Mar 24, 2020
Continuation In Part 16828420 · Mar 24, 2020
Continuation 17743887 · May 13, 2022
Continuation 17742808 · May 12, 2022
Provisional Application 63241255 · Sep 7, 2021
Provisional Application 63020930 · May 6, 2020
Provisional Application 62948105 · Dec 13, 2019
References Cited (81)
US 5036457A · Glaser et al. · 1991 [cited by applicant]
US 6668325B1 · Collberg · 2003 [cited by applicant]
US 9009089B1 · El Defrawy et al. · 2015 [cited by applicant]
US 9110955B1 · Bernhardsson · 2015 [cited by applicant]
US 9464043B2 · Roberge et al. · 2016 [cited by applicant]
US 10198399B1 · Fritchman · 2019 [cited by examiner]
US 10225365B1 · Hotchkies · 2019 [cited by applicant]
US 10311372B1 · Hotchkies · 2019 [cited by applicant]
US 10360220B1 · Gupta · 2019 [cited by applicant]
US 10652565B1 · Zhang · 2020 [cited by examiner]
US 11093864B1 · Reese · 2021 [cited by applicant]
US 11409304B1 · Cai · 2022 [cited by examiner]
US 20030009482A1 · Benerjee · 2003 [cited by applicant]
US 20070192864A1 · Bryant · 2007 [cited by applicant]
US 20080208560A1 · Johnson et al. · 2008 [cited by applicant]
US 20090063485A1 · Schneider · 2009 [cited by applicant]
US 20100114964A1 · Kerschbaum · 2010 [cited by applicant]
US 20130124491A1 · Pepper · 2013 [cited by applicant]
US 20150089243A1 · Veugen · 2015 [cited by applicant]
US 20150156204A1 · Resch · 2015 [cited by applicant]
US 20150242136A1 · Lin · 2015 [cited by applicant]
US 20150288662A1 · Bilogrevic · 2015 [cited by applicant]
US 20160156595A1 · Wu · 2016 [cited by applicant]
US 20160205095A1 · Morel · 2016 [cited by applicant]
US 20170041300A1 · Kim et al. · 2017 [cited by applicant]
US 20170236123A1 · Ali · 2017 [cited by applicant]
US 20170372201A1 · Gupta · 2017 [cited by examiner]
US 20180095719A1 · Winestock · 2018 [cited by applicant]
US 20180205707A1 · Bellala · 2018 [cited by applicant]
US 20180212770A1 · Costa · 2018 [cited by applicant]
US 20180336463A1 · Bloom · 2018 [cited by examiner]
US 20190050204A1 · Hutter · 2019 [cited by applicant]
US 20190073580A1 · Dzhulgakov · 2019 [cited by applicant]
US 20190073581A1 · Chen · 2019 [cited by applicant]
US 20190073586A1 · Chen · 2019 [cited by applicant]
US 20190073590A1 · Wu · 2019 [cited by applicant]
US 20190114511A1 · Gao et al. · 2019 [cited by applicant]
US 20190208417A1 · Kang · 2019 [cited by applicant]
US 20190268149A1 · Kariv · 2019 [cited by applicant]
US 20190279088A1 · Zhang · 2019 [cited by examiner]
US 20190312727A1 · Del Pino · 2019 [cited by applicant]
US 20190318421A1 · Lyonnet · 2019 [cited by applicant]
US 20190332944A1 · Bai · 2019 [cited by examiner]
US 20190372760A1 · Zheng · 2019 [cited by applicant]
US 20200104670A1 · Seo · 2020 [cited by applicant]
US 20200167127A1 · Lokappa · 2020 [cited by applicant]
US 20200167834A1 · Matsuoka · 2020 [cited by applicant]
US 20200220851A1 · Storm · 2020 [cited by applicant]
US 20200228313A1 · Storm · 2020 [cited by applicant]
US 20200242483A1 · Rao et al. · 2020 [cited by applicant]
US 20200242492A1 · Goel · 2020 [cited by applicant]
US 20200327250A1 · Wang et al. · 2020 [cited by applicant]
US 20200358599A1 · Baracaldo Angel · 2020 [cited by applicant]
US 20200364608A1 · Anwar · 2020 [cited by applicant]
US 20200372360A1 · Vu · 2020 [cited by examiner]
US 20200387797A1 · Ryan et al. · 2020 [cited by applicant]
US 20210073036A1 · Kim · 2021 [cited by applicant]
US 20210073678A1 · Chu et al. · 2021 [cited by applicant]
US 20210081807A1 · Tueno · 2021 [cited by applicant]
US 20210089878A1 · Greenwald · 2021 [cited by applicant]
US 20210110891A1 · Galvez · 2021 [cited by applicant]
US 20210111875A1 · Le Saint · 2021 [cited by applicant]
US 20210117804A1 · Koehler · 2021 [cited by applicant]
US 20210073677A1 · Peterson et al. · 2021 [cited by applicant]
US 20210192279A1 · Laaksonen et al. · 2021 [cited by applicant]
US 20210194858A1 · Storm · 2021 [cited by applicant]
US 20210209247A1 · Mohassel · 2021 [cited by applicant]
US 20210209514A1 · Kim et al. · 2021 [cited by applicant]
US 20210256403A1 · Tang et al. · 2021 [cited by applicant]
US 20210264271A1 · Gebre · 2021 [cited by applicant]
US 20210406406A1 · Hutter · 2021 [cited by applicant]
US 20220351039A1 · Satheesh Kumar · 2022 [cited by applicant]
Bonawitz et al., “Practical secure aggregation for privacy-preserving machine learning”, In proceedings of 2017 ACM SIGSAC Conference on Computer and Communications Security, pp. 1175-1191, [retrieved on Dec. 13, 2022] … [cited by applicant]
Nilsson et al., “Publicly Auditable Privacy Revocation in Practice”, (Jul. 2021) [retrieved on Dec. 13, 2022] from the Internet, URL:https://lup.lub.lu.se/luur/download?func=downloadFile&recordOld=9061208&fileOld=906121… [cited by applicant]
Xu et al., “Verifynet: Secure and verifiable federated learning”, IEEE Transactions on Information Forensics and Security, Jul. 17, 2019, vol. 15, pp. 911-926. [retrieved on Dec. 13, 2022] from the Internet URL:https://… [cited by applicant]
Zhang et al., “Privacy-Preserving Deep Learning Based on Multiparty Secure Computation: A Survey”, IEEE Internet of Things Journal, vol. 6, No. 13, (2021), 10412-10429, Feb. 11, 2021, Retrieved on Nov. 13, 2022 from htt… [cited by applicant]
Feng et al., “Multi-Participant Multi-Class Vertical Federated Learning”, arXiv preprint arXiv:2001.11154, Jan. 30, 2020, [online], [retrieved on Dec. 9, 2022]. Retrieved from the Internet URL:https://arxiv.org/pdf/2001… [cited by applicant]
Liu et al., “Asymmetrical Vertical Federated Learning”, arXiv preprint arXiv:2004.07427, Jun. 11, 2020. [online], [retrieved one Dec. 9, 2022]. Retrieved from the Internet URL:https://arxiv.org/pdf/2004.07427.pdf, entir… [cited by applicant]
Saeed et al., Federated Self-Supervised Learning of Multi-Sensor Representations for Embedded Intelligence, IEEE Internet of Things Journal, Jul. 25, 2020, pp. 1030-1040, [online], [retrieved on Dec. 19, 2022]. Retrieve… [cited by applicant]
Jia et al., “Personalized recommendation algorithm for mobile based on federated matrix factorization”, In Journal of Physics: Conference Series Mar. 1, 2021 (vol. 1802, No. 3, p. 032021). IOP Publishing. [retrieved on … [cited by applicant]
Chandiramani, et al., “Performance Analysis and Distributed and Federated Learning Models on Private Data”, Procedia Computer Science, 165(2019), pp. 349-355. (Year: 2019). [cited by applicant]