IP Library Granted Patent US 8,923,519
Granted Patent B2
US 8,923,519 · App. 12/455,193 · Granted Dec 30, 2014

Method of efficient secure function evaluation using resettable tamper-resistant hardware tokens

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,923,519
App. No.
12/455,193
Granted
Dec 30, 2014
Kind
B2
Abstract

An embodiment of the present invention provides a computer implemented method for the transfer of private information of one user to another user—a primitive known as Oblivious Transfer. An output from a strong pseudorandom function generation (SPRFG) is calculated by a first user's computing module based on first and second parameters: the first parameter specifying one of two secret keys; the second parameter being a value selected within the domain of the SPRFG by the first user. The first user is prevented from reading or learning the stored two secret keys. The output is transmitted to a computer of a second user which generates first and second encrypted values that are each based on an inverse SPRFG calculation using the first and second secret keys, respectively, and corresponding private values of the second user. The encrypted values are sent to a first computer of the first user that calculates one of the private values using a mathematical computation based on the second parameter and the one of the first and second encrypted values that corresponds to the one of the first and second key used.

Claims (31)

1. A computer implemented method for the transfer of private information comprising the steps of:

receiving at a first computing module of a first computer of a first user a request to compute a function based on strong pseudorandom function generation (SPRFG) with first and second parameters being associated with the request, where the second parameter is a value selected within the domain of the SPRFG by the first user;

calculating an output by the first computing module of the SPRFG function based on the first and second parameters, where the first parameter specifies one of two secret keys stored in the computing module that is used in the calculation of the SPRFG function, the first computing module preventing the first user from reading or learning the stored two secret keys;

transmitting the output to a second computer of a second user;

receiving, from the second computer, first and second encrypted values that are each based on an inverse SPRFG calculation using the first and second secret keys, respectively, and respective first and second private values of the second user, the secret keys being known to the second user;

calculating, by a first computer coupled to the computing module, one of the first and second private values using a mathematical computation based on the second parameter and one of the first and second encrypted values.

2. The method of claim 1 wherein the first parameter is input by the user that specifies one of the two secret keys.

3. The method of claim 1 wherein the first and second encrypted values comprise an inverse SPRFG calculation of the output for one secret key and the other secret key, respectively, and exclusively OR'ing each of the inverse SPRFG calculations with corresponding first and second private values.

4. The method of claim 1 wherein the first computing module preventing comprises the first computing module responding only to requests by the first user to compute a function based on strong pseudorandom function generation (SPRFG) with first and second parameters, and providing only the output for access by the first user.

5. The method of claim 1 wherein the first computing module comprises a microcomputing module that is removably connected to the first computer.

6. The method of claim 5 wherein the microcomputing module is a plug-in card that a user inserting into and removes from the first computer.

7. A computer implemented method for the transfer of private information comprising the steps of:

receiving at a second computer an output calculated by a first computer, the output by the first computer being a function based on strong pseudorandom function generation (SPRFG) based on first and second parameters, where the first parameter specifies one of first and second secret keys stored at the first computer, and the second parameter is a value selected within the domain of the SPRFG by a first user of the first computer;

calculating first and second encrypted values by the second computer that are based on an inverse SPRFG calculation using the output and the first and second secret keys, respectively, which are known to the second user of the second computer, and are also based respectively on first and second private values of the second user;

transmitting the first and second encrypted values from the second computer to the first computer that is adapted to decrypt the private value from one of the first and second encrypted values.

8. The method of claim 7 wherein the first parameter is received as an input by the user of the first computer that specifies one of the two secret keys.

9. The method of claim 7 wherein the output is calculated by a first computing module of the first computer, the output being an SPRFG function based on first and second parameters, where the first parameter specifies one of first and second secret keys stored in the computing module that is used in the calculation of the SPRFG function, the first computing module preventing the first user from reading or learning the stored two secret keys, the second parameter being a value selected within the domain of the SPRFG by the first user.

10. The method of claim 7 wherein the first computing module is adapted to prevent the first user from reading or learning the first and second secret keys wherein the first computing module responds only to requests by the first user to compute a function based on SPRFG with first and second parameters, and provides from the first computing module only the output for access by the first user.

11. The method of claim 7 wherein the first computer includes a microcomputing module that is removably connected to the first computer.

12. The method of claim 11 wherein the microcomputing module is a plug-in card that a user inserting into and removes from the first computer.

13. An apparatus for transferring private information comprising:

a first computing module of a first computer that receives a first user a request to compute a function based on strong pseudorandom function generation (SPRFG) with first and second parameters being associated with the request, where the second parameter is a value selected within the domain of the SPRFG by the first user;

the first computing module calculates an output of the SPRFG function based on the first and second parameters, where the first parameter specifies one of two secret keys stored in the computing module that is used in the calculation of the SPRFG function, the first computing module preventing the first user from reading or learning the stored two secret keys;

a transmitter that transmits the output to a second computer of a second user;

the first computer receiving from the second computer first and second encrypted values that are each based on an inverse SPRFG calculation using the first and second secret keys, respectively, and respectively on first and second private values of the second user, the secret keys being known to the second user;

the first computer calculating an output value that is a private value of the second user using a mathematical computation based on the first and second parameter and one of the first and second encrypted values.

14. The apparatus of claim 13 wherein the first parameter is received as an input by the user that specifies one of the two secret keys.

15. The apparatus of claim 13 wherein the first and second encrypted values comprise an inverse SPRFG calculation of the output for one secret key and the other secret key, respectively, and exclusively OR'ing each of the inverse SPRFG calculations with respective first and second private values.

16. The apparatus of claim 13 wherein the first computing module responds only to requests by the first user to compute a function based on strong pseudorandom function generation (SPRFG) with first and second parameters, and provides only the output for access by the first user.

17. The apparatus of claim 13 wherein the first computing module comprises a microcomputing module that is removably connected to the first computer.

18. The apparatus of claim 17 wherein the microcomputing module is a plug-in card designed for a user to insert into and remove from the first computer.

Assignments (10)
RELEASE OF SECURITY INTEREST Recorded Jun 3, 2021
From: TERRIER SSC, LLC
To: WSOU INVESTMENTS, LLC
Reel/Frame 056526/0093 →
SECURITY INTEREST Recorded Jun 1, 2021
From: WSOU INVESTMENTS, LLC
To: OT WSOU TERRIER HOLDINGS, LLC
Reel/Frame 056990/0081 →
RELEASE OF SECURITY INTEREST Recorded May 21, 2019
From: OCO OPPORTUNITIES MASTER FUND, L.P. (F/K/A OMEGA CREDIT OPPORTUNITIES MASTER FUND LP
To: WSOU INVESTMENTS, LLC
Reel/Frame 049246/0405 →
SECURITY INTEREST Recorded May 20, 2019
From: WSOU INVESTMENTS, LLC
To: BP FUNDING TRUST, SERIES SPL-VI
Reel/Frame 049235/0068 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 25, 2017
From: ALCATEL LUCENT
To: WSOU INVESTMENTS, LLC
Reel/Frame 044000/0053 →
SECURITY INTEREST Recorded Sep 21, 2017
From: WSOU INVESTMENTS, LLC
To: OMEGA CREDIT OPPORTUNITIES MASTER FUND, LP
Reel/Frame 043966/0574 →
RELEASE OF SECURITY INTEREST Recorded Sep 30, 2014
From: CREDIT SUISSE AG
To: ALCATEL LUCENT
Reel/Frame 033868/0555 →
SECURITY AGREEMENT Recorded Jan 30, 2013
From: ALCATEL LUCENT
To: CREDIT SUISSE AG
Reel/Frame 029821/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 14, 2011
From: ALCATEL-LUCENT USA INC.
To: ALCATEL LUCENT
Reel/Frame 026437/0100 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 29, 2009
From: KOLESNIKOV, VLADIMIR
To: ALCATEL-LUCENT USA INC.
Reel/Frame 022802/0313 →