Abstract:
An external operating system (OS) that is separate from the internal OS of a computer is provided. The external OS may be stored on a USB device, a CD ROM, or other devices. The device that stores the external OS may be removable or non-removable, may have an internal flash memory of varying sizes, and may include browser software. The external OS, flash memory size and browser software may be customizable according to user requirements. The computer may boot up from the device into the external OS, rather than into the internal OS of the computer. Once the computer is booted up, the user has the ability to browse online, with all transactions occurring in the external OS, partitioned from the user&#39;s internal computer hard drive, thereby preventing infecting the computer by malware or other malicious software.

Description:
CROSS REFERENCE TO RELATED APPLICATION 
       [0001]    This application claims priority to Provisional Patent Application No. 61/258,408 filed Nov. 5, 2009, the entirety of which is hereby incorporated by reference. 
     
    
     BACKGROUND OF THE INVENTION 
       [0002]    1. Field of the Invention 
         [0003]    Aspects of the present invention are directed to methods and systems for ensuring protection for a computer&#39;s internal hard drive and stored data from online threats, browsing habits, virus and malware infection and accumulation, and the transmission of personal data to/from online entities. Specifically, aspects of the present invention are directed to methods and systems that ensure secure online browsing by providing an operating system (OS), which is external to and separate from a computer user&#39;s internal OS. 
         [0004]    2. Background of the Related Art 
         [0005]    One problem that exists in the art today is that online browsing security is difficult to guarantee. When using a computer browser connected to the Internet, a user&#39;s computer may be infected via its open communication with the Internet by malware, such as spyware, computer viruses and keystroke loggers, among other types of malicious software, all of which could potentially slow down the user&#39;s computer and/or threaten the integrity of the data stored on it. Malware threats may be accrued over time and may remain undetected for years after exposure. The malware is downloaded onto the computer&#39;s hard drive, and as long as the hard drive is writable, there is no guaranteed secure way in which to browse and protect data stored on the hard drive. 
         [0006]    There is a need in the art, therefore, for methods and systems that ensure secure ways in which to browse the Internet, while protecting data integrity. Furthermore, there is a need in the art for a method and system that ensures that no malware and/or other malicious software will be saved on the computer&#39;s hard drive while the user is browsing the Internet. There is a further need in the art for methods and systems that ensure no history will be retained of the sites a user visited while browsing the Internet. There is yet a further need in the art for fast and efficient methods and systems that ensure secure browsing. 
       SUMMARY OF THE INVENTION 
       [0007]    Aspects of the present invention solve the above-identified needs, and others, by providing methods and systems for ensuring secure ways in which to browse the Internet, while protecting system and data integrity of a computer. Furthermore, aspects of the present invention ensure that no malware and/or other malicious software will be saved on the computer&#39;s hard drive while the user is browsing the Internet. In addition, aspects of the present invention ensure that no history of the sites the user visited while browsing the Internet is retained. Further, aspects of the present invention provide methods and systems that ensure fast and efficient secure Internet browsing. 
         [0008]    Aspects of the present invention relate to using an external OS, which is separate from the internal OS of the user&#39;s computer and is located outside the computer. The external OS may be stored on a Universal Serial Bus (USB) device, a CD ROM, or other devices. The device that stores the external OS may be removable or non-removable, may have an internal flash memory of varying sizes, and may include browser software. In accordance with aspects of the present invention, the external OS, flash memory size and browser software may be customizable according to user requirements. The user&#39;s computer (e.g., laptop or desktop) may boot up from the device into the external OS, not the internal OS of the user&#39;s computer. In accordance with aspects of the present invention, once the computer is booted up, the user has the ability to browse online, with all transactions occurring in the external OS, partitioned from the user&#39;s internal computer hard drive. As a result, any malicious software that has propagated into the external OS will not reach the internal OS of the computer and threaten the integrity of the computer itself and/or the data stored on it. 
         [0009]    In one aspect of current invention, the device may be used in read-only mode. This aspect ensures the highest level of security, as no data may be downloaded to the device. This aspect ensures significant protection against malicious software. On the other hand, the read-only mode also limits the ability to download data and software updates. 
         [0010]    In another aspect, the device may be used in a read-write mode, which allows the use of the device both in read-only mode and in write mode. When in read-only mode, this aspect ensures the same features as described above with respect to the read-only device. However, a user may manually switch from read-only mode to write mode in order to download data or software upgrades. It should be noted that when the device is in write mode and is connected to the Internet, the device may be compromised by malicious software. However, any malicious software that is downloaded onto the device will remain on the device itself, and will not infect the computer&#39;s internal operating system and hard drive. 
         [0011]    In yet another aspect, the device may be write-only. This aspect provides the user with an ability to have a clean internal OS and hard drive, separate and apart from the external OS on the device. Malware and other malicious software may, however, be written to the device while the user is connected to the Internet. As with the read-write device described above, however, the malicious software remains on the device and has no effect on the user&#39;s internal OS and hard drive. 
         [0012]    Additional advantages and novel features of the invention will be set forth in part in the description that follows, and in part will become more apparent to those skilled in the art upon examination of the following or upon learning by practice of the invention. 
     
    
     
       BRIEF DESCRIPTION OF THE FIGURES 
         [0013]      FIG. 1  illustrates an exemplary flowchart of the method for secure online browsing, in accordance with aspects of the present invention; 
           [0014]      FIG. 2  shows an exemplary flowchart of the method for secure online browsing, in accordance with aspects of the present invention; 
           [0015]      FIG. 3  shows an exemplary flowchart of the method for secure online browsing, in accordance with aspects of the present invention; 
           [0016]      FIG. 4  presents an exemplary system diagram of various hardware components and other features, for use in accordance with aspects of the present invention; and 
           [0017]      FIG. 5  is a block diagram of various exemplary system components, for use in accordance with aspects of the present invention. 
       
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
       [0018]    Aspects of the present invention will now be described in reference to the accompanying figures. The present invention is not limited to the aspects described herein, however, these and other aspects and variations will be readily apparent to those of ordinary skill in the art upon review of the description that follows. 
         [0019]      FIG. 1  illustrates an exemplary flowchart of the method for secure online browsing, in accordance with aspects of the present invention. In  FIG. 1 , according to various aspects of the current invention, the method starts at S 102 , where a browsing session, which may be secure, is started using a computer. The method continues to S 104 , where a True Absolute Protection (TAP) tool or device is set to Write Mode. The method continues to S 106 , where a USB drive or a CD-ROM is functionally coupled to, for example, inserted into, a computer&#39;s external drive. The method continues to S 108 , where a determination is made as to whether the system Basic Input/Out System (BIOS) is set to boot from a USB or CD-ROM drive. According to various aspects of the current invention, if the determination is made that the system BIOS is set to boot from a USB or CD-ROM drive, the method continues to S 110 , where the system is booted from the USB. If the determination is made that the system BIOS is not set to boot from a USB or CD Rom drive, then the method continues to S 112 , where the system BIOS is configured to boot from the USB or CD-ROM drive. When the system BIOS is configured to boot from the USB or CD-ROM drive, the method continues to S 108  to confirm that the system BIOS is configured as such, and then to S 110 , where, as discussed above, the computer is booted using the USB. If in S 110  the system is not booted from the USB, then the method continues to S 114 , where the system is booted from the CD-ROM drive. When the system boots either from the USB in S 110  or the CD-ROM drive in S 114 , the method continues to S 116 , where the OS located on the USB or CD-ROM drive loads onto the computer. 
         [0020]    According to various aspects of the current invention, once the OS loads onto the computer, the method continues to S 122 , where an initial password may be set. Alternatively, no password may be required and S 122  may be omitted from the method. The method then continues to S 120 , where the existence of an Internet connection is verified, and in S 118 , a determination is made as to whether updates to the external OS are necessary. According to various aspects of the current invention, if updates are necessary, the method continues to S 128 , where it is determined whether updates are available. If updates are available during S 128 , then the method continues to S 130 , where the user is prompted to update the OS. Subsequently, if the user requests an update of the OS, the update is performed in S 144 . It should be noted that if the external OS is set to read-only mode, the OS would have to be switched to write mode in order to allow the update. Once the update is performed in S 144 , the method determines whether the update has been successful in S 146 . If the update has been successful, then the method continues to S 134 , where predefined links may be loaded onto the desktop of the computer. In S 134 , when the desktop loads, a set of pre-defined Internet links may be automatically loaded onto the desktop. For example, these links may be links for advertisements that the user of the device may see with a greater frequency than other links when using the Internet. It should be noted that S 134  may be omitted, and the method may proceed from S 132  directly to S 126 . If it is determined in S 146  that the update was not successful, then the method continues to S 144 , where the update resumes. 
         [0021]    If in S 132  the user does not request an update of the OS, then predefined links are loaded onto the desktop of the computer. The method then continues to S 126 , where the computer is switched to read-only mode. On the other hand, if during S 128  updates are not available, the method continues directly to S 126 , where the computer is switched to read-only mode, where no information can be written on, or downloaded to, the external OS. 
         [0022]    According to various aspects of the current invention, when the computer is switched to read-only mode, the method continues to S 124 , where a determination is made whether anonymous web browsing can start. If anonymous browsing cannot start, the method continues to S 136 , where the user begins a secure non-anonymous Internet session. On the other hand, if, it is determined that anonymous web browsing can start the method continues to S 138 , where a secure anonymous Internet session is started. 
         [0023]    According to various aspects of the current invention, during the secure Internet session (anonymous S 138  or non-anonymous S 136 ), a determination is made as to whether the user has finished using the session in S 140  and S 142 , respectively. If a determination is made that the user has not finished, the session continues. However, if a determination is made that the user has finished with the browsing session, the method continues to S 150  and S 148 , respectively, where the computer is shut down and/or rebooted. At this point, the USB drive or CD-ROM may be removed. 
         [0024]    According to various aspects of the current invention, adding the TAP as an external OS to a computer may be performed by modifying the boot manager of the computer OS to add an option, as a separate boot manager, to boot from a boot loader that does not require entry into the BIOS. The separate boot manager may then used be to bypass requirements of BIOS to support booting from a USB, a CD-ROM or other drive. Accordingly, a user may connect the TAP device to the computer and reboot the computer. Upon reboot, a user may have an option of whether to use the computer OS or the external OS. The user may then select which OS should be used. 
         [0025]      FIG. 2  shows an exemplary flowchart of the method for secure online browsing, in accordance with aspects of the present invention. The method illustrated in  FIG. 2  represents an exemplary method that does not include the application of updates to the operation of aspects of the current invention. In  FIG. 2 , the method starts at S 202 , where a browsing session, which may be secure, is started using a computer. The method continues to S 206 , where a USB drive or a CD-ROM drive is functionally coupled to, for example, inserted into an external drive of, the computer. The method continues to S 208 , where a determination is made as to whether the system BIOS is set to boot from a USB or CD-ROM drive. According to various aspects of the current invention, if the determination is made that the system BIOS is set to boot from a USB or CD-ROM drive, then the method continues to S 210 , where the system is booted from the USB drive. If the determination is made that the system BIOS is not set to boot from a USB or CD ROM drive, the method continues to S 212 , where the system BIOS is configured to boot from the USB or CD-ROM drive. When the system BIOS is configured to boot from the USB or CD-ROM drive, the method continues to S 208  to confirm that the system BIOS is configured as such, and then to S 210 , where, as discussed above, the computer is booted using the USB. If in S 210  the system is not booted from the USB, then the method continues to S 214 , where the system is booted from the CD-ROM drive. When the system boots either from the USB in S 210  or the CD-ROM drive in S 214 , the method continues to S 216 , where the OS loads onto the computer. 
         [0026]    According to various aspects of the current invention, once the OS loads onto the computer, the method continues to S 222 , where an initial password, which may have been set previously, may be entered. Alternatively, no password may be required and S 222  may be omitted from the method. The method then continues to S 220 , where the existence of an Internet connection is verified. According to various aspects of the current invention, the method continues to S 234 , where predefined links are loaded onto the desktop of the computer. In S 234 , when the desktop loads, a set of pre-defined Internet links may be automatically loaded onto the desktop. For example, these links may be links to advertisements that the user of the device may see with a greater frequency than other links when using the Internet. It should be noted that S 234  may be omitted, and the method may proceed from S 220  directly to S 224 . The method then continues to S 224 , where a determination is made as to whether anonymous web browsing can start. If anonymous browsing cannot start, the method continues to S 236 , where the user begins a secure non-anonymous Internet session. On the other hand, if it is determined that anonymous web browsing can start, the method continues to S 238 , where a secure anonymous Internet session is started. 
         [0027]    According to various aspects of the current invention, during the secure Internet session (anonymous S 238  or non-anonymous S 236 ), a determination is made as to whether the user has finished using the session in S 240  or S 242 , respectively. If a determination is made that the user is not finished, the session continues. However, if the determination is made that the user has finished with the browsing session, the method continues to S 250  or S 248 , respectively, where the computer may be shut down and/or rebooted. In this case, the USB drive or CR-ROM may be removed. 
         [0028]      FIG. 3  shows an exemplary flowchart of the method for secure online browsing, in accordance with aspects of the present invention. In  FIG. 3 , according to various aspects of the current invention, the method starts at S 302 , where a browsing session, which may be secure, is started using a computer. The method continues to S 306 , where a USB drive or a CD ROM is inserted in the computer. The method continues to S 310 , where the system is booted from the USB. If in S 310  the system is not booted from the USB, then the method continues to S 314 , where the system is booted from the CD-ROM drive. When the system boots either from the USB in S 310  or the CD-ROM drive in S 314 , the method continues to S 316 , where the OS loads onto the computer. 
         [0029]    According to various aspects of the current invention, once the OS loads onto the computer, the method continues to S 322 , where an initial password may be set. Alternatively, no password may be required and S 322  may be omitted from the method. The method then continues to S 320 , where the existence of an Internet connection is verified, and to S 318 , where a determination is made as to whether updates to the external OS are necessary. According to various aspects of the current invention, if updates to the external OS are necessary, then the method continues to S 328 , where it is determined whether updates are available. If it is determined that updates to the external OS are available at S 328 , the method continues to S 330 , where the user is prompted to update the OS in S 332 . Subsequently, in S 332 , if the user requests an update of the OS, the TAP device is set to write mode in S 343 , and the update is performed in S 344 . Once the update is performed in S 344 , the method determines whether the update has been successful in S 346 . If the update has been successful, the method continues to S 347 , where the TAP device is set back to read-only mode, thereby precluding any unwanted download of malicious software, and the method continues to S 334 , where predefined links are loaded onto the desktop of the computer. In S 334 , when the desktop is initiated a set of pre-defined Internet links may be automatically loaded onto the desktop. For example, these links may be links to advertisements that the user of the device may see with a greater frequency than other links when using the Internet. It should be noted that S 334  may be omitted, and the method may proceed from S 328  directly to S 324 . If it is determined in S 346  that the update was not successful, the method continues to S 344 , where the update is reinitiated. 
         [0030]    On the other hand, if in S 332  the user request an update of the OS, predefined links are loaded onto the desktop of the computer in S 334 . It should be noted that if during S 328  updates are not available, the method continues directly to S 334 , where predefined links are loaded onto the desktop of the computer. 
         [0031]    According to various aspects of the current invention, the method continues to S 324 , where a determination is made as to whether anonymous web browsing can start. If anonymous browsing cannot start, the method continues to S 336 , where the user begins a secure non-anonymous Internet session. On the other hand, if during S 324 , it is determined that anonymous web browsing can start, then the method continues to S 338 , where a secure anonymous Internet session is started. 
         [0032]    According to various aspects of the current invention, during the secure Internet session (anonymous in S 338  or non-anonymous in S 336 ), a determination is made as to whether the user has finished using the session in S 340  and S 342 , respectively. If a determination is made that the user has not finished, the session continues. However, if the determination is made that the user has finished with the browsing session, the method continues to S 350  and S 348 , respectively, where the computer is shut down and/or rebooted. At this point, the USB drive or CR-ROM may be removed. 
         [0033]    According to various aspects of the current invention, the external OS may be provided in a driver, in which a read-write portion is partitioned from a read-only portion. Accordingly, while updates are downloaded via the read-write portion, the read-only portion of the OS is not affected. Accordingly, the read-only portion cannot be attacked by malicious malware or other malicious software, and any updates or changes to the external OS can be stored in the read-write portion and saved throughout several reboots of the computer. In order to achieve the partition, the primary system image may be compressed as a read-only file system, and a read-write file system may be added to the compressed image. As a result, a user may make edits to the root file system, and may save the edits to the portion of the drive that is read-write. According to various aspects, security may also be provided to restrict access to the read-write portion of the drive in order to protect this portion from malicious attacks. 
         [0034]    According to various aspects of the current invention, the external OS can be reset to its initial state, prior to insertion in an external drive of the computer, and at any time during utilization of the external OS. The user may have control of any data downloaded onto the external OS or external drive, to customize the data, and remove the data from the computer without compromising the security of the computer. A remote function may also provide the user with the ability to clear all or part of the browser history and information remotely, without actually reviewing or consulting the browser settings. The drive, whether USB, CD-ROM or other, can contain a security-enabled OS that is partitioned off from a shared, encryptable data drive that is viewable both within the external OS and within any commercial OS. A user using the computer and the computer&#39;s standard commercial OS may configure the external OS to prevent its detection. Also, when using the computer via the external OS, according to various aspects, the hard drive of the computer may be hidden from view of a user using the external OS. Accordingly, no changes to, or attacks on, the computer hard drive may be performed when the external OS is used. During use of the computer via the external OS, the network ports of the computer may be closed in order to prevent attacks by malicious software. 
         [0035]    According to various aspects of the current invention, the external OS may be configured to send text messages to a portable device such as a cellular telephone or a personal digital assistant (PDA). Updates to the external OS may be scheduled and preformed remotely when the external OS is connected to the computer where the display screen corresponding to the external OS may be viewed from a remote device such as a cellular telephone or a PDA, and the external OS may be remotely allowed or denied access to the Internet or to specific portions, or sites, of the Internet. In cases where remote access to the external OS requires permission, a user located remotely from the external OS may request permission to view the content of the display screen of the external OS via a cellular phone or a PDA. According to various aspects, the external OS may have built-in connections to alternative Internet servers and may be configured to exhibit security features in order to, for example, impose a user time limit for access to specific features of the external OS, to monitor user activity via key logging, for example, to allow an employer or parent to monitor employees&#39; or children&#39;s activities on the computer, to maintain an activity log of the external OS, and to communicate in a two-way fashion with a cellular telephone or a PDA. According to various aspects, Internet-based backup may be provided to save a user&#39;s personal profile or other data online, the data being data used or generated using the external OS, in order to provide a back-up in case of failure of the external OS. 
         [0036]    As discussed above, adding the TAP as an external OS to a computer provides a user with a choice of which OS to use, the computer OS or the external OS. The user may select which OS should be used. An advantage of this method is the ability to provide one or more users with the ability to use the same computer, each user having their own external OS with their own dedicated screen, and separate OS and data storage. 
         [0037]    The present invention may be implemented using a combination of hardware, software and firmware in a computer system. In an aspect of the present invention, the invention is directed toward one or more computer systems capable of carrying out the functionality described herein. An example of such a computer system  400  is shown in  FIG. 4 . 
         [0038]    Computer system  400  includes one or more processors, such as processor  404 . The processor  404  is connected to a communication infrastructure  406  (e.g., a communications bus, cross-over bar, or network). Various software aspects are described in terms of this exemplary computer system. After reading this description, it will become apparent to a person skilled in the relevant art(s) how to implement the invention using other computer systems and/or architectures. 
         [0039]    Computer system  400  can include a display interface  402  that forwards graphics, text, and other data from the communication infrastructure  406  (or from a frame buffer not shown) for display on a display unit  430 . Computer system  400  also includes a main memory  408 , preferably random access memory (RAM), and may also include a secondary memory  410 . The secondary memory  410  may include, for example, a hard disk drive  412  and/or a removable storage drive  414 , representing a floppy disk drive, a magnetic tape drive, an optical disk drive, etc. The removable storage drive  414  reads from and/or writes to a removable storage unit  418  in a well-known manner. Removable storage unit  418 , represents a floppy disk, magnetic tape, optical disk, etc., which is read by and written to removable storage drive  414 . As will be appreciated, the removable storage unit  418  includes a computer usable storage medium having stored therein computer software and/or data. 
         [0040]    Alternative aspects of the present invention may include secondary memory  410  and may include other similar devices for allowing computer programs or other instructions to be loaded into computer system  400 . Such devices may include, for example, a removable storage unit  422  and an interface  420 . Examples of such may include a program cartridge and cartridge interface (such as that found in video game devices), a removable memory chip (such as an erasable programmable read only memory (EPROM), or programmable read only memory (PROM)) and associated socket, and other removable storage units  422  and interfaces  420 , which allow software and data to be transferred from the removable storage unit  422  to computer system  400 . 
         [0041]    Computer system  400  may also include a communications interface  424 . Communications interface  424  allows software and data to be transferred between computer system  400  and external devices. Examples of communications interface  424  may include a modem, a network interface (such as an Ethernet card), a communications port, a Personal Computer Memory Card International Association (PCMCIA) slot and card, etc. Software and data transferred via communications interface  424  are in the form of signals  428 , which may be electronic, electromagnetic, optical or other signals capable of being received by communications interface  424 . These signals  428  are provided to communications interface  424  via a communications path (e.g., channel)  426 . This path  426  carries signals  428  and may be implemented using wire or cable, fiber optics, a telephone line, a cellular link, a radio frequency (RF) link and/or other communications channels. In this document, the terms “computer program medium” and “computer usable medium” are used to refer generally to media such as a removable storage drive  480 , a hard disk installed in hard disk drive  470 , and signals  428 . These computer program products provide software to the computer system  400 . The invention is directed to such computer program products. 
         [0042]    Computer programs (also referred to as computer control logic) are stored in main memory  408  and/or secondary memory  410 . Computer programs may also be received via communications interface  424 . Such computer programs, when executed, enable the computer system  400  to perform the features of the present invention, as discussed herein. In particular, the computer programs, when executed, enable the processor  410  to perform the features of the present invention. Accordingly, such computer programs represent controllers of the computer system  400 . 
         [0043]    In an aspect of the present invention where the invention is implemented using software, the software may be stored in a computer program product and loaded into computer system  400  using removable storage drive  414 , hard drive  412 , or communications interface  420 . The control logic (software), when executed by the processor  404 , causes the processor  404  to perform the functions of the invention as described herein. In another aspect of the present invention, the invention is implemented primarily in hardware using, for example, hardware components, such as application specific integrated circuits (ASICs). Implementation of the hardware state machine so as to perform the functions described herein will be apparent to persons skilled in the relevant art(s). 
         [0044]      FIG. 5  shows a communication system  500  usable in accordance with the present invention. The communication system  500  includes one or more accessors  560 ,  562  (also referred to interchangeably herein as one or more “users”) and one or more terminals  542 ,  566 . In one aspect, data for use in accordance with the present invention is, for example, input and/or accessed by accessors  560 ,  562  via terminals  542 ,  566 , such as personal computers (PCs), minicomputers, mainframe computers, microcomputers, telephonic devices, or wireless devices, such as personal digital assistants (“PDAs”) or a hand-held wireless devices coupled to a server  543 , such as a PC, minicomputer, mainframe computer, microcomputer, or other device having a processor and a repository for data and/or connection to a repository for data, via, for example, a network  544 , such as the Internet or an intranet, and couplings  545 ,  564 ,  546 . The couplings  545 ,  546 ,  564  include, for example, wired, wireless, or fiber-optic links. In another aspect, the method and system of the present invention operate in a stand-alone environment, such as on a single terminal. 
         [0045]    While the present invention has been described in connection with illustrative aspects, it will be understood by those skilled in the art that variations and modifications of the aspects described above may be made without departing from the scope of the invention. Other variations will be apparent to those skilled in the art from a consideration of the specification or from a practice of the invention disclosed herein.