IP Library Granted Patent US 8,719,587
Granted Patent B2
US 8,719,587 · App. 13/079,493 · Granted May 6, 2014

Computer implemented method for generating a pseudonym, computer readable storage medium and computer system

Inventors: Adrian Spalka (Koblenz, DE); Jan Lenhardt (Bonn, DE)
Assignee: CompuGroup Medical AG
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,719,587
App. No.
13/079,493
Granted
May 6, 2014
Kind
B2
Abstract

The invention relates to a computer implemented method for generating a pseudonym for a user comprising entering a user-selected secret, storing the user-selected secret in memory, computing a private key by applying an embedding and randomizing function onto the secret, storing the private key in the memory, computing a public key using the private key, the public key and the private key forming an asymmetric cryptographic key, erasing the secret and the private key from the memory, and outputting the public key for providing the pseudonym.

Claims (47)

1. A computer implemented method for generating a pseudonym for a user comprising:

receiving a user-selected secret;

generating a private key based on the user-selected secret;

storing the private key in a memory;

computing a public key using the private key, the public key and the private key forming an asymmetric cryptographic key pair;

erasing the private key from the memory after said public key is computed; and

outputting the public key for providing the pseudonym, wherein said pseudonym is assigned as an identity of said user and a binding between said pseudonym and said user's identity is not established by any third party,

wherein the computation of the public key from the private key is performed using an injective cryptographic function.

2. The method of claim 1 , the injective cryptographic function being a one-way function.

3. The method of claim 2 , the one-way function being an elliptic curve point multiplication using a set of domain parameters.

4. The method of claim 3 , further comprising entering of public information and using the public information and the private key as input values for the one-way function for computation of the private key.

5. The method of claim 1 , wherein generating the private key based on the user-selected secret further comprises: storing said user-selected secret into the memory and computing a private key by applying an embedding and randomizing function onto said user-selected secret, the secret being selected from the group consisting of: a user-selected password, a secret key, and biometric data;

further comprising using at least one public parameter for applying the embedding and randomization function, the public parameter being selected from the group consisting of: a username, a user email address, and a user identifier; and

wherein the embedding and randomizing function is applied on the public parameter and the secret to provide a combination, and wherein the user-selected secret is also erased from the memory.

6. The method of claim 5 , the embedding and randomizing function comprising encrypting at least the embedded secret using a symmetric cryptographic algorithm by means of a symmetric key for randomizing the embedded secret.

7. The method of claim 5 , the embedding and randomizing function comprising encrypting at least the user-selected secret using AES by means of a user-specific symmetric key for embedding and randomizing the user-selected secret.

8. The method of claim 5 , wherein the embedding and randomizing function comprises:

applying a first one-way function on the user-selected secret to provide a first value, providing a random number;

embedding the random number and the first value by combining them to provide a combination; and

applying a second one-way function on the combination to provide a second value, wherein the second value constitutes the private key.

9. The method of claim 8 , wherein the embedding and randomization function comprises a binary Cantor pairing function for embedding the secret.

10. The method of claim 8 , wherein the first one-way function is a first hash function, and the second one-way function is a second hash function.

11. The method of claim 8 , further comprising storing the random number in a database using the public parameter or an alternative public parameter assigned to the user as a database access key.

12. The method of claim 8 , wherein the computation of the public key is performed by ECC cryptography.

13. The method of claim 12 , further comprising:

providing a set of domain parameters comprising a first base point for the ECC cryptography;

computing a first public key for providing a first pseudonym by the ECC cryptography using the domain parameters and the first base point;

replacing the first base point by a second base point in the domain parameters; and

computing a second public key by ECC cryptography using the second base point to provide a second pseudonym.

14. The method of claim 1 , further comprising using the pseudonym as a database access key for storing a data object in a database.

15. The method of claim 1 , further comprising storing the pseudonym in a user profile that is assigned to the user as the username.

16. A non-transitory tangible computer readable storage medium having stored therein instructions, which when executed by a computer system cause the computer system to generate a pseudonym for a user using a private key that is assigned to the user by performing the steps of:

reading the private key from a memory, wherein the private key is generated based on a received user-selected secret;

computing a public key using the private key, the public key and the private key forming an asymmetric cryptographic key pair;

erasing the private key from the memory after the public key is computed; and

outputting the public key for providing the pseudonym, wherein said pseudonym is assigned as an identity of said user and a binding between said pseudonym and said user's identity is not established by any third party; and

wherein the computation of the public key from the private key is performed using an injective cryptographic funtion.

17. A computer system comprising:

a memory for storing a private key, wherein the private key is generated based on a received user-selected secret;

a processor, the processor operable to:

read the private key from the memory;

compute a public key using the private key, the public key and the private key forming an asymmetric cryptographic key pair;

erase the private key from the memory after the public key is computed; and

output the public key for providing the pseudonym, wherein said pseudonym is assigned as an identity of said user and a binding between said pseudonym and said user's identity is not established by any third party; and

wherein the computation of the public key from the private key is performed using an injective cryptographic function.

18. The computer system of claim 17 , further comprising a database and wherein said processor is further operable to perform a database access operation using the pseudonym for storing a pseudonymous data object in the database.

19. The computer system of claim 18 , further comprising an analytic system for analyzing the pseudomized data objects stored in the database, the analytic system comprising one of a data mining or a clustering component for performing the analysis.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 11, 2017
From: COMPUGROUP MEDICAL SE
To: COMPUGROUP MEDICAL SE; SPALKA, ADRIAN
Reel/Frame 043811/0300 →
CHANGE OF NAME Recorded Jul 1, 2016
From: COMPUGROUP MEDICAL AG
To: COMPUGROUP MEDICAL SE
Reel/Frame 039249/0854 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 28, 2013
From: SPALKA, ADRIAN, DR.; LEHNHARDT, JAN
To: COMPUGROUP MEDICAL AG
Reel/Frame 030102/0788 →
Priority Claims (1)
EP 09179974 · Dec 18, 2009 · regional
Continuity (2)
Continuation In Part 12690278 · Jan 20, 2010
Related Publication 20110268269A1 · Nov 3, 2011