SYSTEM AND METHOD OF SECURE ENCRYPTION FOR ELECTRONIC DATA TRANSFER
First Claim
1. A computer program for enabling a secure data transfer system, at least a portion of the program being stored on a computer-readable medium, the computer program comprising:
- a code segment for enabling a first computer to receive input from a first user identifying transfer data and a recipient identifier;
a code segment for enabling the first computer to create an encoding key, encode the transfer data using the key, and communicate the key and the recipient identifier to a second computer;
a code segment for enabling the second computer to associate the recipient identifier with a secure package identifier, and to communicate the secure package identifier to the first computer;
a code segment for enabling a third computer to identify the secure package identifier and the encoded transfer data;
a code segment for enabling the third computer to receive from a second user a user identifier and to communicate the user identifier and the secure package identifier to the second computer; and
a code segment for enabling the second computer to communicate the key to the third computer only if the secure package identifier received from the third computer matches the secure package identifier created by the second computer and if the user identifier matches the recipient identifier.
3 Assignments
0 Petitions
Accused Products
Abstract
A system for secure transfer of encrypted data involves a sender client (36), a recipient client (38), a main server (40), and a key server (42). The sender client (36) receives instructions from a first user identifying transfer data and a recipient identifier, creates an encoding key, encodes the transfer data using the key, and communicates the key and the recipient identifier to a main server (40). The main server (40) communicates the key and the recipient identifier to the key server (42), which associates the recipient identifier with a secure package identifier and communicates the secure package identifier to the main server (40), which communicates the secure package identifier to the sender client (36). The recipient client (38) receives and identifies the secure package identifier and the encoded transfer data, receives from a second user a user identifier, and communicates the user identifier and the secure package identifier to the main server (40), which communicates them to the key server (42). The key server (42) communicates the key to the main server (40) only if the secure package identifier received from the recipient client (38) matches the secure package identifier created by the main server (40) and if the user identifier matches the recipient identifier. The main server (40) communicates the key to the recipient client (38).
-
Citations
39 Claims
-
1. A computer program for enabling a secure data transfer system, at least a portion of the program being stored on a computer-readable medium, the computer program comprising:
-
a code segment for enabling a first computer to receive input from a first user identifying transfer data and a recipient identifier; a code segment for enabling the first computer to create an encoding key, encode the transfer data using the key, and communicate the key and the recipient identifier to a second computer; a code segment for enabling the second computer to associate the recipient identifier with a secure package identifier, and to communicate the secure package identifier to the first computer; a code segment for enabling a third computer to identify the secure package identifier and the encoded transfer data; a code segment for enabling the third computer to receive from a second user a user identifier and to communicate the user identifier and the secure package identifier to the second computer; and a code segment for enabling the second computer to communicate the key to the third computer only if the secure package identifier received from the third computer matches the secure package identifier created by the second computer and if the user identifier matches the recipient identifier. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A computer program for enabling a secure data transfer system, wherein at least a portion of the program is stored on a computer-readable medium, the computer program comprising:
-
a code segment for enabling a first computer to receive transfer data and a plurality of recipient identifiers from a first user; a code segment for enabling the first computer to create an encryption key, encrypt the transfer data, and communicate the key and the recipient identifiers to a second computer; a code segment for enabling the second computer to communicate the key and the plurality of recipient identifiers to a third computer; a code segment for enabling the third computer to associate each of the recipient identifiers with a secure package identifier, and to communicate the secure package identifier to the second computer; a code segment for enabling the second computer to communicate the secure package identifier to the first computer; a code segment for enabling the first computer to communicate the secure package identifier and the encrypted transfer data to a fourth computer; a code segment for enabling the fourth computer to communicate a user identifier and the secure package identifier to the second computer; a code segment for enabling the second computer to communicate the user identifier and the secure package identifier to the third computer; a code segment for enabling the third computer to communicate the key to the second computer only if the secure package identifier received from the second computer matches the secure package identifier created by the third computer and if the user identifier received from the third computer matches one of the plurality of recipient identifiers associated with the secure package identifier; and a code segment for enabling the second computer to communicate the key to the fourth computer. - View Dependent Claims (15, 16, 17)
-
-
18. A computer program for enabling a secure data transfer system, wherein at least a portion of the program is stored on a computer-readable medium, the computer program comprising:
-
a code segment for enabling a first computer to receive from a first user transfer data, sender identification information, sender authentication information, and recipient identification information, to create an encryption key, to encrypt the transfer data using the encryption key, and to communicate the sender identification information, sender authentication information, recipient identification information, and key to a second computer; a code segment for enabling the second computer to authenticate the first user by verifying that the sender identification information and sender authentication information match identification and authentication information stored in a database, to generate a recipient anonymous indicator corresponding to the recipient identification information and communicate the recipient anonymous indicator and the key to a third computer only if the first user is authenticated; a code segment for enabling the third computer to create a secure package identifier and to associate the recipient anonymous indicator and the key with the secure package identifier, and to communicate the secure package identifier to the second computer; a code segment for enabling the second computer to communicate the secure package identifier to the first computer; a code segment for enabling the first computer to communicate the secure package identifier and the encrypted transfer data to a fourth computer; a code segment for enabling the fourth computer to receive user identification and authentication information from a second user , to communicate the secure package identifier, the user identification and authentication information to a fifth computer; a code segment for enabling the fifth computer to create a user anonymous indicator corresponding to the user identification information, and to communicate the user anonymous identifier and the secure package identifier to the third computer; a code segment for enabling the third computer to match the secure package identifier received from the fifth computer with the secure package identifier created by the third computer, to compare the user anonymous identifier with the recipient anonymous identifier associated with the secure package identifier, and to communicate the key to the fifth computer only if the secure package identifier received from the fifth computer is the same as the secure package identifier created by the third computer and the user anonymous identifier is the same as the first recipient anonymous identifier associated with the secure package identifier; a code segment for enabling the fifth computer to communicate the key to the fourth computer; and a code segment for enabling the fourth computer to decrypt the encrypted transfer data using the key. - View Dependent Claims (19, 20, 21, 22, 23)
-
-
24. A method of secure data transfer, the method comprising:
-
using a first computer to receive from a first user transfer data and a recipient identifier; using the first computer to creating an encoding key, encode the transfer data using the key, and communicate the key and the recipient identifier to a second computer; using the second computer to associate the recipient identifier with a secure package identifier, and to communicate the secure package identifier to the first computer; transferring the secure package identifier and the encoded transfer data to a third computer; using the third computer to receive from a second user a user identifier and to communicate the user identifier and the secure package identifier to the second computer; and using the second computer to communicate the key to the third computer only if the secure package identifier received from the third computer matches the secure package identifier created by the second computer and if the user identifier matches the recipient identifier. - View Dependent Claims (25, 26, 27, 28, 29, 30)
-
-
31. A method of secure data transfer, the method comprising:
-
communicating sender identification and authentication information, an encryption key, and a list of recipient identifiers from a first client computer to a first server computer; authenticating the sender at the first server computer by comparing the sender authentication information to authentication information stored in a database; encoding each of the recipient identifiers using the first server computer; communicating the encoded recipient identifiers and the key to a second server computer; creating a secure package identifier at the key server and associating the secure package identifier with the key and the encoded recipient identifiers; communicating the secure package identifier from the second server computer to the first server computer, and from the first server computer to the first client computer; encrypting transfer data at the first client computer and transferring the encrypted transfer data and the secure package identifier from the first client computer to a second client computer; communicating the secure package identifier, a user identifier pertaining to a second user, and user authentication information pertaining to the second user, from the second client computer to a third server computer; authenticating the second user at the third server computer by comparing the user authentication information to authentication information stored in a database; encoding the user identifier at the third server computer; communicating the encoded user identifier and the key to the second server computer; matching the secure package identifier received from the third server computer with the secure package identifier created by the second server computer, and communicating the key from the second server computer to the third server computer only if the encoded user identifier matches one of the encoded recipient identifiers received from the second server computer; and communicating the key from the second third server computer to the second client computer.
-
-
32. A computer program for enabling a secure data transfer system, at least a portion of the program being stored on a computer-readable medium, the computer program comprising:
-
a code segment for enabling a first computer to receive an encoding key and a recipient identifier from a second computer, to associate the recipient identifier and the key with a secure package identifier, and to communicate the secure package identifier to the second computer; and a code segment for enabling the first computer to receive a user identifier and a secure package identifier from a third computer, and to communicate the key to the third computer only if the secure package identifier received from the third computer matches the secure package identifier created by the second computer and if the user identifier matches the recipient identifier associated with the secure package identifier. - View Dependent Claims (33, 34)
-
-
35. A computer program for enabling a secure data transfer system, at least a portion of the program being stored on a computer-readable medium, the computer program comprising:
-
a code segment for enabling a first computer to receive an encoding key, sender authentication information, and a recipient identifier from a second computer, and to communicate the recipient identifier and the key to a third computer only if the sender authentication information matches authentication information stored in a database; a code segment for enabling the third computer to create a first secure package identifier and associate the key and the recipient identifier with the first secure package identifier, and to communicate the first secure package identifier to the first computer; a code segment for enabling the first computer to communicate the first secure package identifier to the second computer; a code segment for enabling the first computer to receive a user identifier, user authentication information, and a second secure package identifier from a fourth computer, and to communicate the second secure package identifier and the user identifier to the third computer only if the user authentication information matches authentication information stored in the database; a code segment for enabling the third computer to communicate the key to the first computer only if the second secure package identifier matches the first secure package identifier and if the user identifier received from the first computer matches the recipient identifier associated with the secure package identifier; and a code segment for enabling the first computer to communicate the key to the fourth computer. - View Dependent Claims (36)
-
-
37. A computer program for enabling a secure data transfer system, at least a portion of the program being stored on a computer-readable medium, the computer program comprising:
-
a code segment for receiving transfer data and authentication information from a user; a code segment for assembling a list of transfer data recipients; a code segment for generating an encoding key and encoding the transfer data using the key; a code segment for communicating the authentication information, the key, and the list to a first external location; a code segment for receiving an identifier; and a code segment for communicating the encoded transfer data and the identifier to a second external location.
-
-
38. A computer program for enabling a secure data transfer system, at least a portion of the program being stored on a computer-readable medium, the computer program comprising:
-
a code segment for receiving authentication information from a user; a code segment for receiving encoded data and an identifier; a code segment for communicating the identification information, the authentication information, and the identifier to a first external location; a code segment for receiving an encoding key; and a code segment for decoding the encrypted data using the encoding key.
-
-
39. A computer program for enabling a secure data transfer system, at least a portion of the program being stored on a computer-readable medium, the computer program comprising:
-
a code segment for receiving first user authentication information, an encoding key, and a recipient identifier from a first external location; a code segment for communicating a first user identifier and the key to a second external location; a code segment for receiving a secure package identifier from the second external location; a code segment for communicating the secure package identifier to the first external location; a code segment for receiving a second secure package identifier and second user authentication information from a third external location; a code segment for communicating the second secure package identifier to the second external location; a code segment for receiving the key from the second external location; and a code segment for communicating the key to the third external location.
-
Specification