IP Library Granted Patent US 8,412,941
Granted Patent B2
US 8,412,941 · App. 13/179,808 · Granted Apr 2, 2013

Secure data exchange technique

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 8,412,941
App. No.
13/179,808
Granted
Apr 2, 2013
Kind
B2
Abstract

Techniques utilizing common encryption approaches for data from multiple parties enable those parties to discover information that is held in common by the parties without disclosing to any party information that is not held in common by the parties. Encrypted information for each party can be compared to determine which encrypted values match, and those encrypted values can be returned to any of the parties such that a party can determine which corresponding data the parties have in common without having access to any other data of any other parties.

Claims (42)

1. A computer-implemented method of processing information, the method comprising:

accessing a first set of encrypted strings provided by a first party, the first set of encrypted strings generated by encrypting each plaintext string of a first set of plaintext strings individually using an encryption scheme;

determining the encryption scheme;

accessing a second set of plaintext strings provided by a second party;

encrypting each plaintext string of the second set of plaintext strings individually using the encryption scheme to create a second set of encrypted strings; and

comparing the first set of encrypted strings with the second set of encrypted strings to determine a third set of encrypted strings including any encrypted strings that are included in both the first set of encrypted strings and the second set of encrypted strings; making available to the first party one of (i) the third set of encrypted strings, or (ii) a fourth set of encrypted strings including any encrypted strings that are included in the first set of encrypted strings but are not included in the third set of encrypted strings.

2. The method of claim 1 further comprising communicating to the first party one of (i) the third set of encrypted strings, or (ii) a fourth set of encrypted strings including any encrypted strings that are included in the first set of encrypted strings but are not included in the third set of encrypted strings.

3. The method of claim 1 further comprising:

determining a third set of plaintext strings corresponding to the third set of encrypted strings; and

communicating the third set of plaintext strings to at least one of the first party and the second party.

4. The method of claim 1 further comprising:

determining a fourth set of encrypted strings including any encrypted strings that are included in the second set of encrypted strings but are not included in the third set of encrypted strings;

determining a fourth set of plaintext strings corresponding to the fourth set of encrypted strings; and

communicating to the second party the fourth set of plaintext strings.

5. The method of claim 1 wherein determining the encryption scheme comprises determining an encryption function.

6. The method of claim 5 wherein determining the encryption scheme further comprises determining an encryption key.

7. The method of claim 6 wherein determining the encryption scheme further comprises determining pre-encryption character encoding information.

8. The method of claim 7 wherein determining the encryption scheme further comprises identifying an encryption test record generated by encrypting a mutually disclosed plaintext string using the encryption scheme.

9. The method of claim 8 wherein determining the encryption scheme is performed by receiving the encryption function, the encryption key, the pre-encryption character encoding information, and the encryption test record from the first party.

10. The method of claim 1 wherein each of the first set of plaintext strings and the second set of plaintext strings comprises one or more plaintext email addresses.

11. A computer system comprising:

means for receiving a first set of encrypted strings from a first party, the first set of encrypted strings generated by encrypting each plaintext string of a first set of plaintext strings individually using an encryption scheme;

means for determining the encryption scheme;

means for receiving a second set of plaintext strings from a second party;

means for encrypting each plaintext string of the second set of plaintext strings individually using the encryption scheme to create a second set of encrypted strings; and

means for comparing the first set of encrypted strings with the second set of encrypted strings to determine a third set of encrypted strings including any encrypted strings that are included in both the first set of encrypted strings and the second set of encrypted strings; means for making available to the first party one of (i) the third set of encrypted strings, or (ii) a fourth set of encrypted strings including any encrypted strings that are included in the first set of encrypted strings but are not included in the third set of encrypted strings.

12. The computer system of claim 11 further comprising means for communicating to the first party one of (i) the third set of encrypted strings, or (ii) a fourth set of encrypted strings including any encrypted strings that are included in the first set of encrypted strings but are not included in the third set of encrypted strings.

13. The computer system of claim 11 wherein means for determining the encryption scheme comprises means for determining an encryption function.

14. The computer system of claim 13 wherein means for determining the encryption scheme further comprises means for determining an encryption key.

15. The computer system of claim 14 wherein means for determining the encryption scheme further comprises means for determining pre-encryption character encoding information.

16. The computer system of claim 15 wherein means for determining the encryption scheme further comprises means for identifying an encryption test record generated by encrypting a mutually disclosed plaintext string using the encryption scheme.

17. A computer program product stored on a non-transitory computer-readable medium for processing information, the computer program product comprising:

program code for receiving a first set of encrypted strings from a first party, the first set of encrypted strings generated by encrypting each plaintext string of a first set of plaintext strings individually using an encryption scheme;

program code for determining the encryption scheme;

program code for receiving a second set of plaintext strings from a second party;

program code for encrypting each plaintext string of the second set of plaintext strings individually using the encryption scheme to create a second set of encrypted strings; and

program code for comparing the first set of encrypted strings with the second set of encrypted strings to determine a third set of encrypted strings including any encrypted strings that are included in both the first set of encrypted strings and the second set of encrypted strings; program code for making available to the first party one of (i) the third set of encrypted strings, or (ii) a fourth set of encrypted strings including any encrypted strings that are included in the first set of encrypted strings but are not included in the third set of encrypted strings.

18. The computer program product of claim 17 further comprising program code for communicating to the first party one of (i) the third set of encrypted strings, or (ii) a fourth set of encrypted strings including any encrypted strings that are included in the first set of encrypted strings but are not included in the third set of encrypted strings.

19. The computer program product of claim 18 wherein the program code for determining the encryption scheme further comprises program code for determining an encryption function and an encryption key.

20. The computer program product of claim 17 further comprising:

program code for determining a third set of plaintext strings corresponding to the third set of encrypted strings; and

program code for communicating the third set of plaintext strings to at least one of the first party and the second party.

Assignments (8)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS RECORDED AT REEL 055212, FRAME 0964 Recorded Aug 30, 2024
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: ZETA GLOBAL CORP.
Reel/Frame 068822/0167 →
NOTICE OF GRANT OF SECURITY INTEREST IN PATENTS Recorded Aug 30, 2024
From: ZETA GLOBAL CORP.; ZSTREAM ACQUISITION LLC
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 068822/0154 →
RELEASE OF SECURITY INTEREST Recorded Feb 11, 2021
From: FIRST EAGLE PRIVATE CREDIT, LLC, AS SUCCESSOR TO NEWSTAR FINANCIAL, INC
To: ZBT ACQUISITION CORP.; ZETA GLOBAL CORP.; 935 KOP ASSOCIATES, LLC
Reel/Frame 055282/0276 →
NOTICE OF GRANT OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2021
From: ZETA GLOBAL CORP.
To: BANK OF AMERICA, N.A.
Reel/Frame 055212/0964 →
SECURITY INTEREST Recorded Dec 3, 2020
From: ZETA GLOBAL CORP.
To: FIRST EAGLE PRIVATE CREDIT, LLC
Reel/Frame 054585/0770 →
CHANGE OF NAME Recorded May 17, 2017
From: ZETA INTERACTIVE CORP.
To: ZETA GLOBAL CORP.
Reel/Frame 042411/0771 →
STOCK PURCHASE AGREEMENT Recorded May 17, 2017
From: ACXIOM CORPORATION
To: ZETA INTERACTIVE CORP.
Reel/Frame 042487/0108 →
SECURITY INTEREST Recorded Sep 1, 2016
From: ZETA IMPACT INC., A DELAWARE CORPORATION
To: NEWSTAR FINANCIAL, INC., AS ADMINISTRATIVE AGENT
Reel/Frame 039617/0256 →