Abstract:
A method, system and computer-usable medium for providing secure access to an application over an unsecure network. A transparent identification member can be physically placed by a user against a login interface, the transparent identification member possessing a filter for filtering and displaying a pattern unique to the login interface. Thereafter, the user can be automatically permitted to authenticate an unsecure network and securely access an application over the unsecure network, in response to placing the transparent identification member against the login interface and providing a user input at a physical location on the login interface corresponding to the pattern unique to the login interface, thereby providing a secure authentication for the user to perform secure transactions over the unsecure network and preventing phishing by others with respect to the user and the unsecure network.

Description:
TECHNICAL FIELD 
     Embodiments are generally related to data-processing systems and methods. Embodiments also relate in general to the field of computers and similar technologies, and in particular to software utilized in this field. In addition, embodiments relate to network and server authentication methods and systems. 
     BACKGROUND OF THE INVENTION 
     Computer networks, particularly those with global reach such as the Internet, have greatly influenced the way that individuals, companies and institutions conduct transactions, and store and retrieve documents, images, music, and video. Convenience, ease of use, speed, and low overhead costs are contributing factors to the widespread use of the Internet for purchasing goods as well as conducting confidential transactions. Entire industries have emerged as a result of the evolution of the Internet. 
     Secure access to computer systems and computer networks has been traditionally guarded with a username and password pair. This requires the user to protect the username and password from unauthorized use. If the username and password are not protected, accounts and files can be compromised. Unfortunately, a number of rogue individuals and organizations have emerged that are dedicated to fraudulently obtaining confidential information for unauthorized or criminal activities. 
     A pervasive tool used in obtaining confidential information is keystroke-logging software, which constitutes a software program that can anonymously and secretly monitor and record keystrokes entered by a user on his or her computer. Such software often comprises the payload of viruses, worms, Trojan horses, and other forms of malware. Keystroke-logging software can reveal what a user is typing on a computer without the user&#39;s knowledge of this event occurring. 
     Companies and institutions routinely use keystroke-logging software to monitor employee activity. Also, families may use these types of programs to monitor children&#39;s online activities. The widespread availability of this type of software, however, has led to unauthorized or criminal use, resulting in the alarming rate of identity theft seen throughout the world. 
     Prime targets for these attacks are financial institutions, as more and more consumers and businesses use electronic methods for purchasing and making payments. The trend is clearly in favor of electronic transactions, providing a wider field for identity theft. 
     Login information may also be “heard” by sophisticated analysis of the distinct sounds made by different keys. An inexpensive microphone near a keyboard can reveal most of what is being typed with a surprising degree of accuracy. Login information is also vulnerable to simple spying or “shoulder-surfing,” as a person with malicious intent watches an unsuspecting user sign into his or her account. 
     Additional security mechanisms are necessary in addition to the username/password paradigm to provide stronger identity authentication. There have been various other attempts to do so. The ability to enhance identify authentication also helps to prevent so-called “phishing” activities on the part of unscrupulous and criminals persons and/or organizations. 
     In computing, phishing is an attempt to criminally and fraudulently acquire sensitive information, such as usernames, passwords and credit card details, by masquerading as a trustworthy entity in an electronic communication. EBay, PayPal and online banks are common targets. Phishing is typically carried out by email or instant messaging, and often directs users to enter details at a website, although phone contact has also been used. Attempts to deal with the growing number of reported phishing incidents include legislation, user training, public awareness, and technical measures. 
     A number of attempts to authorize secure transactions have been implemented. One prior art example of such an attempt is disclosed in U.S. Patent Application Publication No. 20050140497 to Chiviendacz et al, entitled “Method and Apparatus for Securely Providing Identification Information Using Translucent Identification Member With Filter” which published on Jun. 30, 2005, discloses a translucent credit card that can be placed over a login screen with what appears to be random characters. When the credit card is placed over the login screen, a login ID can be derived and typed into a text entry field. The punched holes in the credit card reveal the correct ID for a given user. 
     Another prior art example is the well-known RSA SecurID authentication mechanism, which consists of a “token”—a piece of hardware (e.g. a token or USB) or software (e.g. a “soft token” for a PDA or cell phone) assigned to a computer user that generates an authentication code at fixed intervals (usually 30 or 60 seconds) using a built-in clock and the card&#39;s factory-encoded random key (known as the “seed” and often provided as a *.asc file). The seed is different for each token, and is loaded into a corresponding RSA SecurID server as the tokens are purchased. 
     RSA SecurID token hardware is designed to be tamper-resistant to deter reverse engineering of the token. Despite deterrent, however, public coding has been developed by the security community allowing a user to emulate RSA SecurID in software, but only if they have access to a current RSA SecurID code, and the original RSA SecurID seed file introduced to the server. 
     A user authenticating to a network resource (e.g., a dial-in server or a firewall) needs to enter both a personal identification number and the number being displayed at that moment on their RSA SecurID token. Some systems using RSA SecurID disregard PIN implementation altogether, and rely on password/RSA SecurID code combinations. The server, which also has a real-time clock and a database of valid cards with the associated seed records, computes what number the token is supposed to be showing at that moment in time, checks it against what the user entered, and makes the decision to allow or deny access. 
     The RSA SecurID device thus generates a new random number every minute which is used as a password. In addition to the physical key fob this solution requires client software to be installed on a user&#39;s PC. The RSA SecurID implementation, however, can be expensive, especially if thousands of end users are supported. 
     A further prior art authentication example includes the use of “Paper Key Cards” in which a new password is read from a preprinted key card, or list of passwords. Such an approach requires that new printed key cards are distributed to the users on a regular basis. If the distribution is not secure (e.g., such as mail) then this presents additional security concerns. The user enters a user ID followed by the next unused password on the keycard. 
     One of the primary drawbacks with these examples of prior art authentication approaches is that they fail to offer full protection against a phishing site. A fake (phishing) site could have obtained the sufficient password information from the above three methods to immediately log in to the users account. What is needed to overcome the problems associated with such prior art techniques is a novel approach that can provide both a pass code and a mechanism to defeat phishing. 
     BRIEF SUMMARY 
     The following summary is provided to facilitate an understanding of some of the innovative features unique to the present invention and is not intended to be a full description. A full appreciation of the various aspects of the embodiments disclosed herein can be gained by taking the entire specification, claims, drawings, and abstract as a whole. 
     It is, therefore, one aspect of the present invention to provide for an improved data-processing method, system and computer-usable medium. 
     It is another aspect of the present invention to provide for a method, system and computer-usable medium for providing secure authentication for users desirous of performing a secure transaction over an unsecure network. 
     It is a further aspect of the present invention to provide for a method, system and computer-usable medium for providing an authentication mechanism that thwarts phishing. 
     The aforementioned aspects and other objectives and advantages can now be achieved as described herein. A method, system and computer-usable medium for providing secure access to an application over an unsecure network. A transparent identification member can be physically placed by a user against a login interface, the transparent identification member possessing a filter for filtering and displaying a pattern unique to the login interface. Thereafter, the user can be automatically permitted to authenticate an unsecure network and securely access an application over the unsecure network, in response to placing the transparent identification member against the login interface and providing a user input at a physical location on the login interface corresponding to the pattern unique to the login interface, thereby providing a secure authentication for the user to perform secure transactions over the unsecure network and preventing phishing by others with respect to the user and the unsecure network. 
     The login interface can be initially displayed graphically for the user, in response to a request by the user to access the unsecure network utilizing a data-processing apparatus in communication with the unsecure network, the login interface displayable via a display unit associated with the data-processing apparatus. The transparent identification member additionally possesses visible graphics that assist the user in distinguishing the transparent identification member from a different transparent identification member. Additionally, when the transparent identification member is placed against the login interface, a graphically displayed user input device pointer is visible through the transparent identification member. 
     The transparent identification member also can include an electrostatic backing that permits the transparent identification member to adhere and thereafter be removed from the display screen without leaving any residue behind. The transparent identification member can also be calibrated in response to placing the transparent identification member over a pre-login interface displayed for the user prior to displaying the login interface underneath the transparent identification member. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       The accompanying figures, in which like reference numerals refer to identical or functionally-similar elements throughout the separate views and which are incorporated in and form a part of the specification, further illustrate the present invention and, together with the detailed description of the invention, serve to explain the principles of the present invention. 
         FIG. 1  illustrates a schematic view of a computer system in which the present invention may be embodied; 
         FIG. 2  illustrates a schematic view of a software system including an operating system, application software, and a user interface for carrying out the present invention; 
         FIG. 3  depicts a graphical representation of a network of data processing systems in which aspects of the present invention may be implemented; 
         FIG. 4  illustrates a graphical representation of a pre-fabricated TCC (Transparent Credit Card) that can be adapted for use in accordance with a preferred embodiment; 
         FIG. 5  illustrates a graphical representation of a login interface, which can be implemented in accordance with a preferred embodiment; 
         FIG. 6  illustrates a graphical representation of a TCC placed over a login interface in accordance with a preferred embodiment; 
         FIG. 7  illustrates a flow chart of operations depicting a method for permitting a user to authenticate a network for secure transactions by said user over said network, in accordance with a preferred embodiment; 
         FIG. 8  illustrates an example login interface combined with an overlayed transparent identification member that can be implemented in accordance with an alternative embodiment; 
         FIG. 9  illustrates a graphical representation of example graphical artwork that can be utilized to distinguish the TCC from other TCC devices, in accordance with an alternative embodiment; 
         FIG. 10  illustrates a graphical representation of a TCC placed over a login interface, in accordance with an alternative embodiment; and 
         FIG. 11  illustrates a graphical representation of an image  1100  depicting a TCC placed over a login interface, in accordance with an alternative embodiment. 
     
    
    
     DETAILED DESCRIPTION 
     The particular values and configurations discussed in these non-limiting examples can be varied and are cited merely to illustrate at least one embodiment and are not intended to limit the scope of such embodiments. 
       FIGS. 1-3  are provided as exemplary diagrams of data processing environments in which embodiments of the present invention may be implemented. It should be appreciated that  FIGS. 1-3  are only exemplary and are not intended to assert or imply any limitation with regard to the environments in which aspects or embodiments of the present invention may be implemented. Many modifications to the depicted environments may be made without departing from the spirit and scope of the present invention. 
     As depicted in  FIG. 1 , the present invention may be embodied in the context of a data-processing apparatus  100  comprising a central processor  101 , a main memory  102 , an input/output controller  103 , a keyboard  104 , a pointing device  105  (e.g., mouse, track ball, pen device, or the like), a display device  106 , and a mass storage  107  (e.g., hard disk). Additional input/output devices, such as a printing device  108 , may be included in the data-processing apparatus  100  as desired. As illustrated, the various components of the data-processing apparatus  100  communicate through a system bus  110  or similar architecture. 
     Illustrated in  FIG. 2 , a computer software system  150  is provided for directing the operation of the data-processing apparatus  100 . Software system  150 , which is stored in system memory  102  and on disk memory  107 , includes a kernel or operating system  151  and a shell or interface  153 . One or more application programs, such as application software  152 , may be “loaded” (i.e., transferred from storage  107  into memory  102 ) for execution by the data-processing apparatus  100 . The data-processing apparatus  100  receives user commands and data through user interface  153 ; these inputs may then be acted upon by the data-processing apparatus  100  in accordance with instructions from operating module  151  and/or application module  152 . 
     The interface  153 , which is preferably a graphical user interface (GUI), also serves to display results, whereupon the user may supply additional inputs or terminate the session. In an embodiment, operating system  151  and interface  153  can be implemented in the context of a “Windows” system. Application module  152 , on the other hand, can include instructions, such as the various operations described herein with respect to the various components and modules described herein, such as, for example, the method  600  depicted in  FIG. 6 . 
       FIG. 3  depicts a graphical representation of a network of data processing systems in which aspects of the present invention may be implemented. Network data processing system  300  is a network of computers in which embodiments of the present invention may be implemented. Network data processing system  300  contains network  302 , which is the medium used to provide communications links between various devices and computers connected together within network data processing apparatus  100 . Network  302  may include connections, such as wire, wireless communication links, or fiber optic cables. 
     In the depicted example, server  304  and server  306  connect to network  302  along with storage unit  308 . In addition, clients  310 ,  312 , and  314  connect to network  302 . These clients  310 ,  312 , and  314  may be, for example, personal computers or network computers. Data-processing apparatus  100  depicted in  FIG. 1  can be, for example, a client such as client  310 ,  312 , and/or  314 . Alternatively, data-processing apparatus  100  can be implemented as a server, such as servers  304  and/or  306 , depending upon design considerations. 
     In the depicted example, server  304  provides data, such as boot files, operating system images, and applications to clients  310 ,  312 , and  314 . Clients  310 ,  312 , and  314  are clients to server  304  in this example. Network data processing system  300  may include additional servers, clients, and other devices not shown. Specifically, clients may connect to any member of a network of servers which provide equivalent content. 
     In the depicted example, network data processing system  300  is the Internet with network  302  representing a worldwide collection of networks and gateways that use the Transmission Control Protocol/Internet Protocol (TCP/IP) suite of protocols to communicate with one another. At the heart of the Internet is a backbone of high-speed data communication lines between major nodes or host computers, consisting of thousands of commercial, government, educational and other computer systems that route data and messages. Of course, network data processing system  300  also may be implemented as a number of different types of networks, such as for example, an intranet, a local area network (LAN), or a wide area network (WAN).  FIG. 1  is intended as an example, and not as an architectural limitation for different embodiments of the present invention. 
     The following description is presented with respect to embodiments of the present invention, which can be embodied in the context of a data-processing system such as data-processing apparatus  100 , computer software system  150  and data processing system  300  and network  302  depicted respectively  FIGS. 1-3 . The present invention, however, is not limited to any particular application or any particular environment. Instead, those skilled in the art will find that the system and methods of the present invention may be advantageously applied to a variety of system and application software, including database management systems, word processors, and the like. Moreover, the present invention may be embodied on a variety of different platforms, including Macintosh, UNIX, LINUX, and the like. Therefore, the description of the exemplary embodiments which follows is for purposes of illustration and not considered a limitation. 
       FIG. 4  illustrates a graphical representation of a pre-fabricated TCC (Transparent Credit Card)  400  that can be adapted for use in accordance with a preferred embodiment. Note that the TCC  400  constitutes one example of a transparent identification member that be implemented in accordance with preferred or alternative embodiments. The particular shape, size and graphics of TCC  400  depicted in  FIG. 4  are illustrated herein for general exemplary and illustrative purposes only and do not constitute a limiting feature of the disclosed embodiments. 
     The TCC  400  can be utilized in association with a computing device and system, such as, for example, data-processing apparatus  100  depicted in  FIG. 1 , network  300  of  FIG. 3 , and/or computer software system  150  of FIG,  2 . The TCC  400  can be placed on a display screen of, for example, a monitor associated with data-processing apparatus  100 . When placing the TCC  400  on such a display screen, the mouse pointer is visible through the TCC  400 . The graphics visible on the TCC  400  can be utilized to assist a user in distinguishing the particular TCC  400  from other TCC mechanisms, The TCC  400  preferably includes an electrostatic backing that permits the TCC to adhere to a computer monitor without leaving behind a residue after the TCC  400  is removed from the monitor/display screen. 
       FIG. 5  illustrates a graphical representation of a login interface  500 , which can be implemented in accordance with a preferred embodiment. Login interface  500  can be graphically displayed as a login screen on a monitor/display screen associated with a computing device, such as data-processing apparatus  100  depicted in  FIG. 1 . The example login interface or login screen  500  can include, for example, 100 dots displayed on login interface  500 . In the particular example depicted in  FIG. 5 , the dots located on the login screen  500  can match to the TCC  400 . When there are 100 spots, for example, there is an approximate 1/100*100*100 (i.e. one in a million chance) that an associated code can be guessed. The number of spots could be increased to 1000 and/or there could also be 4 or more dots to click. Either would exponentially increase the security of the TCC  400 . During each login, the spots are placed differently on the login interface  500 . 
       FIG. 6  illustrates a graphical representation of a combination  600  of the login interface  500  depicted in  FIG. 5  and the TCC  400  depicted in  FIG. 4  in accordance with a preferred embodiment. FIG,  6  generally depicts the graphical representation of the TCC  400  placed over the login interface  500 . When the TCC  400  depicted in  FIG. 4  is placed over the login interface  500  depicted in  FIG. 5 , the view in  FIG. 6  becomes visible. The user sees only three dots corresponding to those in the login interface  500 , which match the holes in the TCC  400 . The mouse pointer is visible through the TTC  400 . The user clicks the three white spots and “clicks” SUBMIT and thereby authenticates him or her, after which the login occurs. 
     Note that calibration of the TCC  400  is critical. In order to calibrate the TCC  400 , the user can place the TCC  400  on a pre-login screen (not shown) and then “clicks on” the corners of the TCC  400  so that a server (e.g., servers  304  and/or  306  of  FIG. 3 ) can then calculate the required size and placement of the login interface  500 . Thus, such a server can properly place the dots to line up with correct areas in the TCC  400 . The server software should handle the calibration, even if the TCC  400  is perfectly placed on the login interface  500 . 
       FIG. 7  illustrates a flow chart of operations depicting a method  700  for permitting a user to authenticate a network for secure transactions by said user over said network, in accordance with a preferred embodiment. Note that the method  700  can be implemented in the context of a computer-useable medium that contains a program product. The method  700  depicted in  FIG. 7  can also be implemented in a computer-usable medium containing a program product. 
     Programs defining functions of the present invention can be delivered to a data storage system or a computer system via a variety of storage media, which include, without limitation, non-writable storage media (e.g., CD-ROM), writable storage media (e.g., hard disk drive, read/write CD ROM, optical media), and system memory such as but not limited to Random Access Memory (RAM), It should be understood, therefore, that such media, when storing computer readable instructions that direct method functions in the present invention, represent alternative embodiments of the present invention. Further, it is understood that the present invention may be implemented by a system having means in the form of hardware, software, or a combination of software and hardware as described herein or their equivalent. Thus, the method  700  described herein can be deployed as process software in the context of a computer system or data-processing system as that depicted in  FIGS. 1-3 . 
     Note that as illustrated in  FIG. 7 , client side actions and server side options are generally indicated by the separation provided by dashed line  720 . The process generally begins as depicted at block  701  when an URL is entered into a web browser by the user. Next, as depicted at block  702 , two operations can be processed. First, as indicated at block  710 , a traditional login page with a user ID field can be displayed for the user. Second, as illustrated at block  712 , an area for clicking the corners of the TCC  400  can be displayed. Thereafter, as described at block  703 , the user ID can be entered, the TCC  400  placed on the screen and the corners “clicked” followed thereafter by “SUBMIT” or appropriate user input by the user as respectively depicted at blocks  714 ,  715 , and  717 . Note that following processing of the operation indicated at block  703 , the operation illustrated at block  704  can be implemented in which the graphical login with seemingly white dots is displayed where the TCC  400  is placed. Next, as depicted at  705 , the three white dots can be “clicked” by a user via a pointing device (e.g., a “mouse”) and the server authenticated as depicted respectively by blocks  719  and  721 . 
       FIG. 8  illustrates an example login interface combined with an overlayed transparent identification member that can be implemented in accordance with an alternative embodiment.  FIG. 8  generally depicts the graphical representation of an image  800  of TCC  400  placed over login interface  500 . Thus far, the basics of the TCC  400  have been demonstrated. The image  800  depicted in  FIG. 8  demonstrates how the TCC  400  and login interface  500  can be utilized to prevent phishing. In the embodiment depicted in  FIG. 8 , the TCC  400  has been placed over login screen  500  and the resultant image  800  is displayed for the user. The combined image  800  must reveal a geometrical pattern that is only known by the user. In the example illustrated in  FIG. 8 , this geometrical pattern corresponds to a square. The user may then only click on the remaining three points. Should the user be connected to a fake site, then the expected pattern will not be matched. 
       FIG. 9  illustrates a graphical representation of example graphical artwork that can be utilized to distinguish a TCC  900  from other TCC devices, in accordance with an alternative embodiment. TCC  900  is similar to TCC  400  discussed earlier, the difference being that TCC  900  provides a more ordered appearance to the TCC  900  and login windows (e.g., see login interface  1000  discussed below). In the particular implementation depicted in  FIG. 9 , the user possesses a numeric password and must select (e.g., “click” with a pointing device such as a mouse or trackball) the dot below a number representing each digit in the password. The particular graphics artwork associated with TCC  900  assists the user in distinguishing the particular TCC  900  from other cards. 
       FIG. 10  illustrates an example login interface  1000  that can be implemented in accordance with the alternative embodiment depicted in  FIG. 9 . In the login interface  1000 , the dots can be ordered into labeled columns as indicated in  FIG. 10 . 
       FIG. 11  illustrates a graphical representation of an image  1100  depicting a TCC placed over a login interface, in accordance with an alternative embodiment. The TCC is placed over the login screen. The Mouse pointer is visible through the transparent credit card. The user then “clicks” the white spots corresponding to his or her password and clicks SUBMIT (the submit key is not shown) and thereby authenticates himself or herself, after which the login occurs. 
     It will be appreciated that variations of the above-disclosed and other features and functions, or alternatives thereof, may be desirably combined into many other different systems or applications. Also that various presently unforeseen or unanticipated alternatives, modifications, variations or improvements therein may be subsequently made by those skilled in the art which are also intended to be encompassed by the following claims.