US 12,120,083 B2
Differential privacy for message text content mining
Eric D. Friedman, Berkeley, CA (US); Ritwik K. Kumar, San Jose, CA (US); and Lucas O. Winstrom, Mountain View, CA (US)
Assigned to Apple Inc., Cupertino, CA (US)
Filed by Apple Inc., Cupertino, CA (US)
Filed on Jun. 20, 2023, as Appl. No. 18/211,973.
Application 18/211,973 is a continuation of application No. 17/702,668, filed on Mar. 23, 2022, granted, now 11,722,450.
Application 17/702,668 is a continuation of application No. 17/018,987, filed on Sep. 11, 2020, granted, now 11,290,411, issued on Mar. 29, 2022.
Application 17/018,987 is a continuation of application No. 15/710,736, filed on Sep. 20, 2017, granted, now 10,778,633, issued on Sep. 15, 2020.
Claims priority of provisional application 62/399,217, filed on Sep. 23, 2016.
Prior Publication US 2023/0344792 A1, Oct. 26, 2023
This patent is subject to a terminal disclaimer.
Int. Cl. H04L 51/23 (2022.01); G06F 16/35 (2019.01); G06F 21/62 (2013.01); G06F 40/289 (2020.01); G06Q 10/107 (2023.01); H04L 51/212 (2022.01)
CPC H04L 51/23 (2022.05) [G06F 16/35 (2019.01); G06F 21/6254 (2013.01); G06F 40/289 (2020.01); H04L 51/212 (2022.05); G06Q 10/107 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A computer-implemented method performed by a client device, the method comprising:
transforming a message into a set of chunks;
receiving a homomorphic encryption key and an encrypted frequency vector from a server, wherein the encrypted frequency vector is encrypted using the homomorphic encryption key;
applying homomorphic encryption using the received homomorphic encryption key to each individual chunk in the set of chunks to generate a set of encrypted message chunks;
combining the set of encrypted message chunks with the encrypted frequency vector via a homomorphic computation to compute a homomorphically encrypted score;
transmitting the homomorphically encrypted score to an aggregation server to enable determination of an action for processing the message;
receiving message information from the aggregation server, the message information related to the action for processing the message based on the determined homomorphically encrypted score; and
determining the action for processing the message based at least in part on the message information received from the aggregation server.