US 11,706,198 B2
Secure message search
Serkan Mulayin, San Francisco, CA (US); David M'Raihi, San Carlos, CA (US); Tim Casey, Campbel, CA (US); Michael Harmon, Saratoga, CA (US); and Jon McLachlan, San Francisco, CA (US)
Assigned to SYMPHONY COMMUNICATION SERVICES HOLDINGS LLC, Palo Alto, CA (US)
Filed by Symphony Communication Services Holdings LLC, Palo Alto, CA (US)
Filed on May 8, 2020, as Appl. No. 16/870,371.
Application 16/870,371 is a continuation of application No. 16/217,043, filed on Dec. 11, 2018, granted, now 10,693,847.
Application 16/217,043 is a continuation of application No. 15/223,592, filed on Jul. 29, 2016, granted, now 10,237,246, issued on Mar. 19, 2019.
Claims priority of provisional application 62/199,803, filed on Jul. 31, 2015.
Prior Publication US 2020/0344218 A1, Oct. 29, 2020
Int. Cl. H04L 29/06 (2006.01); H04L 9/40 (2022.01); G06F 16/33 (2019.01); G06F 16/951 (2019.01); H04L 9/08 (2006.01); H04L 9/06 (2006.01)
CPC H04L 63/0428 (2013.01) [G06F 16/334 (2019.01); G06F 16/951 (2019.01); H04L 9/0631 (2013.01); H04L 9/0825 (2013.01); H04L 9/0869 (2013.01); H04L 9/0891 (2013.01); H04L 9/0894 (2013.01); H04L 63/083 (2013.01); H04L 63/0807 (2013.01); H04L 63/0823 (2013.01)] 23 Claims
OG exemplary drawing
 
1. A computer-implemented method performed by a client device, the method comprising:
receiving search terms from a user;
tokenizing the search terms into a first set of tokens;
adding one or more decoy tokens to the first set of tokens to obtain a second set of tokens;
transforming each token in the second set of tokens to generate at least one set of transformed tokens;
sending the at least one set of transformed tokens to a communication server for identification of matching messages from a plurality of messages stored by the communication server,
wherein the communication server comprises a search index comprising one or more transformed tokens corresponding to each message from the plurality of messages;
receiving from the communication server a set of messages matching the at least one set of transformed tokens,
wherein the set of messages comprises at least one false positive match resulting from the decoy tokens; and
filtering out the at least one false positive match from the set of messages,
wherein filtering out the at least one false positive match comprises comparing terms present in the set of messages with the search terms and identifying the at least one false positive match based on a degree of matches between terms present in the at least one false positive match and the search terms, wherein the degree of matches comprises a percentage of the search terms that are present in the at least one false positive match resulting from the decoy tokens.