Multi-party encryption systems and methods
AssigneeIgt
InventorBryan Wolf
Life of this patent
Estimating the term…
Abstract
A cryptographic communication system and method having a first plurality of stations, each of the first plurality of stations having at least one encryption key Kj, were j is a number greater than 2, a data packet D to be viewed by each of the first plurality of stations, means for encrypting the data packet by each of the first plurality of stations to form an encrypted data packet Ej for transmission to a central processor, and means for combining each of the encrypted data packets, wherein the means for encrypting is applied in parallel to allow each of the first plurality of stations to view the contents of the data packet D prior to encrypting the data packet D.
Claims20
A cryptographic communication system, comprising:
- i encryption keys K1, . . . , Ki stored on one or more encryption key storage media, wherein i is an integer greater than or equal to 2;
- one or more stations, each station in the one or more stations associated with at least one of the encryption keys K1, . . . , Ki;
- one or more interfaces configured to receive an initial data packet D0, the initial data packet D0 available for review at each station in the one or more stations;
- an encryption logic system configured to:
- encrypt the initial data packet D0 to form i encrypted data packets E1, . . . , Ei, each encrypted data packet Em of encrypted data packets E1, . . . , Ei encrypted according to the encryption key Km of encryption keys K1, . . . , Ki by the station associated with the encryption key Km, where m ranges from 1 to i;
- combine each of the encrypted data packets Em into a final encrypted data packet Ef, wherein
- Ef=(E1*E2* . . . *Ei) mod M=D0P mod M
- wherein M is the product of multiplying prime factors F1, . . . , Fq, where q is an integer greater than one, and
- wherein the encryption keys K1, . . . , Ki are used to form a public key P;
- and
- allow each station in the one or more stations to access the contents of the data packet D0 prior to encryption of the data packet D0.
A method for establishing on at least one computing device cryptographic communication having a plurality of key holders, comprising:
- generating a public key P;
- calculating, using the at least one computing device, a secret key S such that:
- P*S mod (F1−1)*(F2−1)* . . . *(Fq−1),
- wherein F1, . . . , Fq are prime numbers and q is an integer greater than one;
- forming, using the at least one computing device, a plurality of i encryption keys K1 through Ki and a plurality of j decryption keys L1 through Lj, where i and j are integers greater than or equal to 1, and where i+j is greater than 2, such that:
- [(K1+K2+ . . . +Ki)*(L1+L2+ . . . +Lj)] mod [(F1−1)*(F2−1)* . . . *(Fq−1)]=1
- wherein P=K1+K2+ . . . +Ki,
- S=L1+L2+ . . . +Lj;
- and
- applying each of the plurality of encryption keys to an initial data packet D0, wherein unencrypted content of the initial data packet D0 is accessible by a station associated with each encryption key prior to the applying step, or applying each of the plurality of decryption keys to the initial data packet D0, wherein the unencrypted content of the initial data packet D0 is accessible by a station associated with each decryption key after the applying step.
A method for establishing cryptographic communication on a computing device, comprising:
- hashing a data packet into a hashed data packet H;
- encrypting the hashed data packet H with a key I into an encrypted packet E1, wherein:
- EI=HI mod M,
- wherein M is the product of two or more prime numbers;
- encrypting the hashed data packet H with a key R into an encrypted packet ER, wherein:
- ER=HR mod M;
- and
- combining the encrypted data packets to generate a final encrypted data packet Ef according to:
- Ef=EI*ER mod M
- wherein the contents of the data packet are accessible before the hashing and encrypting steps.
A cryptographic communication system, comprising:
- i encryption keys K1, . . . , Ki stored on one or more encryption media, wherein i is an integer greater than or equal to 1;
- j decryption keys L1, . . . , Lj stored on one or more decryption media, wherein j is an integer greater than or equal to 1, wherein i+j is greater than 2;
- one or more stations, each station in the one or more stations associated with at least one of the encryption keys K1, . . . Ki;
- one or more interfaces configured to receive an initial data packet D0, the initial data packet D0 accessible at each station in the one or more stations;
- a logic system configured to:
- encrypt the initial data packet D0 to form i encrypted data packets E1, . . . Ei, each encrypted data packet Em of encrypted data packets E1, . . . , Ei encrypted according to the encryption key Km of encryption keys K1, . . . , Ki by the station associated with the encryption key Km, where m ranges from 1 to i;
- combine each of the encrypted data packets Em into a final encrypted data packet Ef, wherein
- Ef=(E1*E2* . . . *Ei) mod M=D0P mod M
- wherein M is the product of multiplying prime factors F1, . . . , Fq, where q is an integer greater than one, and
- wherein the encryption keys K1, . . . , Ki are used to form a public key P;
- and
- allow each station in the one or more stations to access the contents of the data packet D0 prior to encryption of the data packet D0.
Dependencies are inferred from the claim text.