×

Method for the secure, distributed generation of an encryption key

  • US 7,970,135 B1
  • Filed: 07/06/2000
  • Issued: 06/28/2011
  • Est. Priority Date: 07/27/1999
  • Status: Active Grant
First Claim
Patent Images

1. A method for the secure, distributed generation of an encryption key for a cryptographic method effected by a computer, comprising:

  • generating a seed S by the computer, the seed S being a large random number, on a side of a user by consulting at least one variable u known only to the user and a public key V that is transmitted in advance from a trust center;

    providing generation information G which is suitable for generating the seed S by the computer and from which the seed S is able to be derived deterministically from the trust center by consulting information v known only to the trust center, the generation information G being produced within a computer on the user side and transmitted via a computer to the trust center for creating the seed in parallel, so that encrypted data transmitted by the user to the trust center is decrypted by the trust center;

    providing a key agreement mapping k;

    k(x,y)=z, and wherein;

    a) k(k(u,v),w)=k(k(u,w),v) for all u,v,w;

    b) from the knowledge of u and k(u,v), v cannot be inferred;

    c) from the knowledge of u, k(u,v) and k(u,w), k(k(u,w)v) cannot be inferred, w being a number;

    wherein a public parameter g known to the trust center and a secret key v available at the trust center are linked to the public key V=k(g,v) of the trust center;

    wherein the public key V and the at least one variable u selected on the user side are linked on the user side to the seed S=k(V,u);

    wherein a key pair made up of an encryption key C and a public user key U is derived from the seed S on the user side using a predefined deterministic method;

    wherein to enable seed S to be created, generation information G=k(g,u) is generated on the user side and transmitted to the trust center; and

    wherein seed S is generated in parallel at the trust center by S=k(G,v);

    providing a plurality of trust centers which use the key agreement mapping k and the public parameter g;

    the user selecting at least one trust center of the plurality of trust centers and with each of the at least one trust center the user recovers a respective value Sv of seed S, and the user generating an encryption key C, the respective value Sv of seed S calculated by the at least one trust center is linked on the user side to the entire seed S.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×