WO2001047205A2 - Enhanced computer network encryption using downloaded software objects - Google Patents

Enhanced computer network encryption using downloaded software objects Download PDF

Info

Publication number
WO2001047205A2
WO2001047205A2 PCT/IB2000/001765 IB0001765W WO0147205A2 WO 2001047205 A2 WO2001047205 A2 WO 2001047205A2 IB 0001765 W IB0001765 W IB 0001765W WO 0147205 A2 WO0147205 A2 WO 0147205A2
Authority
WO
WIPO (PCT)
Prior art keywords
encryption
data
client computer
network
computer
Prior art date
Application number
PCT/IB2000/001765
Other languages
French (fr)
Other versions
WO2001047205A3 (en
Inventor
David Allouch
Original Assignee
Tashilon Ltd.
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tashilon Ltd. filed Critical Tashilon Ltd.
Priority to AU14085/01A priority Critical patent/AU1408501A/en
Publication of WO2001047205A2 publication Critical patent/WO2001047205A2/en
Publication of WO2001047205A3 publication Critical patent/WO2001047205A3/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/168Implementing security features at a particular protocol layer above the transport layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Definitions

  • the present invention relates to data communications systems and in particular to methods and systems for providing encryption and decryption of data messages transmitted over insecure or dubiously-secure networks, such as the internet.
  • This capability allows businesses additional, and potentially profitable, options for communicating and transacting business both on a retail level and in business-to-business dealings with other companies, vendors, customers, or other transactional counterparts. Businesses need not create entire purpose-built private networks to ensure communications with each of their transactional counterparts, but rather can avail of the public , worldwide network infrastructure provided by the internet, thus achieving more efficient communication.
  • Neither the company nor the end user can control or monitor comprehensively the path taken by a communication between the company fi.e., as generated by the company's server computer) and the end user (as received by the end user's client computer) (or vice versa). Rather, the communication may pass through any number of network nodes, each of which may be potentially vulnerable to monitoring or interception of communication by a variety of means, and by a variety of unauthorized parties.
  • phrases such as "applying encryption” and “imposing encryption standards” as used herein comprehend the steps of both (a) encrypting data outbound from a computer for transmission over non-secure or dubiously-secure data lines, and (b) decrypting such data when it is inbound at the destination computer for use by that computer's processor and memory, which typically may locally process data and make it available to a user (e.g., by display or output) in unencrypted form.
  • the security concerns addressed in by the instant invention are found only during communications over public data networks, and not when data is processed locally upon either a client computer or network server, so that data can and should be provided for such local processing in unencrypted form.
  • the most common prior art encryption systems are those denoted by the Secure Socket Layer (SSL) and IPSEC protocols.
  • SSL Secure Socket Layer
  • IPSEC IPSEC protocols.
  • non-reciprocal systems such as described in U.S. Patent 4,218,582
  • a first party to a communication generates a numerical sequence and uses that sequence to generate non-reciprocal and different encrypting and decrypting keys.
  • the encrypting key is then transferred to a second party in a non-secure communication.
  • the second party uses the encrypting key (called a public key because it is no longer secure) to encrypt a message that can only be decrypted by the decrypting key retained by the first party.
  • the key generation algorithm is arranged such that the decrypting key cannot be derived from the public encrypting key. Similar methods are known for using non-reciprocal keys for authentication of a transmission.
  • the non-secure "public” key is used to decrypt a message that has been encrypted using a secure "private” key known only to the originating party. In this method the receiving party has assurance that the origination of the message is the party who has supplied the "public" decrypting key.
  • U.S. Patent No. 5,978,918 describes a method for supplementing security protocols in conjunction with SSL/DES encryption, using public key encryption, and employing a dedicated communication line for non-internet communication of private data.
  • U.S. Patent No. 5,781,632 discloses a method and apparatus for securing transmission of data using standard encryption in conjunction with data switches.
  • a variety of often-disparate standards for encryption and decryption have evolved. Implementations of these standards are generally readily available in off-the-shelf form. Some of these standards are considered “strong” or high-security encryption standards, and others are considered “weaker” or lower-security.
  • the "strength" of an encryption algorithm correlates with the complexity of the encrypting process.
  • Each level of encryption standard may have utility for certain applications, and for a certain duration of time. No one encryption standard may be regarded as a panacea for all types of online transactions, and no standard may be considered permanent. This is so for a variety of reasons.
  • the sensitivity of data transmitted over networks may vary. A client who transmits a request to a company website to view a particular, non-confidential, portion of that website, probably is not concerned (nor is the company) with maintaining absolute secrecy of his request for that page. Therefore, both the client communication to the company server, and the server's responsive transmission of the non-confidential page, may likely be satisfactorily conducted over a communication channel that is not encrypted, or that is encrypted with a weaker encryption method.
  • Encryption standards have a tendency to be obsolescent; that is, they have decidedly finite useful lifetimes.
  • Computer processing power is continually increasing, and the ready availability of more and more powerful computer processors, coupled with the ingenuity of criminals and other "hackers” who apply this processing power to the "cracking" or decryption of standard encryption methods, dictates that an encryption standard that is deemed sufficiently strong at a given point in time may, within a short while, become unacceptably vulnerable to widespread penetration by hackers.
  • 5 bit encryption which has been used as a standard encryption method in certain network browser software (i.e., web browsers), can no longer be regarded as a strong encryption method, and many online financial transaction businesses will not provide their services to end users/clients unless it is possible to ensure that the transactions between the business and the end user/client will be protected (in both directions) by 128 bit (or higher) encryption standards. Even 128 bit encryption standards may soon be deemed compromised for the most sensitive transactions (for instance, those involving electronic funds transfers or other transactions by large security-conscious banking institutions), so that still-stronger encryption standards (e.g., 448 bit) may in time become de rigeur for the most security-intensive online transactions.
  • 128 bit encryption standards may soon be deemed compromised for the most sensitive transactions (for instance, those involving electronic funds transfers or other transactions by large security-conscious banking institutions), so that still-stronger encryption standards (e.g., 448 bit) may in time become de rigeur for the most security-intensive online transactions.
  • company server e.g., a web server
  • client computer e.g., a web server
  • company web servers typically are configured to be compatible with a number of different encryption protocols used by clients (e.g.. the encryption protocols employed in commercial network or web browser software)
  • clients e.g. the encryption protocols employed in commercial network or web browser software
  • no secured communication at all can be established between the client computer and the company web server, because the company web server and the client computer/web browser do not share any sufficiently-compatible and otherwise-acceptable encryption protocol.
  • Each of the client computer and the company web server must be capable of executing the same (or a compatible) encryption/decryption standard simultaneously during a communications session.
  • a client From the end user/client side, provision can be made for a client to choose to download a new encryption program in conjunction with downloading a new network or web browser program incorporating such encryption, for example. It is also possible for the client to update the encryption module of his web browser as required, by going to a download site on the internet and choosing to download a new encryption module having the desired strength or other characteristics, without downloading an entire new web browser version (a process that may take a great deal of time, particularly over low-bandwidth communication lines).
  • company web servers may ensure that desired specific encryption standards are applied to all communications of sensitive information with clients by, most obviously, simply rejecting connection with clients whose computers/web browsers do not support the desired variety or strength of encryption standard.
  • This solution while it prevents unauthorized dissemination of sensitive information by precluding the sensitive communication in the first place, is far from wholly satisfactory, as companies that supply online financial services typically desire to ensure maximal availability of those services anywhere in the world, so as to take full advantage of the internet's and WWW's promise of random and universal access to company web services over public networks while maintaining appropriate security.
  • the invention herein disclosed is a method and system for enabling a web server to establish data communication of a desired level and strength of encryption between the web server and an end user or client, even in the case in which the client does not (at the initiation of the communication session) possess appropriate encryption modules, without requiring any active downloading or installation of additional encryption software by the client.
  • the invention works by transmitting, from the web server, software objects that are supported by the client computer and web browser software.
  • the client computer i.e., its web browser
  • the client computer may then automatically execute these software objects, which will contain encrypting and decrypting instructions in accordance with the particular encryption standard desired by the web server proprietor for encryption of the client— web server sensitive transaction, which is thus re-established on a fully secure basis.
  • a desired level of encryption may be imposed by a network server/web server for some portion, or all, of a communication with a client, in a manner transparent to the end user and not dependent on end user request or "pulling" of information.
  • the encryption standard pushed or automatically downloaded to the client in transparent fashion may be updated or adjusted in accordance with network server requirements as often as desired.
  • FIG. 1 there is shown a block diagram of a data transmission connection established over a public network (such as the internet or WWW) between a web server (10) that sponsors or supplies transactions to be provided to an end user/client computer system (20).
  • a public network such as the internet or WWW
  • a web server 10 that sponsors or supplies transactions to be provided to an end user/client computer system (20).
  • client computer system comprising a computer processor such as an Intel Pentium processor, and implementing a communications module such as a common web browser such as Internet Explorer or Netscape), linked by a WWW connection (18) to a commercial website (10), for purposes of illustration.
  • client computer system may be any apparatus comprising a processor and communications module capable of executing downloaded software objects or applets, the system being used for data transmission with a server as to which security and authentication are important issues.
  • client computer systems may include processors that are elements of, for example, cellular phone systems, cable television decoders, automatic teller terminals, and the like
  • the web server (10) has (as constituents of its memory) an unsecured area (8) and a secured area (6) containing protected information belonging to either the web server provider or to various of its clients.
  • Web server (10) has a memory (14), computer processor (16), and contains a suite (12) of downloadable encryption modules ((12a), (12b), (12c), etc.).
  • Encryption modules in encryption suite (12) comprise software objects or applets.
  • Software objects are known in the art as effective means for distributing, in "pre-packaged” or modular form, executable software programs from a web server, over a network, for eventual execution by one or more client computers (specifically, by the web browsers of such clients) that are connected to the web server over the network.
  • Objects or applets are written as software programs in such formats as JAVA or ActiveX, which in turn may be readily implemented (i.e., executed) by a wide variety of commonly used client-side communications programs (usually, web browsers).
  • client-side communications programs usually, web browsers.
  • Advantages of software objects or applets include their cross-platform adaptability to multiple varieties of client side computers (because they are written for compatibility with cross-platform-compatible web browsers), as well as their ability to self-execute immediately upon downloading, which allows the client user to enjoy the benefits of automatic object program execution without any initiation by the user. In this sense, objects perform transparently to the client/user, as their functions are either invisible to him, or appear to be seamlessly integrated with the user- initiated functions of the web browser without requiring any additional actions or choices by the client/user.
  • U.S. Patent No. 5,974,441 provides an exemplary discussion of the use of JAVA software objects to provide desired executable functions to a client over the WWW by sending the objects over the internet/WWW connection from the server to the client for eventual execution by the client machine to obtain desired functionality on the client end.
  • JAVA software objects In connection with software objects generally, and with the software objects of the instant invention as well, it is important to ensure that the client user is not employing a type of "firewall" in his security system that will reject or otherwise hinder the downloading and execution of executable materials, such as objects.
  • Data communication line (18) connects the web server computer (10) with the client or end user computer (20).
  • Client computer (20) comprises a memory (24) and computer processor (28) as well as web browser (32), which operates in conjunction with both memory (24) and processor (28).
  • Web browser (32) contains encryption module area (40).
  • Application of the invention begins when client computer (20) initiates a communication session with web server (10) by sending a session start request over data communications line (18), which is, for instance, an arbitrarily-determined WWW connection passing through multiple nodes of the internet.
  • Line (18) may initially be provided with some level of encryption (perhaps a relatively weak level such as 56 bit encryption), supplied for instance by an encryption module contained in encryption module area (40) of client web browser (32).
  • the initial communication over line (18) may be completely unencrypted, as for instance if client web browser (32) does not contain any encryption modules in encryption module area (40) (or if such modules are not operative).
  • Web server (10) contains (in memory (14)) settings provided by the web server proprietor that specify the specific strength and type of encryption that web server ( 10) must impose upon particular classes of sensitive communications with client computers (20).
  • web server processor (16) Upon initiation of a communication session in which sensitive data may be transmitted, web server processor (16) immediately analyzes the session start request transmitted by the client computer (20) to determine the type of encryption initially employed by client computer (20). If the encryption standard used by the client computer (20) (via client web browser (32)) in its session start request matches with the type of encryption previously specified by the web server proprietor for sessions of the given variety that the client seeks to initiate, then communications of substantive sensitive information between the web server (10) and client computer (20) over line (18) may commence immediately.
  • web server (10) determines that the encryption standard used by client computer (20) in its session start request does not match the encryption standard or standards previously specified by the web server proprietor (because, for instance, the client computer (20) is initially employing a weak encryption standard, or a standard not compatible with those supported by web server (10)), then web server processor (16) will initiate an automatic object download procedure.
  • web server processor (16) and memory (14) determine the desired optimal encryption standard to be imposed upon the highly sensitive portions of the communications session with client computer (20). Once the desired optimal encryption standard is determined, web server (10) selects a corresponding encryption module object ((12a), (12b), (12c), etc.) from the encryption module suite (12).
  • the encryption module suite (12) contains a pre-selected set of software modules in appropriate object/applet language (e.g.. JAVA, ActiveX), each of which modules (upon execution) is capable of performing encryption/decryption in accordance with a particular encryption standard, and each of which is readily transmissible in "capsule" form over an internet communications line.
  • object/applet language e.g. JAVA, ActiveX
  • Strong encryption standards that may advantageously be chosen for inclusion in encryption module suite (12) include such standards as 128 bit 3DES or 128 bit SSL MD5 RC4 (although the module objects of module suite (12) may be encryption modules for any desired encryption standard capable of being executed by a software object or applet, such as super-strong 448 bit encryption standards). In essence, any desired off-the-shelf (or custom) encryption standard may be used in conjunction with this invention.
  • Web server (10) is supplied with corresponding software encryption modules (15a), (15b), (15c), etc. (stored in memory (14)) for each of the selected encryption standards associated with modules (12a), (12b),. (12c), etc.
  • Encryption modules (12a), (12b), (12c) and (15a), (15b), (15c) may be updated on demand by the proprietor of web server (10) or of the company providing such proprietor with the technology of the instant invention, such that the web server and client computers may continually be provided with the most up-to-date strong encryption.
  • the appropriate encryption module object (12a), (12b), (12c), etc. is then transmitted over line (18) (with the standard of encryption originally applied by the client computer (20)) and received by client computer (20), which routes the transmitted encryption module object (12a), (12b), (12c), etc.
  • encryption module object (12a), (12b), (12c), etc. self-executes.
  • such module automatically applies the web-server- specified standard of encryption (and decryption) to all subsequent communications of sensitive data to and from web browser (32) to the web server (10).
  • the corresponding appropriate web server encryption module object (15a), (15b), (15c), etc. simultaneously applies the same selected encryption standard to communications inbound to and outbound from the secured area (6) of the web server (10).
  • the encryption module object (12a), (12b), (12c), etc. may be viewed as a filter. That is, the encryption module object serves to filter a received page of the website transmitted by web server (10). Such a received page will be formatted in appropriate internet-compatible fashion, e ⁇ ., in Hypertext Mark-Up Language ("html"), to display user-selectable links or fields corresponding both to secure areas (6) and non-secure areas (8) of the web server (10).
  • the encryption module object transforms links or fields corresponding to secured areas (6) of the web server (10) into calls to the encryption module object (12a), (12b), (12c), etc. which will transmit the user selection of a secure area link or field to the web server (10) (or display the web server's (10) corresponding response) only after passing the data stream through the selected encryption/decryption protocol of the encryption module object.
  • the encryption module object or applet may be viewed as replacing or emulating the browser for communications with web server (10) (and secured area (6)). While in the above-described embodiment, encryption module object (12a), (12b), (12c), etc.
  • web server (10) may be provided with secured area user interface (46), which is a user interface program (preferably in graphic form) allowing for ready configuration of various aspects of the present invention as implemented on the web server (10) (for instance, the desired level or type of encryption for various categories of transactions, the desired messages (if any) to be downloaded with encryption module object (12a), (12b), (12c) for display on client computer (20), etc.).
  • secured area user interface is a user interface program (preferably in graphic form) allowing for ready configuration of various aspects of the present invention as implemented on the web server (10) (for instance, the desired level or type of encryption for various categories of transactions, the desired messages (if any) to be downloaded with encryption module object (12a), (12b), (12c) for display on client computer (20), etc.).
  • the user interface (46) may also display to users of web server (10) various parameters regarding operation of the present invention, e.g., number of current clients/users attached to web server (10), security status for client attachments, available encryption formats, etc.
  • Web server (10) may further be connected to a remote encryption module object update site (70) by data line (72).
  • Encryption module object update site (70) may be a server (or web server) maintained as an archive and distribution center for new or updated encryption module objects (12a), (12b), (12c) and (15a), (15b), (15c), so that web server (10) may be supplied (on demand, or on a regular schedule) with the most updated range of strong security modules.
  • Encryption module object update site (70) may be maintained by a third-party vendor or security consulting company, so that the proprietor of web server (10) need not affirmatively research or choose amongst the various encryption formats or standards but rather may be automatically supplied with such formats by encryption module object update site (70)
  • Data line (72) may comprise any suitable connection for electronic communications, such as a dedicated line or an internet data connection.
  • FIG. 2 illustrates such an alternative embodiment for establishing strongly-secured communications.
  • Web server (10) and client computer (20) are represented as before, except that encryption module suite (12) is no longer actively called upon by web server (10) and web server (10) is now provided with an additional communications object (17).
  • encryption server (50) (which may be located at any desired location accessible by public data network/internet connections) contains memory (52), processor (54), and encryption module suite (56).
  • Encryption module suite (56) serves the same function as encryption module suite (12) served in connection with the embodiment of Fig. 1 ; viz.. it contains encryption module objects (56a), (56b), (56c), etc.
  • client computer (20) initiates communication with web server (10), as before, sending a session start request over line (18) with a client-determined standard of encryption, and, as before, web server (10) analyzes such session start request to determine whether client computer (20) is using a standard of encryption acceptable to the web server proprietor. If so, communications may continue over line (18) with no further modifications. If not, though, processor (16) of web server (10) sends back to client computer (20) an html document instructing the client computer to obtain, and execute, two software objects.
  • the first software object is a communications object (17) contained on web server (10).
  • the second object is an encryption module object, specifically, one of encryption module object (56a), (56b), (56c), etc. contained in encryption suite (56) on encryption server (50).
  • Client computer (20) immediately obtains such objects (over, respectively, line (18) to web server (10) and weakly-encrypted communications line (60) connecting client computer (20) to encryption server (50)).
  • Communications object (17) then auto-executes on client computer (20), using the encryption supplied by simultaneously-self-executing encryption module object (56a), (56b), (56c), etc. to establish a new connection over line (18) between web server (10) and client computer (20), which connection possesses the web-server-specified standard of encryption.
  • the advantage of the embodiment described in connection with Fig. 2 is that it permits judicious locating of the web server (10) and encryption server (50). If, for example, a web server proprietor and its databases were located in the United States, and certain client computers (20) were located in Europe, but the United States government prohibited export of certain strong encryption standards to Europe, encryption server (50) could be located in a country having favorable export control laws as to strong encryption (as, for example, Australia), so that a strongly-encrypted communication line could be established between U.S. web server (10) and Europe- based clients (20) without ever exporting strong encryption standards from the U.S. to Europe.
  • the instant invention also comprehends a computer system for such secured data transmissions, in which the system may impose a level of encryption desired by a network server upon communications over a network by causing to be downloaded to a client computer (in transparent fashion) an encryption algorithm (e.g., encryption module object ((12a), (12b), (12c)).
  • the system includes web server (10) (which is linkable to a client computer (20) over data line (18)) and associated hardware and software components, for instance encryption suite (12) and memory (14) and processor (16).
  • Such an apparatus has the capability of establishing secured transactions by implementing, and managing (for instance, by use of secured area interface (46)) the download of automatically-executing encryption module objects to client computer (20) and the subsequent encrypted transmission of data associated with secured area (6).

Abstract

The invention provides a method and system for securing certain highly sensitive financial and other data contained in transmissions over a public network, such as the World Wide Web, linking a web server computer to a remote client computer. By determining a desired (usually strong) specific standard of encryption for all sensitive communications between web server and client, and 'pushing' the capability to encrypt to such standard to the client by automatically downloading from web server to the client, and executing within the client's web browser, software objects to perfom encryption/decryption tasks pursuant to the chosen standard, strong encryption is readily assured even if the client did not originally have such strong encryption capabilities. The system may also be configured for optimal conformity with export laws regarding strong encryption.

Description

ENHANCED COMPUTER NETWORK ENCRYPTION USING DOWNLOADED SOFTWARE OBJECTS
SPECIFICATION
BACKGROUND OF THE INVENTION The present invention relates to data communications systems and in particular to methods and systems for providing encryption and decryption of data messages transmitted over insecure or dubiously-secure networks, such as the internet.
Transmission of information over data networks such as the internet or the World Wide Web ("WWW") forms an increasingly important segment of commercial transactions. The advantages provided by conducting sales, purchase, data collection, financial transactions, and transmission of other information whose value is enhanced by the ability to communicate directly and instantaneously between the computer network of a business enterprise and the computer or network of that enterprise's customers or counterparts, are evident. In particular, the widespread and increasing availability of home and office computer links to the internet and the WWW has made it possible to conduct, by instantaneous digital means, many financial and other transactions that were previously possible only by written correspondence, or by use of dedicated analog communication lines. This capability allows businesses additional, and potentially profitable, options for communicating and transacting business both on a retail level and in business-to-business dealings with other companies, vendors, customers, or other transactional counterparts. Businesses need not create entire purpose-built private networks to ensure communications with each of their transactional counterparts, but rather can avail of the public , worldwide network infrastructure provided by the internet, thus achieving more efficient communication.
The rapid transfer of financial information (e.g., funds transfer authorizations and queries, balance information, account status, payment orders, credit card information, etc.) or other information unique to an individual user (or client) between that client and the business hosting the online communication (e.g.. a company maintaining a website for financial transactions) over a public network is a particularly advantageous use for internet- or WWW-based data communication systems. There have been numerous applications of this capability within the art. See, e.g.. U.S. Patent No. 5,383,113 (disclosing a system and method for consumer home banking enabling checkless payments to merchants by means of customer- initiated electronic fund transfers); U.S. Patent No. 5,671,279 (describing electronic commerce system for online credit card payments). However, as desirable as it is to be able to transfer such financial and other unique or personal information in connection with online transactions, the nature of online transactions (which take place partly or entirely over an inherently public network, the internet, rather than over proprietary closed-loop networks) raises concerns about the vulnerability of such sensitive data to unauthorized, unintended, or improper viewing by third parties to whom neither the client nor the company supplying the website wish this sensitive data to be disclosed. It has become evident that transactions over the internet or WWW between a company website, for example, and the end users of the company's website (i.e., its customers or its peer companies) cannot be assumed to be secure. Neither the company nor the end user can control or monitor comprehensively the path taken by a communication between the company fi.e., as generated by the company's server computer) and the end user (as received by the end user's client computer) (or vice versa). Rather, the communication may pass through any number of network nodes, each of which may be potentially vulnerable to monitoring or interception of communication by a variety of means, and by a variety of unauthorized parties.
Because this situation is simply not acceptable in the context of transfer of sensitive financial and other information which, if intercepted by unauthorized malefactors, could be employed so as seriously to compromise or damage the interests (pecuniary, security, and otherwise) of both the business and the end users, solutions have developed for encryption and decryption of transactions over a public data network. Two conventional techniques for providing confidentiality and/or authentication currently in use involve reciprocal and non-reciprocal encrypting. Both systems use non-secret algorithms to provide encryption and decryption, and keys that are used by the algorithm. In connection with the discussion of encrypting methods and standards throughout the instant application, it will be understood that phrases such as "applying encryption" and "imposing encryption standards" as used herein comprehend the steps of both (a) encrypting data outbound from a computer for transmission over non-secure or dubiously-secure data lines, and (b) decrypting such data when it is inbound at the destination computer for use by that computer's processor and memory, which typically may locally process data and make it available to a user (e.g., by display or output) in unencrypted form. Typically, the security concerns addressed in by the instant invention are found only during communications over public data networks, and not when data is processed locally upon either a client computer or network server, so that data can and should be provided for such local processing in unencrypted form.
In reciprocal algorithm systems, such as DES, the same key and algorithm is used to encrypt and decrypt a message. To assure confidentiality and authenticity, the key should be known only to the sending and receiving computers, and were traditionally provided to the systems by "secure" communication, such as courier.
In the prior art there have been developed systems wherein a common key may be developed by the sender and receiver using non-secure communications. In such systems, as described in U.S. Patents No. 4,200,770; 5,375,169 and 5,583,939, each party to a communication generates a numerical sequence, operates on the sequence and transfers the result to the other party. By further operation using the transferred result and the locally generated sequence, each party can develop the identical encyphering key, which cannot be obtained from the transferred results alone.
As implemented for use over the internet, the most common prior art encryption systems are those denoted by the Secure Socket Layer (SSL) and IPSEC protocols. In non-reciprocal systems, such as described in U.S. Patent 4,218,582, a first party to a communication generates a numerical sequence and uses that sequence to generate non-reciprocal and different encrypting and decrypting keys. The encrypting key is then transferred to a second party in a non-secure communication. The second party uses the encrypting key (called a public key because it is no longer secure) to encrypt a message that can only be decrypted by the decrypting key retained by the first party. The key generation algorithm is arranged such that the decrypting key cannot be derived from the public encrypting key. Similar methods are known for using non-reciprocal keys for authentication of a transmission. In this application, the non-secure "public" key is used to decrypt a message that has been encrypted using a secure "private" key known only to the originating party. In this method the receiving party has assurance that the origination of the message is the party who has supplied the "public" decrypting key.
U.S. Patent No. 5,978,918 describes a method for supplementing security protocols in conjunction with SSL/DES encryption, using public key encryption, and employing a dedicated communication line for non-internet communication of private data. U.S. Patent No. 5,781,632 discloses a method and apparatus for securing transmission of data using standard encryption in conjunction with data switches. A variety of often-disparate standards for encryption and decryption have evolved. Implementations of these standards are generally readily available in off-the-shelf form. Some of these standards are considered "strong" or high-security encryption standards, and others are considered "weaker" or lower-security. Generally speaking, the "strength" of an encryption algorithm correlates with the complexity of the encrypting process. Each level of encryption standard may have utility for certain applications, and for a certain duration of time. No one encryption standard may be regarded as a panacea for all types of online transactions, and no standard may be considered permanent. This is so for a variety of reasons. First, the sensitivity of data transmitted over networks may vary. A client who transmits a request to a company website to view a particular, non-confidential, portion of that website, probably is not concerned (nor is the company) with maintaining absolute secrecy of his request for that page. Therefore, both the client communication to the company server, and the server's responsive transmission of the non-confidential page, may likely be satisfactorily conducted over a communication channel that is not encrypted, or that is encrypted with a weaker encryption method. Conversely, for more sensitive transactions, such as those involving a client's transmission of personal identifying information to a company web server, a stronger encryption standard is called for. For highly sensitive transactions (such as those involving disclosure of personal financial information, payment or funds transfer instructions or authorizations, or similar secret or sensitive financial identifiers or data), it may be desirable to use the highest-available standard of encryption.
Encryption standards have a tendency to be obsolescent; that is, they have decidedly finite useful lifetimes. Computer processing power is continually increasing, and the ready availability of more and more powerful computer processors, coupled with the ingenuity of criminals and other "hackers" who apply this processing power to the "cracking" or decryption of standard encryption methods, dictates that an encryption standard that is deemed sufficiently strong at a given point in time may, within a short while, become unacceptably vulnerable to widespread penetration by hackers. For instance, 56 bit encryption, which has been used as a standard encryption method in certain network browser software (i.e., web browsers), can no longer be regarded as a strong encryption method, and many online financial transaction businesses will not provide their services to end users/clients unless it is possible to ensure that the transactions between the business and the end user/client will be protected (in both directions) by 128 bit (or higher) encryption standards. Even 128 bit encryption standards may soon be deemed compromised for the most sensitive transactions (for instance, those involving electronic funds transfers or other transactions by large security-conscious banking institutions), so that still-stronger encryption standards (e.g., 448 bit) may in time become de rigeur for the most security-intensive online transactions. Thus, from the perspective of the business that wishes to conduct sensitive online transactions between its server and end user/client computers, it is important to ensure that desired levels of security are maintained in both directions ~ i.e., that the communications from the client computer to the company server are encrypted with the same strength and variety of encryption as the communications from the company server to the client computer. Failing this, the application of strong encryption to the communications between the company server and the client computer could be futile, as a hacker (even if thwarted from decrypting the strongly- encrypted communications outbound from the company server to the client computer) could nonetheless intercept and decrypt sensitive data as it moved from the client to the company server in less-strongly-encrypted form. Furthermore, the scenario in which the company server (e.g., a web server) and the client computer are attempting to utilize two disparate encryption standards raises the risk of communications failure. While company web servers typically are configured to be compatible with a number of different encryption protocols used by clients (e.g.. the encryption protocols employed in commercial network or web browser software), there may be instances in which no secured communication at all can be established between the client computer and the company web server, because the company web server and the client computer/web browser do not share any sufficiently-compatible and otherwise-acceptable encryption protocol. Each of the client computer and the company web server must be capable of executing the same (or a compatible) encryption/decryption standard simultaneously during a communications session.
For reasons both of compatibility and security, companies thus will wish optimally to dictate with specificity the particular encryption standard that is used by both the client computer and the company web server during the potentially- sensitive portions of the communications session between the company server and the client computer.
However, it has to date not always been possible to ensure that this optimal solution is implemented. Because of the rapid evolution of encryption standards (or because of the varying choices of encryption standard preferred by particular network or web browser programmers), the encryption standards supported by a given client's web browser software may be limited in number, or may be outdated (due to the software having been purchased months or years previously), thus dictating that such a user will find that his web browser does not support the type or strength of encryption desired by a particular website-supplying company for secured transactions with its website server. In other instances, legal restrictions require that particular forms of encryption may not be supplied to particular end users in their web browsers; for instance, until recently, United States web browser manufacturers have been prohibited from exporting web browsers containing 128 bit encryption, even though this encryption standard has been the preferred one for secured financial transactions such as online banking. Currently, various solutions have been implemented to deal with client computers that do not support the type or strength of encryption that a company desires to impose for all sensitive communications with its web server.
From the end user/client side, provision can be made for a client to choose to download a new encryption program in conjunction with downloading a new network or web browser program incorporating such encryption, for example. It is also possible for the client to update the encryption module of his web browser as required, by going to a download site on the internet and choosing to download a new encryption module having the desired strength or other characteristics, without downloading an entire new web browser version (a process that may take a great deal of time, particularly over low-bandwidth communication lines).
There are difficulties with all these known client-side methods of providing the client with encryption capabilities of the desired type. End users will be reluctant to download entire new web browsers, given the aforementioned time required for such a process, as well as the difficulties that may attend installing and configuring such new browser versions. Similarly, even if the user is merely contemplating download of a new or updated encryption module, and not an entire web browser, he may balk at the difficulty or inconvenience, particularly if he is a casual home computer user who places a premium on "plug and play" use of his computer and internet applications, and does not have the patience, the computer skills, or the confidence to engage in potentially-daunting tasks such as seeking out appropriate modules to download, configuring their installation, and verifying their proper operation. Relatedly, even though a particular encryption module download that is required to satisfy the company web server's security requirements may be supplied by a totally reputable third party source, end users may be understandably reluctant to download any externally-supplied programs from the internet in view of the widespread publicity over viruses and other security breaches that may be caused by downloading unfamiliar programs. Finally, even when the client computer reports that it supports an appropriate encryption standard, as desired by the company web server, it is possible that the standard, as applied by the client computer, may not actually operate as intended (whether because of the client computer's inaccurate report of the encryption standards available on the client web browser, malfunction in the client computer's implementation of encryption standards, or like problems).
From the server side, company web servers may ensure that desired specific encryption standards are applied to all communications of sensitive information with clients by, most obviously, simply rejecting connection with clients whose computers/web browsers do not support the desired variety or strength of encryption standard. This solution, while it prevents unauthorized dissemination of sensitive information by precluding the sensitive communication in the first place, is far from wholly satisfactory, as companies that supply online financial services typically desire to ensure maximal availability of those services anywhere in the world, so as to take full advantage of the internet's and WWW's promise of random and universal access to company web services over public networks while maintaining appropriate security.
It would thus be desirable to provide a method and system for imposing upon communications between a web server and a client computer connected thereto over a public data network such as the internet a web-server- dictated standard of encryption for sensitive financial or other data transmitted in either direction. It would further be desirable to be able to provide such web-server- dictated encryption standards without reference to which encryption standards, if any, are initially supported by the web browser software of the client computer. It would additionally be desirable to provide these advantages in a format whereby the desired encryption standard capability is automatically "pushed" directly from the trusted web server to the client (often a layman) in a user-friendly, self-executable way (using cross-platform-adaptable object technology), such that the client is not required affirmatively to "pull" such an encryption standard from a third-party provider or elsewhere, so that imposition of desired encryption standards is not dependent upon client computer literacy or client aversion to choosing update downloads but rather takes place automatically in a fashion transparent to the client. It would, finally, be desirable to provide a method and system whereby the highest level of strong security can be provided to clients anywhere in the world, on behalf of web servers anywhere in the world, in a fashion that ameliorates the strictures of export control laws applicable to certain international transfers of strong encryption technology. The prior art does not meet these needs.
SUMMARY OF THE INVENTION The invention herein disclosed is a method and system for enabling a web server to establish data communication of a desired level and strength of encryption between the web server and an end user or client, even in the case in which the client does not (at the initiation of the communication session) possess appropriate encryption modules, without requiring any active downloading or installation of additional encryption software by the client. The invention works by transmitting, from the web server, software objects that are supported by the client computer and web browser software. The client computer (i.e., its web browser) may then automatically execute these software objects, which will contain encrypting and decrypting instructions in accordance with the particular encryption standard desired by the web server proprietor for encryption of the client— web server sensitive transaction, which is thus re-established on a fully secure basis. In this fashion, a desired level of encryption may be imposed by a network server/web server for some portion, or all, of a communication with a client, in a manner transparent to the end user and not dependent on end user request or "pulling" of information. The encryption standard pushed or automatically downloaded to the client in transparent fashion may be updated or adjusted in accordance with network server requirements as often as desired. By using a remote server in a country that does not restrict transmission of high-level or strong encryption standards to supply the encrypting objects, the invention provides the added benefit of aiding in compliance with applicable legal restrictions.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Referring to Figure 1, there is shown a block diagram of a data transmission connection established over a public network (such as the internet or WWW) between a web server (10) that sponsors or supplies transactions to be provided to an end user/client computer system (20).
Note that, for purposes of simplicity, embodiments described herein are set forth in connection with a personal computer system or workstation (comprising a computer processor such as an Intel Pentium processor, and implementing a communications module such as a common web browser such as Internet Explorer or Netscape), linked by a WWW connection (18) to a commercial website (10), for purposes of illustration. It should be understood, however, that the "client computer system" as set forth and claimed herein in conjunction with the method of this invention may be any apparatus comprising a processor and communications module capable of executing downloaded software objects or applets, the system being used for data transmission with a server as to which security and authentication are important issues. Such client computer systems may include processors that are elements of, for example, cellular phone systems, cable television decoders, automatic teller terminals, and the like
The web server (10) has (as constituents of its memory) an unsecured area (8) and a secured area (6) containing protected information belonging to either the web server provider or to various of its clients. Web server (10) has a memory (14), computer processor (16), and contains a suite (12) of downloadable encryption modules ((12a), (12b), (12c), etc.). Encryption modules in encryption suite (12) comprise software objects or applets. Software objects are known in the art as effective means for distributing, in "pre-packaged" or modular form, executable software programs from a web server, over a network, for eventual execution by one or more client computers (specifically, by the web browsers of such clients) that are connected to the web server over the network. Objects or applets are written as software programs in such formats as JAVA or ActiveX, which in turn may be readily implemented (i.e., executed) by a wide variety of commonly used client-side communications programs (usually, web browsers). Advantages of software objects or applets include their cross-platform adaptability to multiple varieties of client side computers (because they are written for compatibility with cross-platform-compatible web browsers), as well as their ability to self-execute immediately upon downloading, which allows the client user to enjoy the benefits of automatic object program execution without any initiation by the user. In this sense, objects perform transparently to the client/user, as their functions are either invisible to him, or appear to be seamlessly integrated with the user- initiated functions of the web browser without requiring any additional actions or choices by the client/user.
U.S. Patent No. 5,974,441 provides an exemplary discussion of the use of JAVA software objects to provide desired executable functions to a client over the WWW by sending the objects over the internet/WWW connection from the server to the client for eventual execution by the client machine to obtain desired functionality on the client end. In connection with software objects generally, and with the software objects of the instant invention as well, it is important to ensure that the client user is not employing a type of "firewall" in his security system that will reject or otherwise hinder the downloading and execution of executable materials, such as objects. If the client/user computer does employ such a restrictive firewall, it may prove necessary to prompt the user upon initiation to adjust or disable the firewall settings on his computer to allow it to accept the software objects of the present invention, or otherwise provide for such firewalls to be bypassed. Data communication line (18) connects the web server computer (10) with the client or end user computer (20). Client computer (20) comprises a memory (24) and computer processor (28) as well as web browser (32), which operates in conjunction with both memory (24) and processor (28). Web browser (32) contains encryption module area (40). Application of the invention begins when client computer (20) initiates a communication session with web server (10) by sending a session start request over data communications line (18), which is, for instance, an arbitrarily-determined WWW connection passing through multiple nodes of the internet. Line (18) may initially be provided with some level of encryption (perhaps a relatively weak level such as 56 bit encryption), supplied for instance by an encryption module contained in encryption module area (40) of client web browser (32). Alternatively, the initial communication over line (18) may be completely unencrypted, as for instance if client web browser (32) does not contain any encryption modules in encryption module area (40) (or if such modules are not operative). Web server (10) contains (in memory (14)) settings provided by the web server proprietor that specify the specific strength and type of encryption that web server ( 10) must impose upon particular classes of sensitive communications with client computers (20). Upon initiation of a communication session in which sensitive data may be transmitted, web server processor (16) immediately analyzes the session start request transmitted by the client computer (20) to determine the type of encryption initially employed by client computer (20). If the encryption standard used by the client computer (20) (via client web browser (32)) in its session start request matches with the type of encryption previously specified by the web server proprietor for sessions of the given variety that the client seeks to initiate, then communications of substantive sensitive information between the web server (10) and client computer (20) over line (18) may commence immediately.
If, however, web server (10) determines that the encryption standard used by client computer (20) in its session start request does not match the encryption standard or standards previously specified by the web server proprietor (because, for instance, the client computer (20) is initially employing a weak encryption standard, or a standard not compatible with those supported by web server (10)), then web server processor (16) will initiate an automatic object download procedure.
In the automatic object download procedure, web server processor (16) and memory (14) determine the desired optimal encryption standard to be imposed upon the highly sensitive portions of the communications session with client computer (20). Once the desired optimal encryption standard is determined, web server (10) selects a corresponding encryption module object ((12a), (12b), (12c), etc.) from the encryption module suite (12). As noted before, the encryption module suite (12) contains a pre-selected set of software modules in appropriate object/applet language (e.g.. JAVA, ActiveX), each of which modules (upon execution) is capable of performing encryption/decryption in accordance with a particular encryption standard, and each of which is readily transmissible in "capsule" form over an internet communications line. Strong encryption standards that may advantageously be chosen for inclusion in encryption module suite (12) include such standards as 128 bit 3DES or 128 bit SSL MD5 RC4 (although the module objects of module suite (12) may be encryption modules for any desired encryption standard capable of being executed by a software object or applet, such as super-strong 448 bit encryption standards). In essence, any desired off-the-shelf (or custom) encryption standard may be used in conjunction with this invention.
Web server (10) is supplied with corresponding software encryption modules (15a), (15b), (15c), etc. (stored in memory (14)) for each of the selected encryption standards associated with modules (12a), (12b),. (12c), etc. Encryption modules (12a), (12b), (12c) and (15a), (15b), (15c) may be updated on demand by the proprietor of web server (10) or of the company providing such proprietor with the technology of the instant invention, such that the web server and client computers may continually be provided with the most up-to-date strong encryption. The appropriate encryption module object (12a), (12b), (12c), etc. is then transmitted over line (18) (with the standard of encryption originally applied by the client computer (20)) and received by client computer (20), which routes the transmitted encryption module object (12a), (12b), (12c), etc. to web browser (32), and specifically to encryption module area (40), whereupon encryption module object (12a), (12b), (12c), etc. self-executes. Upon self-execution of encryption module object (12a), (12b), (12c), etc., such module automatically applies the web-server- specified standard of encryption (and decryption) to all subsequent communications of sensitive data to and from web browser (32) to the web server (10). In turn, the corresponding appropriate web server encryption module object (15a), (15b), (15c), etc. simultaneously applies the same selected encryption standard to communications inbound to and outbound from the secured area (6) of the web server (10). While it is a highly advantageous feature of this invention that the downloading and execution of the encryption module object (12a), (12b), (12c), and hence commencement of securely-encrypted communication between web server (10) and client computer (20), can take place without the client/user needing to initiate or approve such steps, it is, of course, possible to provide the client/user with a visual notification that strong encryption has been downloaded and is now operating (or a prompt giving the client/user a choice as to certain aspects of encryption implementation). This visual notification displayed by client computer (20) may, as desired, include other information, e.g.. the level or type of encryption originally used by the client computer (20) and/or its web browser (32).
In operation, the encryption module object (12a), (12b), (12c), etc. may be viewed as a filter. That is, the encryption module object serves to filter a received page of the website transmitted by web server (10). Such a received page will be formatted in appropriate internet-compatible fashion, e^ ., in Hypertext Mark-Up Language ("html"), to display user-selectable links or fields corresponding both to secure areas (6) and non-secure areas (8) of the web server (10). In its filtering role, the encryption module object transforms links or fields corresponding to secured areas (6) of the web server (10) into calls to the encryption module object (12a), (12b), (12c), etc. which will transmit the user selection of a secure area link or field to the web server (10) (or display the web server's (10) corresponding response) only after passing the data stream through the selected encryption/decryption protocol of the encryption module object.
Accordingly, one may conceptually view the invention as dividing the client computer's (20) web browsing activity amongst two discrete objects: one a networking object, for use with respect to non-sensitive data transmission (viz., web browser (32)), and one an encryption module, for sensitive data transmission (the encryption module object (12a), (12b), (12c), etc.). Thus, as to strongly-encrypted communications, the encryption module object or applet may be viewed as replacing or emulating the browser for communications with web server (10) (and secured area (6)). While in the above-described embodiment, encryption module object (12a), (12b), (12c), etc. has been described as residing within web browser (32) (at encryption module area (40)), it should be evident to those of ordinary skill in the art that the client-side networking module and encryption module need not reside at physically contiguous locations, but rather can be implemented from two or more computers remote from one another. In another embodiment, web server (10) may be provided with secured area user interface (46), which is a user interface program (preferably in graphic form) allowing for ready configuration of various aspects of the present invention as implemented on the web server (10) (for instance, the desired level or type of encryption for various categories of transactions, the desired messages (if any) to be downloaded with encryption module object (12a), (12b), (12c) for display on client computer (20), etc.). The user interface (46) may also display to users of web server (10) various parameters regarding operation of the present invention, e.g., number of current clients/users attached to web server (10), security status for client attachments, available encryption formats, etc. Web server (10) may further be connected to a remote encryption module object update site (70) by data line (72). Encryption module object update site (70) may be a server (or web server) maintained as an archive and distribution center for new or updated encryption module objects (12a), (12b), (12c) and (15a), (15b), (15c), so that web server (10) may be supplied (on demand, or on a regular schedule) with the most updated range of strong security modules. Encryption module object update site (70) may be maintained by a third-party vendor or security consulting company, so that the proprietor of web server (10) need not affirmatively research or choose amongst the various encryption formats or standards but rather may be automatically supplied with such formats by encryption module object update site (70) Data line (72) may comprise any suitable connection for electronic communications, such as a dedicated line or an internet data connection.
It will likewise be evident that, although the above discussion contemplates storage and transmission of encryption module object (12a), (12b), (12c), etc. from web server (10) to client computer (20), the present invention may also be implemented by having the encryption module objects supplied by a third computer, potentially remote from either of web server (10) or client computer (20). Fig. 2 illustrates such an alternative embodiment for establishing strongly-secured communications. Web server (10) and client computer (20) are represented as before, except that encryption module suite (12) is no longer actively called upon by web server (10) and web server (10) is now provided with an additional communications object (17). Instead, encryption server (50) (which may be located at any desired location accessible by public data network/internet connections) contains memory (52), processor (54), and encryption module suite (56). Encryption module suite (56) serves the same function as encryption module suite (12) served in connection with the embodiment of Fig. 1 ; viz.. it contains encryption module objects (56a), (56b), (56c), etc. In operation, client computer (20) initiates communication with web server (10), as before, sending a session start request over line (18) with a client-determined standard of encryption, and, as before, web server (10) analyzes such session start request to determine whether client computer (20) is using a standard of encryption acceptable to the web server proprietor. If so, communications may continue over line (18) with no further modifications. If not, though, processor (16) of web server (10) sends back to client computer (20) an html document instructing the client computer to obtain, and execute, two software objects.
The first software object is a communications object (17) contained on web server (10). The second object is an encryption module object, specifically, one of encryption module object (56a), (56b), (56c), etc. contained in encryption suite (56) on encryption server (50). Client computer (20) immediately obtains such objects (over, respectively, line (18) to web server (10) and weakly-encrypted communications line (60) connecting client computer (20) to encryption server (50)). Communications object (17) then auto-executes on client computer (20), using the encryption supplied by simultaneously-self-executing encryption module object (56a), (56b), (56c), etc. to establish a new connection over line (18) between web server (10) and client computer (20), which connection possesses the web-server-specified standard of encryption.
The advantage of the embodiment described in connection with Fig. 2 is that it permits judicious locating of the web server (10) and encryption server (50). If, for example, a web server proprietor and its databases were located in the United States, and certain client computers (20) were located in Europe, but the United States government prohibited export of certain strong encryption standards to Europe, encryption server (50) could be located in a country having favorable export control laws as to strong encryption (as, for example, Australia), so that a strongly-encrypted communication line could be established between U.S. web server (10) and Europe- based clients (20) without ever exporting strong encryption standards from the U.S. to Europe.
While the foregoing description has principally discussed the instant invention in the context of a method of securing data transmission, the instant invention also comprehends a computer system for such secured data transmissions, in which the system may impose a level of encryption desired by a network server upon communications over a network by causing to be downloaded to a client computer (in transparent fashion) an encryption algorithm (e.g., encryption module object ((12a), (12b), (12c)). The system includes web server (10) (which is linkable to a client computer (20) over data line (18)) and associated hardware and software components, for instance encryption suite (12) and memory (14) and processor (16). Such an apparatus has the capability of establishing secured transactions by implementing, and managing (for instance, by use of secured area interface (46)) the download of automatically-executing encryption module objects to client computer (20) and the subsequent encrypted transmission of data associated with secured area (6).
Those of ordinary skill in the art will appreciate that the foregoing discussion of certain preferred embodiments is illustrative only, and does not limit the spirit and scope of the present invention, which are limited only by the claims set forth below.

Claims

1. A method for securing transmission of certain computer data in data transmissions over a public network between a network server and a client computer by imposing upon said data transmissions one of a selected set of standards of data encryption and decryption, said method comprising the steps of:
(a) defining said network-server-selected set of standards of data encryption and decryption of said certain computer data;
(b) conducting an initial communication between said client computer and said network server over said public network using a first data encryption and decryption standard selected by said client computer;
(c) causing said network server to identify said client- computer-selected encryption and decryption standard;
(d) comparing said client-computer-selected encryption and decryption standard with said network-server-selected set of standards of data encryption and decryption for said certain computer data;
(e)(i) if said client-computer-selected encryption and decryption standard matches one of said network-server-selected set of standards of data encryption and decryption for said certain computer data, permitting transmission of said certain computer data between said network server and said client computer using said client-computer selected encryption and decryption standard;
(e)(ii) if said client-computer-selected encryption and decryption standard does not match one of said network-server-selected set of standards of data encryption and decryption for said certain computer data, automatically transmitting from said network server to said client computer over said public network a software module for performing encryption and decryption in accordance with one of said network-server-selected set of standards of data encryption and decryption.
2. The method of claim 1 , wherein a software module comprising a software object is automatically transmitted from said network server to said client computer.
3. The method of claim 1 , wherein a software module comprising a program arranged for automatic execution as an agent of a software program on said client computer is automatically transmitted from said network server to said client computer.
4. The method of claim 2, wherein said software object comprises a software object for execution within a network browser.
5. The method of claim 4, wherein said software object comprises a JAVA or ActiveX object.
6. The method of claim 1, further comprising the step of allowing said software module to execute within said client computer for encryption and decryption of said certain computer data.
7. The method of claim 6, wherein said software module comprises a software object.
8. The method of claim 7, wherein said software object comprises a software object for execution within a network browser.
9. The method of claim 8, wherein said software object comprises a JAVA or ActiveX software object.
10. The method of claim 1, wherein said public network comprises an internet connection.
11. The method of claim 1 , wherein said network-server-selected set of standards of data encryption and decryption comprise strong encryption standards.
12. The method of claim 1 , wherein said client computer comprises a browser program for the World Wide Web and said network server comprises a
World Wide Web server.
13. The method of claim 5, wherein the step of defining said network-server-selected set of standards of data encryption and decryption includes periodically transmitting updated standards of data encryption and decryption from a remote update computer to said network server.
14. The method of claim 9, wherein the step of defining said network-server-selected set of standards of data encryption and decryption includes periodically transmitting updated standards of data encryption and decryption from a remote update computer to said network server.
15. A method for securing transmission of certain computer data in data transmissions over a public network between a network server and a client computer by imposing upon said data transmissions one of a selected set of standards of data encryption and decryption, said method comprising the steps of:
(a) defining said network-server-selected set of standards of data encryption and decryption of said certain computer data;
(b) receiving an initial communication between said client computer and said network server over said public network using a first data encryption and decryption standard selected by said client computer;
(c) causing said network server to identify said client- computer-selected encryption and decryption standard; (d) comparing said client-computer-selected encryption and decryption standard with said network-server-selected set of standards of data encryption and decryption for said certain computer data;
(e)(i) if said client-computer-selected encryption and decryption standard matches one of said network-server-selected set of standards of data encryption and decryption for said certain computer data, permitting transmission of said certain computer data between said network server and said client computer using said client-computer selected encryption and decryption standard;
(e)(ii) if said client-computer-selected encryption and decryption standard does not match one of said network-server-selected set of standards of data encryption and decryption for said certain computer data, automatically transmitting to said client computer from an encryption server computer remote from said network server a software module for performing encryption and decryption in accordance with one of said network-server-selected set of standards of data encryption and decryption.
16. The method of claim 15, further comprising the step of allowing said software module to execute within said client computer for encryption and decryption of said certain computer data.
17. The method of claim 16, further comprising the step of transmitting from said network server to said client computer (contemporaneous with the transmission of said software module for performing encryption and decryption) a communications object module for establishing an encrypted communication between said client computer and said network server using said software module for performing encryption and decryption.
18. A method for filtering a two-way data communications stream between a client computer and a network server, said network server comprising a secured area and a non-secured area, comprising the steps of:
(a) analyzing said data communications stream; (b) determining whether a portion of said data communications stream pertains to data from said secured area;
(c) if said portion of said data communications stream does pertain to data from said secured area, transforming calls upon said secured area into calls upon an encryption module software object executing on said client computer and downloaded from said network server; and
(d) causing said encryption module software object to apply encryption and decryption (according to an encryption standard previously specified by said network server) upon said portions of said data communication stream, whereby communications between said client computer and said secured area of said network computer are made secure in accordance with the specified encryption standard..
19. A method for imposing desired levels of encryption upon data communications between a client computer and a web server (each having a processor and a memory), wherein said client computer browses among data contained on said web server, comprising the steps of:
(a) defining more-sensitive and less-sensitive portions of said data communications;
(b) providing said client computer with input/output access to:
(i) a networking software object for browsing with respect to said less-sensitive portions of said data communications and
(ii) an encryption software object for browsing with respect to said more-sensitive portions of said data communications; (c) routing said less-sensitive and more-sensitive portions of said data communications through said respective networking and encryption software objects for browsing by said client computer; and
(d) imposing said desired levels of encryption upon said less-sensitive and more-sensitive portions of said data communications using said respective networking and encryption software objects.
20. The method of claim 19, further comprising the step of providing to said respective processors of said web server and said client computer both said less-sensitive and said more-sensitive portions of said data communications in unencrypted form.
21. The method of claim 19, wherein said network software object comprises a web browser resident on said client computer and said encryption software object comprises an encryption software object module downloaded to said client computer following initiation of said data communications.
22. The method of claim 21 , wherein said encryption software object module is downloaded to said client computer from said web server.
23. The method of claim 21 , wherein said encryption software object module is downloaded to said client computer from an encryption server computer remote from said web server.
24. The method of claim 21, wherein said encryption software object applies to said more-sensitive portions of said data communications a strong level of encryption dictated by said web server.
25. The method of claim 24, wherein the step of applying a strong level of encryption comprises encrypting said more-sensitive portions of said data communications when they are outbound from said client computer to said web server in accordance with said strong level of encryption, and decrypting said more-sensitive portions of said data communications when they are inbound to said client computer from said web server, whereby said strong level of encryption is applied to said more- sensitive portions of said communications when travelling in both inbound and outbound directions from and to said client computer but whereby said more-sensitive portions of said data communications are made available to said client computer in unencrypted form.
26. The method of claim 25, wherein said data communications between said client computer and said web server comprise communications over the internet.
27. The method of claim 20 wherein said encryption software object comprises a JAVA or ActiveX object.
28. A method for securing transmission of data over a network between a network server and a client computer comprising the steps of:
(a) initiating data communication between said network server and said client computer; (b) automatically downloading to said client computer an encryption algorithm for said data; and
(c) applying said encryption algorithm to said data on said client computer; whereby said data is automatically encrypted for transmission in accordance with an encryption standard chosen by said network server and whereby said encryption is implemented in a manner transparent to said client computer.
29. The method of claim 28, wherein said automatically- downloaded encryption algorithm comprises an encryption object software module.
30. The method of claim 29, wherein said encryption object software module self-executes within said client computer upon being automatically downloaded.
31. The method of claim 28, further comprising the step of periodically updating the particular encryption algorithm that is automatically downloaded..
32. The method of claim 28, further comprising the step of providing said data in decrypted form to processors of said network server and said client computer.
33. The method of claim 28, wherein said network is a public network.
34. The method of claim 33, wherein said public network comprises an internet connection.
35. The method of claim 28, wherein said encryption algorithm is automatically downloaded to said client computer from said network server.
36. The method of claim 28, wherein said encryption algorithm is automatically downloaded to said client computer from a computer other than said network server.
37. A system for securing transmission of data over a network, comprising: (a) a network server comprising a computer memory and a computer processor, said network server linkable to a network, the network in turn linkable to a client computer;
(b) an encryption algorithm;
(c) means for establishing a network connection to the client computer through the network;
(d) means for downloading said encryption algorithm to the client computer over the network connection;
(e) means for conducting transmission of data with the client computer over the network connection in accordance with said encryption algorithm, whereby said transmission is conducted on an encrypted basis in accordance with an encryption standard chosen by said network server and whereby said encryption is imposed on said transmission in a manner transparent to the client computer.
38. The system of claim 37, wherein said encryption algorithm comprises an encryption object software module.
39. The system of claim 38, wherein said encryption object software module self-executes within said client computer upon being automatically downloaded.
40. The system of claim 39, wherein said means for establishing a network connection to the client computer through the network comprises a data line connected to the internet.
41. The system of claim 37, wherein said encryption algorithm resides within the memory of said network server for automatic download to the client computer.
42. The system of claim 37, wherein said encryption algorithm resides within the memory of a computer other than said network server for automatic download to the client computer.
43. The system of claim 41, wherein said encryption algorithm comprises an encryption object software module for self-execution on the client computer.
44. The system of claim 42, wherein said encryption algorithm comprises an encryption object software module for self-execution on the client computer.
45. The system of claim 37, wherein said encryption algorithm comprises an algorithm for strong encryption of sensitive data transmitted in part over a public network.
46. The system of claim 38, wherein said encryption algorithm comprises a data filter for securing of transmissions between the client computer and a secured area within said processor or said memory of said network server.
47. The system of claim 37, further comprising means for providing said data in unencrypted form to a processor of said client computer and said processor of said network computer.
48. The system of claim 37, further comprising means for updating on a periodic basis said encryption algorithm for automatic downloading to the client computer.
PCT/IB2000/001765 1999-12-22 2000-11-09 Enhanced computer network encryption using downloaded software objects WO2001047205A2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU14085/01A AU1408501A (en) 1999-12-22 2000-11-09 Enhanced computer network encryption using downloaded software objects

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US47046699A 1999-12-22 1999-12-22
US09/470,466 1999-12-22

Publications (2)

Publication Number Publication Date
WO2001047205A2 true WO2001047205A2 (en) 2001-06-28
WO2001047205A3 WO2001047205A3 (en) 2002-07-11

Family

ID=23867736

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB2000/001765 WO2001047205A2 (en) 1999-12-22 2000-11-09 Enhanced computer network encryption using downloaded software objects

Country Status (2)

Country Link
AU (1) AU1408501A (en)
WO (1) WO2001047205A2 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2411554A (en) * 2004-02-24 2005-08-31 Toshiba Res Europ Ltd Selecting encryption methods for secure transmission
WO2010029559A1 (en) 2008-09-15 2010-03-18 Vaultive Ltd. Method and system for secure use of services by untrusted storage providers
WO2011080745A2 (en) 2009-12-31 2011-07-07 Vaultive Ltd. System, apparatus and method for encryption and decryption of data transmitted over a network
US8738683B2 (en) 2008-09-15 2014-05-27 Vaultive Ltd. System, apparatus and method for encryption and decryption of data transmitted over a network
KR101538305B1 (en) * 2010-11-04 2015-07-21 맥아피 인코퍼레이티드 System and method for protecting specified data combinations
US10313371B2 (en) 2010-05-21 2019-06-04 Cyberark Software Ltd. System and method for controlling and monitoring access to data processing applications
US10367786B2 (en) 2008-08-12 2019-07-30 Mcafee, Llc Configuration management for a capture/registration system
CN116846689A (en) * 2023-09-01 2023-10-03 建信金融科技有限责任公司 Financial business data transmission method, device, computer equipment and storage medium

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8548170B2 (en) 2003-12-10 2013-10-01 Mcafee, Inc. Document de-registration
US8473442B1 (en) 2009-02-25 2013-06-25 Mcafee, Inc. System and method for intelligent state management
US8447722B1 (en) 2009-03-25 2013-05-21 Mcafee, Inc. System and method for data mining and security policy management
US20130246336A1 (en) 2011-12-27 2013-09-19 Mcafee, Inc. System and method for providing data protection workflows in a network environment

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5657390A (en) * 1995-08-25 1997-08-12 Netscape Communications Corporation Secure socket layer application program apparatus and method
EP0862301A2 (en) * 1996-11-28 1998-09-02 Fujitsu Limited An encryption communication system using an agent and a storage medium for storing that agent
EP0917320A2 (en) * 1997-10-14 1999-05-19 Lucent Technologies Inc. Optimum routing system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5657390A (en) * 1995-08-25 1997-08-12 Netscape Communications Corporation Secure socket layer application program apparatus and method
EP0862301A2 (en) * 1996-11-28 1998-09-02 Fujitsu Limited An encryption communication system using an agent and a storage medium for storing that agent
EP0917320A2 (en) * 1997-10-14 1999-05-19 Lucent Technologies Inc. Optimum routing system

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2411554A (en) * 2004-02-24 2005-08-31 Toshiba Res Europ Ltd Selecting encryption methods for secure transmission
GB2411554B (en) * 2004-02-24 2006-01-18 Toshiba Res Europ Ltd Multi-rate security
US10367786B2 (en) 2008-08-12 2019-07-30 Mcafee, Llc Configuration management for a capture/registration system
US8738683B2 (en) 2008-09-15 2014-05-27 Vaultive Ltd. System, apparatus and method for encryption and decryption of data transmitted over a network
US9002976B2 (en) 2008-09-15 2015-04-07 Vaultive Ltd System, apparatus and method for encryption and decryption of data transmitted over a network
WO2010029559A1 (en) 2008-09-15 2010-03-18 Vaultive Ltd. Method and system for secure use of services by untrusted storage providers
US9338139B2 (en) 2008-09-15 2016-05-10 Vaultive Ltd. System, apparatus and method for encryption and decryption of data transmitted over a network
US9444793B2 (en) 2008-09-15 2016-09-13 Vaultive Ltd. System, apparatus and method for encryption and decryption of data transmitted over a network
WO2011080745A2 (en) 2009-12-31 2011-07-07 Vaultive Ltd. System, apparatus and method for encryption and decryption of data transmitted over a network
US10313371B2 (en) 2010-05-21 2019-06-04 Cyberark Software Ltd. System and method for controlling and monitoring access to data processing applications
US9794254B2 (en) 2010-11-04 2017-10-17 Mcafee, Inc. System and method for protecting specified data combinations
US10313337B2 (en) 2010-11-04 2019-06-04 Mcafee, Llc System and method for protecting specified data combinations
KR101538305B1 (en) * 2010-11-04 2015-07-21 맥아피 인코퍼레이티드 System and method for protecting specified data combinations
US10666646B2 (en) 2010-11-04 2020-05-26 Mcafee, Llc System and method for protecting specified data combinations
US11316848B2 (en) 2010-11-04 2022-04-26 Mcafee, Llc System and method for protecting specified data combinations
CN116846689A (en) * 2023-09-01 2023-10-03 建信金融科技有限责任公司 Financial business data transmission method, device, computer equipment and storage medium
CN116846689B (en) * 2023-09-01 2023-12-26 建信金融科技有限责任公司 Financial business data transmission method, device, computer equipment and storage medium

Also Published As

Publication number Publication date
WO2001047205A3 (en) 2002-07-11
AU1408501A (en) 2001-07-03

Similar Documents

Publication Publication Date Title
WO2022206349A1 (en) Information verification method, related apparatus, device, and storage medium
US9832183B2 (en) Key management using quasi out of band authentication architecture
CA2341213C (en) System and method for enabling secure access to services in a computer network
US7373517B1 (en) System and method for encrypting and decrypting files
JP6012125B2 (en) Enhanced 2CHK authentication security through inquiry-type transactions
US7287271B1 (en) System and method for enabling secure access to services in a computer network
US6986040B1 (en) System and method of exploiting the security of a secure communication channel to secure a non-secure communication channel
US6694431B1 (en) Piggy-backed key exchange protocol for providing secure, low-overhead browser connections when a server will not use a message encoding scheme proposed by a client
US8769784B2 (en) Secure and efficient authentication using plug-in hardware compatible with desktops, laptops and/or smart mobile communication devices such as iPhones
US7903822B1 (en) Method and system for establishing a trusted and decentralized peer-to-peer network
KR100431567B1 (en) Dynamic connection to multiple origin servers in a transcoding proxy
US7853782B1 (en) Secure intermediation system and method
US20030229786A1 (en) System and Method for Application-Level Virtual Private Network
JP2015528149A (en) Start of corporate trigger type 2CHK association
JP2003502983A (en) Transaction method and system with guaranteed security on computer network
US9069869B1 (en) Storing on a client device data provided by a user to an online application
US6751731B1 (en) Piggy-backed key exchange protocol for providing secure, low-overhead browser connections to a server with which a client shares a message encoding scheme
AU2002235149A1 (en) System and method for securing a non-secure communication channel
TW200307439A (en) Mechanism for supporting wired and wireless methods for client and server side authentication
Cano et al. A secure energy-efficient m-banking application for mobile devices
US11895153B1 (en) Secure electronic transactions using transport layer security (SETUTLS)
WO2001047205A2 (en) Enhanced computer network encryption using downloaded software objects
US20080306875A1 (en) Method and system for secure network connection
AU2009295193A1 (en) Method and system for user authentication
US9172679B1 (en) Secure intermediation system and method

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

AK Designated states

Kind code of ref document: A3

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A3

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
122 Ep: pct application non-entry in european phase