WO2001018636A1 - System and method for authenticating a web page - Google Patents

System and method for authenticating a web page Download PDF

Info

Publication number
WO2001018636A1
WO2001018636A1 PCT/US2000/024431 US0024431W WO0118636A1 WO 2001018636 A1 WO2001018636 A1 WO 2001018636A1 US 0024431 W US0024431 W US 0024431W WO 0118636 A1 WO0118636 A1 WO 0118636A1
Authority
WO
WIPO (PCT)
Prior art keywords
authenticity
page
user
data
key
Prior art date
Application number
PCT/US2000/024431
Other languages
French (fr)
Inventor
David Armes
Fred Bishop
Elliot Glazer
Dirk White
Michael Barrett
Original Assignee
American Express Travel Related Services Company, Inc.
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=22545394&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=WO2001018636(A1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by American Express Travel Related Services Company, Inc. filed Critical American Express Travel Related Services Company, Inc.
Priority to AU71168/00A priority Critical patent/AU7116800A/en
Publication of WO2001018636A1 publication Critical patent/WO2001018636A1/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/08Network architectures or network communication protocols for network security for authentication of entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/33User authentication using certificates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/36User authentication by graphic or iconic representation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1483Countermeasures against malicious traffic service impersonation, e.g. phishing, pharming or web spoofing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2151Time stamp
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/121Timestamp
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic

Definitions

  • the present invention relates generally to computer security, and more particularly, to systems and methods for authenticating a web page
  • Web pages often include icons, such as, corporate logos patterns, characters, symbols or other indicators, that a user associates with a particular offering in the real world A trust or good will is often associated with the recognition of a given set of icons
  • icons are implemented, for example, as bitmaps, but unfortunately, these bitmaps can be copied and used to defraud a prospective customer Additionally, customers rely on the accuiacy of a URL of a web page
  • a user may retrieve an unwanted webpage that appears authentic Therefore, the user may not always be confident that the web page being viewed is authentic and the true owner of a web page may be uncertain
  • a user requests a web page from a web site using a web browser
  • the web server receives the request, retrieves the web page and forwards it to an authentication server
  • the authentication server inserts an authenticity key into the web page, then the page (including the authenticity key) is returned to the user If the page includes an authenticity key, the authenticity is verified at the user's computer because the user computer includes logic (e g , software) to verify the authenticity
  • the authenticity verification software is a browser plug-in and is configured by the user after it is downloaded to the user's computer During the user configuration process, the user defines an authenticity stamp which determines the format of an authenticated page In alternative embodiments, the user defines a non-authenticity stamp which will appear on non-authenticated pages
  • Figure 2 is the exemplary web page of Figure 1 that has been authenticated in accordance with the present invention
  • Figure 3 is the exemplary web page of Figure 1 that has been authenticated using an alternative embodiment of the present invention
  • Figure 4 is a block diagram of an exemplary system configuration suitable for implementing the present invention
  • FIG. 5 is a message sequence diagram for performing page authentication in accordance with the present invention.
  • Figures 6A and 6B are a flow diagram illustrating exemplary logic performed by a user computer for performing authentication in accordance with the present invention
  • FIG. 7 is a flow diagram illustrating exemplary logic for loading an authentication module in accordance with the present invention
  • Figure 8 is a flow diagram illustrating exemplary logic for verifying authenticity and displaying an authenticated page in accordance with the present invention
  • Figure 9 is a flow diagram illustrating exemplary logic performed by a web server for performing authentication in accordance with the present invention
  • Figure 10 is a flow diagram illustrating exemplary logic performed by an authentication server in accordance with the present invention.
  • Figure 1 is an exemplary authenticity key
  • the present invention provides for an icon with an additional level of functionality that allows a user to validate that current information (e g , a web page) originates from the true owner of the icon and is not merely a copy
  • a hierarchy of validations exists which allow not only for the validation of an individual icon, but also for the validation of screens and Uniform Resource Locators (URLs)
  • SSL Secure Sockets Layer
  • the present invention validates aspects of the screen display independent of the communications channel between the user and the web site (however, security session protocols may be used in addition to the present invention) The validation is performed using only information that the true owner of the icon can possess
  • Figure 1 is an example of a simple web page
  • the web page 50 includes a title 52, several hyperlinks 54A, 54B, 54C and 54D, some textual information 56 and two graphical images 58 A and 58B
  • an authenticated page includes an authenticity stamp 60 in which the user can specify the appearance of the authenticity stamp
  • the user of the example shown in Figure 2 defined the authenticity stamps to be a diamond shape which includes text (bold and italicized) that states "JOE'S SEAL OF APPROVAL "
  • a user can configure the stamp to be graphics only, text only or a combination thereof
  • the user also specifies the color and other attributes of the stamp, for example, a blinking stamp
  • the user also specifies the location of the stamp, e g , bottom right corner of the web page, pop-up dialog box, etc
  • the authenticity stamp can be audio instead of or in addition to visual
  • a non- authenticated page is stamped and an authenticated page is not stamped
  • the stamp is configured to be
  • FIG 3 illustrates an alternative embodiment wherein each graphical image includes an embedded authenticity stamp 62A and 62B
  • each graphical element has an authenticity stamp containing the text "A-OKAY" embedded in the graphical image
  • the authenticity stamp is defined by the user
  • the authenticity stamp is defined by the owner of the page being displayed (e g , the web server)
  • the stamp can include the name of the trusted entity (I e , the true owner of the page)
  • FIG 4 is a block diagram of an exemplary environment 100 suitable for implementing the present invention
  • the system 100 includes one or more clients (e g , users) 1 10 that communicate with one or more servers (e g , web servers) 120
  • the users 110 can use any type of computing device that includes a display device, for example, a Personal Computer It will be appreciated that other computing devices can be used, for example, a Personal Digital Assistant (PDA), a hand-held computing device, a cellular telephone, etc
  • the web server can be any site, for example
  • FIG. 5 is a message sequence diagram illustrating exemplary communications among various components to assure a user of the authenticity of a page
  • User 110 includes a web browser 1 12 and a plug-in 1 14
  • a user requests a page 180, but the user (e g , user computer) 1 10 has no knowledge that the page requested is "special" (e g , is subject to page authentication)
  • the page request 180 is a normal page request (e g , a HTTP or HTTPS request for a page)
  • the web server 120 receiving the page request 180 determines whether the request is for an authenticated page If the page is to be authenticated, the page is dynamically signed with a private key and additional information, such as a salt with a time stamp is also included as described in further detail later.
  • the signed page is returned with a special authenticated page MIME type and returned to the web browser 1 12 Based on the MIME type, the web browser activates the appropriate plug-in 1 14
  • the plug-in 1 14 uses a public key to verify the signature, and upon verification of the signature, the plug-in can validate the authenticity of the page
  • the plug-in 1 14 requests the user's preferences key 186 so that the page can be displayed with an authenticity stamp
  • the request for preferences key includes a shared secret and is encrypted with the public key and salt
  • the web server 120 decrypts the request using the private key, validates the shared secret and encrypts the preferences key with the private key, shared secret and salt from the request 186
  • the encrypted preferences key is then returned to the plug-in 1 14
  • the plug-in 1 14 reads the preferences file and decrypts it using the preferences key from the web server 120
  • the preferences file is stored on the user's 1 10 file system
  • the location of the file is not readily known to the plug-in 1 14
  • the plug-in 1 14 must get the preferences key to determine the location of the preferences file
  • the plug-in 1 14 reads the preferences file to determine the authenticity stamp and how it is to be displayed
  • the page is then displayed with the user's preferred authenticity stamp 190
  • Figures 6A-10 illustrate exemplary logic for performing page authentication in accordance with the present invention
  • the flow diagrams illustrate in further detail the logic illustrated in the message sequence diagram of Figure 5
  • Figures 6A-8 illustrate exemplary logic performed by a user computer 1 10 as described below
  • Figure 9 illustrates exemplary logic performed by a web server 120 as described below
  • Figure 10 illustrates exemplary logic performed by an authentication server 140 as described below
  • the logic of the authentication server 140 can be combined with the logic of the web server 120
  • Figures 6A and 6B are a flow diagram illustrating exemplary logic performed by a user 1 10 for performing authentication in accordance with the present invention
  • the logic described herein is directed to web pages, however it will be appreciated that the information requested can be of various formats
  • the logic of Figure 6 A moves from a start block to block 200 to wait for a page request
  • a page request is known in the art, for example, a user enters a Uniform Resource Locator (URL) or clicks on a hyperlink
  • the logic then moves to block 201 where a received page request is sent to a web Server 120 to retrieve the requested page
  • the logic then moves to block 202 where the user (e g , the user's browser) waits for the requested page
  • the logic of retrieving and formatting the requested page is described below with reference to Figures 9 and 10
  • the logic moves to block 204 where the page is read
  • decision block 205 where a test is made to determine if a UserlD/Password is required It will be
  • the logic moves to decision block 209 ( Figure 6B) where a test is made to determine if authentication is required In exemplary embodiments, an authenticity key will be hidden in any page that should be authenticated In order to determine if the page should be authenticated, the page source is read to determine if an authenticity key is included in the page If authentication is not required, the logic moves to block 210 where the non-authenticated page is displayed A non-authenticated page is a traditional web page (I e , the way the web page would be displayed without the authentication of the present invention, such as the example shown in Figure 1)
  • the logic moves to decision block 21 1 where a test is made to determine if the authentication module is loaded
  • the authentication module is a plug-in module for the web browser
  • a message will be displayed For example, "This page protected by AuthentiPage, to get a free copy, go to Authentipage com " Alternatively, the message may ask the user if a download of the authentication module is desired
  • the logic moves to decision block 214 where a test is made to determine if the authentication module should be loaded If the authentication module is not to be loaded, the logic moves to block 218 where the page is displayed without authentication
  • the user will be notified that the page could not be authenticated, for example via a pop-up window displaying a warning message
  • the user defines a non-authenticity stamp which is displayed for a page that has not been authenticated
  • the logic moves to block 216 where the authentication module is loaded as shown in Figure 7 and described next If a download of the authentication module is desired, the user may be automatically redirected to the download site
  • Figure 7 illustrates exemplary logic for loading an authentication module (block 216 of Figure 6B)
  • the logic of Figure 7 moves from a start block to block 300 where the authentication module (e g , plug-in) is downloaded The download is accomplished using techniques known in the art After the authentication module is downloaded to the user's computer, the logic moves to block 302 where the authentication module is configured As part of the configuration process, an authenticity stamp is defined by the user This authenticity stamp will be displayed whenever an authenticated page is loaded
  • the stamp can take several forms, for example, a user-selected keyword, color, etc
  • the determination of the look of the authenticity stamp is under complete control of the user
  • the user is also able to determine where the stamp will be displayed, for example in a separate pop-up box or in a selected area of the web page
  • the stamp is defined in terms of visual qualities here
  • Figure 8 illustrates exemplary logic for verifying the authenticity of a page and displaying the page
  • the logic of Figure 8 moves from a start block to block 400 where the authenticity of the page is verified
  • Many algorithms can be used to verify the authenticity
  • the trusted server that generates the authenticity key can encrypt the authenticity key with a private key
  • the user can then decrypt the authenticity key using a public key Using this method, no certificate is required and no interaction is required by the user
  • Other algorithms can be used, some of which may require a certificate and/or user interaction
  • the authentication of pages should not require any additional security or encryption
  • the authentication of a page can be employed on any page, for example, marketing data, purchase information, etc , to prove the page's authenticity
  • authentication of pages will not require additional security or encryption
  • page authentication performed in accordance with the present invention can be used in combination with other known or future security measures, for example, in conjunction with a secure protocol, such as HTTPS, along with the requirement for a UserlD and a password, etc
  • Figure 9 is a flow diagram illustrating exemplary logic performed by a web server 120 for performing authentication in accordance with the present invention
  • the logic of Figure 9 moves from a start block to block 500 where the web server waits for a request
  • other requests continue to be serviced (e g , receiving and processing page requests)
  • the logic moves to decision block 501 where a test is made to determine if the request is a request for validation of a UserlD/Password If so, the logic moves to block 502 where the received UserlD/Password (sent in block 108 of Figure 6A) is forwarded to the authentication server 140
  • the logic moves to decision block 504 where a test is made to determine if the request is a page request If so, the logic moves to block 505 where the page request is read The logic then moves to block 506 where the requested page is retrieved Next, the logic moves to block 507 where the requested page is forwarded to an authentication server 140 The logic then moves to block 508 where the web server waits for the authenticated page to be returned from the authentication server In exemplary embodiments, while the web server is waiting for an authenticated page, other processing can be performed, for example, page requests can be received and processed When an authenticated page is received, the logic moves to block 510 where the authenticated page is returned to the user that requested the page
  • the request is not a request to verify a UserLD/Password (no in decision block 501) or a page request (no in decision block 504), the request is another request, which is processed in block 512
  • Other requests which may be processed by a web Server are not described herein
  • Figure 10 is a flow diagram illustrating exemplary logic performed by an authentication server 140 for performing authentication in accordance with the present invention
  • the logic of Figure 10 moves from a start block to block 600 where the authentication server waits for an authentication request
  • decision block 601 determines if the request is a request to decrypt a UserlD/Password If so, the logic moves to block 602 where the UserlD/Password is decrypted
  • the logic then moves to block 604 where the decrypted UserlD/Password is forwarded to a security engine for verification
  • the security engine is an existing security engine, such as a DSS Security Engine
  • the Security Engine verifies the UserlD/Password and forwards the verification as appropriate For example, if the UserlD is not valid, a message will be displayed on the user's computer Because security engines are known in the art, the logic employed by the security engine is not discussed further herein If the request is not a request to decrypt a UserlD/Password, the logic moves to decision block 601 to determine
  • a request is processed (e g , a UserlD/Password is decrypted or a page is authenticated)
  • the logic moves to decision block 616 where a test is made to determine if it is time to exit
  • the logic of blocks 600-616 is repeated until it is time to exit (e g , shut down the authentication server)
  • the logic of Figure 10 ends
  • there is no authentication server Rather, graphical images include a hidden identifier identifying the true owner, as well as a cryptographic signature to ensure that the graphical image cannot be tampered with by a counterfeiter
  • the identification is a portion of a URL that is encrypted, such as "bigbank com" Those skilled in the art will recognize this as a second-level domain name
  • An exemplary authenticity key is constructed in such a way that "freshness" can be determined, for example using a date/time stamp
  • the authenticity key will also include other identifying information as described later
  • An exemplary authenticity key contains one or more hidden signature objects
  • the hidden signature object is a value that is the encoding of the following fields web page hash, action, date/time, key identifier and digital signature
  • the web page hash is generating using SHA-1 on the entire web page excluding this hidden signature object
  • the Secure Hash Algorithm was developed by the National Institute of Standards and Technology (NIST) and is specified in the Secure Hash Standard (SHS, FIPS 180)
  • SHA-1 is a revision to SHA that was published in 1994
  • SHA-1 is also described in the ANSI X9 30 (part 2) standard
  • the algorithm takes a message of greater than 264 bits in length and produces a 160-bit message digest
  • the action is a value used to specify the action to be performed by the browser plug-in that verifies this page
  • the key identifier is used to identify the public key used to verify the signature
  • a digital signature is used as a salt value concatenated with an SHA-1 hash of the other four fields (web page hash, action, date/time and key identifier) that has been encrypted using the private key of the web Page server
  • a "salt value" is an arbitrary random value that constantly changes in order to minimize the possibility of various attacks
  • a private key (of the web page server) is used to create the "digital signature" within the web page signature
  • a digital signature is generally defined to include a certificate
  • exemplary embodiments do not include a certificate
  • various embodiments can include a certificate in the digital signature
  • the private key is only distributed to applications requiring its use
  • a public key is buried in multiple pieces throughout the browser plug-in
  • the public key is used to verify the Digital Signature within the web Page signature Although the public key itself can be distributed, its storage location should remain as obscure as possible to reduce the possibility of attacks
  • the master encryption key is also buried in multiple places in the browser plug-in
  • the master encryption key is used to encrypt the preferences encryption key that is stored on the user's computer
  • the preferences encryption key that is stored on the user s computer is used to encrypt preferences (e g , user configuration information, such as appearance and location of authenticity stamp
  • the browser plug-in' s user display is displayed on the user s computer display with the secure word that will request the UserlD and Password
  • These two values will be prefixed with the salt value and date/time information from the web page signature and encrypted using the public key
  • This information will then be sent by the plug-in performing the Submit
  • the Submit explicitly references the URL to which the information is to be sent This will allow the information only to be sent to the destination that was previously signed within the web Page signature
  • the preferences file is used to store information, such as a user's secure word
  • the preferences file is placed in a random directory to help obscure the location of the preference file and facilitate the creation of unique user configurations This increases the difficulty in creating a general purpose rogue program for extracting preferences and keys
  • new keys are implemented through redistribution of the browser plug-in
  • the new plug-in can contain both the old and new keys to facilitate implementation of the new keys on a particular date
  • the authentication module may contain a list of all known UserlDs
  • the list of known UserlDs can be displayed so that the user can select a desired UserlD
  • the user is prompted to enter a password
  • the UserlD and password are encrypted with the use of the public key to authenticate the authenticity key
  • the entire string (e g , [UserlD] [Password] [original salt value]) is sent to the trusted server for verification
  • the trusted server 120 then extracts the UserlD and password and forwards them to the authentication server 140 for verification
  • Exemplary embodiments allow a user to check the validity of their authentication module
  • a server allows the authentication module to send a request for self-verification
  • the validation is performed in response to a user request
  • the authentication module includes a suitable user interface which allows a user to request self-verification
  • the authentication module generates a random number ("salt") and encrypts it with the public key
  • the value is then sent to a known URL (e g , a URL that is hard-coded in the authentication module)
  • a known URL e g , a URL that is hard-coded in the authentication module
  • the authentication module receives the request, it is decrypted using the private key and adding an additional salt value which is then returned to the client module (user)
  • the client module decrypts the response received from the authentication module
  • the random values are then compared (without the additional salt added by the authentication module) If the value matches the value originally sent, the self- verification is successful
  • a verification result is displayed to the user to indicate whether the verification was
  • the present invention may be described herein in terms of functional block components, screen shots, optional selections and various processing steps It should be appreciated that such functional blocks may be realized by any number of hardware and/or software components configured to perform the specified functions.
  • the present invention may employ various integrated circuit components, e.g., memory elements, processing elements, logic elements, look-up tables, and the like, which may carry out a variety of functions under the control of one or more microprocessors or other control devices
  • the software elements of the present invention may be implemented with any programming or scripting language such as C, C++, Java, COBOL, assembler, PERL, or the like, with the various algorithms being implemented with any combination of data structures, objects, processes, routines or other programming elements.
  • the present invention may employ any number of conventional techniques for data transmission, signaling, data processing, network control, and the like.
  • cryptography please review a text written by Bruce Schneider which is entitled “Applied Cryptography Protocols, Algorithms, And Source Code In C,” published by John Wiley & Sons (second edition, 1996), which is hereby incorporated by reference
  • the invention is frequently described as pertaining to an authentication system. It will be appreciated, however, that many applications of the present invention could be formulated
  • the network may include any system for exchanging data or transacting business, such as the Internet, an intranet, an extranet, WAN, LAN, satellite communications, and/or the like
  • the users may interact with the system via any input device such as a keyboard, mouse, kiosk, personal digital assistant, handheld computer (e g , Palm Pilot®), cellular phone and/or the like
  • the invention could be used in conjunction with any type of personal computer, network computer, workstation, minicomputer, mainframe, or the like running any operating system such as any version of Windows, Windows NT, W ⁇ ndows2000, Windows 98, Windows 95, MacOS, OS/2, BeOS, Linux, UNIX, or the like
  • the invention is frequently described herein as being implemented with TCP/IP communications protocols, it will be readily understood that the invention could also be implemented using IPX,
  • the customer and merchant may represent individual people, entities, or business
  • the bank may represent other types of card issuing institutions, such as credit card companies, card sponsoring companies, or third party issuers under contract with financial institutions It is further noted that other participants may be involved in some phases of the transaction, such as an intermediary settlement institution, but these participants are not shown
  • Each participant is equipped with a computing system to facilitate online commerce transactions
  • the customer has a computing unit in the form of a personal computer, although other types of computing units may be used including laptops, notebooks, hand held computers, set-top boxes, and the like
  • the merchant has a computing unit implemented in the form of a computer-server, although other implementations are possible
  • the bank has a computing center shown as a main frame computer However, the bank computing center may be implemented in other forms, such as a mini-computer, a PC server, a network set of computers, and the like
  • the computing units are connected with each other via a data communication network
  • the network is a public network and assumed to be insecure and open to eavesdroppers
  • the network is embodied as the internet
  • the computers may or may not be connected to the internet at all times
  • the customer computer may employ a modem to occasionally connect to the internet, whereas the bank computing center might maintain a permanent connection to the internet
  • the network may be implemented as other types of networks, such as an interactive television (ITV) network
  • the payment network represents existing proprietary networks that presently accommodate transactions for credit cards, debit cards, and other types of financial/banking cards
  • the payment network is a closed network that is assumed to be secure from eavesdroppers Examples of the payment network include the American Express®, VisaNet® and the Ve ⁇ phone® network
  • the electronic commerce system is implemented at the customer and issuing bank
  • the electronic commerce system is implemented as computer software modules loaded onto the customer computer and the banking computing center The merchant computer does not require any additional software to participate in the online commerce transactions supported by the online commerce system

Abstract

The present invention provides for an icon with an additional level of functionality that allows a user to validate that current information (e.g., a web page) originates from the true owner of the icon and is not merely a copy. The method includes a user requesting a web page from a web site using a web browser. The web server receives the request, retrieves the web page and forwards it to an authentication server. The authentication server inserts an authenticity key into the web page, then the page (including the authenticity key) is returned to the user. If the page includes an authenticity key, the authenticity is verified at the user's computer because the user computer includes logic (e.g., software) to verify the authenticity. During the user configuration process, the user defines an authenticity stamp which determines the format of an authenticated page.

Description

SYSTEM AND METHOD FOR AUTHENTICATING A WEB PAGE
FIELD OF THE INVENTION The present invention relates generally to computer security, and more particularly, to systems and methods for authenticating a web page
BACKGROUND OF THE INVENTION Web pages often include icons, such as, corporate logos patterns, characters, symbols or other indicators, that a user associates with a particular offering in the real world A trust or good will is often associated with the recognition of a given set of icons These icons are implemented, for example, as bitmaps, but unfortunately, these bitmaps can be copied and used to defraud a prospective customer Additionally, customers rely on the accuiacy of a URL of a web page However, it is relatively easy for a "fraudster" to register a URL that is like the one the user is expecting, but is not quite the same For example, "www bigbank com" vs ' www bigbank com" (with an "1" instead of an "l") Thus, a user may retrieve an unwanted webpage that appears authentic Therefore, the user may not always be confident that the web page being viewed is authentic and the true owner of a web page may be uncertain
In addition to a user's lack of confidence in the true owner of a web page, there currently exists a problem (either real or perceived) in the transport of UserlDs/Passwords across the Internet While most sites provide security, for example by using a secure protocol such as Secure Hypertext Transfer Protocol (HTTPS) for sensitive data, most consumers are complacent about checking for this security Thus, a need exists for a system and method that allow a page to be authenticated so that a user feels secure in the authenticity of pages displayed from Internet sites
SUMMARY OF THE INVENTION In exemplary embodiments of the invention, a user requests a web page from a web site using a web browser The web server receives the request, retrieves the web page and forwards it to an authentication server The authentication server inserts an authenticity key into the web page, then the page (including the authenticity key) is returned to the user If the page includes an authenticity key, the authenticity is verified at the user's computer because the user computer includes logic (e g , software) to verify the authenticity
In exemplary embodiments the authenticity verification software is a browser plug-in and is configured by the user after it is downloaded to the user's computer During the user configuration process, the user defines an authenticity stamp which determines the format of an authenticated page In alternative embodiments, the user defines a non-authenticity stamp which will appear on non-authenticated pages
BRIEF DESCRIPTION OF THE DRAWINGS
The above and other features and advantages of the present invention are hereinafter described in the following detailed description of illustrative embodiments to be read in conjunction with the accompanying drawing figures, wherein like reference numerals are used to identify the same or similar parts in the similar views, and Figure 1 is an exemplary web page that has not been authenticated,
Figure 2 is the exemplary web page of Figure 1 that has been authenticated in accordance with the present invention,
Figure 3 is the exemplary web page of Figure 1 that has been authenticated using an alternative embodiment of the present invention, Figure 4 is a block diagram of an exemplary system configuration suitable for implementing the present invention,
Figure 5 is a message sequence diagram for performing page authentication in accordance with the present invention,
Figures 6A and 6B are a flow diagram illustrating exemplary logic performed by a user computer for performing authentication in accordance with the present invention,
Figure 7 is a flow diagram illustrating exemplary logic for loading an authentication module in accordance with the present invention,
Figure 8 is a flow diagram illustrating exemplary logic for verifying authenticity and displaying an authenticated page in accordance with the present invention, Figure 9 is a flow diagram illustrating exemplary logic performed by a web server for performing authentication in accordance with the present invention,
Figure 10 is a flow diagram illustrating exemplary logic performed by an authentication server in accordance with the present invention, and
Figure 1 is an exemplary authenticity key
DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS The present invention provides for an icon with an additional level of functionality that allows a user to validate that current information (e g , a web page) originates from the true owner of the icon and is not merely a copy In various exemplary embodiments of the invention, a hierarchy of validations exists which allow not only for the validation of an individual icon, but also for the validation of screens and Uniform Resource Locators (URLs) Unlike Secure Sockets Layer (SSL) or other "security session protocols, the present invention validates aspects of the screen display independent of the communications channel between the user and the web site (however, security session protocols may be used in addition to the present invention) The validation is performed using only information that the true owner of the icon can possess
Figure 1 is an example of a simple web page The web page 50 includes a title 52, several hyperlinks 54A, 54B, 54C and 54D, some textual information 56 and two graphical images 58 A and 58B
A web page that has been authenticated using the present invention will include all of the information in the same format as the non-authenticated page As shown in Figure 2, in addition to the information that would normally be displayed, an authenticated page includes an authenticity stamp 60 in which the user can specify the appearance of the authenticity stamp For example, the user of the example shown in Figure 2 defined the authenticity stamps to be a diamond shape which includes text (bold and italicized) that states "JOE'S SEAL OF APPROVAL " It will be appreciated that an unlimited number of variations of an authenticity stamp are possible A user can configure the stamp to be graphics only, text only or a combination thereof The user also specifies the color and other attributes of the stamp, for example, a blinking stamp The user also specifies the location of the stamp, e g , bottom right corner of the web page, pop-up dialog box, etc In exemplary embodiments, the authenticity stamp can be audio instead of or in addition to visual In alternative embodiments, a non- authenticated page is stamped and an authenticated page is not stamped For example, the stamp is configured to be a red, flashing icon that reads "PAGE NOT AUTHENTICATED" in the upper right-hand corner, while a page that is authenticated does not include this stamp In alternative examples, the user can define both an authenticity stamp and a non-authenticity stamp
Figure 3 illustrates an alternative embodiment wherein each graphical image includes an embedded authenticity stamp 62A and 62B In the example illustrated in Figure 3, each graphical element has an authenticity stamp containing the text "A-OKAY" embedded in the graphical image In exemplary embodiments, the authenticity stamp is defined by the user In other embodiments, the authenticity stamp is defined by the owner of the page being displayed (e g , the web server) In such embodiments, the stamp can include the name of the trusted entity (I e , the true owner of the page) Figure 4 is a block diagram of an exemplary environment 100 suitable for implementing the present invention The system 100 includes one or more clients (e g , users) 1 10 that communicate with one or more servers (e g , web servers) 120 The users 110 can use any type of computing device that includes a display device, for example, a Personal Computer It will be appreciated that other computing devices can be used, for example, a Personal Digital Assistant (PDA), a hand-held computing device, a cellular telephone, etc The web server can be any site, for example a commercial web site, such as a merchant site, a government site, an educational site, etc The user 1 10 establishes a connection to the web server 120 via a network 130, such as the Internet The user 1 10 and web server 120 can communicate using a secure protocol (e g , HTTPS) or a non-secure protocol (e g , HTTP) The user 1 10 requests information from the web server 120, and in exemplary embodiments, the information is communicated using web pages, for example using HyperText Markup Language (HTML) The web pages are displayed on the user's computer 110, for example, using a browser, such as, Netscape Communicator available from the Netscape Corporation of Mountain View, California or Internet Explorer available from the Microsoft Corporation of Redmond, Washington Prior to sending the requested web page to user 1 10, web server 120 submits the information to authentication server 140 where authenticating information is added The information which includes the authenticating information is returned to the web server 120 which then sends the web page including the authentication information to the user 110 In various exemplary embodiments, the authentication server 140 communicates with a security engine 150, for example to verify UserLD/Password logons or single use passwords or identifiers In exemplary embodiments, the security engine 150 is a commercially available security engine, such a, Siteminder available from Netegπty Corporation, of Waltham, Massachusetts The examples illustrated and described herein are directed to exemplary embodiments in which a user utilizes a web browser to request web pages from a web server However, it will be appreciated that various embodiments are possible wherein a client (e g , web browser) requests content (e g , a web page) from a server (e g , a web server) The present invention allows the server to provide the client with assurance as to the authenticity of the content (e g , assure the client as to the true owner of the content)
Figure 5 is a message sequence diagram illustrating exemplary communications among various components to assure a user of the authenticity of a page User 110 includes a web browser 1 12 and a plug-in 1 14 A user requests a page 180, but the user (e g , user computer) 1 10 has no knowledge that the page requested is "special" (e g , is subject to page authentication) Thus, the page request 180 is a normal page request (e g , a HTTP or HTTPS request for a page)
The web server 120 receiving the page request 180 determines whether the request is for an authenticated page If the page is to be authenticated, the page is dynamically signed with a private key and additional information, such as a salt with a time stamp is also included as described in further detail later The signed page is returned with a special authenticated page MIME type and returned to the web browser 1 12 Based on the MIME type, the web browser activates the appropriate plug-in 1 14
The plug-in 1 14 uses a public key to verify the signature, and upon verification of the signature, the plug-in can validate the authenticity of the page The plug-in 1 14 requests the user's preferences key 186 so that the page can be displayed with an authenticity stamp In exemplary embodiments, the request for preferences key includes a shared secret and is encrypted with the public key and salt Upon receipt of the request for preferences key 186, the web server 120 decrypts the request using the private key, validates the shared secret and encrypts the preferences key with the private key, shared secret and salt from the request 186 The encrypted preferences key is then returned to the plug-in 1 14
The plug-in 1 14 reads the preferences file and decrypts it using the preferences key from the web server 120 In exemplary embodiments, the preferences file is stored on the user's 1 10 file system However, the location of the file is not readily known to the plug-in 1 14 Thus, the plug-in 1 14 must get the preferences key to determine the location of the preferences file The plug-in 1 14 reads the preferences file to determine the authenticity stamp and how it is to be displayed The page is then displayed with the user's preferred authenticity stamp 190
Figures 6A-10 illustrate exemplary logic for performing page authentication in accordance with the present invention The flow diagrams illustrate in further detail the logic illustrated in the message sequence diagram of Figure 5 In addition to authenticating a page, the present invention provides for additional security wherein a UserLD/Password are encrypted with the public key to prevent "man in the middle" attacks Figures 6A-8 illustrate exemplary logic performed by a user computer 1 10 as described below Figure 9 illustrates exemplary logic performed by a web server 120 as described below Figure 10 illustrates exemplary logic performed by an authentication server 140 as described below It will be appreciated that various configurations are possible For example, the logic of the authentication server 140 can be combined with the logic of the web server 120
Figures 6A and 6B are a flow diagram illustrating exemplary logic performed by a user 1 10 for performing authentication in accordance with the present invention The logic described herein is directed to web pages, however it will be appreciated that the information requested can be of various formats The logic of Figure 6 A moves from a start block to block 200 to wait for a page request It will be appreciated that a page request is known in the art, for example, a user enters a Uniform Resource Locator (URL) or clicks on a hyperlink The logic then moves to block 201 where a received page request is sent to a web Server 120 to retrieve the requested page The logic then moves to block 202 where the user (e g , the user's browser) waits for the requested page The logic of retrieving and formatting the requested page is described below with reference to Figures 9 and 10 When the requested page is received, the logic moves to block 204 where the page is read After a page is read, the logic moves to decision block 205 where a test is made to determine if a UserlD/Password is required It will be appreciated that a UserLD/Password may be required for both pages requiring authentication and pages not requiring authentication If a UserLD/Password is required, the logic moves to block 206 where a UserlD/Password is obtained If a UserLD/Password is required, a suitable logon screen is displayed on the user's computer The UserlD/Password entry display can be of varying formats, for example, a web page or a pop-up dialog box Upon entry of a UserlD/Password, the user indicates completion (for example, by pressing an "OK" or "Submit" button) Upon completion of the logon, the logic moves to block 207 where the UserlD/Password is encrypted to prevent man in the middle attacks The logic then moves to block 208 where the encrypted UserlD/Password is sent to the web Server
If a UserlD/Password is not required, the logic moves to decision block 209 (Figure 6B) where a test is made to determine if authentication is required In exemplary embodiments, an authenticity key will be hidden in any page that should be authenticated In order to determine if the page should be authenticated, the page source is read to determine if an authenticity key is included in the page If authentication is not required, the logic moves to block 210 where the non-authenticated page is displayed A non-authenticated page is a traditional web page (I e , the way the web page would be displayed without the authentication of the present invention, such as the example shown in Figure 1)
If authentication is required (yes in decision block 209), the logic moves to decision block 21 1 where a test is made to determine if the authentication module is loaded In exemplary embodiments, the authentication module is a plug-in module for the web browser In exemplary embodiments, if the authentication module has not been loaded, a message will be displayed For example, "This page protected by AuthentiPage, to get a free copy, go to Authentipage com " Alternatively, the message may ask the user if a download of the authentication module is desired If the authentication module is not loaded, the logic moves to decision block 214 where a test is made to determine if the authentication module should be loaded If the authentication module is not to be loaded, the logic moves to block 218 where the page is displayed without authentication In exemplary embodiments, the user will be notified that the page could not be authenticated, for example via a pop-up window displaying a warning message In alternative embodiments, the user defines a non-authenticity stamp which is displayed for a page that has not been authenticated
If the authentication module is to be loaded (yes in decision block 214), the logic moves to block 216 where the authentication module is loaded as shown in Figure 7 and described next If a download of the authentication module is desired, the user may be automatically redirected to the download site
Figure 7 illustrates exemplary logic for loading an authentication module (block 216 of Figure 6B) The logic of Figure 7 moves from a start block to block 300 where the authentication module (e g , plug-in) is downloaded The download is accomplished using techniques known in the art After the authentication module is downloaded to the user's computer, the logic moves to block 302 where the authentication module is configured As part of the configuration process, an authenticity stamp is defined by the user This authenticity stamp will be displayed whenever an authenticated page is loaded The stamp can take several forms, for example, a user-selected keyword, color, etc Preferably, the determination of the look of the authenticity stamp is under complete control of the user Preferably, the user is also able to determine where the stamp will be displayed, for example in a separate pop-up box or in a selected area of the web page By requiring the user to configure the visual qualities of the stamp, the possibility of a counterfeit stamp being displayed is reduced The user will expect to see his or her stamp and will begin to associate the stamp with security It will be appreciated that while the stamp is defined in terms of visual qualities herein, embodiments of the invention can include defining the stamp in other ways, for example, by an audio indication specified by the user After the authentication module has been configured, the logic of Figure 7 ends and processing returns to Figure 6B
Returning to Figure 6B, after the authentication module is loaded (block 216), or if it has been determined that the authentication module is already loaded (yes in decision block 21 1), the logic moves to block 212 to verify the authenticity of the page and display the page, as shown in detail in Figure 8 and described next
Figure 8 illustrates exemplary logic for verifying the authenticity of a page and displaying the page The logic of Figure 8 moves from a start block to block 400 where the authenticity of the page is verified Many algorithms can be used to verify the authenticity For example, the trusted server that generates the authenticity key can encrypt the authenticity key with a private key The user can then decrypt the authenticity key using a public key Using this method, no certificate is required and no interaction is required by the user Other algorithms can be used, some of which may require a certificate and/or user interaction Unless the page contains confidential information, the authentication of pages should not require any additional security or encryption The authentication of a page can be employed on any page, for example, marketing data, purchase information, etc , to prove the page's authenticity In general, authentication of pages will not require additional security or encryption However, if additional security is desired, page authentication performed in accordance with the present invention can be used in combination with other known or future security measures, for example, in conjunction with a secure protocol, such as HTTPS, along with the requirement for a UserlD and a password, etc If the authentication is successful (yes in decision block 402), the logic moves to block 404 where the page is displayed with the authenticity stamp as defined by the user during the configuration process described above If the authentication fails (no in decision block 402), the logic moves to block 406 where the unsuccessfully authenticated page is displayed In exemplary embodiments, an indication of the authentication failure is provided, for example a warning message may be displayed For example, a flashing error message, such as "PAGE NOT AUTHENTICATED" can be displayed in the location where the authenticity stamp would normally be displayed After the page is displayed (either as an authenticated page in block 404 or as an unsuccessfully authenticated page in block 406), the logic of Figure 8 ends and processing returns to Figure 6B
Returning to Figure 6B, after a page has been displayed (block 210, 212 or 218) or a UserlD/Password request has been processed, the logic moves to decision block 220 (Figure 6A) where a test is made to determine if it is time to exit For example, if the user selects an "Exit" option form a web browser menu, it is time to exit If it is not time to exit, the logic returns to block 200 to wait for the user's next page request The logic of blocks 200-220 is repeated until it is time to exit It will be appreciated that in alternative embodiments of the invention requests other than those shown and described herein may also be processed When it is time to exit, the logic of Figure 6A ends
Figure 9 is a flow diagram illustrating exemplary logic performed by a web server 120 for performing authentication in accordance with the present invention The logic of Figure 9 moves from a start block to block 500 where the web server waits for a request In exemplary embodiments, while the web server is waiting for a request other requests continue to be serviced (e g , receiving and processing page requests) When a request is received, the logic moves to decision block 501 where a test is made to determine if the request is a request for validation of a UserlD/Password If so, the logic moves to block 502 where the received UserlD/Password (sent in block 108 of Figure 6A) is forwarded to the authentication server 140
If the request is not a request for verification of a UserlD/Password, the logic moves to decision block 504 where a test is made to determine if the request is a page request If so, the logic moves to block 505 where the page request is read The logic then moves to block 506 where the requested page is retrieved Next, the logic moves to block 507 where the requested page is forwarded to an authentication server 140 The logic then moves to block 508 where the web server waits for the authenticated page to be returned from the authentication server In exemplary embodiments, while the web server is waiting for an authenticated page, other processing can be performed, for example, page requests can be received and processed When an authenticated page is received, the logic moves to block 510 where the authenticated page is returned to the user that requested the page
If the request is not a request to verify a UserLD/Password (no in decision block 501) or a page request (no in decision block 504), the request is another request, which is processed in block 512 Other requests which may be processed by a web Server are not described herein
After the request (e g , request for verification of UserlD/Password, page request or other request) has been processed, the logic moves to decision block 514 where a test is made to determine if it is time to exit The logic of blocks 500-514 is repeated until it is time to exit (e g , shut down the web server) When it is time to exit, the logic of Figure 9 ends
Figure 10 is a flow diagram illustrating exemplary logic performed by an authentication server 140 for performing authentication in accordance with the present invention The logic of Figure 10 moves from a start block to block 600 where the authentication server waits for an authentication request When an authentication request is received, the logic moves to decision block 601 to determine if the request is a request to decrypt a UserlD/Password If so, the logic moves to block 602 where the UserlD/Password is decrypted The logic then moves to block 604 where the decrypted UserlD/Password is forwarded to a security engine for verification In exemplary embodiments, the security engine is an existing security engine, such as a DSS Security Engine The Security Engine verifies the UserlD/Password and forwards the verification as appropriate For example, if the UserlD is not valid, a message will be displayed on the user's computer Because security engines are known in the art, the logic employed by the security engine is not discussed further herein If the request is not a request to decrypt a UserlD/Password, the logic moves to decision block 606 where a test is made to determine if the request is an authentication request If so, the logic moves to block 608 where the authentication server generates an authenticity key Details for an exemplary authenticity kev are described below The logic of Figure 10 then moves to block 610 where the authenticity key is inserted into the web page An exemplary authenticity key is shown in Figure 12 Next, the logic moves to block 612 where the page which includes the authenticity key is returned to the web server
While the exemplars embodiments only include processing of requests for encryption/decryption or authenticating a page, it will be appreciated that alternative embodiments may process other requests After a request is processed (e g , a UserlD/Password is decrypted or a page is authenticated), the logic moves to decision block 616 where a test is made to determine if it is time to exit The logic of blocks 600-616 is repeated until it is time to exit (e g , shut down the authentication server) When it is time to exit, the logic of Figure 10 ends In alternative embodiments, there is no authentication server Rather, graphical images include a hidden identifier identifying the true owner, as well as a cryptographic signature to ensure that the graphical image cannot be tampered with by a counterfeiter In various embodiments, the identification is a portion of a URL that is encrypted, such as "bigbank com" Those skilled in the art will recognize this as a second-level domain name Upon receipt of the web page, the authentication module residing on the user's computer compares the identification in the page with the URL from which the web page was fetched If the identification matches, the web page was served by its true owner If the identifications do not match, the user is provided with an indication that the URL is not the true owner of the graphical images For example, a "counterfeit" site may look just like the site that it was intended to look like because the counterfeiter can copy the page, including the graphical images However, if the graphical images include a hidden identifier, the user can be notified that the page is "counterfeit "
An exemplary authenticity key is constructed in such a way that "freshness" can be determined, for example using a date/time stamp The authenticity key will also include other identifying information as described later An exemplary authenticity key contains one or more hidden signature objects In exemplary embodiments, the hidden signature object is a value that is the encoding of the following fields web page hash, action, date/time, key identifier and digital signature In exemplars embodiments, the web page hash is generating using SHA-1 on the entire web page excluding this hidden signature object The Secure Hash Algorithm (SHA) was developed by the National Institute of Standards and Technology (NIST) and is specified in the Secure Hash Standard (SHS, FIPS 180) SHA-1 is a revision to SHA that was published in 1994 SHA-1 is also described in the ANSI X9 30 (part 2) standard The algorithm takes a message of greater than 264 bits in length and produces a 160-bit message digest The action is a value used to specify the action to be performed by the browser plug-in that verifies this page Preferably, if the user computer does not have the browser plug-in installed, the user will be informed of the required plug-in Preferably, the user can elect to download the plug-in at the time the web page is received, in which case the web page can be displayed immediately after installing the plug-in In exemplary embodiments if the user elects not to install the plug-in, the web page is displayed and the user is provided with an indication (e g , a warning message displayed in a pop-up window) that the page was not authenticated Actions are specified in a bit-wise manner so that multiple actions can be specified For example, the action value mav be defined to both display the security object (e g , to display a bitmapped image) and to request a secure login The date/time field is used to specify the current date and time that the web page was delivered from the web server This value is used by the browser plug-in to verify that the page is "fresh" (e g , is not being replayed by a rogue site) The present invention may include a synchronization feature which allows the user's computer to synchronize its internal clock with atomic clocks available over the Internet This would provide additional security by allowing a more precise verification of the date/time stamp
The key identifier is used to identify the public key used to verify the signature In exemplary embodiments, a digital signature is used as a salt value concatenated with an SHA-1 hash of the other four fields (web page hash, action, date/time and key identifier) that has been encrypted using the private key of the web Page server A "salt value" is an arbitrary random value that constantly changes in order to minimize the possibility of various attacks
In exemplary embodiments of the present invention, four keys are used in the web page authentication process a private key, a public key, a master encryption key and a preferences encryption key A private key (of the web page server) is used to create the "digital signature" within the web page signature A digital signature is generally defined to include a certificate For the purposes of the present invention exemplary embodiments do not include a certificate It will be appreciated that various embodiments can include a certificate in the digital signature The private key is only distributed to applications requiring its use A public key is buried in multiple pieces throughout the browser plug-in The public key is used to verify the Digital Signature within the web Page signature Although the public key itself can be distributed, its storage location should remain as obscure as possible to reduce the possibility of attacks The master encryption key is also buried in multiple places in the browser plug-in The master encryption key is used to encrypt the preferences encryption key that is stored on the user's computer The preferences encryption key that is stored on the user s computer is used to encrypt preferences (e g , user configuration information, such as appearance and location of authenticity stamp) that are stored on the user's computer
When the action indicates a Login, the browser plug-in' s user display is displayed on the user s computer display with the secure word that will request the UserlD and Password These two values will be prefixed with the salt value and date/time information from the web page signature and encrypted using the public key This information will then be sent by the plug-in performing the Submit Preferably, the Submit explicitly references the URL to which the information is to be sent This will allow the information only to be sent to the destination that was previously signed within the web Page signature
The preferences file is used to store information, such as a user's secure word Preferably, the preferences file is placed in a random directory to help obscure the location of the preference file and facilitate the creation of unique user configurations This increases the difficulty in creating a general purpose rogue program for extracting preferences and keys
In exemplary embodiments, new keys are implemented through redistribution of the browser plug-in The new plug-in can contain both the old and new keys to facilitate implementation of the new keys on a particular date
In exemplary embodiments of the invention, the authentication module may contain a list of all known UserlDs The list of known UserlDs can be displayed so that the user can select a desired UserlD Upon selection of a UserlD, the user is prompted to enter a password The UserlD and password are encrypted with the use of the public key to authenticate the authenticity key The entire string (e g , [UserlD] [Password] [original salt value]) is sent to the trusted server for verification The trusted server 120 then extracts the UserlD and password and forwards them to the authentication server 140 for verification
Exemplary embodiments allow a user to check the validity of their authentication module A server allows the authentication module to send a request for self-verification In various embodiments, the validation is performed in response to a user request In exemplary embodiments, the authentication module includes a suitable user interface which allows a user to request self-verification The authentication module generates a random number ("salt") and encrypts it with the public key The value is then sent to a known URL (e g , a URL that is hard-coded in the authentication module) When the authentication module receives the request, it is decrypted using the private key and adding an additional salt value which is then returned to the client module (user) The client module decrypts the response received from the authentication module The random values are then compared (without the additional salt added by the authentication module) If the value matches the value originally sent, the self- verification is successful A verification result is displayed to the user to indicate whether the verification was successful.
The present invention may be described herein in terms of functional block components, screen shots, optional selections and various processing steps It should be appreciated that such functional blocks may be realized by any number of hardware and/or software components configured to perform the specified functions. For example, the present invention may employ various integrated circuit components, e.g., memory elements, processing elements, logic elements, look-up tables, and the like, which may carry out a variety of functions under the control of one or more microprocessors or other control devices Similarly, the software elements of the present invention may be implemented with any programming or scripting language such as C, C++, Java, COBOL, assembler, PERL, or the like, with the various algorithms being implemented with any combination of data structures, objects, processes, routines or other programming elements. Further, it should be noted that the present invention may employ any number of conventional techniques for data transmission, signaling, data processing, network control, and the like. For a basic introduction of cryptography, please review a text written by Bruce Schneider which is entitled "Applied Cryptography Protocols, Algorithms, And Source Code In C," published by John Wiley & Sons (second edition, 1996), which is hereby incorporated by reference
It should be appreciated that the particular implementations shown and described herein are illustrative of the invention and its best mode and are not intended to otherwise limit the scope of the present invention in any way Indeed, for the sake of brevity, conventional data networking, application development and other functional aspects of the systems (and components of the individual operating components of the systems) may not be described in detail herein. Furthermore, the connecting lines shown in the various figures contained herein are intended to represent exemplary functional relationships and/or physical couplings between the various elements It should be noted that many alternative or additional functional relationships or physical connections may be present in a practical electronic transaction system.
To simplify the description of the exemplary embodiments, the invention is frequently described as pertaining to an authentication system. It will be appreciated, however, that many applications of the present invention could be formulated One skilled in the art will appreciate that the network may include any system for exchanging data or transacting business, such as the Internet, an intranet, an extranet, WAN, LAN, satellite communications, and/or the like The users may interact with the system via any input device such as a keyboard, mouse, kiosk, personal digital assistant, handheld computer (e g , Palm Pilot®), cellular phone and/or the like Similarly, the invention could be used in conjunction with any type of personal computer, network computer, workstation, minicomputer, mainframe, or the like running any operating system such as any version of Windows, Windows NT, Wιndows2000, Windows 98, Windows 95, MacOS, OS/2, BeOS, Linux, UNIX, or the like Moreover, although the invention is frequently described herein as being implemented with TCP/IP communications protocols, it will be readily understood that the invention could also be implemented using IPX, Appletalk, 1P-6, NetBIOS, OSI or any number of existing or future protocols Moreover, while the exemplary embodiment will be described as an authentication system, the system contemplates the use, sale or distribution of any goods, services or information over any network having similar functionality described herein
The customer and merchant may represent individual people, entities, or business The bank may represent other types of card issuing institutions, such as credit card companies, card sponsoring companies, or third party issuers under contract with financial institutions It is further noted that other participants may be involved in some phases of the transaction, such as an intermediary settlement institution, but these participants are not shown
Each participant is equipped with a computing system to facilitate online commerce transactions The customer has a computing unit in the form of a personal computer, although other types of computing units may be used including laptops, notebooks, hand held computers, set-top boxes, and the like The merchant has a computing unit implemented in the form of a computer-server, although other implementations are possible The bank has a computing center shown as a main frame computer However, the bank computing center may be implemented in other forms, such as a mini-computer, a PC server, a network set of computers, and the like
The computing units are connected with each other via a data communication network The network is a public network and assumed to be insecure and open to eavesdroppers In the illustrated implementation, the network is embodied as the internet In this context, the computers may or may not be connected to the internet at all times For instance, the customer computer may employ a modem to occasionally connect to the internet, whereas the bank computing center might maintain a permanent connection to the internet It is noted that the network may be implemented as other types of networks, such as an interactive television (ITV) network
Any merchant computer and bank computer are interconnected via a second network, referred to as a payment network The payment network represents existing proprietary networks that presently accommodate transactions for credit cards, debit cards, and other types of financial/banking cards The payment network is a closed network that is assumed to be secure from eavesdroppers Examples of the payment network include the American Express®, VisaNet® and the Veπphone® network In an exemplary embodiment, the electronic commerce system is implemented at the customer and issuing bank In an exemplary implementation, the electronic commerce system is implemented as computer software modules loaded onto the customer computer and the banking computing center The merchant computer does not require any additional software to participate in the online commerce transactions supported by the online commerce system
The corresponding structures, materials, acts and equivalents of all elements in the claims below are intended to include any structure, material or acts for performing the functions in combination with other claimed elements as specifically claimed The scope of the invention should be determined by the allowed claims and their legal equivalents, rather than by the examples given above

Claims

What is claimed is
1 A method for authenticating data, the method comprising a receiving a data request from a client, b retrieving data based on the received data request, c formatting the retrieved data, wherein the formatted data includes at least one authenticity key, and d returning the formatted data to the client
2 The method of Claim 1, wherein the formatted data is a web page
3 The method of Claim 1, further comprising a reading the formatted data at the client, b determining if the formatted data includes the at least one authenticity key, c if the formatted data includes the at least one authenticity key, d verifying authenticity based on the at least one authenticity key
The method of Claim 3, further comprising displaying the data based on the verification of the at least one authenticity key
The method of Claim 4, wherein one authenticity stamp will be displayed for data that has been successfully verified
The method of Claim 4, wherein one authenticity stamp will be displayed for each graphical image
The method of Claim 4, wherein a non-authenticity stamp will be displayed for data that has not successfully been verified
A system for authenticating data, the system comprising a at least one client, b at least one server c a network, wherein the client and the server communicate via the network, and d at least one authentication server, wherein said at least one authentication server is in communication with said at least one server
The system of Claim 8, wherein said at least one client includes a browser, wherein pages are displayed to a user on a display device on said at least one client
The system of Claim 8, wherein said at least one server sends a page including an authenticity key to said at least one client
The system of Claim 10, wherein said at least one client verifies authenticity of the page based on the authenticity key
The system of Claim 1 1, wherein the page is displayed on said client, wherein the display includes an indication of the authenticity of the page
A system for authenticating data, the system comprising a at least one client, b at least one server, wherein said at least one server sends a page, wherein the page includes at least one graphic image and wherein each of said at least one graphic images includes an authenticity key, and,
c a network, wherein the client and the server communicate via the network In a computer system for authenticating data, a computer-readable medium holding computer executable instructions for performing a method comprising the steps of a receiving a data request from a client, b retrieving data based on the received data request, c formatting the retrieved data, wherein the formatted data includes an authenticity key, and d returning the formatted data to the client
The computer system of Claim 14, wherein the formatted data is a web page The computer system of Claim 14, wherein computer executable instructions further comprise the steps of a reading the formatted data at the client, b determining if the formatted data includes the authenticity key, c if the formatted data includes the authenticity key, d verifying authenticity based on the authenticity key
The computer system of Claim 16, wherein the computer executable instructions further comprise the step of displaying the data based on the verification of the authenticity
The computer system of Claim 17, wherein an authenticity stamp will be displayed for data that has been successfully verified
The computer system of Claim 17, wherein a non-authenticity stamp will be displayed for data that has not successfully been verified
PCT/US2000/024431 1999-09-09 2000-09-06 System and method for authenticating a web page WO2001018636A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU71168/00A AU7116800A (en) 1999-09-09 2000-09-06 System and method for authenticating a web page

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15300499P 1999-09-09 1999-09-09
US60/153,004 1999-09-09

Publications (1)

Publication Number Publication Date
WO2001018636A1 true WO2001018636A1 (en) 2001-03-15

Family

ID=22545394

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2000/024431 WO2001018636A1 (en) 1999-09-09 2000-09-06 System and method for authenticating a web page

Country Status (4)

Country Link
US (1) US7631191B2 (en)
AR (1) AR025592A1 (en)
AU (1) AU7116800A (en)
WO (1) WO2001018636A1 (en)

Cited By (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003044641A1 (en) * 2001-11-16 2003-05-30 Comodo Research Lab Limited Improvements in and relating to web site authentication
WO2004071007A2 (en) * 2003-02-04 2004-08-19 Sap Aktiengesellschaft Electronically signed document containing an examination software
WO2004070499A2 (en) * 2003-02-04 2004-08-19 Sap Aktiengesellschaft Electronically signed document containing a pointer pointing to an examination software
EP1462955A2 (en) * 2003-03-27 2004-09-29 Microsoft Corporation Providing information links via a network
WO2005078548A2 (en) * 2004-02-05 2005-08-25 Vizrea Corporation Password prompt authentication
FR2868570A1 (en) * 2004-04-05 2005-10-07 Nickcode Sarl Digital identification and digital authentication performing process, involves personalizing digital unit from information from individual, where digital unit is recorded on client application software in temporary/permanent manner
WO2005109736A1 (en) 2004-04-15 2005-11-17 Microsoft Corporation Displaying security element with a browser window
EP1625690A2 (en) * 2003-05-09 2006-02-15 Passmark Security, Inc. Method and apparatus for authentication of users and web sites
EP1719283A2 (en) * 2004-02-04 2006-11-08 Passmark Security, Inc. Method and apparatus for authentication of users and communications received from computer systems
WO2007048724A1 (en) * 2005-10-27 2007-05-03 International Business Machines Corporation Method and apparatus for secure network authentication
FR2893732A1 (en) * 2005-11-22 2007-05-25 Trusted Logic Sa Secured operating mode authentication method for e.g. work station, involves emitting stored confidential event corresponding to secret that is input by user, and authenticating mode by user upon identifying emitted event
FR2895817A1 (en) * 2005-12-29 2007-07-06 Trusted Logic Sa Public website`s html page analyzing method for detecting change in e.g. page address, involves comparing result of authentic page before displaying of page with result of page to determine safety risk of page before displaying page
EP1894341A1 (en) * 2005-05-16 2008-03-05 VE NEtworks Canada, Inc. Methods and apparatuses for information authentication and user interface feedback
WO2008082784A1 (en) 2006-11-06 2008-07-10 Verisign, Inc. Web site authentication
WO2008088979A1 (en) * 2007-01-16 2008-07-24 Apple Inc. Self validation of user authentication requests
WO2008112812A2 (en) * 2007-03-12 2008-09-18 Qualcomm Incorporated Human-recognizable cryptographic keys
US7562222B2 (en) 2002-05-10 2009-07-14 Rsa Security Inc. System and method for authenticating entities to users
WO2009088907A2 (en) * 2008-01-04 2009-07-16 E-Government Consulting Group, Inc. System and method for secure voting
EP2092411A1 (en) * 2006-10-18 2009-08-26 Microsoft Corporation Identification and visualization of trusted user interface objects
US7730321B2 (en) 2003-05-09 2010-06-01 Emc Corporation System and method for authentication of users and communications received from computer systems
US7966492B1 (en) 2002-05-10 2011-06-21 Emc Corporation System and method for allowing an e-mail message recipient to authenticate the message
EP2442212A1 (en) * 2004-07-07 2012-04-18 Oracle International Corporation Online data encryption and decryption
US8245534B2 (en) 2003-03-27 2012-08-21 Microsoft Corporation Application-centric user interface techniques
GB2498931A (en) * 2012-01-25 2013-08-07 Peisen Lin Verifying the origin of content or a product by using user-identifiable authentication messages
US8739278B2 (en) 2006-04-28 2014-05-27 Oracle International Corporation Techniques for fraud monitoring and detection using application fingerprinting
US8751801B2 (en) 2003-05-09 2014-06-10 Emc Corporation System and method for authenticating users using two or more factors
US9106422B2 (en) 2006-12-11 2015-08-11 Oracle International Corporation System and method for personalized security signature
US9843447B1 (en) 1999-09-09 2017-12-12 Secure Axcess Llc Authenticating electronic content
WO2020217226A1 (en) 2019-04-25 2020-10-29 Dcprime B.V. Methods of tumor vaccination
US20200410292A1 (en) * 2019-06-28 2020-12-31 International Business Machines Corporation Machine learned historically accurate temporal classification of objects
WO2021191870A1 (en) 2020-03-27 2021-09-30 Dcprime B.V. Ex vivo use of modified cells of leukemic origin for enhancing the efficacy of adoptive cell therapy
WO2022097068A1 (en) 2020-11-05 2022-05-12 Dcprime B.V. Use of tumor-independent antigens in immunotherapies
WO2022190058A1 (en) 2021-03-12 2022-09-15 Dcprime B.V. Methods of vaccination and use of cd47 blockade
US20230283626A1 (en) * 2022-03-03 2023-09-07 Uab 360 It Securing against network vulnerabilities

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7500099B1 (en) 2003-05-16 2009-03-03 Microsoft Corporation Method for mitigating web-based “one-click” attacks
US7752448B1 (en) * 2004-02-17 2010-07-06 The Weather Channel, Inc. Domain-based application functionality
US20050240991A1 (en) * 2004-04-27 2005-10-27 Dombkowski Kevin E Secure data communication system
US8321953B2 (en) * 2005-07-14 2012-11-27 Imation Corp. Secure storage device with offline code entry
US8015606B1 (en) 2005-07-14 2011-09-06 Ironkey, Inc. Storage device with website trust indication
US8335920B2 (en) 2005-07-14 2012-12-18 Imation Corp. Recovery of data access for a locked secure storage device
US8438647B2 (en) * 2005-07-14 2013-05-07 Imation Corp. Recovery of encrypted data from a secure storage device
US20070067620A1 (en) * 2005-09-06 2007-03-22 Ironkey, Inc. Systems and methods for third-party authentication
US7673135B2 (en) 2005-12-08 2010-03-02 Microsoft Corporation Request authentication token
US8639873B1 (en) 2005-12-22 2014-01-28 Imation Corp. Detachable storage device with RAM cache
US8266378B1 (en) 2005-12-22 2012-09-11 Imation Corp. Storage device with accessible partitions
US20070300031A1 (en) * 2006-06-22 2007-12-27 Ironkey, Inc. Memory data shredder
US8424073B2 (en) * 2006-11-13 2013-04-16 Microsoft Corporation Refreshing a page validation token
US7594193B2 (en) * 2007-02-06 2009-09-22 Novell, Inc. Visual indication of user role in an address bar
JP4445520B2 (en) * 2007-06-08 2010-04-07 株式会社沖データ Image processing apparatus and image processing method
CA2845710C (en) 2007-12-07 2015-04-14 Vidiense Technology Pty Ltd Method and system to display a video in an email
US8136148B1 (en) 2008-04-09 2012-03-13 Bank Of America Corporation Reusable authentication experience tool
WO2009137371A2 (en) 2008-05-02 2009-11-12 Ironkey, Inc. Enterprise device recovery
US8327422B1 (en) 2008-09-26 2012-12-04 Emc Corporation Authenticating a server device using dynamically generated representations
US8601363B2 (en) * 2009-07-20 2013-12-03 Facebook, Inc. Communicating information about a local machine to a browser application
US8745365B2 (en) 2009-08-06 2014-06-03 Imation Corp. Method and system for secure booting a computer by booting a first operating system from a secure peripheral device and launching a second operating system stored a secure area in the secure peripheral device on the first operating system
US8683088B2 (en) 2009-08-06 2014-03-25 Imation Corp. Peripheral device data integrity
ES2686113T3 (en) * 2011-04-14 2018-10-16 Telefónica Germany GmbH & Co. OHG Procedure for the authentication of a participant
US8738908B2 (en) * 2011-05-10 2014-05-27 Softlayer Technologies, Inc. System and method for web-based security authentication
US9202078B2 (en) * 2011-05-27 2015-12-01 International Business Machines Corporation Data perturbation and anonymization using one way hash
US8904279B1 (en) * 2011-12-07 2014-12-02 Amazon Technologies, Inc. Inhibiting automated extraction of data from network pages
US9191405B2 (en) 2012-01-30 2015-11-17 Microsoft Technology Licensing, Llc Dynamic cross-site request forgery protection in a web-based client application
US20130254553A1 (en) * 2012-03-24 2013-09-26 Paul L. Greene Digital data authentication and security system
US9182954B2 (en) 2012-07-27 2015-11-10 Microsoft Technology Licensing, Llc Web browser having user-configurable address bar button
CN103856458B (en) * 2012-12-04 2018-12-11 腾讯科技(深圳)有限公司 Page authentication method and device
KR101611241B1 (en) * 2014-08-11 2016-04-26 주식회사 케이티 Message authentication method, system, server and computer-readable medium
CN104572837B (en) * 2014-12-10 2019-07-26 百度在线网络技术(北京)有限公司 The method and device of authentication information is provided on webpage
US11928708B1 (en) 2015-10-09 2024-03-12 Systemi Opco, Llc Automated campaign configuration switching framework
US10542010B2 (en) 2016-05-27 2020-01-21 Microsoft Technology Licensing, Llc Account verification in deferred provisioning systems
CN107729340A (en) * 2016-08-14 2018-02-23 天脉聚源(北京)科技有限公司 A kind of method and system for opening wechat webpage
US11625469B2 (en) * 2017-05-19 2023-04-11 Microsoft Technology Licensing, Llc Prevention of organizational data leakage across platforms based on device status
US10749689B1 (en) * 2017-06-29 2020-08-18 Salesforce.Com, Inc. Language-agnostic secure application development
US11163910B2 (en) * 2017-06-29 2021-11-02 Salesforce.Com, Inc. Methods and systems for data migration
US11140019B2 (en) * 2018-06-01 2021-10-05 David M. Sherr Software-defined network resource provisioning architecture
US20210111902A1 (en) * 2019-10-11 2021-04-15 Qualcomm Incorporated System information protection at a network function in the core network
CN111931159B (en) * 2020-08-11 2023-04-07 福建天晴在线互动科技有限公司 Method and system for verifying validity of webpage data interface

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5497422A (en) * 1993-09-30 1996-03-05 Apple Computer, Inc. Message protection mechanism and graphical user interface therefor
WO1997050036A1 (en) * 1996-06-27 1997-12-31 Institute Of Systems Science Computationally efficient method for trusted and dynamic digital objects dissemination
US5892904A (en) * 1996-12-06 1999-04-06 Microsoft Corporation Code certification for network transmission

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0727504B2 (en) * 1990-12-10 1995-03-29 インターナショナル・ビジネス・マシーンズ・コーポレイション System for defining network configuration, method for generating configuration parameters for network, and system for configuring network
US5261043A (en) * 1991-03-12 1993-11-09 Hewlett-Packard Company Input and output data constraints on iconic devices in an iconic programming system
US5365360A (en) * 1991-11-15 1994-11-15 International Business Machines Corporation Method and apparatus for presenting information contained within a data icon by assigning attributes to various dimensions of the data icon
US5809317A (en) * 1992-12-30 1998-09-15 Intel Corporation Creating and maintaining hypertext links among heterogeneous documents by the establishment of anchors and connections among anchors
US5430872A (en) * 1993-03-12 1995-07-04 Asymetrix Corporation Verifying multimedia linking for a multimedia presentation
US5841978A (en) * 1993-11-18 1998-11-24 Digimarc Corporation Network linking method using steganographically embedded data objects
US5606609A (en) * 1994-09-19 1997-02-25 Scientific-Atlanta Electronic document verification system and method
US5752022A (en) * 1995-08-07 1998-05-12 International Business Machines Corp. Method for creating a hypertext language for a distributed computer network
US5822432A (en) * 1996-01-17 1998-10-13 The Dice Company Method for human-assisted random key generation and application for digital watermark system
US5872850A (en) * 1996-02-02 1999-02-16 Microsoft Corporation System for enabling information marketplace
US5890170A (en) * 1996-02-28 1999-03-30 Silicon Graphics, Inc. Method and apparatus for publishing documents in a hypertextural network environment
US5889868A (en) * 1996-07-02 1999-03-30 The Dice Company Optimization methods for the insertion, protection, and detection of digital watermarks in digitized data
CA2182254C (en) * 1996-07-29 2000-02-15 Weidong Kou Generic file format for multiple security requirements
US5765176A (en) * 1996-09-06 1998-06-09 Xerox Corporation Performing document image management tasks using an iconic image having embedded encoded information
US5930792A (en) * 1996-11-07 1999-07-27 Intervoice Limited Partnership Monitoring and directing flow of HTML documents for security and access
US5893127A (en) * 1996-11-18 1999-04-06 Canon Information Systems, Inc. Generator for document with HTML tagged table having data elements which preserve layout relationships of information in bitmap image of original document
US5907619A (en) * 1996-12-20 1999-05-25 Intel Corporation Secure compressed imaging
US6681017B1 (en) * 1997-09-03 2004-01-20 Lucent Technologies Inc. Simplified secure shared key establishment and data delivery protocols for electronic commerce
US6247047B1 (en) * 1997-11-18 2001-06-12 Control Commerce, Llc Method and apparatus for facilitating computer network transactions
US6735694B1 (en) * 1997-11-21 2004-05-11 International Business Machines Corporation Method and system for certifying authenticity of a web page copy
US6453416B1 (en) * 1997-12-19 2002-09-17 Koninklijke Philips Electronics N.V. Secure proxy signing device and method of use
US6366912B1 (en) * 1998-04-06 2002-04-02 Microsoft Corporation Network security zones
US6539093B1 (en) * 1998-12-31 2003-03-25 International Business Machines Corporation Key ring organizer for an electronic business using public key infrastructure
US6286001B1 (en) * 1999-02-24 2001-09-04 Doodlebug Online, Inc. System and method for authorizing access to data on content servers in a distributed network
US6421724B1 (en) * 1999-08-30 2002-07-16 Opinionlab, Inc. Web site response measurement tool
JP4738691B2 (en) * 1999-12-23 2011-08-03 エム.エイチ.セーガン リミテッド パートナーシップ System and method for viewing content on a network
WO2001048674A1 (en) * 1999-12-24 2001-07-05 Link Plus, Inc. Method and system for authenticating identity on internet
GB2359156B (en) * 2000-02-14 2004-10-13 Reuters Ltd Methods of computer programs for and apparatus for providing and accessing digital content
GB0009634D0 (en) * 2000-04-19 2000-06-07 Infoclear Nv The info2clear system for on-line copyright management
US6778986B1 (en) * 2000-07-31 2004-08-17 Eliyon Technologies Corporation Computer method and apparatus for determining site type of a web site
US20040078452A1 (en) * 2000-08-17 2004-04-22 Scott Jamieson Internet browsing system
US20020124172A1 (en) * 2001-03-05 2002-09-05 Brian Manahan Method and apparatus for signing and validating web pages
US7114177B2 (en) * 2001-03-28 2006-09-26 Geotrust, Inc. Web site identity assurance
US20030093699A1 (en) * 2001-11-15 2003-05-15 International Business Machines Corporation Graphical passwords for use in a data processing network
US7653814B2 (en) * 2001-12-11 2010-01-26 International Business Machines Corporation System and method for securely hyperlinking graphic objects
US6910077B2 (en) * 2002-01-04 2005-06-21 Hewlett-Packard Development Company, L.P. System and method for identifying cloaked web servers

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5497422A (en) * 1993-09-30 1996-03-05 Apple Computer, Inc. Message protection mechanism and graphical user interface therefor
WO1997050036A1 (en) * 1996-06-27 1997-12-31 Institute Of Systems Science Computationally efficient method for trusted and dynamic digital objects dissemination
US5892904A (en) * 1996-12-06 1999-04-06 Microsoft Corporation Code certification for network transmission

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
N ISLAM ET AL: "A Flexible Security Model for Using Internet Content", IBM, THOMAS J. WATSON RESEARCH CENTER, 28 June 1997 (1997-06-28), XP002138803, Retrieved from the Internet <URL:http://www.ibm.com/java/education/flexsecurity/> [retrieved on 20000525] *

Cited By (71)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9843447B1 (en) 1999-09-09 2017-12-12 Secure Axcess Llc Authenticating electronic content
US10355863B2 (en) 1999-09-09 2019-07-16 Secure Axcess Llc System and method for authenticating electronic content
WO2003044641A1 (en) * 2001-11-16 2003-05-30 Comodo Research Lab Limited Improvements in and relating to web site authentication
US7966492B1 (en) 2002-05-10 2011-06-21 Emc Corporation System and method for allowing an e-mail message recipient to authenticate the message
US7562222B2 (en) 2002-05-10 2009-07-14 Rsa Security Inc. System and method for authenticating entities to users
US7346775B2 (en) 2002-05-10 2008-03-18 Rsa Security Inc. System and method for authentication of users and web sites
WO2004071007A2 (en) * 2003-02-04 2004-08-19 Sap Aktiengesellschaft Electronically signed document containing an examination software
WO2004070499A2 (en) * 2003-02-04 2004-08-19 Sap Aktiengesellschaft Electronically signed document containing a pointer pointing to an examination software
WO2004071007A3 (en) * 2003-02-04 2004-11-25 Sap Ag Electronically signed document containing an examination software
WO2004070499A3 (en) * 2003-02-04 2004-11-25 Sap Ag Electronically signed document containing a pointer pointing to an examination software
US8734259B2 (en) 2003-03-27 2014-05-27 Microsoft Corporation Application-centric user interface techniques
US9610498B2 (en) 2003-03-27 2017-04-04 Microsoft Technology Licensing, Llc Application-centric user interface techniques
EP1462955A2 (en) * 2003-03-27 2004-09-29 Microsoft Corporation Providing information links via a network
US8245534B2 (en) 2003-03-27 2012-08-21 Microsoft Corporation Application-centric user interface techniques
US8465370B2 (en) 2003-03-27 2013-06-18 Microsoft Corporation Application-centric user interface techniques
US8475281B2 (en) 2003-03-27 2013-07-02 Microsoft Corporation Application-centric user interface techniques
EP1462955A3 (en) * 2003-03-27 2004-10-13 Microsoft Corporation Providing information links via a network
JP2004295869A (en) * 2003-03-27 2004-10-21 Microsoft Corp Providing information link via network
US10549191B2 (en) 2003-03-27 2020-02-04 Microsoft Technology Licensing, Llc Application-centric user interface techniques
US7730321B2 (en) 2003-05-09 2010-06-01 Emc Corporation System and method for authentication of users and communications received from computer systems
AU2004239738B2 (en) * 2003-05-09 2008-04-24 Emc Corporation Method and apparatus for authentication of users and web sites
EP1625690A4 (en) * 2003-05-09 2007-05-09 Passmark Security Inc Method and apparatus for authentication of users and web sites
US8751801B2 (en) 2003-05-09 2014-06-10 Emc Corporation System and method for authenticating users using two or more factors
EP1625690A2 (en) * 2003-05-09 2006-02-15 Passmark Security, Inc. Method and apparatus for authentication of users and web sites
EP1719283A2 (en) * 2004-02-04 2006-11-08 Passmark Security, Inc. Method and apparatus for authentication of users and communications received from computer systems
EP1719283A4 (en) * 2004-02-04 2008-04-02 Rsa Security Inc Method and apparatus for authentication of users and communications received from computer systems
WO2005078548A3 (en) * 2004-02-05 2005-10-06 Vizrea Corp Password prompt authentication
WO2005078548A2 (en) * 2004-02-05 2005-08-25 Vizrea Corporation Password prompt authentication
US7430758B2 (en) 2004-02-05 2008-09-30 Microsoft Corporation Prompt authentication
FR2868570A1 (en) * 2004-04-05 2005-10-07 Nickcode Sarl Digital identification and digital authentication performing process, involves personalizing digital unit from information from individual, where digital unit is recorded on client application software in temporary/permanent manner
EP2579496A3 (en) * 2004-04-15 2013-06-26 Microsoft Corporation Displaying a security element with a browser window
EP1726115A1 (en) * 2004-04-15 2006-11-29 Microsoft Corporation Displaying security element with a browser window
WO2005109736A1 (en) 2004-04-15 2005-11-17 Microsoft Corporation Displaying security element with a browser window
EP1726115A4 (en) * 2004-04-15 2010-06-23 Microsoft Corp Displaying security element with a browser window
US8484455B2 (en) 2004-07-07 2013-07-09 Oracle International Corporation Online data encryption and decryption
EP2442212A1 (en) * 2004-07-07 2012-04-18 Oracle International Corporation Online data encryption and decryption
EP1894341A1 (en) * 2005-05-16 2008-03-05 VE NEtworks Canada, Inc. Methods and apparatuses for information authentication and user interface feedback
EP1894341A4 (en) * 2005-05-16 2012-04-04 Ve Networks Canada Inc Methods and apparatuses for information authentication and user interface feedback
WO2007048724A1 (en) * 2005-10-27 2007-05-03 International Business Machines Corporation Method and apparatus for secure network authentication
FR2893732A1 (en) * 2005-11-22 2007-05-25 Trusted Logic Sa Secured operating mode authentication method for e.g. work station, involves emitting stored confidential event corresponding to secret that is input by user, and authenticating mode by user upon identifying emitted event
WO2007060322A3 (en) * 2005-11-22 2007-08-09 Trusted Logic Method and device for authentication by a user of a trustworthy interface and related computer programme
WO2007060322A2 (en) * 2005-11-22 2007-05-31 Trusted Logic Method and device for authentication by a user of a trustworthy interface and related computer programme
FR2895817A1 (en) * 2005-12-29 2007-07-06 Trusted Logic Sa Public website`s html page analyzing method for detecting change in e.g. page address, involves comparing result of authentic page before displaying of page with result of page to determine safety risk of page before displaying page
US8739278B2 (en) 2006-04-28 2014-05-27 Oracle International Corporation Techniques for fraud monitoring and detection using application fingerprinting
EP2092411A1 (en) * 2006-10-18 2009-08-26 Microsoft Corporation Identification and visualization of trusted user interface objects
EP2092411A4 (en) * 2006-10-18 2011-06-15 Microsoft Corp Identification and visualization of trusted user interface objects
EP2087637A4 (en) * 2006-11-06 2013-03-06 Symantec Internat Web site authentication
EP2087637A1 (en) * 2006-11-06 2009-08-12 Verisign, Inc. Web site authentication
WO2008082784A1 (en) 2006-11-06 2008-07-10 Verisign, Inc. Web site authentication
US8615809B2 (en) 2006-11-06 2013-12-24 Symantec Corporation System and method for website authentication using a shared secret
EP2736218A3 (en) * 2006-11-06 2014-06-11 Symantec International Web site authentication
US9106422B2 (en) 2006-12-11 2015-08-11 Oracle International Corporation System and method for personalized security signature
WO2008088979A1 (en) * 2007-01-16 2008-07-24 Apple Inc. Self validation of user authentication requests
WO2008112812A3 (en) * 2007-03-12 2009-06-25 Qualcomm Inc Human-recognizable cryptographic keys
WO2008112812A2 (en) * 2007-03-12 2008-09-18 Qualcomm Incorporated Human-recognizable cryptographic keys
WO2009088907A3 (en) * 2008-01-04 2010-08-05 E-Government Consulting Group, Inc. System and method for secure voting
EP2645338A1 (en) * 2008-01-04 2013-10-02 E-Government Consulting Group, Inc. System and method for secure voting
EP3133560A1 (en) * 2008-01-04 2017-02-22 E-Government Consulting Group, Inc. System and method for secure voting
US8636211B2 (en) 2008-01-04 2014-01-28 E-Government Consulting Group, Inc. System and method for secure voting
WO2009088907A2 (en) * 2008-01-04 2009-07-16 E-Government Consulting Group, Inc. System and method for secure voting
US8613391B2 (en) 2008-01-04 2013-12-24 E-Government Consulting Group, Inc. System and method for secure voting
US8297506B2 (en) 2008-01-04 2012-10-30 E-Government Consulting Group, Inc. Systems and methods for secure voting
GB2498931A (en) * 2012-01-25 2013-08-07 Peisen Lin Verifying the origin of content or a product by using user-identifiable authentication messages
WO2020217226A1 (en) 2019-04-25 2020-10-29 Dcprime B.V. Methods of tumor vaccination
US20200410292A1 (en) * 2019-06-28 2020-12-31 International Business Machines Corporation Machine learned historically accurate temporal classification of objects
US11636282B2 (en) * 2019-06-28 2023-04-25 International Business Machines Corporation Machine learned historically accurate temporal classification of objects
WO2021191870A1 (en) 2020-03-27 2021-09-30 Dcprime B.V. Ex vivo use of modified cells of leukemic origin for enhancing the efficacy of adoptive cell therapy
WO2022097068A1 (en) 2020-11-05 2022-05-12 Dcprime B.V. Use of tumor-independent antigens in immunotherapies
WO2022190058A1 (en) 2021-03-12 2022-09-15 Dcprime B.V. Methods of vaccination and use of cd47 blockade
US20230283626A1 (en) * 2022-03-03 2023-09-07 Uab 360 It Securing against network vulnerabilities
US11888889B2 (en) * 2022-03-03 2024-01-30 Uab 360 It Securing against network vulnerabilities

Also Published As

Publication number Publication date
AU7116800A (en) 2001-04-10
US7631191B2 (en) 2009-12-08
AR025592A1 (en) 2002-12-04
US20060218391A1 (en) 2006-09-28

Similar Documents

Publication Publication Date Title
US7631191B2 (en) System and method for authenticating a web page
US7203838B1 (en) System and method for authenticating a web page
US10355863B2 (en) System and method for authenticating electronic content
US6105012A (en) Security system and method for financial institution server and client web browser
US7237114B1 (en) Method and system for signing and authenticating electronic documents
US6430688B1 (en) Architecture for web-based on-line-off-line digital certificate authority
US6957334B1 (en) Method and system for secure guaranteed transactions over a computer network
US7747856B2 (en) Session ticket authentication scheme
US9083746B2 (en) Method of providing assured transactions using secure transaction appliance and watermark verification
US20070162961A1 (en) Identification authentication methods and systems
US8145718B1 (en) Secure messaging system with personalization information
US8060447B2 (en) Method of providing transactions employing advertising based verification
EA001825B1 (en) Method and system for secure online transaction processing
US20010042051A1 (en) Network transaction system for minimizing software requirements on client computers
JP2015526784A (en) Enhanced 2CHK authentication security through inquiry-type transactions
US7966492B1 (en) System and method for allowing an e-mail message recipient to authenticate the message
WO2002023796A1 (en) A biometric-based system and method for enabling authentication of electronic messages sent over a network
WO2001059731A1 (en) Methods and systems for making secure electronic payments
EP1452938A1 (en) System and method employed to enable a user to securely validate that an internet retail site satisfies pre-determined conditions
JPH11239129A (en) Method for certifying electronic data
US7404077B1 (en) Extension of X.509 certificates to simultaneously support multiple cryptographic algorithms
GB2449240A (en) Conducting secure online transactions using CAPTCHA
JP3184868B2 (en) Web page authenticity confirmation system
JP3184869B2 (en) Web page authenticity confirmation system
JP2000036049A (en) Digital graphic signature system

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

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 UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A1

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 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
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP