EP1243097A1 - Method and apparatus for a revolving encrypting and decrypting process - Google Patents
Method and apparatus for a revolving encrypting and decrypting processInfo
- Publication number
- EP1243097A1 EP1243097A1 EP00992802A EP00992802A EP1243097A1 EP 1243097 A1 EP1243097 A1 EP 1243097A1 EP 00992802 A EP00992802 A EP 00992802A EP 00992802 A EP00992802 A EP 00992802A EP 1243097 A1 EP1243097 A1 EP 1243097A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- server
- client
- data
- key
- encryption
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0464—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload using hop-by-hop encryption, i.e. wherein an intermediate entity decrypts the information and re-encrypts it before forwarding it
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/16—Implementing security features at a particular protocol layer
- H04L63/162—Implementing security features at a particular protocol layer at the data link layer
Definitions
- the present invention is in the field of Internet navigation and secure log-in and transaction methods and pertains more particularly to methods and apparatus for encrypting and decrypting data that is routinely sent over a data-packet network from one computer to another.
- WWW world- wide-web
- Anyone with a suitable Internet appliance such as a personal computer with a standard Internet connection may access (go on-line) and navigate to information pages (termed web pages) stored on Internet-connected servers for the purpose of garnering information and initiating transactions with hosts of such servers and pages.
- a method for encrypting and sending data from the server to the client and enabling decryption by the client comprising steps of (a) upon receiving a log-in and a data request from the client by the server, sending a cookie to the client, the cookie comprising a key value to be used for decrypting the data; (b) encrypting the data to be sent to the client using an encryption/decryption engine and the value of the key; and (c) sending the encrypted data to the client.
- the server sends a copy of the encryption/decryption engine to the client, and this copy may be discarded after use.
- a secure client/server system comprising a server having an encryption/decryption engine, access to data, and code for sending a cookie to a user logging in to the server, and a client.
- the server upon receipt of a data request by a client, sends a cookie to the client wherein the value of the cookie comprises an encryption/decryption key, and wherein the server encrypts the data requested by the client using the key before transmission to the client.
- the client after receiving encrypted data from the server, retrieves the key from the cookie value, and uses the key with the encryption/decryption engine to decrypt the data.
- a method for encrypting data on a client from a server comprising steps of (a) upon receiving a log-in the client by the server, sending a cookie to the client, the cookie comprising a key value to be used for encryption the data, and sending an indication of the data to be encrypted; (b) accessing the key value by the client from the cookie sent; and (c) encrypting the data on the client using an encryption/decryption engine and the value of the key retrieved from the cookie value.
- the server sends a copy of the encryption/decryption engine to the client, and the copy may be discarded after use. Also a new key may be sent every session.
- a secure client/server system comprising a server having an encryption/decryption engine, access to data, and code for sending a cookie to a user logging in to the server; and a client.
- the server upon receipt of a log-in by a client, sends a cookie to the client wherein the value of the cookie comprises an encryption/decryption key, and sends also an indication of data to be encrypted, and wherein the client retrieves the key value from the cookie, and encrypts the data indicated by the server using the key.
- the server sends a copy of the encryption/decryption engine to the client, and the copy may be discarded after use. Also a new key may be sent for each session.
- a method for secure data transfer between a first and a second server comprising steps of (a) the first server contacting the second server for data; (b) the second server sending a cookie to the first server, the value of the cookie comprising a key value for encryption/decryption; (c) encrypting data before transmission by the second server, using the key value; and
- the second server may send a copy of an encryption/decryption engine to the first server, and the first server uses the copy with the retrieved key to accomplish decryption.
- a secure means of data transfer wherein keys for encryption and decryption are transferred as a part of a cookie.
- Fig. 1 is a block diagram illustrating a revolving encryption/decryption process initiated from a secure server on behalf of a client station according to an embodiment of the present invention.
- Fig. 2 is a block diagram illustrating a revolving encryption/decryption process used in a server to server mode.
- Fig. 3 is a flow diagram depicting a method of practicing the present invention.
- a unique method for encrypting, decrypting, and sending secure data over a data-packet network is provided that allows data to be automatically encrypted or decrypted under control of a sending node. Such a method is described in enabling detail below.
- FIG. 1 is a block diagram illustrating a revolving encryption/decryption process initiated from a WEB server on behalf of a client station according to an embodiment of the present invention.
- a WEB server 67 is provided and adapted to function as an Internet file server as is known in the art. Server 67 may be adapted to provide portal services, messaging services, HTTP services, Proxy services or any other known WEB service to clients who subscribe to such services, or to users in general.
- a client station 79 is provided and adapted as an Internet capable appliance. That is, station 79 has enough memory, processing power, and suitable software for navigating the Internet and interacting with server 67. Client station 79 is adapted for accessing server 67 through any known means of Internet connection. It will be assumed here that the means used for connecting to server 67 is a standard modem/ISP-type Internet-access connection as is most common for public access.
- Server 67 has a software log-in interface 71, which is provided and adapted to allow users access to any services offered. Log-in to server 67 from station 79 is illustrated herein by a directional arrow labeled Log-in. To gain access, a user must enter a user name and password as is typical in the art. Once logged in, a user may interact with server 67 according to services provided as is generally known in the art.
- Server 67 has a data encryption/decryption software engine 73 provided therein and adapted to encrypt or decrypt any data stored in or controlled by server 67.
- a user-data block 69 represents data that is requested by and designated to be sent to a user.
- Engine 73 is, in a preferred embodiment, a Java-based encryption/decryption program, many of which are known in the art and routinely used to encrypt and decrypt data.
- Engine 73 generates and uses an encryption/decryption key 75 for the purpose of encrypting or decrypting data as illustrated by a double arrow placed between elements 73 and 69.
- Key 75 is typically a line code generated for and used in conjunction with engine 73 for each encryption and decryption process.
- Server 67 has a "cookie” generator software engine provided therein and adapted for generating "cookies", which are text files known in the art typically used for tracking user navigation on the Internet.
- a WEB site generates and sends a cookie to users who log-in or visit certain WEB pages held in and hosted by the server. Once a WEB cookie is sent to a user, it is stored in a user's machine- cache-memory and is returned to the server the next time a user logs in, as is well known in the art. Only the hosting WEB site has control over generating a cookie for that WEB site.
- a cookie in the art has typically both a name and a value, and the value may change each time a cookie is sent, again under control of the server.
- decryption key 75 is made to be the cookie value, or added or otherwise combined with or appended to the cookie value, becoming part of that value, and is sent to users for encrypting or decrypting data stored on their machines, or data sent to them from server 67.
- client station 79 has data block 81 illustrated therein, which represents data block 69 after it has been received at client station 79.
- An encryption/decryption program 83 represents, in one embodiment, a temporary copy of program 73 after being sent from server 67 to station 79.
- Data-block 81 and engine 83 are downloaded to a user's WEB browser, represented by element number 82, after successful log-in. This is illustrated herein by the directional arrow labeled Send Data/Program.
- Data-block 81 may be any type of data that a user has requested from server 67.
- encryption/decryption engine 83 may be resident at station 79, perhaps associated with WEB browser 82 as a plug-in.
- a cookie 84 illustrated as residing in a Web cache 85 provided within station 79 represents a cookie containing the value of key 75.
- Key 75 is integrated into cookie 84 during cookie generation.
- Key 75 is a decryption key used for decrypting data block 81 at station 79, using engine 83.
- a user operating client station 79 logs into server 67 as illustrated by a directional arrow labeled Log-in proceeding from station 79 and progressing to log-in interface 71.
- Log-in interface 71 is adapted to prompt a user for a user name and password in order to verify identity and allow access to full services offered by server 67.
- server 67 encrypts all user-requested data represented by data block 69 using engine 73 as illustrated by a double arrow labeled Encrypt, and according to key 75. After encryption is completed, server 67 sends encrypted data block 69 and a temporary copy of encryption/decryption program 73 (if a user does not already have one) to the user over the Internet as illustrated by a directional arrow labeled Send Encryption Engine. Received versions of block 69 and engine 73 are downloaded to browser 82 and appear as element 81 (user data) and element 83 (encryption/decryption engine) respectively.
- Key 75 which is the key used for encrypting and decrypting user data 69 at server 67, is value-added to a text cookie generated by software 77 as illustrated by directional arrows proceeding from engine 73 to key 75 and then to generator 77.
- the cookie (cookie 84) is sent to client station 79 as illustrated by a directional arrow labeled Send Cookie where it resides as cookie 84 in WEB cache 85.
- any data held in server 67 and targeted for sending to a user may be encrypted with a new key 75 every time the user logs-in to server 67 to access services.
- encryption may be performed on a less frequent basis such as perhaps every 10 sessions or so. Any frequency may be applied.
- a user operating at station 79 now has all of his or her requested data in encrypted form, a program for decrypting the data, and a key for the program to use in automatically decrypting the data.
- Engine 83 automatically decrypts the received data 81 at client station 79 by retrieving cookie 84 from cache 85 as illustrated by a double arrow labeled Retrieve Key, accessing the key from the cookie value, and using the key in decryption.
- server 67 is first encrypting requested data and sending it to a client along with (if needed) a temporary encryption/decryption program and a key (in the cookie).
- the above-described method allows a user to be sure that no one will intercept and be able to decrypt data that he or she is receiving from a server. Moreover, only the issuing server may change the value of a cookie and key combination.
- server 67 may encrypt data on client station 79 for any purpose, such as for transmission over the Internet back to server 67 or, if server 67 is a proxy, by proxy to another server requiring the information for a transaction or the like.
- a transaction data-block 86 is illustrated within browser 82 at station 79 and represents any data that a user wants to send to a server.
- server 67 is presumed to be a proxy server and clear-text data in block 86 on client station 79 is first encrypted using engine 83 (downloaded from server 67) and cookie 84 (containing key 75). This process is illustrated by the double arrow labeled Retrieve Key, and a directional arrow proceeding from element 83 to element 86. Server 67 would also send an encryption/decryption program and a cookie containing key 75 to any WEB server transacting with a user operating station 79. This process is represented by a directional arrow labeled WEB Service illustrated at server 67.
- a target server receives encrypted data from station 79 as represented by a directional arrow labeled WEB Service illustrated at station 79.
- the WEB service also has key 75 and program 73 from server 67. Therefore, the target server is enabled to automatically decrypt the data from station 79 and for entry into a form field.
- the method and apparatus of the present invention may be used with any dialog or transaction interface presented by any WEB service.
- server 67 may encrypt data at station 79 for transmission over the Internet back to server 67.
- server 67 retains key 75 for the later decryption process.
- Security in all described embodiments is enhanced by virtue of the fact that the value of a cookie, including key 75, can only be changed by an issuing server and not by a third party.
- key 75 is received in cache memory and cannot be manually manipulated for use with program 83 for decrypting or encrypting information.
- Server 67 may encrypt data differently each time a user logs on to receive data and send a new cookie/key combination, which overwrites the old one in cache thereby further enhancing security of data during transit.
- a new encryption/decryption program may be sent in conjunction with every new key such that when a user logs-off, the new encryption/decryption program is not retained.
- Fig. 2 is a block diagram illustrating a revolving encryption/decryption process used in a server to server mode.
- two Internet servers are illustrated as
- WEB server 89 is, for the purpose of this example, designated as the "sending” server while WEB server 91 is designated as the "receiving" server.
- Server 89 has a resident encryption/decryption engine 95 provided therein and adapted for encrypting and decrypting data as was described with reference to Fig. 1.
- a data-block 93 illustrated within server 89 represents any data that is encrypted by virtue of engine 95 as illustrated by a double arrow labeled Encrypt.
- a decryption key 97 is illustrated within server 89 and represents a generated key for decrypting and encrypting data in block 93.
- Server 89 also has a communication interface 101, which is provided and adapted for communication with other servers.
- a cookie generator is also provided and adapted to generate and send cookies as is known in the art.
- a data block 103 is illustrated within server 91 and represents encrypted data 93 received from server 89.
- Server 91 is, in this instance, in receiving mode.
- Server 91 has an encryption/decryption engine 105 illustrated therein and adapted for encrypting and decrypting data as illustrated by a double arrow labeled Decrypt.
- engine 105 is a temporary program received from server 89 along with data 103.
- server 89 would always be the controlling server.
- server 91 may be adapted with full encryption/decryption and key generating capability such that neither server 89 or 91 is a controlling server.
- Server 91 being the receiving server in this example, has a WEB cache 109 containing a WEB cookie 110 (received from server 89), and decryption key 97 retrieved from cookie 110 for data-decrypting purposes. Both servers have communication interfaces, interface 101 (for server 89) and interface 111 (for server 91) installed therein and adapted to allow communication over the Internet as known in the art.
- server 91 has established a connection-data request to server 89 through communication interface 111, over the Internet, to communication interface 101.
- data (93) is encrypted by encryption/decryption engine 95 using key 97 as illustrated by the double arrow labeled Encrypt.
- Encrypted data 93 is sent to server 91 over the open connection (interface 101 to 111).
- the value of key 97 is integrated into a cookie generated by cookie generator 99 and sent to server 91 where it resides in cache 109 as WEB cookie 110. This is illustrated by directional arrows first starting at element 95 and proceeding ultimately to communication interface 101 at server 89, and by directional arrows starting at communication interface 111 at server 91 and proceeding ultimately to respective elements.
- encryption/decryption engine 105 retrieves key 97 from WEB cookie 110 in cache 109 as illustrated by double arrows placed between the involved elements. Engine 105 then uses key 97 to decrypt data 103 for use.
- server 89 is the controlling server and issues temporary encryption/decryption programs and keys to servers requesting secure data.
- data may be encrypted differently with a new key each time a server requests and is granted a connection for data transmission from the controlling server.
- server 89 may encrypt data held at another server for transmission back to itself by first sending program 105 and key 97 for the requesting server to encrypt data for transmission back. In this case, server 89 would retain a copy of key 97 for decryption purposes.
- both servers 89 and 91 may be adapted as controlling servers such that each may send the other a temporary encryption program and a key for decryption. There are many possibilities.
- the method and apparatus of the present invention may be practiced on any data-packet network that supports the use of cookies, Hyper-Text-Transfer-Protocol (HTTP) and other suitable Internet Protocol (IP) without departing from the spirit and scope of the present invention.
- HTTP Hyper-Text-Transfer-Protocol
- IP Internet Protocol
- a business may use the method as a secure data transfer process on a corporate Local- Area-Network (LAN) or Wide- Area- Network (WAN).
- LAN Local- Area-Network
- WAN Wide- Area- Network
- a controlling server adapted to send encryption/decryption programs and keys may multicast sensitive data to a plurality of receiving servers or client stations such that all the receivers get the same encrypted data securely without fear of intercept.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
Claims
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US46151999A | 1999-12-14 | 1999-12-14 | |
US461519 | 1999-12-14 | ||
PCT/US2000/042168 WO2001047176A1 (en) | 1999-12-14 | 2000-11-13 | Method and apparatus for a revolving encrypting and decrypting process |
Publications (1)
Publication Number | Publication Date |
---|---|
EP1243097A1 true EP1243097A1 (en) | 2002-09-25 |
Family
ID=23832890
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP00992802A Withdrawn EP1243097A1 (en) | 1999-12-14 | 2000-11-13 | Method and apparatus for a revolving encrypting and decrypting process |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP1243097A1 (en) |
JP (1) | JP2003518820A (en) |
AU (1) | AU4707701A (en) |
WO (1) | WO2001047176A1 (en) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8010405B1 (en) | 2002-07-26 | 2011-08-30 | Visa Usa Inc. | Multi-application smart card device software solution for smart cardholder reward selection and redemption |
US9852437B2 (en) | 2002-09-13 | 2017-12-26 | Visa U.S.A. Inc. | Opt-in/opt-out in loyalty system |
US8015060B2 (en) | 2002-09-13 | 2011-09-06 | Visa Usa, Inc. | Method and system for managing limited use coupon and coupon prioritization |
US8626577B2 (en) | 2002-09-13 | 2014-01-07 | Visa U.S.A | Network centric loyalty system |
US7827077B2 (en) | 2003-05-02 | 2010-11-02 | Visa U.S.A. Inc. | Method and apparatus for management of electronic receipts on portable devices |
US8554610B1 (en) | 2003-08-29 | 2013-10-08 | Visa U.S.A. Inc. | Method and system for providing reward status |
US7051923B2 (en) | 2003-09-12 | 2006-05-30 | Visa U.S.A., Inc. | Method and system for providing interactive cardholder rewards image replacement |
US8407083B2 (en) | 2003-09-30 | 2013-03-26 | Visa U.S.A., Inc. | Method and system for managing reward reversal after posting |
US8005763B2 (en) | 2003-09-30 | 2011-08-23 | Visa U.S.A. Inc. | Method and system for providing a distributed adaptive rules based dynamic pricing system |
US7653602B2 (en) | 2003-11-06 | 2010-01-26 | Visa U.S.A. Inc. | Centralized electronic commerce card transactions |
US20110145082A1 (en) | 2009-12-16 | 2011-06-16 | Ayman Hammad | Merchant alerts incorporating receipt data |
US8429048B2 (en) | 2009-12-28 | 2013-04-23 | Visa International Service Association | System and method for processing payment transaction receipts |
JP2014531175A (en) * | 2011-10-28 | 2014-11-20 | ダンマークス・テクニスケ・ユニヴェルシテット | Dynamic encryption method |
CN108513659B (en) | 2016-12-29 | 2021-12-28 | 谷歌有限责任公司 | Searching and retrieving keying data maintained using a keying database |
JP6876760B2 (en) * | 2019-09-03 | 2021-05-26 | グーグル エルエルシーGoogle LLC | Retrieving and retrieving keyed data maintained using a keyed database |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5966441A (en) * | 1996-11-18 | 1999-10-12 | Apple Computer, Inc. | Method and apparatus for creating a secure autonomous network entity of a network component system |
US5818935A (en) * | 1997-03-10 | 1998-10-06 | Maa; Chia-Yiu | Internet enhanced video system |
US6226750B1 (en) * | 1998-01-20 | 2001-05-01 | Proact Technologies Corp. | Secure session tracking method and system for client-server environment |
US6199113B1 (en) * | 1998-04-15 | 2001-03-06 | Sun Microsystems, Inc. | Apparatus and method for providing trusted network security |
-
2000
- 2000-11-13 JP JP2001547789A patent/JP2003518820A/en active Pending
- 2000-11-13 AU AU47077/01A patent/AU4707701A/en not_active Abandoned
- 2000-11-13 WO PCT/US2000/042168 patent/WO2001047176A1/en not_active Application Discontinuation
- 2000-11-13 EP EP00992802A patent/EP1243097A1/en not_active Withdrawn
Non-Patent Citations (1)
Title |
---|
See references of WO0147176A1 * |
Also Published As
Publication number | Publication date |
---|---|
JP2003518820A (en) | 2003-06-10 |
AU4707701A (en) | 2001-07-03 |
WO2001047176A1 (en) | 2001-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4867663B2 (en) | Network communication system | |
US7313816B2 (en) | Method and system for authenticating a user in a web-based environment | |
EP1400089B1 (en) | Authentification of a user across communicaqtion sessions | |
US6154543A (en) | Public key cryptosystem with roaming user capability | |
US7231526B2 (en) | System and method for validating a network session | |
US5892828A (en) | User presence verification with single password across applications | |
JP5313311B2 (en) | Secure message system with remote decryption service | |
US7281128B2 (en) | One pass security | |
US20030163691A1 (en) | System and method for authenticating sessions and other transactions | |
US8549298B2 (en) | Secure online service provider communication | |
US20040093419A1 (en) | Method and system for secure content delivery | |
US20080022085A1 (en) | Server-client computer network system for carrying out cryptographic operations, and method of carrying out cryptographic operations in such a computer network system | |
JP2009505308A (en) | Distributed single sign-on service | |
AU2002315013A1 (en) | Authentication of a user across communication sessions | |
EP2414983B1 (en) | Secure Data System | |
EP1243097A1 (en) | Method and apparatus for a revolving encrypting and decrypting process | |
CN111526161A (en) | Communication method, communication equipment and proxy system | |
JP4608929B2 (en) | Authentication system, server authentication program, and client authentication program | |
WO2001054342A1 (en) | Method and apparatus for secure storage of personal data in web-based applications using symmetric encryption and distributed key components | |
US8307209B2 (en) | Universal authentication method | |
US20100146605A1 (en) | Method and system for providing secure online authentication | |
WO2000027089A1 (en) | Secure authentication for access to back-end resources | |
JP2002328905A (en) | Client authentication method, authentication device, program and storage medium | |
WO2000079726A2 (en) | Cryptographic representation of sessions |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 20020711 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE TR |
|
AX | Request for extension of the european patent |
Free format text: AL;LT;LV;MK;RO;SI |
|
RIN1 | Information on inventor provided before grant (corrected) |
Inventor name: SATYAVOLU, RAMAKRISHNA Inventor name: INALA, SUMAN, KUMAR Inventor name: SREERANGA, RAJAN, P. Inventor name: SHAKHAR, DIMAKAR |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION HAS BEEN WITHDRAWN |
|
18W | Application withdrawn |
Effective date: 20040706 |