The present invention is related to personal computers, and more specifically to a secure transaction personal computer.
Currently, computer makers have begun to target specific user-bases by creating computer systems designed from the ground-up for specific purposes such as gaming. A computer designed with gaming in mind may be designed with special cooling systems, fast hard drives, plenty of memory, and extremely high-end video cards. The operating systems may also be specially designed for media intensive applications to run smoothly. As another example, blade terminal computers are designed to have limited to no local storage, but heavy network and memory capability to run remote applications seamlessly.
However, currently there is a problem where consumers feel uncomfortable interacting with online banking, online e-commerce systems, or other secure transaction systems where personalized financial information may be transferred. The current solution is to require a user to buy off-the-shelf (OTS) software from vendors to help provide some security for these type transactions. However, these applications are susceptible to being circumvented by malicious software, leaving a user's system at high chance of exposure to misappropriation of identity and becoming victims of misappropriation of funds.
According to one aspect of the present invention, a secure computer for secure transactions includes an operating system, the operating system having built-in security features, a processor, the processor being manufactured with security features and configured to execute software in a virtualized state outside of the operating system, an identity security module, and a loss protection device.
The present invention is further described in the detailed description which follows in reference to the noted plurality of drawings by way of non-limiting examples of embodiments of the present invention in which like reference numerals represent similar parts throughout the several views of the drawings and wherein:
As will be appreciated by one of skill in the art, the present invention may be embodied as a method, system, computer program product, or a combination of the foregoing. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may generally be referred to herein as a “system.” Furthermore, the present invention may take the form of a computer program product on a computer-usable storage medium having computer-usable program code embodied in the medium.
Any suitable computer usable or computer readable medium may be utilized. The computer usable or computer readable medium may be, for example but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, device, or propagation medium. More specific examples (a non-exhaustive list) of the computer readable medium would include the following: an electrical connection having one or more wires; a tangible medium such as a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), a compact disc read-only memory (CD-ROM), or other tangible optical or magnetic storage device; or transmission media such as those supporting the Internet or an intranet. Note that the computer usable or computer readable medium could even be paper or another suitable medium upon which the program is printed, as the program can be electronically captured, via, for instance, optical scanning of the paper or other medium, then compiled, interpreted, or otherwise processed in a suitable manner, if necessary, and then stored in a computer memory.
In the context of this document, a computer usable or computer readable medium may be any medium that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, platform, apparatus, or device. The computer usable program code may be transmitted using any appropriate medium, including but not limited to the Internet, wireline, optical fiber cable, radio frequency (RF) or other means.
Computer program code for carrying out operations of the present invention may be written in an object oriented, scripted or unscripted programming language such as Java, Perl, Smalltalk, C++ or the like. However, the computer program code for carrying out operations of the present invention may also be written in conventional procedural programming languages, such as the “C” programming language or similar programming languages.
The present invention is described below with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture including instruction means which implement the function/act specified in the flowchart and/or block diagram block or blocks.
The computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operations to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks. Alternatively, computer program implemented steps or acts may be combined with operator or human implemented steps or acts in order to carry out an embodiment of the invention.
According to embodiments of the present invention, a secure computer is built with secure hardware, secure operating system, identity security, loss protection security, and may be branded to denote that the computer has been designed with an abundance of security features and/or with a name or logo of a company. Embodiments according to the present invention build upon a secure hardware architecture that provides mechanisms for virtualization and separation of operating system (OS) level functions and applications from other applications and/or potential reporting systems. The secure hardware architecture enables secure status reporting as well as potential secure communication with other hardware functions such as a network interface card (NIC). A software system that runs on the secure hardware architecture may be virtualized to actually perform secure communication with online banking systems and secure transaction systems.
Further, embodiments according to the present invention may have a predetermined and hardened operating system installed on the secure computer (e.g., a hardened version of a Windows-based operating system). In embodiments according to the present invention, all security measures may be turned on to close any potential security holes (e.g., auto-update is set on, install antivirus with auto-update on, firewall is on, restrictions browser are set, etc.). This ensures that the secure computer security is tight, defeating many of the common problems with most systems today.
In addition to the hardware and operating system being tightened, additional security may be provided to protect the user's identity. For example, biometrics may be built-into the computer which allows users to use “what they are” to gain access to the use of the computer, replacing the typical password and keystroke based mechanisms that usually fall prey to eavesdropping by malware. Other examples of identity security used may include one-time password (OTP) technology, and gyro—passwords. The use of identity security, such as biometrics, adds a level of security that makes it difficult for malware or other software to sniff passwords, and provides many more secure opportunities to conduct transactions.
Moreover, according to embodiments of the present invention, a computer for secure transactions may be marked with a special logo to brand the system as a type of secure computer. This provides notice to a user that this computer is built with enhanced security for secure e-commerce, online banking and other secure type transactions. Embodiments according to the present invention may also include loss protection security, for example, Life Lock technology, Lo-Jack technology, etc., as well as special hardware measures such as hard drive locking. Hard drive locking technology insures that if the hard drive is stolen, it cannot run in a new system. This protects the data contained in the hard drive from others. Therefore, a secure computer according to embodiments of the present invention mediates many of the exposure factors such as key logging and typical malware by providing restricted access (e.g., using biometrics), a secure hardware architecture, and a hardened and secure operating system.
As noted previously, embodiments according to the present invention may include a processor with a secure hardware architecture that has the ability to run software code in a virtualized state outside of the running operating system. For example, an instance of a web browser may be “flipped” into a virtualized state and operate outside of the OS, thus preventing eavesdropping by malware. In addition, according to embodiments of the present invention, the computer system may be security hardened by duplicating essential system files, thus preventing overwriting by malicious software. Also, global policies may be put in place that may restrict what users may do, and may provide requirements to users for passwords or other mechanisms before allowing system modifications. The computer system may also include monitoring software that monitors the execution of programs and looks for suspicious behavior. The monitoring software may alert the processor if suspicious behavior has been detected. The computer system, according to the present invention, may also include software that tracks security events (similar to an auditing system) that may covertly send notifications regarding detected security events back to a central location that stores and tracks security events (e.g. a corporate database). The monitoring software and the tracking software may run in a virtualized environment outside of the OS, and “watch” in parallel as the OS runs. This provides a segment so that the OS can't see the software in the virtualized state and therefore, malicious software can't modify it.
The OS may be configured such that if either the original essential system files or the duplicates of the essential system files are modified, they are reverted back to either their original state or a known good state. Since both the original and duplicate essential system files can't be modified at the same time, they may be used to correct each other if one of them is modified. Further, according to embodiments of the present invention, global policies may be set or modified by a user with administrator rights (or domain rights at a corporate level). The processor may issue security related alerts to a user identifying any ramifications of making certain modifications to the system. In addition, according to embodiments of the present invention, the policies may be set, modified, or completely disabled as desired by an appropriate user with the appropriate rights (e.g., administrator rights). Moreover, according to embodiments of the present invention, virtualized software may be used to create secure on-time session keys or private keys for a public key infrastructure (PM) and be used as a secure “store”, thus preventing malicious software from being able to use/sniff the keys. This provides for a more secure communication.
Further, after the computer system's startup in block 401, in block 410 a virtual tracking application may also be started and run outside of the operating system. Then in block 411, computer security related events may be tracked by the tracking application. In block 412, it may be determined if a security related event has been detected and if not, then the process may return to block 411 where computer security related events may be continued to be tracked. If a security related event has been detected, then in block 413 the detected event may be reported to a central event tracking repository or other entity.
In block 402, after the virtual monitoring application has been started, in block 414, one or more applications or programs may be started, executed or run. In block 415, the virtual monitoring application (or a different virtual monitoring application) may continue monitoring of the executing applications and programs. In block 416, it may be determined if any suspicious activity has been detected based on monitoring the execution of any of the applications and programs and if not, the monitoring may continue. If suspicious activity has been detected, then in block 409, an alert of possible suspicious activity may be generated. The alert may be generated on a display of the computer system or generated and sent exterior to the computer system.
The flowcharts and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the blocks may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the singular forms “a”, “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
Although specific embodiments have been illustrated and described herein, those of ordinary skill in the art appreciate that any arrangement which is calculated to achieve the same purpose may be substituted for the specific embodiments shown and that the invention has other applications in other environments. This application is intended to cover any adaptations or variations of the present invention. The following claims are in no way intended to limit the scope of the invention to the specific embodiments described herein.