System and method of sending and receiving secure data with a shared key
Abstract
A server computer (100) sends and receives secure data provided by authorized users (102, 104). The data is secured by encrypting (608) and decrypting (610) the data with a key that is shared between the users and the server computer. As the server computer receives a user's encrypted data, the server computer decrypts the data using the user's shared key (304) stored in a database on the server. The server computer can then process the data according to the user's instructions, this could include securely storing the data for retrieval by another user (614), processing the data, and/or securely sending the data to a second user by encrypting the data with the user's shared key (708).

Term
No projected expiry on record.
- Priority and filed
- Published
- Today
14 claims: 3 independent, 11 dependent
- 1I Claim:1. A system for receiving and transmitting secure data on a server computer using a shared key, comprising: an encrypt/ deciypt engine for enciypting and decrypting data using the shared key;a database of user shared keys for encrypting and decrypting data for a specific user.
- 6A method for receiving secure data on a server computer using a shared key, comprising the steps of:receiving data on the server computer from a user, wherein the data is enciypted with a user's key shared between the user and the server computer;deciypting the data with the user's key into decrypted data;and processing the decrypted data.
- 11A computer-readable medium comprising program instructions for receiving secure data on a server computer using a shared key, comprising the steps of:receiving data on the server computer from a user, wherein the data is encrypted with a user's key shared between the user and the server computer;decrypting the data with the user's key into decrypted data;and processing the decrypted data.
Independent claims3
30 paragraphs in 5 sections, as filed
SYSTEM AND METHOD OF SENDING AND RECEIVING SECURE DATA WITH A SHARED KEY
0002Lynn D. Spraggs
BACKGROUND OF THE INVENTION
00041. Field of the invention
0005The present invention relates generally to computer security and more specifically to allow the secure transfer and receipt of data between computers.
00062. Description of the Prior Art
0007In order to securely transfer data between computers on the Internet, various different types of encryption/decryption methods are used. One way of securely transferring data over the Internet includes the use of a public key/private key system.
0008A public key is provided by some designated authority as a key that, combined with a private key derived from the public key, can be used to effectively encrypt and decrypt messages and digital signatures. In public key cryptography, a public and private key are created simultaneously using the same algorithm (a popular one is known as RSA) by a certificate authority. The private key is given only to the requesting party and the public key is made publicly available (as part of a digital certificate) in a directory that all parties can access. The private key is never shared with anyone or sent across the Internet. The private key is used to decrypt text that has been encrypted with the public key counterpart by someone else who has the public key.
0009Public key cryptography generally requires a large mathematical decomposition in order to work effectively. Generally, the length of a private key is in the order of 64 bytes. Decomposing these relatively small private keys requires considerable computational power. Public key cryptography is generally used as a one-way encryption and if a private key is changed, then everyone else that has the public key counterpart must receive a new public key.
0010Thus, it would be desirable to provide a system and method of securing data that is easy to use, does not require a public /private key, allows for a larger private key for more security, uses less computation power than public key cryptography, and can be used in two directions.
SUMMARY OF THE INVENTION
0012A system and method is provided for sending and receiving secure data. The data is secured by encrypting and decrypting the data with a key that is shared between authorized users and the server computer. As the server computer receives a user's encrypted data, the server computer decrypts the data using the user's shared key stored in a database on the server. The server computer can then process the data according to the user's instructions, this could include securely storing the data for retrieval by another user, processing the data, and/or securely sending the data to a second user by enciypting the data with the second user's shared key.
BRIEF DESCRIPTION OF THE DRAWINGS
0014The present invention may be better understood, and its numerous objects, features, and advantages made apparent to those skilled in the art by referencing the accompanying illustrations. For simplicity and ease of understanding, common numbering of elements is employed where an element is the same in different illustrations.
0015FIG. 1 is a schematic diagram illustrating a sending client transmitting secure data through a server to a receiving client over the Internet, in accordance with the present invention;
0016FIG. 2 is a block diagram of the server computer shown in FIG. 1 , in accordance with the present invention;
0017FIG. 3 is a block diagram of one embodiment of the non-volatile memory module located within the server computer of FIG. 2; and
0018FIG. 4 is a block diagram of the client computers shown in FIG. 1 , in accordance with the present invention; FIG. 5 is a block diagram of one embodiment of the non-volatile memory module located within the client computers of FIG. 4;
0019FIG. 6 is a flowchart of a method illustrating how a sending client, having a shared private key, passes encrypted data to a server computer, according to the invention;
0020FIG. 7 is a flowchart of a method illustrating how a receiving client, having a shared private key, requests secure data from a server computer, in accordance with the invention; and
0021FIG. 8 is a flowchart of a method illustrating how a client, having a shared private key, passes secure data through a server computer.
DETAILED DESCRIPTION OF THE INVENTION
0023The following is a detailed description of illustrative embodiments of the present invention. As these embodiments of the present invention are described with reference to the aforementioned illustrations, various modifications or adaptations of the methods and or specific structures described may become apparent to those skilled in the art. All such modifications, adaptations, or variations that rely upon the teachings of the present invention, and through which these teachings have advanced the art, are considered to be within the spirit and scope of the present invention. Hence, these descriptions and drawings should not be considered in a limiting sense, as it is understood that the present invention is in no way limited to only the embodiments illustrated.
0024Referring now to FIG. 1, a schematic diagram illustrates a server 100 used to receive encrypted data from a sending client computer 102 and transmit encrypted data to a receiving client computer 104 through the Internet 106 using shared private keys. The sending client 102 and receiving client 104 share their own private key with the server 100, but do not share their private key with anyone else. FIG. 2 is a block diagram of the server computer 100 shown in
0025FIG. 1. Server 100 includes a CPU 202, a RAM 204, a non-volatile memory 206, an input device 208, a display 210, and an Internet interface 212 for providing access to the Internet.
0026FIG. 3 is a block diagram of one embodiment of the non-volatile memory module 206 located within the server computer 100 of FIG. 2. The non-volatile memory 206 includes a private server key 302, a database of user private keys 304, an encrypt/ decrypt engine 306, a web server engine 308 containing web page forms 310, and a secure data database 312 for storing encrypted data. The private server key 302 is known only to the server and is not shared with anyone. The database of user private keys 304 includes the private keys of registered users. Each private key of a registered user is shared only with the server and not with other users.
0027The encrypt/ deciypt engine 306 is programmed to encrypt and deciypt data using a password or a key. Excellent results can be obtained when using the blowfish algorithm for encryption and decryption. Other types of symmetric key encryption/ decryption algorithms can also be employed within the encrypt/ deciypt engine 306. The computation power required to encrypt and deciypt data using a single key is much less than the computational power required in a public/private key system, therefore longer keys can be used to provide an extremely high-level of security. FIG. 4 is a block diagram of a sending client computer 102 or a receiving client computer 104 shown in FIG. 1. Client 102, 104 includes a CPU 402, a RAM 404, a non-volatile memory 406, an input device 408, a display 410, and an Internet interface 412 for providing access to the Internet.
0028FIG. 5 is a block diagram of one embodiment of the non-volatile memory module 404 located within the clients 102, 104 of FIG. 4. The non-volatile memory 406 includes an encrypt/ deciypt engine 502 for enciypting and decrypting data. The encrypt/ deciypt engine 502 can also be stored in RAM 404. Excellent results can be obtained when the encrypt/ deciypt engine is served up as a Java™ applet to the clients 102, 104. The Java™ applet can be served up with a web page from an email sent to the clients 102, 104, and then stored on their hard drive. FIG. 6 is a flowchart of a method illustrating how a sending client, with a shared private key, passes encrypted data to a server computer through the Internet in accordance with the invention. The process begins at step 600. The sending client establishes a session over the Internet with a suitable server by requesting a web page from the server computer at step 602. At step 604 the server sends a web page form from the web page forms database 310 to the sending client. Next at step 606 the sending client enters data into the web page along with the user's private key. At step 608 the data is encrypted with the encrypt/decrypt engine at the sending client's computer using the user's private key and then sent to the server.
0029At step 610 the server receives the sending client's data and decrypts the data with the user's private key that is stored in the user private keys database 304. Then at step 612 the server re-encrypts the data using the server key 302. At step 614 the server stores the re- encrypted data in the secure data database 312 and at step 616 the process ends.
0030FIG. 7 is a flowchart of a method illustrating how a receiving client, having a shared private key, accesses encrypted data from the server computer through the Internet in accordance with the invention. The process begins at step 700. The receiving client establishes a session over the Internet with a suitable server by requesting the enciypted data from the server computer at step 702. At step 704 the server retrieves the encrypted data from the secure data database 312. At step 706 the server decrypts the data using the server key 302. Then at step 708 the server encrypts the data using the receiving client's private key that is stored in the user private keys database 304, and sends the encrypted data to the receiving client. At step 710, the receiving client enters his private key, and at step
0031712 the encrypted data is decrypted with the receiving client's private key using the encrypt/ deciypt engine 502. At step 714 the receiving client can access or view the data, and at step 716 the process ends.
0032FIG. 8 is a flowchart of a method illustrating how a client, having a shared private key, passes secure data through a server computer over the Internet. This method is very similar to the process described in
0033FIGS. 6 and 7. The process begins at step 800. A client having a private key shared with the server establishes a session over the Internet with the server by requesting a web page at step 802. At step 804 the server sends a web page form from the web page forms database 310 to the client. Next at step 806 the client enters data into the web page along with his private key shared with the server. At step 808 the data is enciypted with the encrypt/ decrypt engine at the client's computer using the user's private key and then sent to the server.
0034At step 810 the server receives the sending client's data and decrypts the data with the user's private key that is stored in the user private keys database 304. Then at step 812 the server processes the data. This processing step can include many different types of applications including, but not limited to, storing data, calculating data, entering a stock transaction, verifying a credit card transaction, etc. After the processing step is completed, at step 814 the server encrypts the processed data using the client's private key that is stored in the user private keys database 304 and sends the encrypted data to the client. It is not necessary for the client to be the same client that began the process at step 802. The server can be used as an intermediary for passing and processing secure data between clients. At step 816, the client receives the secure data and enters his private key. At step 818 the enciypted processed data is decrypted with the client's private key using the encrypt/ deciypt engine 502. At step 820 the client can access or view the data, and at step 822 the process ends.
0035Various modifications can be made to the above described methods in order to provide a secure system and method of sending and receiving secure data with a shared key. This can be done in low-level and high- level security methods. For example, if a first user wanted to send a highly secure memo to a second person over the Internet using a screen- level encryption, the first user could write the memo at his computer, encrypt the memo and send it as an email through a server to the second user. The second user could then decrypt the email with his password and view the memo on his computer screen. The application used to deciypt and display the memo on the computer screen can be programmed so that the memo cannot ever be in a decrypted state in any file on the computer, including temporary files, but only programmed to display the decrypted memo on a computer screen. The application could be resident on the user's computer, or it can be deployed as a Java™ applet.
Contents5
6 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6
Every citation, both ways
| Document | Relation | Office | Category | Cited during |
|---|---|---|---|---|
| US2013283060A1 | Cited by | United States of America | – | Pre-grant |
| US4193131A | Cites | United States of America | Y | International search |
| US5148479A | Cites | United States of America | Y | International search |
| US5235642A | Cites | United States of America | – | Chapter II examination |
| US5371794A | Cites | United States of America | – | Chapter II examination |
| US5495533A | Cites | United States of America | – | Chapter II examination |
| US5544246A | Cites | United States of America | Y | International search |
| US5649118A | Cites | United States of America | Y | International search |
| US5724424A | Cites | United States of America | Y | International search |
| US5812671A | Cites | United States of America | – | Chapter II examination |
29 members in 8 offices
Members29
| Document | Office | Kind | |
|---|---|---|---|
| CA2312967A1 | Canada | A1 | |
| CA2312980A1 | Canada | A1 | |
| CA2312981A1 | Canada | A1 | |
| CA2313081A1 | Canada | A1 | |
| WO0022496A2 | World Intellectual Property Organization (WIPO) | A2 | |
| WO0022510A1 | World Intellectual Property Organization (WIPO) | A1 | |
| WO0022773A1This record | World Intellectual Property Organization (WIPO) | A1 | |
| WO0022774A1 | World Intellectual Property Organization (WIPO) | A1 | |
| AU1207200A | Australia | A | |
| AU1207600A | Australia | A | |
| AU1315100A | Australia | A | |
| AU1706700A | Australia | A | |
| WO0022496A3 | World Intellectual Property Organization (WIPO) | A3 | |
| EP1038217A1 | European Patent Office (EPO) | A1 | |
| EP1038369A2 | European Patent Office (EPO) | A2 | |
| EP1040616A1 | European Patent Office (EPO) | A1 | |
| EP1040616A4 | European Patent Office (EPO) | A4 | |
| IL136745A0 | Israel | A0 | |
| IL136746A0 | Israel | A0 | |
| IL136747A0 | Israel | A0 | |
| IL136748A0 | Israel | A0 | |
| EP1125393A1 | European Patent Office (EPO) | A1 | |
| EP1125393A4 | European Patent Office (EPO) | A4 | |
| US6941454B1 | United States of America | B1 | |
| CA2312967C | Canada | C | |
| EP1125393B1 | European Patent Office (EPO) | B1 | |
| AT456103T | Austria | T | |
| ATE456103T1 | Austria | T1 | |
| DE69941958D1 | Germany | D1 |
13 legal events, as 4 offices reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | Office | |
|---|---|---|---|
| Wipo information: published in national officeWWP | WWP | WO | |
| Procedure relating to pct application: ceased to have effect for deCeased8642 | 8642 | DE | |
| Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)DFPE | DFPE | WO | |
| Ep: the epo has been informed by wipo that ep was designated in this application121 | 121 | WO | |
| Wipo information: entry into national phaseWWE | WWE | WO | |
| Entry into the national phaseENP | ENP | CA | |
| Entry into the national phaseENP | ENP | CA | |
| Wipo information: entry into national phaseWWE | WWE | WO | |
| Wipo information: entry into national phaseWWE | WWE | WO | |
| Designated statesAK | AK | WO | |
| Designated countries for regional patentsAL | AL | WO | |
| Entry into the national phaseENP | ENP | AU | |
| Wipo information: entry into national phaseWWE | WWE | WO |
Numbers
- Publication
- 00/22773
- Application
- 9924142
Titles2
- English
- SYSTEM AND METHOD OF SENDING AND RECEIVING SECURE DATA WITH A SHARED KEY
- French
- SYSTEME ET PROCEDE D'ENVOI ET DE RECEPTION DE DONNEES PROTEGEES A L'AIDE D'UNE CLE PARTAGEE
Classification
- CPC, 6
- G06F21/6209
- G06F2211/007
- G06F2211/008
- G06F2211/009
- G06F2221/2107
- H04L63/0435
- IPC, 1
- G06F21 62
Designated states102
- Regional, 53
- Ghana
- Gambia
- Kenya
- Lesotho
- Malawi
- Sudan
- Sierra Leone
- Eswatini
- United Republic of Tanzania
- Uganda
- Zimbabwe
- Armenia
- Azerbaijan
- Belarus
- Kyrgyzstan
- Kazakhstan
- Republic of Moldova
- Russian Federation
- Tajikistan
- Turkmenistan
- Austria
- Belgium
- Switzerland
- Cyprus
and 29 moreShow fewer
- Germany
- Denmark
- Spain
- Finland
- France
- United Kingdom
- Greece
- Ireland
- Italy
- Luxembourg
- Monaco
- Netherlands (Kingdom of the)
- Portugal
- Sweden
- Burkina Faso
- Benin
- Central African Republic
- Congo
- Côte d’Ivoire
- Cameroon
- Gabon
- Guinea
- Guinea-Bissau
- Mali
- Mauritania
- Niger
- Senegal
- Chad
- Togo
- National, 49
- United Arab Emirates
- Albania
- Australia
- Bosnia and Herzegovina
- Barbados
- Bulgaria
- Brazil
- Canada
- China
- Costa Rica
- Cuba
- Czechia
- Dominica
- Estonia
- Grenada
- Georgia
- Croatia
- Hungary
- Indonesia
- Israel
- India
- Iceland
- Japan
- Democratic People’s Republic of Korea
and 25 moreShow fewer
- Republic of Korea
- Saint Lucia
- Sri Lanka
- Liberia
- Lithuania
- Latvia
- Madagascar
- North Macedonia
- Mongolia
- Mexico
- Norway
- New Zealand
- Poland
- Romania
- Singapore
- Slovenia
- Slovakia
- Türkiye
- Trinidad and Tobago
- Ukraine
- United States of America
- Uzbekistan
- Viet Nam
- Yugoslavia, later Serbia and Montenegro (until 2006)
- South Africa