[go: up one dir, main page]

WO2018208032A1 - 고립된 사용자컴퓨팅부를 갖는 컴퓨터 - Google Patents

고립된 사용자컴퓨팅부를 갖는 컴퓨터 Download PDF

Info

Publication number
WO2018208032A1
WO2018208032A1 PCT/KR2018/004689 KR2018004689W WO2018208032A1 WO 2018208032 A1 WO2018208032 A1 WO 2018208032A1 KR 2018004689 W KR2018004689 W KR 2018004689W WO 2018208032 A1 WO2018208032 A1 WO 2018208032A1
Authority
WO
WIPO (PCT)
Prior art keywords
computing unit
unit
security management
user
management computing
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
PCT/KR2018/004689
Other languages
English (en)
French (fr)
Inventor
김덕우
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to EP18797801.0A priority Critical patent/EP3623978B1/en
Priority to FIEP18797801.0T priority patent/FI3623978T3/fi
Priority to CN201880030602.8A priority patent/CN110622162B/zh
Priority to JP2020513473A priority patent/JP7499175B2/ja
Priority to US16/611,984 priority patent/US11386200B2/en
Publication of WO2018208032A1 publication Critical patent/WO2018208032A1/ko
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/54Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by adding security routines or objects to programs
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/85Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/12Detection or prevention of fraud

Definitions

  • the present invention relates to a computer having an isolated user computing unit for responding to attempts to seize the system by malware and minimizing damage to the system.
  • the computer is designed with various structures in case of abnormal operation in the computer.
  • these structures incur additional costs and do not apply to general purpose personal computers such as PCs and laptops.
  • widely used computer devices such as PCs, mobile phones, and laptops have a single CPU.
  • coprocessors with performance capabilities such as GPUs, DSPs, and ALUs are used, but in this architecture they do not have their own OS, and only one OS exists in the system. Therefore, if hardware or software causes a problem, the system stops immediately.
  • the top level administrator can control the whole system through the OS. Therefore, it is impossible to prevent malicious code such as hacking or computer virus from taking over the system as the top administrator. In addition, it is impossible to respond if the worker intentionally harms the system.
  • these systems are a structure in which the abnormal operation unit or computer is excluded from the system and the rest of the devices continue to work, and they cannot prevent a malicious code or an operator who has gained the top administrator's authority from taking the system out of control. .
  • a plurality of computer systems may be used in case of failure. At this time, a plurality of computer systems simultaneously process the input signals or information and output the result. Only the information of the computer system designated as the main is finally used, and the computer systems designated as the standby wait while monitoring the operation of the main system. If an abnormality of the main system is detected during the standby, the spare computer system automatically replaces the main computer system.
  • the output information is wrong, such as a spaceship, it can be a big problem, and the information outputted by several computers can be used as a confirmed output after voting.
  • the purpose is limited to obtaining an operation result without interruption even in case of failure of an individual unit or a computer.
  • another computer in the system is used to exclude or replace a computer in which an abnormal operation is detected, and another computer is used to repair or maintain normal operation of the computer in which the abnormal operation is detected. It is not used as an auxiliary.
  • the software that has gained the super administrator's authority can control the entire system through the OS. It is impossible to cope.
  • the present inventors propose a computer having an isolated user computing unit to cope with attempts to seize the system by malicious codes and to minimize the damage of the system.
  • the computer according to the present invention is directly connected to and control the hardware I / O devices, and in particular, security management computing to manage the secondary storage unit divided into security management computing and user computing for Wealth; I / O devices and especially auxiliary storage units are isolated or separated in a way that is connected to the hardware under the control of the security management computing unit, and connected to the security management computing unit by a separate communication interface with a separate CPU and memory. It consists of a user computing unit that runs a program on a user OS.
  • the user program and the user OS is performed in the user computing unit isolated from the security management computing unit, the computer associated with the I / O devices or the function for monitoring recovery is configured to be performed in the security management computing unit and
  • the basic structure of the software used is the basic structure of the software used.
  • a computer includes: a first central processing apparatus having a first address bus, a first data bus, and first control bus signals; A first memory unit connected to the first central processing apparatus through a first address bus, a first data bus, and a first control bus signal; An auxiliary storage unit such as an HDD connected to the first central processing apparatus via a first address bus, a first data bus, and a first control bus signal; A security management computing unit including a first address bus, a first data bus, a first control bus, and an I / O (input and output) device unit connected to the first central processing apparatus; A second central processing apparatus having a second address bus, a second data bus, and second control bus signals; And a user computing unit including a second memory unit connected to the second central processing apparatus through a second address bus, a second data bus, and a second control bus signal.
  • the security management computing unit manages and monitors and recovers I / O devices connected to the I / O device unit, and monitors and controls the user computing unit.
  • the user computing unit is isolated from the security management computing unit and is isolated from the user program and the user. It is characterized by running the OS.
  • the first central processing unit of the security management computing unit and the first address bus, the first data bus, the first control bus signals are connected, and the second central processing unit, the second address bus, the second data of the user computing unit Connected via bus and second control bus signals, the existing intercommunication unit between the first central processing unit and the second central processing unit is responsible for the communication between the security management computing unit and the user computing unit.
  • the auxiliary memory unit may include a security management computing storage area exclusively used by the security management computing unit and not exposed to the user computing unit, and a user computing storage area used by the user computing unit under the control of the security management computing unit.
  • the original user OS data executed in the user computing unit may be stored in the user computing unit storage area, and a copy thereof may be stored in the security management computing storage area.
  • the computer comprises: a first central processing apparatus having a plurality of dedicated hardware interfaces; A first random access memory (RAM), a graphics controller unit, a first boot memory (non-volatile memory such as ROM or flash memory), a peripheral controller hub unit independently connected to the first central processing unit using the dedicated interfaces.
  • Intercommunication unit A security management computing unit including an auxiliary storage unit and an I / O (input / output unit) unit connected to the peripheral controller hub unit, the intercommunication unit and a first dedicated interface, and a second random access memory and a second unit.
  • a user computing unit including a second central processing apparatus connected to two dedicated interfaces, and connected to a second boot memory (a nonvolatile memory such as a ROM or flash memory) and a third dedicated interface.
  • the boot memory may be connected to the peripheral controller hub in some cases.
  • the security management computing unit for the management and system monitoring and recovery of the I / O devices connected to the I / O device unit, and monitor and control the user computing unit, the user computing unit is isolated from the security management computing unit and the user program It is characterized by running a user OS.
  • the auxiliary memory unit may include a security management computing storage area exclusively used by the security management computing unit and not exposed to the user computing unit, and a user computing storage area used by the user computing unit under the control of the security management computing unit. At this time, the original user OS data executed in the user computing unit is stored in the user computing unit storage area, and a copy thereof is stored in the security management computing storage area.
  • the security management computing unit for managing the connected I / O devices and the auxiliary storage unit, and the security is isolated from the I / O devices with a separate CPU and memory
  • a user computing unit connected to the management computing unit, wherein the security management computing unit manages and monitors and recovers the I / O devices, monitors and controls the user computing unit, and connects the I / O devices with the request of the user computing unit. It relays and monitors communication, and the user computing unit is isolated from the security management computing unit to execute a user program and a user OS.
  • the communication unit is responsible for the communication between the security management computing unit and the user computing unit.
  • the intercommunication unit is connected via a first address bus, a first data bus, a first control bus signals and a first central processing unit constituting the security management computing unit, and the user
  • the second central processing apparatus constituting the computing unit may include a dual port memory connected through a second address bus, a second data bus, and a second control bus signal.
  • the intercommunication unit may also include an interrupt register coupled via the first central processing unit and the first address bus, the first data bus, and the first control bus signals.
  • the user computing unit when receiving the interrupt signal from the security management computing unit through the interrupt register, the user computing unit may further include means for providing a list of the running software and process information through the intercommunication unit.
  • the user computing unit when receiving the interrupt signal from the security management computing unit through the interrupt register, means for selectively stopping the execution of the software and processes being performed using the information provided through the intercommunication unit. It may further include.
  • the mutual communication unit is connected to the first central processing unit constituting the security management computing unit through a first address bus, a first data bus, a first control bus signals, and constitutes the user computing unit. It may include a direct memory access (DMA) interface connected to the second central processing unit and the second address bus, the second data bus, and the second control bus signals.
  • DMA direct memory access
  • the auxiliary memory unit may be divided into a security management computing storage area which is exclusively used by the security management computing unit and is not exposed to the user computing unit, and a user computing storage area used by the user computing unit under the control of the security management computer unit.
  • the original user OS data executed in the user computing unit may be stored in the user computing unit storage area, and a copy thereof may be stored in the security management computing storage area.
  • the original and copy are, for convenience, described in the position of the user and the copy may be replaced with a backup at a specific point in time of the original.
  • the security management computing unit may selectively provide a copy of the user OS stored in the security management computing storage area at the time of booting of the user computing unit.
  • a keyboard unit and a mouse unit coupled to the I / O device unit are further included.
  • the user computer unit may perform information input / output between the keyboard unit and the mouse unit through the mutual communication unit under the control of the security management computer unit.
  • access to the security management computing unit may be performed through a password recognition process independent of the user computing unit.
  • the security management computing unit may further include means for controlling the execution time or execution of the program executed in the user computing unit.
  • the security management computing unit when the user computing unit delivers the information to be output to the I / O device unit via the intercommunication unit, the security management computing unit a part of the information to output It can be stored in the security management computing area, and can be provided when a user request to access the security management computing unit.
  • the security management computing unit receives the restoration information of the existing file system when the file system of the user computing area of the auxiliary storage unit is requested from the user computing unit. It can be stored in the security management computing area of the.
  • the first video memory is connected to the security management computing unit; A second video memory connected to the security management computing unit and the user computing unit; And a video display unit connected to the security management computing unit and including a video graphics controller for selectively displaying information of the first video memory and the second video memory on a monitor display screen.
  • the GPU can be added to the user computing unit.
  • the security management computing unit stores the information of the second video memory in the security management computing area of the auxiliary memory unit in a manner set by the security management computing unit user, and then requests the user of the security management computing unit. You can provide this when it is present.
  • the security management computing unit when requested to change the registry file or executable file stored in the auxiliary storage unit from the user computing unit, it can be shown through the video display unit and confirmed through the keyboard input.
  • the OS running in the security management computer unit may further include means for controlling the video display unit to selectively display the contents of the first video memory or the contents of the second video memory according to a user's hardware input.
  • the hardware input may be a keyboard input.
  • a keyboard having a dedicated key for the keyboard input.
  • the user OS delivered to the user computing unit may optionally provide an original or a copy according to the situation. If the original version of the user OS stored in the user computing storage area is damaged due to the malicious code, normal booting is possible by using the undamaged copy stored in the security computing area when the computer is newly booted. In this case, the user may instruct booting using a copy using one of the I / O devices of the security management computing unit. If it is the same as the existing Windows, it is recommended to change the user OS to be copied to a copy by pressing a certain key on the keyboard at boot time, or to change the user OS to a copy based on the input value of this switch by using a separate switch input if not in Windows. something to do.
  • the security management computing unit of the computer according to the present invention having the above characteristics may perform a function of stopping or recovering the abnormal operation by stopping, resetting, or generating an interrupt signal after the user computing unit is detected. For example, if there is a request to change the registry or driver file from the user computing unit, the user can respond by rejecting the change and warning the user.
  • the I / O devices of the computer according to the present invention having the above characteristics are connected directly to the security management computing unit in hardware and exchange information through an intercommunication unit (for example, address address and read / write of I / O devices).
  • the type of operation is transferred to the security management computing unit, and the security management computing unit performs the result, or if the corresponding device is a printer, the corresponding I / O device is designated and the data to be printed is transferred to the security management computing unit.
  • Is selectively connected to the user computing unit, and the software of the security management computing unit related to I / O devices cannot be freely accessed by the user computing unit. Can be set to be possible.
  • the security management computing unit manages I / O devices and monitors inappropriate movement of data or inappropriate use of computer I / O devices. For example, if the hardware address suggested by the user computer unit is a printer device, communication with the device can be monitored and recorded and provided to the security manager.
  • the user program and the user OS is preferably performed in the user computing unit, but the security management computing unit execution unit and the user computing to enable parallel execution to improve the operation speed It can be divided into sub-executions.
  • the security management computing unit execution unit and the user computing to enable parallel execution to improve the operation speed It can be divided into sub-executions.
  • the portion of the screen configuration related to graphics can be processed by the security management computing unit and the rest by the user computing unit to increase the processing speed.
  • the user program, real time update module of user OS or real time monitoring module of virus vaccine program is executed in security management computing part, it will be safer, free from malware infection, and faster.
  • the security management computing unit in the computer according to the present invention having the above characteristics may further include means for controlling the execution time or blocking the execution of the program executed in the user computing unit under its control. Even if the user computing unit makes a request, it refuses to provide program information based on the information set in the security management computing unit, or after execution is allowed, periodically interrupts the user computing unit and checks the process list to force the execution if the specified execution time is exceeded. Can be terminated with It is also possible to store the screen of the user computer unit if necessary. To this end, it is preferable that a password recognition process that is independent of the user computing unit is performed when the computer of the present invention is connected to the security management computing unit.
  • the computer according to the present invention having the above characteristics may additionally have a separate I / O device independently of the security management computing unit.
  • this configuration is difficult to control malicious code flowing through the I / O devices.
  • the secondary memory device is managed by the security management computing unit, so that even if infected with malware, it can be monitored and repaired.
  • the security management computing unit of the computer according to the present invention having the above characteristics may have a system OS for convenience. At this time, even if the system OS is different from the user OS of the user computing unit, there is no big problem. However, from the standpoint of the management of the auxiliary storage unit or the control of the I / O devices, the minimum OS components, including the file system, would be more desirable.
  • the user computing unit uses the existing Windows as an OS, and the security management computing unit reduces the safe mode function of Windows and includes the above-mentioned functions, but further restricts the user's access. You can use the system OS.
  • the first software module to be executed in the computer according to the features, the code or data of the program is executed in the security management computing unit and the second software module executed in the user computing unit Software programs can be used.
  • the software program may also be embodied in the form of a computer readable or computer readable recording medium.
  • the computer-readable recording medium herein includes all kinds of recording devices that store data that can be read by a computer system. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disks, optical data storage devices, and the like.
  • the computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.
  • the first software module and the second software module can exchange information through the intercommunication unit.
  • the first software module of the software program may be a real-time update module that is responsible for updating the software, or may be a malware monitoring program that is a real-time monitoring module.
  • the present invention relates to a computer that can cope with attempts to seize the system by malware and minimize damage to the system.
  • the computer according to the present invention executes a user program and a user OS on separate isolated hardware, and monitors and blocks random modification of the contents of an OS, a program, or a user file stored in an auxiliary memory device such as a hard disk by malicious code. It is possible to do
  • the security management computing unit can monitor or recover the problem of the existing computer due to the malicious code.
  • the security management computing unit is impossible to install or change the programs, and is configured to access the program in a separate manner.
  • the security management computer can immediately respond to an abnormality of the user computing unit, so in today's situation where the security problem becomes bigger, even if the price of the computer is a little expensive, it has great utility.
  • the access time of these devices can be increased from the perspective of the user computing unit.
  • the increased access time adversely affects the overall system performance because the access time of the HDD, ODD, or USB-connected device itself is tens to hundreds of times slower than the access time of RAM, which is the space where the program is executed. no.
  • the user program or part of the user OS is executed in the security management computing unit, the processing speed of the user computing unit that the user encounters will be faster, and the overall speed decrease will be negligible.
  • the size of the damage may well exceed the price of the computer in some cases.
  • the computer according to the present invention can limit the execution of a user program on the basis of a program type, time, etc., and output externally (through a printer, an external storage device, a communication network, etc.) of information accompanying the execution of the program. This makes it possible to record or report this at the time, which is a security advantage.
  • FIG. 1 is a structural diagram of a computer device according to an embodiment of the present invention
  • auxiliary memory unit 30 is a schematic configuration diagram of the auxiliary memory unit 30
  • 3 is a functional configuration diagram of the security management computing unit 100 and the user computing unit 200
  • FIG. 4 is a structural diagram of a computer device according to another embodiment of the present invention.
  • FIG. 1 is a structural diagram of a computer device according to an embodiment of the present invention.
  • the security management computing unit 100 and the user computing unit 200 is configured.
  • the security management computing unit 100 includes a first central processing unit (CPU) 10 having signals of a first address bus 11, a first data bus 12, and a first control bus 13; A first memory unit 20 connected to the first central processing unit (CPU) 10 through signals of a first address bus 11, a first data bus 12, and a first control bus 13; An auxiliary storage unit 30 such as an HDD connected to the first central processing apparatus 10 through a first address bus 11, a first data bus 12, and a first control bus 13 signal; Input / output (I / O) device unit 40 connected to the first address bus 11, the first data bus 12, and the first control bus 13 to the first central processing apparatus 10. Include.
  • CPU central processing unit
  • I / O Input / output
  • the user computing unit 200 may include a second central processing unit (CPU) 50 having signals of a second address bus 51, a second data bus 52, and a second control bus 53; A second memory unit 60 connected to the second central processing unit (CPU) 50 through signals of a second address bus 51, a second data bus 52, and a second control bus 53. do.
  • CPU central processing unit
  • a second memory unit 60 connected to the second central processing unit (CPU) 50 through signals of a second address bus 51, a second data bus 52, and a second control bus 53. do.
  • the first central processing apparatus 10 of the security management computing unit 100 and the first address bus 11, the first data bus 12, the first control bus 13 is connected via a signal
  • the first central processing apparatus is connected to the second central processing apparatus 50 of the user computing unit 200 through the signals of the second address bus 51, the second data bus 52, and the second control bus 53.
  • An intercommunication unit 70 in charge of the communication between the 10 and the second central processing apparatus 50 is included.
  • the intercommunication unit 70 is an interrupt connected through the signals of the first central processing apparatus 10 and the first address bus 11, the first data bus 12, and the first control bus 13. Contains registers The output signal of this register may be connected to the interrupt signal input of the second central processing unit 50.
  • the user computing unit 200 may provide a list of running software and process information through the intercommunication unit 70.
  • the user computing unit 200 uses information provided through the intercommunication unit 70 to execute the software. You can optionally stop the performance of the process.
  • the CPU can handle multiple interrupts, so it is possible to vary the interrupt depending on the type of task.
  • the CPU can handle multiple interrupts, so it is possible to vary the interrupt depending on the type of task.
  • the physical address of the interrupt program to be executed by the user computing unit in a flash memory that can be written only by the security management computing unit, only one interrupt line can be used, but the program can be changed at that time and executed.
  • the mutual communication unit 70 is connected to the first central processing apparatus 10 through the signals of the first address bus 11, the first data bus 12, and the first control bus 13.
  • a dual port memory connected through the signals of the second central processing apparatus 50, the second address bus 51, the second data bus 52, and the second control bus 53.
  • Dual-port memory can be used at the time of small data transfer because it can access the security management computing unit and the user computing unit at the same time.
  • a part of the dual port memory may be configured as a flash memory, and only the security management computing unit may be used, and the start address of the interrupt processing program indicated by the interrupt vector of the user computing unit may be physically pointing to the dual port flash memory. have.
  • the mutual communication unit 70 is connected to the first central processing unit 10 and the first address bus 11, the first data bus 12, the first control bus 13 through the signal And a DMA interface connected through the signals of the second central processing apparatus 50, the second address bus 51, the second data bus 52, and the second control bus 53. If the DMA interface is designed in both directions, it can be usefully used to exchange data such as a file stored in the auxiliary storage device between the security management computing unit and the user computing unit.
  • the security management computing unit 100 monitors and controls all the I / O device units 40, and in particular, the auxiliary memory unit 30 is divided into a security management computing storage area and a user computing storage area to perform a recovery function.
  • the user computing unit 200 is isolated from the I / O device units 40 and has a separate CPU and memory, and is connected to the security management computing unit 100 through the intercommunication unit 70 to allow the user program and the user OS. Run
  • the auxiliary memory unit 30 shows a schematic configuration of the auxiliary memory unit 30. Physically or logically divided into storage area 1 and storage area 2, the security management computing storage area 31 used by the security management computing unit 100 and the user computing storage area used by the user computing unit 200, respectively. (32). Among them, the security management computing storage area 31 is not exposed to the user computing unit 200. That is, by dividing one storage device (for example, an HDD) into partitions, the partition used by the security management computing unit 100 is set as the security management computing storage area 31, which is stored in the user computing unit 200. It is preferable to set not to expose. Unlike this partitioning, it is sometimes possible to use two physically separate HDDs. In addition, a memory device composed of a flash memory may be more preferable to improve speed.
  • the entire HDD is used together with the security management computing unit 100 and the user computing unit 200, but the files or sectors used by the security management computing unit 100 are not exposed to the user computing unit 200.
  • Method is also possible.
  • the file system exposed to the user computing unit 200 actually appears as a single continuous space, but it is difficult to manage the file system because it is necessary to check who actually uses each sector.
  • the security management computing unit 100 changes the attributes of the file to only those used by the user, so that the management can be managed.
  • FIG. 3 shows a detailed functional configuration of the security management computing unit 100 and the user computing unit 200.
  • Each module shown in FIG. 3 represents a software configuration for implementing individual functions of the first central processing unit 10 of the security management computing unit 100 or the second central processing unit 50 of the user computing unit 200. However, without additional hardware or if necessary, specific hardware may be added and operated.
  • the user program is executed in the user program execution module 210, which is a component included in the user computing unit 200 (ie, in the second central processing unit 50) as a functional unit, in which case the security Executing an isolated user program having an isolated security lock and release process with the management computing unit 100 occurs.
  • the user computing unit 200 ie, the second central processing unit 50
  • the security management computing unit 100 (that is, the first central processing unit 10), the user computing unit management module 110 for monitoring and controlling the user computing unit 200, the I / O device unit 40. I / O management module 120 for monitoring and controlling them, the auxiliary memory unit 30 to perform a recovery function, as shown in Figure 2, the secondary management to divide the storage management area for security management and storage areas for user computing The storage management module 130 is included.
  • the security management computing unit 100 further includes a user OS management module 140. These modules 110 to 140 may also be included as software function blocks in the first central processing unit 10 of the security management computing unit 100.
  • the user OS execution module 220 performs a user OS program and data execution.
  • the user OS execution module 220 manages programs and data including a user OS and manages the data. It depends on the auxiliary storage unit 30 managed by the computing unit 100. That is, the user OS data executed in the user computing unit 200 is, by the user OS management module 140 of the security management computing unit 100, the auxiliary storage unit 30 in the security management computing unit 100.
  • the original is stored in the user computing unit storage area 32 of the and the copy is stored in the security management computing storage area (31).
  • an original is transferred from the security management computing unit 100 to the user computing unit 200 through the intercommunication unit 70, and installed and executed in the second memory unit 60.
  • the I / O connection module 230 of the user computing unit 200 connects the connection with the I / O devices 40 in the security management computing unit 100 to the security management computing unit 100.
  • I / O devices such as a general-purpose communication interface such as USB or LAN, a keyboard, a mouse are connected to the I / O management module 120 of the security management computing unit 100 in hardware, so that the driver software or The simulation software is selectively connected to the I / O connection module 230 of the user computing unit 200.
  • the security management computing unit 100 is strictly managed access of the user is configured in principle impossible to change or install the program.
  • the security management computing unit 100 which is actually a third party, can monitor the operation of the user computing unit 200 having the same structure as a conventional computer.
  • the I / O management module 120 of the security management computing unit 100 manages all I / O devices 40 and monitors inappropriate movement of data or inappropriate use of a computer. For example, the display screen or keyboard input can be recorded to monitor improper use. Even if files are copied via USB, the recording is possible, so proper security measures are possible.
  • a single OS manages the entire computer, but since the top-level administrator can access the recorded information, a security loophole occurs when it is secretly deleted or modified. Therefore, the computer device according to the present invention is very useful when security is required such as corporate or military use. In this case, it is possible for the security department to monitor and control the work or security of the entire computer through the secure communication network. At this time, the security communication network is very safe because it is not exposed to the user computer unit.
  • the security management computing unit 100 transmits the program code to the user computing unit 200 through the intercommunication unit 70 when the input / output device connected to the I / O device unit attempts to deliver the program code. 200 does this.
  • the user computing unit 200 for each I / O device connected to the security management computing unit 100 the user computing unit 200 for the keyboard unit and the mouse unit coupled to the security management computing unit 100
  • the information input and output between the keyboard unit and the mouse unit is performed through the intercommunication unit 70 under the control of the security management computing unit 100 (for example, by the function of the I / O management module 120). can do.
  • the user computing unit 200 receives information input / output with the USB unit through the mutual communication unit 70 under the control of the security management computing unit 100. Can be done.
  • the user computing unit 200 controls the intercommunication unit 70 under the control of the security management computing unit 100 to input and output information with the PCI unit. This can be done through. Even for the LAN unit coupled to the security management computing unit 100, the user computing unit 200 controls the input / output of the LAN unit through the intercommunication unit 70 under the control of the security management computing unit 100. Can be done. Communication with these I / O devices can be done individually by specifying the hardware address, I / O information, and I / O operation of the devices. However, since some functions are defined for each type of I / O devices, some of the I / O devices have a printer module. It can be processed simply by providing print information for 'A' and 'output to device', and specifying 'file name' and 'copy to device' for an external auxiliary memory device.
  • the user computing unit management module 110 of the security management computing unit 100 has a function of checking and monitoring the operation of the user computing unit 200. This function also includes a function for stopping or restoring the abnormal operation in some cases, such as by stopping the second central processing unit 50, generating a reset signal, or generating an interrupt signal to execute a specific program. can do.
  • the user computing unit management module 110 may also securely manage a portion of the code that is executed in the user program execution module 210 or the user OS execution module 220 of the user computing unit 200. ) Can be configured to be executed in parallel. For example, if the security management computing unit 100 performs an update of an OS or a program, a real-time monitoring portion of a virus vaccine program, and the like, it may be able to perform other tasks faster than the user computing unit 200 performs.
  • the user computing unit management module 110 may be configured such that the security management computing unit 100 is responsible for the graphic portion of the screen configuration, and the user computing unit 200 is responsible for the rest. . This enables faster operation.
  • all the software running on the computer of the present invention may be divided into a part of the program code or data executed in the security management computing unit 100 and a part executed in the user computing unit 200.
  • the part executed by the security management computing unit 100 may be an update module that is responsible for updating software of an OS or a user program.
  • the security management computing unit 100 may transmit the keyboard input directly to the Internet site without being connected to the user computing unit 200.
  • the user computing unit 200 may send a character instead of a keyboard input, such as '*', and may display actual information input by the user on a screen used by the security management computing unit 100.
  • the computer according to the present invention makes it easy for parents to monitor children's excessive game site access or watching pornography.
  • a specific program under the control of the security management computing unit 100. It is possible to control the execution time or to block the execution and to capture and save the screen. Since the situation can be monitored in real time with the mobile phone of the parent through a communication network, parents can effectively prevent children's use of the computer.
  • the mobile phone can be connected to Bluetooth, wireless LAN, public data network, etc. It would be more convenient if you provide a dedicated app.
  • the video display unit for the monitor includes a first video memory (not shown) connected to the security management computing unit 100; A second video memory (not shown) connected to the security management computing unit 100 and the user computing unit 200; A video graphics controller connected to the security management computing unit 100 and selectively displaying information of the first video memory and the second video memory on a monitor display screen should be included.
  • the security management computing unit 100 connected to the video display unit configured as described above is requested to change the information stored in the specific area of the auxiliary memory unit 30 from the user computing unit 200, This may be performed and an operation (for example, a keyboard input) may be requested from the user.
  • an operation for example, a keyboard input
  • the security management computing unit 100 stores the information of the second video memory in the security management computing storage area 31 of the auxiliary memory unit 30 in a manner set by the user of the security management computing unit 100. Can provide it at the user's request.
  • the present invention is a system OS driven by the security management computing unit 100, and controls the video display unit to selectively display the contents of the first video memory or the contents of the second video memory according to a hardware input of a user.
  • a corresponding program is provided in the user computing unit management module 110 and the auxiliary storage device management module 130 of the security management computing unit 100. Multifaceted hacking and effective response to viruses are possible.
  • Existing computer structure will later check the abnormal operation of the virus by a vaccine program or other method, in the present invention, the security management computing unit 100 in real time operation of the user computing unit 200 (in this case, the operation of the virus) ), You can respond immediately.
  • the existing computer can later confirm the antivirus program after the file is modified, but in the computer device according to the present invention, the file is modified in real time. It is possible to cut off.
  • some known viruses can be blocked using the real-time monitoring function of existing computer vaccine programs, but they are inexplicable to emerging viruses, and even if the anti-virus program is not updated, more security problems occur.
  • the third-party security management computing unit 100 may block a file system change or a registry change of the virus. Fundamental measures are possible.
  • auxiliary memory device management module 130 of the security management computing unit 100 controls the auxiliary memory device 30 such as a hard disk, various security functions can be conveniently implemented.
  • the security management computing storage area 31 of the auxiliary memory device 30 used by the security management computing unit 100 is set or configured not to be exposed to the user computing unit 200 at all. can do. Therefore, this storage area is very safe from malicious code attack. Therefore, when the user computing unit 200 requests the file system to be changed, the backup information of the file system is stored in the security management computing storage area 31, and if the file system is changed, a specific time is designated to recover the file system even when a problem occurs. It becomes possible. That is, when the security management computing unit 100 is requested to change the file system of the user computing storage area 32 from the user computing unit 200, the security management computing unit 100 receives restoration information of the existing file system. Stores in a specific portion of the security management computing storage area 31 used exclusively. This information is not exposed to the user computing unit, so a safe response is possible.
  • Windows already has the ability to back up computer programs and data images at a specific point in time and use them to recover the system, or to recover the OS if there is a problem.
  • the malicious code can access the backup information, so that complete security is impossible. For example, even if a hacking program or a virus program attempts to destroy a hard disk, an existing computer executes a command of a malicious code without knowing the properties of these programs and the computer falls into an inoperable state. For example, ransomware encrypts user files randomly and performs encryption without knowing it at all.
  • the security management computing unit 100 (for example, the user computing unit management module 110) can monitor the operation of the user computing unit 200, the OS file or the data file is changed. It is easy to recover by making backup information file in safe place when deleting. In addition, when the command such as deletion of these files, the security management computing unit 100 may once again require the user's confirmation, greatly improving the security.
  • some malicious codes can infect the keyboard driver to generate a fake confirmation input to bypass the user's additional confirmation when the user's confirmation is required, but in the computer according to the present invention, the additional confirmation of the user is a security management computing unit. Since it is made at (100), fake confirmation input of the malicious code is impossible.
  • the GPU may be considered to be similar to the isolated user computing unit 200 of the present invention in terms of having an isolated code and a work area, but any hardware or software configuration in which the CPU monitors the work of the GPU and recovers in the event of abnormal operation. There is no fundamental difference because there is no. In other words, because the two CPUs are not combined for the purpose of detecting and responding to the abnormal operation of one CPU, the GPU does not use other I / O devices, there is no OS, and the area is separated. It does not use auxiliary memory.
  • BIOS codes of the security management computing unit 100 and the user computer are respectively performed.
  • the boot processing module (not shown) of the first central processing unit 10 of the security management computing unit 100 performs a power on self test (POST) of the I / O device 40 and memories and is connected to the hard disk. That is, the system OS is read from the auxiliary storage unit 30. (At this time, the capacity of the hard disk is sufficient so that one hard disk includes both the user computing storage area 32 and the security management computing storage area 31.) That is, a part of the hard disk is set to the security management computing storage area 31).
  • POST power on self test
  • the boot processing module (not shown) of the user computing unit 200 also starts booting and undergoes self-testing of the memory and the intercommunication unit 70 and the user OS data (OS of the user computing unit 200) and I /.
  • the POST results of the O devices 40 are requested to the security management computing unit 100 through the intercommunication unit 70.
  • the security management computing unit 100 transmits the POST result and the user OS data through the intercommunication unit 70, and the user computing unit 200 performs a booting operation using this.
  • the user OS requests the security management computing unit 100 again from the start application programs according to the profile set by the user, installs the start applications in memory using these information, and terminates booting. . If the user OS is Windows, the user program icons will appear on the booting home screen.
  • the OS of the security management computing unit 100 and the OS of the user computing unit 200 need not be the same. But if you share a certain amount, you can expect a significant synergy effect. For example, if the OS of the security management computing unit 100 corresponds to the safe mode booting of Windows and the OS of the user computing unit 200 is Windows, the security management computing unit 100 is an update of a program or an OS, and also an antivirus. Executing the program's real-time monitoring module will enable real-time inspection of suspicious program code.
  • BIOS processing module (not shown) of the security management computing unit 100 may change the function of the BIOS of the user computing unit 200 before booting the OS.
  • the interrupt register is composed of 16 bits, one ON / OFF information can be transferred to each bit, which can be used for various purposes. For example, assume that bit 0 of the interrupt register is directly connected to the NMI line of the user's computer by hardware, and bit 1 is connected to the reset line of the user's computer by hardware with a POR (Power On Reset) signal and OR gate. Suppose 15 indicates a BIOS change. In addition, it is assumed that the interrupt register is set to 0 at power ON, and the current value of the interrupt register can be read by both the security management computing unit 100 and the user computing unit 200.
  • the BIOS processing module of the security management computing unit 100 sets bit 15 of the interrupt register when the BIOS of the user computing unit 200 needs to be changed at boot time and transmits data of the portion requiring the change to the intercommunication unit 70. (Assuming that the mutual communication unit 70 is DPRAM (Dual Port RAM)).
  • the BIOS processing module (not shown) of the user computing unit 200 reads bit 15 of the interrupt register after power-up, checks whether a BIOS change is necessary, and reads information through the intercommunication unit 70 if it is checked as necessary. Change the BIOS. When the change is finished, it is notified again to the security management computing unit 100 to the intercommunication unit 70 and the user computing unit 200 itself proceeds to boot again from the beginning. The security management computing unit 100 clears bit 15 of the interrupt register to cancel the BIOS change.
  • WR (write) signal of the BIOS of the user computing unit 200 it is preferable to control the WR (write) signal of the BIOS of the user computing unit 200 through a separate register in hardware. That is, if the BIOS processing module of the user computing unit 200 can write to its own BIOS memory (not shown) only when the BIOS processing module of the security management computing unit 100 permits, You can prevent changes. In other words, when the output of separate register and WR signal are applied to WR input of BIOS memory through AND gate, WR signal is transmitted only when the corresponding bit is 1, so it can be written only when the security management computing unit 100 permits at boot time. Become.
  • the I / O management module 120 of the security management computing unit 100 transmits information of peripheral devices connected to the input / output device unit 40 according to a setting through the intercommunication unit 70 to the I / O management module 120.
  • O connection module 230 is provided.
  • the I / O connection module 230 of the user computing unit 200 requests and installs necessary drivers to the user computing unit management module 110 of the security management computing unit 100 when the connection of the peripheral devices is recognized. It will be added to the peripheral list.
  • the peripheral device list and information are shared with the security management computing unit 100 (eg, the I / O management module 120). Read and write to the peripheral device transmitted through the intercommunication unit 70 is performed by the security management computing unit 100 (eg, I / O management module 120) and the result is the intercommunication unit 70 It is transmitted to the user computing unit 200 through. That is, the driver for the device exists in the user computing unit 200, and the security management computing unit 100 is responsible for the simple input and output of hardware in response to a request of the user computing unit 200. In this case, the simple I / O can be blocked to extend the movement of the data block.
  • the I / O management module 120 of the security management computing unit 100 recognizes the connection and provides related information of the user computing unit 200 through the intercommunication unit 70. Transfer to I / O connection module 230.
  • the user computing unit 200 analyzes the received information and installs a driver of the corresponding printer when it is confirmed that the printer is a printer.
  • the user computing unit 200 searches for drivers of the auxiliary memory unit 30 under the control of the security management computing unit 100 through the intercommunication unit 70. This process continues until you find a driver program. If a suitable driver program is found, the user computing unit 200 installs it in its memory and adds it to its peripheral device list. In this process, the security management computing unit 100 only provides a simple input / output, but the contents of the connection of the device can be recorded and managed.
  • the printer driver is executed in the security management computing unit 100, and the user program (for example, MS word) of the user computing unit 200 stores information to be printed and printer parameters in the security management computing unit.
  • the user program for example, MS word
  • the user program execution module 210 of the user computing unit 200 allows a user to access through a process of confirming a password. For example, when a user who has been granted permission to run a browser enters the Internet, the user OS execution module 220 and the user program execution module 210 of the user computing unit 200 store the code of the corresponding program in the security management computing unit ( 100) is requested and handed over to be executed. Next, if the user accesses a specific Internet site, all of this information is relayed through the intercommunication unit 70. For example, if the site requests execution of code such as ActiveX, it is transmitted to the user computing unit 200 (if there is a real-time monitoring program in the security management computing unit 100, it will be delivered after checking).
  • code such as ActiveX
  • the user computing of the security management computing unit 100 displays this on the screen through the video device included in the security management computing unit 100 and requests confirmation of the user. At this time, if a speaker is attached, a warning sound can be generated. Therefore, a primary response is possible.
  • antivirus programs are basically vulnerable to new malicious codes because they attempt to search using specific images of malicious codes.
  • the user computing unit 200 may have its own input / output devices, infection of malicious code will not be impossible.
  • the malicious code is already hidden in the file system of the user computing unit 200 in the user computing storage area 32 of the auxiliary memory unit 30 and performs a malicious operation. For example, assuming ransomware, you can try to encrypt a user's word or work files.
  • the backup image of the file is stored by the auxiliary storage device management module 130 (for example, by the auxiliary storage device management module 130).
  • 30 is securely stored in the security management computing storage area 31, so as not to delete all the backup image as in the existing computer. Therefore, when the user confirms the infection by the hacker unfairly, the user can immediately access the security management computing unit 100 and return the file system of the user computing unit 200 to before the infection. Therefore, it is possible to recover from malicious code.
  • the OS and application are changed before the time point by checking the access record of the site suspected of the infection path, the system is completely restored to normal.
  • the hacker damages the OS, even if the user computing unit 200 does not perform any operation according to the hacker's command, it is possible to respond.
  • This situation may be similar to when a malicious computer virus erases the boot sector or erases user data.
  • the user may respond by opening the screen of the security management computing unit 100 through a keyboard input.
  • the recovery program may interrupt the central processing unit of the user computing unit 200 by using the interrupt register to perform a designated task.
  • the interrupt service program is stored in non-volatile memory and access is controlled, so there is no way for malicious code to prevent this. In this way, the process of the user computing unit 200 may be handed over to inspect the process, and the command may be forcibly terminated.
  • the user computing unit 200 drives a word processor and attempts to print a specific file.
  • the user computing unit 200 (for example, the I / O connection module 230) may issue a command to the printer through a driver program or a simulation program. There is nothing else.
  • the security management computing unit 100 (for example, the I / O management module 120) relays the communication with the I / O devices according to the request of the user computing unit 200. It is possible to record or save the corresponding communication record at user specified time interval. At this time, the confirmation of the application program commanding the printer can be confirmed through the process information.
  • the device is a printer through the peripheral device information provided by the user computing unit 200, more systematically, by copying and storing the output information in the middle to access the security management computing unit 100 It may be possible to provide it to security personnel.
  • the security management computing unit 100 recognizes that the device is an external storage device, it is possible to store and provide a copy or access information of a file that is input and output more systematically.
  • the file system of each program can be known, it can be checked in the same primitive steps as the input screen, so it is also possible to block external storage of a file containing a specific word in real time.
  • the screen of the user computing unit 200 may be stored and provided, a strong security effect may be obtained.
  • the computer according to the present invention is because the program of the security management computing unit 100 provides all the programs running in the user computing unit 200 in the setting of the user computing unit management module 110 of the security management computing unit 100 Accordingly, the program executed in the user computing unit 200 may be controlled. For example, many companies prevent Internet surfing during working hours at the company level, but if they directly connect to the external network through their cell phones without using the company communication network, they can avoid the monitoring network. However, in the computer of the present invention, it is possible to prevent the use of the browser or to set the browser so as not to be used, for example, between 9:00 and 18:00.
  • the security department changes the control method of the security management computing unit 100 through the communication network and changes it to available at 10: 00-12: 00 so that the worker can use the browser.
  • the user's computer screen may be periodically stored for more thorough monitoring.
  • connection to the security management computing unit 100 undergoes a password recognition process isolated from the user computing unit 200, there is no big problem unless it is exposed to the outside.
  • FIG. 1 the structure as shown in FIG. 1 is described based on ROM, RAM, and I / O devices, which are the basic computer components. Recently, however, it is very common to design a high-speed dedicated interface for RAM or graphics devices that move data a lot, or a hub chip for peripheral control that collects and manages slow I / O devices. .
  • the structure of the computer of another embodiment according to the present invention will be described with reference to FIG.
  • the security management computing unit 100 includes: a first central processing apparatus 10 having a plurality of dedicated hardware interfaces 14, each independently designed to reflect characteristics of connected devices; A first random access memory (RAM) 15, a graphics controller unit 16, a first boot ROM 17, which are independently connected to the first central processing unit 10 using the dedicated interfaces 14.
  • the user computing unit 200 is connected to the intercommunication unit 70 and the dedicated interface 1 54, is connected to the second random access memory 57 and the dedicated interface 2 55, and the second boot ROM ( 58 and a second central processing unit 50 connected to a dedicated interface 3 (56).
  • the auxiliary memory unit 30 may include a security management computing storage area 31 and a user computing storage area used by the user computing unit 200, which are portions used by the security management computing unit 100. 32 is physically or logically separated, and the security management computing storage area 31 is not exposed to the user computing unit 200, and user OS data installed in the user computing unit 200 is the auxiliary. Stored in the user computing storage area 32 of the storage device 30 and a copy thereof is stored in the security management computing storage area 31 of the auxiliary storage device 30, and through the intercommunication unit 70. The security management computing unit 100 is transferred to the user computing unit 200 and installed in the second random access memory unit to be executed.
  • a common Intel chipset for example, is a CPU that connects to DRAM via DDR3, a graphics unit to a high-speed PCI interface, and a Platform Controller Hub (PCH) that collectively controls peripherals to a Desktop Management Interface (DMI).
  • PCH Platform Controller Hub
  • Auxiliary storage units such as HDDs and ODDs are connected to the PCH via SATA or ESATA, and keyboards, mice, and external devices are connected via USB interfaces.
  • the bootable BIOS is connected through PCH, sometimes through a low-speed communication interface called the Low Profile Connection (LPC).
  • LPC Low Profile Connection
  • DDR3 interface, PCI interface, DMI, etc. correspond to the dedicated interface of the present invention.
  • the intercommunication unit 70 of the present invention since the intercommunication unit 70 of the present invention needs to communicate at high speed, it may be preferable to be connected to a high speed PCI interface directly connected to the CPU.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Storage Device Security (AREA)
  • Stored Programmes (AREA)

Abstract

악성코드에 의한 시스템 장악 시도에 대응하고, 시스템의 훼손을 최소화하기 위한 고립된 사용자컴퓨팅부를 갖는 컴퓨터에 관한 발명. 본 발명에서 제안되는 한 특징에 따른 컴퓨터는, 연결된 I/O장치들 및 보조기억장치유닛을 관리하는 보안관리컴퓨팅부와, 상기 I/O장치들로부터 고립되고 I/O장치들과는, 상기 보안관리컴퓨팅부와 상기 사용자컴퓨팅부 사이의 통신을 담당하는 상호통신유닛을 통하여 통신하고, 별도의 CPU와 메모리를 가지고 상기 보안관리컴퓨팅부에 연결되는 사용자컴퓨팅부를 포함한다. 상기 보안관리컴퓨팅부는 I/O장치들의 관리 및 시스템 감시와 복구 그리고 사용자컴퓨팅부의 감시 및 통제를 수행하고, 상기 사용자컴퓨팅부는 상기 보안관리컴퓨팅부로부터 고립되어 사용자프로그램과 사용자OS를 실행한다.

Description

고립된 사용자컴퓨팅부를 갖는 컴퓨터
본 발명은 악성코드에 의한 시스템 장악 시도에 대응하고 시스템의 훼손을 최소화하기 위한, 고립된 사용자컴퓨팅부를 갖는 컴퓨터에 관한 것이다.
컴퓨터에 이상동작이 발생하는 경우를 대비하여 다양한 구조로 컴퓨터가 설계된다. 그러나 이러한 구조들은 추가적인 비용이 발생하므로 PC나 노트북과 같은 범용 개인용 컴퓨터들에는 적용되지 않는다. 일반적으로 널리 사용하는 PC, 휴대폰, 노트북같은 컴퓨터장치들은 하나의 CPU를 갖는다. 경우에 따라 GPU, DSP, ALU와 같은 수행능력이 있는 보조 프로세서들이 사용될 때도 있지만 이러한 구조에서는 이들이 자체적으로 OS를 갖지는 않으며 시스템에는 하나의 OS만 존재한다. 때문에 하드웨어나 소프트웨어가 문제를 일으키면 해당 시스템은 바로 정지된다.
그에 비해서 이상 동작으로 전체시스템이 중단될 경우에 큰 문제가 되는 은행거래나 증권거래 등에 사용되는 대형컴퓨터의 경우에는 CPU 또는 CPU유닛, 컴퓨터들이 복수로 연결되어 사용되는데, 보통, 하나의 유닛 또는 컴퓨터가 이상동작을 일으켜도 OS의 통제하에 문제가 되는 쪽에서 수행되던 작업을 정상동작을 하는 다른 쪽으로 재배당하여 이상동작에 대응하는 구조를 갖는다. 때문에 이러한 대형 컴퓨터 시스템들은 고속으로 복수의 작업을 분산해서 처리하는 구성을 갖는다. 결국 이들 장치는 복수의 사용자들이 요구하는 복수의 작업을 처리하거나, 하나의 작업을 고속으로 처리하기 위한 병렬처리 구조를 갖추는 것이 일반적이다.
그러나 이 경우도, 하나의 OS로 통제되거나 다중 OS로 구성되더라도 최상위관리자가 OS를 통해서 전체시스템을 통제할 수 있다. 때문에 해킹이나 컴퓨터바이러스와 같은 악성코드가 최상위관리자의 자격으로 시스템을 장악하게 되는 경우는 막을 수가 없게 된다. 또한 작업자가 악의를 가지고 시스템에 위해를 가하는 경우에도 대응이 불가능하다. 즉, 이러한 시스템들은 이상 동작이 발생한 유닛이나 컴퓨터를 시스템에서 배제하고 나머지 장치들이 작업을 계속하는 구조일뿐, 최상위관리자 권한을 획득한 악성코드나 작업자가 시스템을 통제불능 상태로 가져가는 것을 막을 수 없다.
비행기나 우주비행체, 고속열차, 자동차, 플랜트 자동제어시스템 등의 경우는 고장을 대비하여 복수개의 컴퓨터시스템이 사용되기도 한다. 이때는 입력된 신호나 정보들을 복수개의 컴퓨터시스템이 동시에 처리하여 결과를 출력하는데 메인으로 지정된 컴퓨터시스템의 정보만 최종적으로 사용되고 예비로 지정된 컴퓨터시스템들은 메인시스템의 동작을 감시하면서 대기하게 된다. 대기 중에 메인시스템의 이상이 감지되면 자동으로 예비컴퓨터시스템이 메인컴퓨터시스템을 대체하게 된다.
우주선과 같이 출력정보가 잘못되면 큰 문제가 되는 경우에는 여러 대의 컴퓨터가 출력한 정보를 보팅(voting)을 거쳐서 확정된 출력으로 사용하기도 한다. 이와 같은 컴퓨터의 다중화 또는 리던던시(redundancy) 구조에 있어서는, 비록 복수의 CPU 유닛이나 컴퓨터가 사용된다고 해도 그 목적은 개별유닛이나 컴퓨터의 고장시에도 중단없이 연산 결과를 얻기 위한 것에 한정된다.
그러나 최근에 이러한 시스템들 중 일부에 원도즈CE, 안드로이드와 같은 범용 OS가 사용되면서 해킹이나 컴퓨터바이러스와 같은 악성코드가 전체 컴퓨터를 장악하는 문제가 발생하고 있다. 이들 시스템에서는 이러한 문제가 고장으로 인지되지 못하므로 악성코드나 악의를 가진 관리자가 시스템을 장악하여 이상 동작을 일으켜도 이를 막는 것이 불가능하다. 예를 들어 해킹된 자동차가 제멋대로 동작하는 것도 같은 원인이다.
이상에서 살펴 본 것처럼 기존의 컴퓨터시스템 구조에서는 이상동작이 감지된 컴퓨터를 배제하거나 대체하기 위하여 시스템 안의 다른 컴퓨터를 사용할뿐, 이상동작이 감지된 컴퓨터 자체를 복구하거나 정상동작을 유지시키기 위해서 다른 컴퓨터를 보조적으로 사용하는 경우는 없다. 또한 이상 동작이 감지된 컴퓨터를 리셋시키고 작업을 다시 수행시키는 경우가 있지만 이 경우에도 최상위관리자 권한을 얻은 소프트웨어는 OS를 통하여 전체시스템의 통제가 가능하므로 악성코드가 시스템을 장악하여 이상 동작을 일으키는 경우에는 대처가 불가능하다.
이러한 문제들은 기본적으로, 기존 컴퓨터시스템들이 악성코드나 악의적인 조작으로 인한 시스템의 이상동작을 소프트웨어적으로만 대응하고 하드웨어적으로는 사실상 대응하지 않기 때문에 발생하는 것이다. 따라서 악성코드 등으로 인한 시스템의 이상동작을 막기 위해서는, 하드웨어적으로 보완된 구조를 갖는 컴퓨터시스템이 필요하다.
PC, 노트북, 휴대폰과 같이 우리가 많이 접하는 범용소형 컴퓨터기기에 감시나 복구를 위해서 다른 컴퓨터를 사용하는 개념은, 기능상 필요성은 있다 하더라도 컴퓨터의 가격이 많이 비싸지는 단점이 있다. 또한 하드웨어적으로 문제가 없는 경우에는, 사용자의 완전한 통제하에서 발생하는 일반적인 오류들은 모두 소프트웨어 때문에 발생하므로 그 필요성이 없었다.
그러나 인터넷과 다양한 통신방식의 발전으로 오늘날의 컴퓨터는 거의 온 종일 통신망에 접속되어 있고 OS의 자체적인 결함이나 사용자 부주의 등으로 인하여 해킹프로그램이나 컴퓨터바이러스와 같은 악성프로그램에 쉽게 감염되어 사용자의 통제를 벗어나는 경우가 매우 흔하다.
이렇게 사용자의 통제를 벗어난 컴퓨터는 백신프로그램을 중단시키거나 속임으로써 사용자나 OS도 모르게 해커나 바이러스유포자의 의도대로 사용된다. 이런 컴퓨터는 이상을 감지한 사용자가 백신 프로그램을 돌려보거나 매우 특별한 조치(예를 들면 윈도즈의 안전모드부팅후 백신프로그램 구동)를 해야 치료가 가능하며 그나마도 백신프로그램 제작회사가 해당 악성코드에 대한 해결책을 제시하지 못하는 경우는 치료가 불가능하다.
이에, 본 발명자는 악성코드에 의한 시스템 장악 시도에 대응하고, 시스템의 훼손을 최소화하기 위한 고립된 사용자컴퓨팅부를 갖는 컴퓨터를 제안한다.
상기 과제를 해결하기 위하여, 본 발명에 따른 컴퓨터는, I/O장치들과 하드웨어적으로 직접 연결되고 이를 통제하며, 특히 보조기억장치유닛을 보안관리컴퓨팅용과 사용자컴퓨팅용으로 나누어 관리하는 보안관리컴퓨팅부와; I/O장치들 및 특히 보조기억장치유닛과 하드웨어적으로 보안관리컴퓨팅부의 통제하에 연결되는 방식으로 고립 또는 분리되고, 별도의 CPU와 메모리를 가지고 별도의 통신인터페이스로 보안관리컴퓨팅부에 연결되어 사용자 프로그램을 사용자OS 상에서 실행하는 사용자컴퓨팅부로 구성된다. 즉, 본 발명에서, 사용자 프로그램과 사용자OS는 보안관리컴퓨팅부로부터 고립된 사용자컴퓨팅부에서 수행되고, I/O장치들과 관련되거나 감시복구를 위한 기능은 보안관리컴퓨팅부에서 수행되도록 구성된 컴퓨터 및 여기에 사용되는 소프트웨어의 기본적인 구조를 제시한다.
본 발명의 제1측면에 따른 컴퓨터는, 제1어드레스버스, 제1데이타버스, 제1제어버스 신호들을 갖는 제1중앙처리장치; 상기 제1중앙처리장치에 제1어드레스버스, 제1데이타버스, 제1제어버스 신호들을 통하여 연결되는 제1메모리유닛; 상기 제1중앙처리장치에 제1어드레스버스, 제1데이타버스, 제1제어버스 신호들을 통하여 연결되는 HDD 등의 보조기억장치유닛; 상기 제1중앙처리장치에 제1어드레스버스, 제1데이타버스, 제1제어버스, 신호들을 통하여 연결되는 I/O(입출력)장치유닛을 포함하는 보안관리컴퓨팅부와; 제2어드레스버스, 제2데이타버스, 제2제어버스 신호들을 갖는 제2중앙처리장치; 상기 제2중앙처리장치에 제2어드레스버스, 제2데이타버스, 제2제어버스 신호들을 통하여 연결되는 제2메모리유닛을 포함하는 사용자컴퓨팅부를 포함한다. 상기 보안관리컴퓨팅부는 I/O장치유닛에 연결되는 I/O장치들의 관리 및 시스템 감시와 복구, 그리고 사용자컴퓨팅부를 감시 및 통제하고, 상기 사용자컴퓨팅부는 상기 보안관리컴퓨팅부로부터 고립되어 사용자프로그램과 사용자OS를 실행하는 것을 특징으로 한다.
이때 상기 보안관리컴퓨팅부의 제1중앙처리장치와 제1어드레스버스, 제1데이타버스, 제1제어버스 신호들을 통하여 연결되고, 상기 사용자컴퓨팅부의 제2중앙처리장치와 제2어드레스버스, 제2데이타버스, 제2제어버스 신호들을 통하여 연결되어, 제1중앙처리장치와 제2중앙처리장치사이의 존재하는 상호통신유닛은 보안관리컴퓨팅부와 사용자컴퓨팅부사이의 통신을 담당한다.
그리고 상기 보조기억장치유닛은 보안관리컴퓨팅부가 독점적으로 사용하며 사용자컴퓨팅부에 노출되지 않는 보안관리컴퓨팅 저장영역과, 보안관리컴퓨팅부의 통제하에 사용자컴퓨팅부가 사용하는 사용자컴퓨팅 저장영역을 포함할 수 있다. 이때, 사용자컴퓨팅부에서 실행되는 사용자OS 데이타의 원본은 상기 사용자컴퓨팅부 저장영역에 저장되고 그 사본은 보안관리컴퓨팅 저장영역에 저장될 수 있다.
또한 본 발명의 제2측면에 따른 컴퓨터는, 복수의 전용 하드웨어 인터페이스들을 갖는 제1중앙처리장치; 상기 전용인터페이스들을 이용하여 상기 제1중앙처리장치에 독립적으로 연결되는 제1랜덤액세스메모리(RAM), 그래픽콘트롤러유닛, 제1부트메모리(ROM 또는 플래쉬메모리와 같은 비휘발성 메모리), 주변기기콘트롤러허브유닛, 상호통신유닛; 상기 주변기기콘트롤러허브유닛에 연결되는 보조기억장치유닛과 I/O(입출력장치)유닛을 포함하는 보안관리컴퓨팅부와, 상기 상호통신유닛과 제1전용인터페이스로 연결되고, 제2랜덤액세스메모리와 제2전용인터페이스로 연결되고, 제2부트메모리(ROM 또는 플래쉬메모리와 같은 비휘발성 메모리)와는 제3전용인터페이스로 연결되는 제2중앙처리장치를 포함하는 사용자컴퓨팅부를 포함한다. 이때 상기 부트메모리는 경우에 따라 주변기기콘트롤러허브에 연결될 수도 있다. 또한 상기 보안관리컴퓨팅부는 I/O장치유닛에 연결되는 I/O장치들의 관리 및 시스템 감시와 복구, 그리고 사용자컴퓨팅부를 감시 및 통제하고, 상기 사용자컴퓨팅부는 상기 보안관리컴퓨팅부로부터 고립되어 사용자프로그램과 사용자 OS를 실행하는 것을 특징으로 한다.
여기서 상기 보조기억장치유닛은 보안관리컴퓨팅부가 독점적으로 사용하며 사용자컴퓨팅부에 노출되지 않는 보안관리컴퓨팅 저장영역과, 보안관리컴퓨팅부의 통제하에 사용자컴퓨팅부가 사용하는 사용자컴퓨팅 저장영역을 포함할 수 있다. 이때 사용자컴퓨팅부에서 실행되는 사용자 OS 데이타의 원본은 상기 사용자컴퓨팅부 저장영역에 저장되고, 그 사본은 보안관리컴퓨팅 저장영역에 저장된다.
또한 본 발명의 제3측면에 따른 컴퓨터는, 연결된 I/O장치들 및 보조기억장치유닛을 관리하는 보안관리컴퓨팅부와, 상기 I/O장치들로부터 고립되고 별도의 CPU와 메모리를 가지고 상기 보안관리컴퓨팅부에 연결되는 사용자컴퓨팅부를 포함하는데, 상기 보안관리컴퓨팅부는 I/O장치들의 관리 및 시스템 감시와 복구, 그리고 사용자컴퓨팅부를 감시 및 통제하며 사용자컴퓨팅부의 요청에 따라 I/O장치들과의 통신을 중계하고 감시하고, 상기 사용자컴퓨팅부는 상기 보안관리컴퓨팅부로부터 고립되어 사용자프로그램과 사용자OS를 실행한다. 상기 보안관리컴퓨팅부와 상기 사용자컴퓨팅부 사이의 통신은 상호통신유닛이 담당한다.
상기 여러 측면의 특징들을 갖는 컴퓨터들에서, 상호통신유닛은 상기 보안관리컴퓨팅부를 구성하는 제1중앙처리장치와 제1어드레스버스, 제1데이타버스, 제1제어버스 신호들을 통하여 연결되고, 상기 사용자컴퓨팅부를 구성하는 제2중앙처리장치와 제2어드레스버스, 제2데이타버스, 제2제어버스 신호들을 통하여 연결되는 듀얼포트메모리를 포함할 수 있다.
또한 상호통신유닛은 제1중앙처리장치와 제1어드레스버스, 제1데이타버스, 제1제어버스 신호들을 통하여 연결되는 인터럽트레지스터를 포함할 수 있다. 이때, 상기 사용자컴퓨팅부는, 상기 인터럽트레지스터를 통하여 상기 보안관리컴퓨팅부로부터 인터럽트신호를 받는 경우, 수행중인 소프트웨어의 리스트와 프로세스정보들을 상기 상호통신유닛을 통하여 제공하는 수단을 추가로 포함할 수 있다. 또한, 상기 사용자컴퓨팅부는, 상기 인터럽트레지스터를 통하여 상기 보안관리컴퓨팅부로부터 인터럽트신호를 받는 경우, 상기 상호통신유닛을 통하여 제공되는 정보를 이용하여, 수행중인 소프트웨어와 프로세스의 수행을 선택적으로 중단시키는 수단을 추가로 포함할 수 있다.
또는 다른 실시예에서, 상기 상호통신유닛은 상기 보안관리컴퓨팅부를 구성하는 제1중앙처리장치와 제1어드레스버스, 제1데이타버스, 제1제어버스 신호들을 통하여 연결되고, 상기 사용자컴퓨팅부를 구성하는 제2중앙처리장치와 제2어드레스버스, 제2데이타버스, 제2제어버스 신호들을 통하여 연결되는 DMA(Direct Memory Access) 인터페이스를 포함할 수 있다.
한편, 상기 보조기억장치유닛은 보안관리컴퓨팅부가 독점적으로 사용하며 사용자컴퓨팅부에 노출되지 않는 보안관리컴퓨팅 저장영역과, 보안관리컴퓨터부의 통제하에 사용자컴퓨팅부가 사용하는 사용자컴퓨팅 저장영역으로 분리될 수 있다. 이때 사용자컴퓨팅부에서 실행되는 사용자OS 데이타의 원본은 상기 사용자컴퓨팅부 저장영역에 저장되고 그 사본은 보안관리컴퓨팅 저장영역에 저장될 수 있다. 원본과 사본은 편의상 사용자입장에서 서술된 것으로 사본은 원본의 특정시점에서의 백업본으로 대체될 수 있다.
본 발명의 한 실시예에 따르면, 상기 보안관리컴퓨팅부는 상기 보안관리컴퓨팅 저장영역에 저장된 사용자 OS의 사본을 선택적으로 상기 사용자컴퓨팅부의 부팅시에 제공할 수 있다.
또한 본 발명의 한 실시예에 따르면, 상기 I/O장치유닛에 결합되는 키보드유닛과 마우스유닛이 추가로 포함된다. 그리고 상기 사용자컴퓨터부는 상기 키보드유닛과 마우스유닛과의 정보 입출력을 상기 보안관리컴퓨터부의 통제하에 상기 상호통신유닛을 통하여 수행할 수 있다.
또한 본 발명의 한 실시예에 따르면, 상기 보안관리컴퓨팅부로의 접속은 상기 사용자컴퓨팅부와 서로 독립된 패스워드인식 과정을 거쳐 수행될 수 있다.
또한 본 발명의 한 실시예에 따르면, 상기 보안관리컴퓨팅부는 상기 사용자컴퓨팅부에서 실행되는 프로그램의 실행시간이나 실행여부를 통제하는 수단을 추가로 포함할 수 있다.
또한 본 발명의 한 실시예에 따르면, 상기 보안관리컴퓨팅부는 상기 사용자컴퓨팅부가 상기 상호통신유닛을 통하여 상기 I/O장치유닛에 출력할 정보를 전달하는 경우, 상기 보안관리컴퓨팅부는 출력할 정보의 일부분을 상기 보안관리컴퓨팅영역에 저장하였다가 보안관리컴퓨팅부에 접속한 사용자의 요청이 있을때 이를 제공할 수 있다.
또한 본 발명의 한 실시예에 따르면, 상기 보안관리컴퓨팅부는 상기 사용자컴퓨팅부로부터 상기 보조기억장치유닛의 상기 사용자컴퓨팅영역의 파일시스템변경을 요구받았을 때 기존파일시스템의 복원정보를 상기 보조기억장치유닛의 상기 보안관리컴퓨팅영역에 저장할 수 있다.
또한 본 발명의 한 실시예에 따르면, 상기 보안관리컴퓨팅부에 연결되는 제1비디오메모리; 상기 보안관리컴퓨팅부 및 상기 사용자컴퓨팅부에 연결되는 제2비디오메모리; 상기 보안관리컴퓨팅부에 연결되고, 상기 제1비디오 메모리와 상기 제2비디오메모리의 정보를 선택적으로 모니터 디스플레이화면에 표시하는 비디오그래픽콘트롤러가 포함된 비디오디스플레이유닛을 포함할 수 있다. 이 때 고속의 그래픽처리가 필요한 경우에는 GPU를 사용자컴퓨팅부에 추가할 수 있다. 그러나 이경우에도 상기 제2비디오메모리를 GPU가 직접 액세스할 수 있도록 변형하는 것이 바람직하다. 어떠한 경우이든 보안관리컴퓨팅부가 독립적으로 보안관리자나 사용자에게 화면을 제공하는 구조는 유지되는 것이 바람직하다.
이 경우에 상기 보안관리컴퓨팅부는 상기 제2비디오메모리의 정보를 상기 보안관리컴퓨팅부사용자가 설정한 방식으로 상기 보조기억장치유닛의 상기 보안관리컴퓨팅영역에 저장하였다가 상기 보안관리컴퓨팅부 사용자의 요청이 있을때 이를 제공할 수 있다.
또한, 상기 보안관리컴퓨팅부는 상기 사용자컴퓨팅부로부터 보조기억장치유닛에 저장된 레지스트리파일이나 실행가능한 파일의 변경을 요청받은 경우 상기 비디오디스플레이유닛을 통하여 이를 보여주고 상기 키보드입력을 통하여 확인받을 수 있다.
또한, 상기 보안관리컴퓨터부에서 구동되는 OS는 사용자의 하드웨어적인 입력에 따라 상기 제1비디오메모리의 내용이나 제2비디오메모리의 내용을 선택적으로 디스플레이하도록 비디오디스플레이 유닛을 제어하는 수단을 추가로 포함할 수 있다. 이 경우에 상기 하드웨어적인 입력은 키보드입력일 수 있다.
그리고 본 발명에서는 또다른 측면으로서, 상기 키보드 입력을 위한 전용 키를 갖는 키보드가 제공된다.
상기 특징들을 갖는 본 발명에 따른 컴퓨터에서는 사용자컴퓨팅부에 전달되는 사용자 OS를 상황에 따라 원본이나 사본을 선택적으로 제공한다. 악성코드로 인하여 사용자컴퓨팅 저장영역에 저장된 사용자OS의 원본이 훼손된 경우, 새롭게 컴퓨터가 부팅될 때 보안컴퓨팅영역에 저장된 훼손되지 않은 사본을 이용하여 정상적인 부팅이 가능하다. 이때 사용자는 보안관리컴퓨팅부의 I/O장치들중 하나를 이용하여 사본을 이용한 부팅을 지시할 수 있다. 기존 윈도즈와 같다면 부팅시에 키보드의 특정 키를 눌러 부팅될 사용자OS를 사본으로 변경하거나, 윈도즈가 아니라면 별도로 독립된 스위치입력을 두어 이 스위치의 입력값을 기준으로 사용자OS를 사본으로 변경하는 것이 바람직할 것이다.
또한 상기 특징들을 갖는 본 발명에 따른 컴퓨터의 보안관리컴퓨팅부는 이상 동작이 감지된 후 사용자컴퓨팅부를 정지시키거나 리셋, 또는 인터럽트 신호를 발생시켜 이상 동작을 중지시키거나 복구하는 기능을 수행할 수 있다. 예를 들어 사용자컴퓨팅부로부터 레지스트리나 드라이버파일의 변경요구가 있는 경우, 변경을 거부하고 사용자에게 경고하는 방식 등으로 대응이 가능하다.
또한 상기 특징들을 갖는 본 발명에 따른 컴퓨터의 I/O장치들은 하드웨어적으로는 보안관리컴퓨팅부에 직접 연결되고 상호통신유닛을 통한 정보교환(예를 들어 I/O장치들의 어드레스 주소와 읽기, 쓰기 등의 동작종류를 보안관리컴퓨팅부에 전달하고 이를 보안관리컴퓨팅부가 수행하여 그 결과를 전달받거나, 해당장치가 프린터인 경우 해당 I/O장치를 지정하고 프린트할 데이타를 보안관리컴퓨팅부에 전달하여 처리하는 방식등으로) 등의 방식으로 사용자컴퓨팅부에 선택적으로 연결되고, I/O장치들과 관련된 보안관리컴퓨팅부의 소프트웨어들은 사용자컴퓨팅부의 자유로운 접근이 불가능하며, 제한된 조건하에서만 변경이나 설치, 삭제가 가능하게 설정될 수 있다. 이러한 동작을 통하여 보안관리컴퓨팅부는 I/O장치를 관리하며 데이타의 부적절한 이동이나 컴퓨터 I/O장치의 부적절한 사용을 감시할 수 있다. 예를 들어 사용자컴퓨터부가 제시한 하드웨어 어드레스가 프린터장치라면 이 장치와의 통신을 모니터링하여 기록하고 보안관리자에게 이를 제공할 수 있다.
또한 상기 특징들을 갖는 본 발명에 따른 컴퓨터에서, 기본적으로 사용자프로그램과 사용자OS는 사용자컴퓨팅부에서 수행되는 것이 바람직하지만 연산속도의 향상을 위하여 병행실행이 가능하도록 보안관리컴퓨팅부 실행부와, 사용자컴퓨팅부 실행부로 나눌 수 있다. 예를 들어 인터넷접속시에 화면의 구성중 그래픽과 관련된 부분은 보안관리컴퓨팅부가, 나머지는 사용자컴퓨팅부가 담당하여 처리속도를 높일 수 있다. 또한 예를 들어 사용자프로그램이나 사용자OS의 실시간 업데이트모듈이나 바이러스백신프로그램의 실시간감시모듈과 같은 부분들이 보안관리컴퓨팅부에서 실행된다면 보다 안전하고 악성코드의 감염에서 자유로우며 처리속도도 빨라질 것이다.
또한 상기 특징들을 갖는 본 발명에 따른 컴퓨터에서 보안관리컴퓨팅부는 자신의 통제하에 사용자컴퓨팅부에서 실행되는 프로그램의 실행 시간을 통제하거나 실행을 차단하는 수단을 추가로 포함할 수 있다. 사용자컴퓨팅부가 요청을 하더라도 보안관리컴퓨팅부에 설정된 정보를 바탕으로 프로그램정보제공을 거부하거나, 실행이 허가된 후에는 사용자컴퓨팅부에 주기적으로 인터럽트를 걸어 프로세스리스트를 살펴, 지정된 실행시간이 초과되면 강제로 종료시킬 수가 있다. 또한 필요시에는 사용자컴퓨터부의 화면을 저장하는 것도 가능하다. 이를 위해서는 본 발명의 컴퓨터에서 보안관리컴퓨팅부로의 접속시 사용자컴퓨팅부와는 서로 독립된 패스워드인식 과정이 수행되는 것이 바람직하다.
또한 상기 특징들을 갖는 본 발명에 따른 컴퓨터는 사용자컴퓨팅부가 보안관리컴퓨팅부와 독립적으로 별도의 I/O장치를 부가적으로 가질 수도 있다. 그러나 이러한 구성은 I/O장치들을 통하여 유입되는 악성코드를 통제하기가 어렵다. 이 경우 부가되는 I/O장치들이 제공하는 프로그램의 수행을 차단하는 것이 바람직하다. 그러나 어떠한 경우에든 보조기억장치를 보안관리컴퓨팅부가 관리하므로 악성코드에 감염된다 하더라도 감시 및 복구가 가능하다.
또한 상기 특징들을 갖는 본 발명에 따른 컴퓨터의 보안관리컴퓨팅부는 편의상 시스템OS를 가질 수 있다. 이때 이 시스템OS가 사용자컴퓨팅부의 사용자OS와 서로 달라도 큰 문제는 없다. 그러나 보조기억장치유닛의 관리나 I/O장치들의 통제라는 관점에서 보면 파일시스템을 비롯한 최소한의 OS구성요소들은 동일한 것이 보다 바람직할 것이다. 가장 널리 쓰이는 윈도즈의 경우 사용자컴퓨팅부는 기존의 윈도즈를 OS로 쓰고, 보안관리컴퓨팅부는 윈도즈의 안전모드기능을 축소하고 위에서 언급된 여러가지 기능을 추가로 구비하되 사용자의 접근을 보다 제한하는 방식으로 변형한 시스템OS를 사용할 수 있다.
한편, 본 발명에서는, 상기 특징들에 따른 컴퓨터에서 실행되고, 프로그램의 코드나 데이타가 상기 보안관리컴퓨팅부에서 실행되는 제1소프트웨어모듈과, 상기 사용자컴퓨팅부에서 실행되는 제2소프트웨어모듈로 나누어져 있는 소프트웨어 프로그램을 사용할 수 있다.
이 소프트웨어 프로그램은 또한, 컴퓨터로 읽을 수 있는 즉 컴퓨터판독가능한 기록매체의 형태로 구현하는 것이 가능하다. 여기서 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기테이프, 플로피디스크, 광데이터 저장장치 등이 있다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
상기 소프트웨어 프로그램에서, 제1소프트웨어모듈과 제2소프트웨어모듈은 상기 상호통신유닛을 통하여 정보를 교환할 수 있다.
또한, 상기 소프트웨어 프로그램의 제1소프트웨어모듈은 소프트웨어의 업데이트를 담당하는 실시간 업데이트 모듈일 수 있으며, 또는 실시간감시모듈인 악성코드감시프로그램일 수 있다.
본 발명은 악성코드에 의한 시스템 장악 시도에 대응하고 시스템의 훼손을 최소화할 수 있는 컴퓨터에 관한 것이다. 본 발명에 의한 컴퓨터는 사용자프로그램과 사용자 OS를 별도의 고립된 하드웨어에서 수행시켜, 악성코드에 의해서 하드디스크와 같은 보조기억장치에 저장된 OS나 프로그램 또는 사용자파일의 내용이 임의로 변조되는 것을 감시, 차단하는 것이 가능하다.
또한 본 발명의 컴퓨터에서는 악성코드가 실행되어도 이는 사용자컴퓨팅부에서 고립되어 수행되므로, 악성코드로 인한 기존 컴퓨터의 문제를 보안관리컴퓨팅부가 감시하거나 복구할 수 있다. 이를 위해서 보안관리컴퓨팅부는 원칙적으로 프로그램들의 설치나 변경이 불가능하고 프로그램의 설치나 변경을 위해서는 별도의 방식으로 접근하도록 구성된다. 결국 사용자컴퓨팅부의 이상시에 보안관리컴퓨터가 즉시 대응이 가능하므로 보안의 문제가 날로 커지는 오늘날 상황에서는 컴퓨터의 가격이 다소 비싸지더라도 매우 큰 효용성을 갖게 된다.
액세스시간의 면에서 보면, 보조기억장치유닛과 I/O장치들이 보안관리컴퓨팅부에 의해서 관리되므로 사용자컴퓨팅부 입장에서 보면 이들 장치의 액세스시간이 늘어날 수 있다. 그러나 HDD, ODD, 또는 USB에 연결되는 장치들 자체의 액세스타임이 프로그램이 수행되는 공간인 RAM의 액세스타임과 비교할 때 수십에서 수백배 느리기 때문에 액세스시간이 늘어난다고 해서 시스템 전체의 성능에 악영향을 주는 것은 아니다. 또한 사용자프로그램이나 사용자OS중 일부를 보안관리컴퓨팅부에서 실행시킨다면 사용자가 접하는 사용자컴퓨팅부의 처리속도는 빨라지므로 전체적인 속도저하는 무시할만 할 것이다. 또한 보안에 허점이 생겨 부적절한 정보의 유출로 피해를 본다면 그 피해규모는 경우에 따라서는 컴퓨터의 가격을 훌쩍 넘어가므로 본 발명의 컴퓨터는 충분히 큰 의미가 있다고 볼 수 있다.
나아가 본 발명에 따른 컴퓨터는, 사용자프로그램의 수행을 프로그램 종류나 시간 등을 기준으로 제한하는 것이 가능하고, 프로그램의 수행시에 수반되는 정보의 (프린터나 외부저장장치, 통신망 등을 통한) 외부출력시에 이를 기록하거나 보고하는 것이 가능해지므로 보안상 매우 유리한 점이 있다.
이상에서 소개한 본 발명 사상의 구성과 효과는 이하에서 도면과 함께 설명하는 구체적인 실시예의 설명을 통해 보다 더 명확해질 것이다.
도 1은 본 발명의 한 실시예에 따른 컴퓨터장치의 구조도
도 2는 보조기억장치유닛(30)의 개략 구성도
도 3은 보안관리컴퓨팅부(100)와 사용자컴퓨팅부(200)의 기능 구성도
도 4는 본 발명의 다른 실시예의 컴퓨터장치의 구조도
이하에서는 앞에서 소개한 본 발명의 사상을 구체적으로 구현한 몇 가지 실시예를 설명한다. 그러나 본 발명의 기술적 범위는 이하에서 설명하는 실시예 및 도면에 한정되는 것이 아니라, 특허청구범위의 합리적 해석에 의해 정해지는 것이다.
도 1은 본 발명의 한 실시예에 따른 컴퓨터장치의 구조도이다. 크게, 보안관리컴퓨팅부(100)와 사용자컴퓨팅부(200)로 구성된다.
보안관리컴퓨팅부(100)는 제1어드레스버스(11), 제1데이타버스(12), 제1제어버스(13) 신호들을 갖는 제1중앙처리장치(CPU)(10); 상기 제1중앙처리장치(CPU)(10)에 제1어드레스버스(11), 제1데이타버스(12), 제1제어버스(13) 신호들을 통하여 연결되는 제1메모리유닛(20); 상기 제1중앙처리장치(10)에 제1어드레스버스(11), 제1데이타버스(12), 제1제어버스(13) 신호들을 통하여 연결되는 HDD 등의 보조기억장치유닛(30); 상기 제1중앙처리장치(10)에 제1어드레스버스(11), 제1데이타버스(12), 제1제어버스(13) 신호들을 통하여 연결되는 입출력(I/O)장치유닛(40)을 포함한다.
사용자컴퓨팅부(200)는 제2어드레스버스(51), 제2데이타버스(52), 제2제어버스(53) 신호들을 갖는 제2중앙처리장치(CPU)(50); 상기 제2중앙처리장치(CPU)(50)에 제2어드레스버스(51), 제2데이타버스(52), 제2제어버스(53) 신호들을 통하여 연결되는 제2메모리유닛(60)을 포함한다.
또한, 상기 보안관리컴퓨팅부(100)의 제1중앙처리장치(10)와 제1어드레스버스(11), 제1데이타버스(12), 제1제어버스(13) 신호들을 통하여 연결되고, 상기 사용자컴퓨팅부(200)의 제2중앙처리장치(50)와 제2어드레스버스(51), 제2데이타버스(52), 제2제어버스(53) 신호들을 통하여 연결되어, 제1중앙처리장치(10)와 제2중앙처리장치(50)사이의 통신을 담당하는 상호통신유닛(70)이 포함된다.
한 실시예에 따르면 상호통신유닛(70)은 제1중앙처리장치(10)와 제1어드레스버스(11), 제1데이타버스(12), 제1제어버스(13) 신호들을 통하여 연결되는 인터럽트레지스터를 포함한다. 이 레지스터의 출력신호는 상기 제2중앙처리장치(50)의 인터럽트신호입력에 연결될 수 있다. 이때 사용자컴퓨팅부(200)는 상기 인터럽트레지스터를 통하여 상기 보안관리컴퓨팅부(100)로부터 인터럽트신호를 받는 경우, 수행중인 소프트웨어의 리스트와 프로세스정보들을 상기 상호통신유닛(70)을 통하여 제공할 수 있다. 또한, 사용자컴퓨팅부(200)는, 상기 인터럽트레지스터를 통하여 상기 보안관리컴퓨팅부(100)로부터 인터럽트신호를 받는 경우, 상기 상호통신유닛(70)을 통하여 제공되는 정보를 이용하여, 수행중인 소프트웨어와 프로세스의 수행을 선택적으로 중단시킬 수 있다.
대개의 경우 CPU는 여러 개의 인터럽트를 처리할 수 있으므로 인터럽트를 작업의 종류에 따라 달리하는 것도 가능하다. 또한 사용자컴퓨팅부가 실행할 인터럽트 프로그램의 물리적 어드레스를, 보안관리컴퓨팅부만이 쓰기 가능한 플래쉬메모리에 두어 인터럽트라인은 하나만 쓰되 프로그램은 그때그때 바꾸어서 실행시키는 것도 가능하다.
또한 다른 실시예에 따르면 상호통신유닛(70)은 상기 제1중앙처리장치(10)와 제1어드레스버스(11), 제1데이타버스(12), 제1제어버스(13) 신호들을 통하여 연결되고, 제2중앙처리장치(50)와 제2어드레스버스(51), 제2데이타버스(52), 제2제어버스(53) 신호들을 통하여 연결되는 듀얼포트메모리를 포함할 수 있다. 듀얼포트메모리는 속성상 보안관리컴퓨팅부와 사용자컴퓨팅부의 동시 액세스가 가능하므로 작은 용량의 데이타전달시에 유용하게 사용될 수 있다. 또한 듀얼포트메모리의 일부를 플래쉬메모리로 구성하고 쓰기는 보안관리컴퓨팅부만 가능토록하고, 사용자컴퓨팅부의 인터럽트벡터가 지시하는 인터럽트처리프로그램의 시작어드레스를 물리적으로 듀얼포트 플래쉬메모리를 가리키도록 할 수도 있다.
또다른 실시예에 따르면 상호통신유닛(70)은 상기 제1중앙처리장치(10)와 제1어드레스버스(11), 제1데이타버스(12), 제1제어버스(13) 신호들을 통하여 연결되고, 상기 제2중앙처리장치(50)와 제2어드레스버스(51), 제2데이타버스(52), 제2제어버스(53) 신호들을 통하여 연결되는 DMA인터페이스를 포함할 수 있다. 이 DMA인터페이스가 양방향으로 설계되면, 보안관리컴퓨팅부와 사용자컴퓨팅부사이의 대용량 데이타, 예를 들어 보조기억장치에 저장된 파일과 같은 데이타를 주고 받는 데에 유용하게 사용될 수 있다.
보안관리컴퓨팅부(100)는 모든 I/O장치유닛(40)들을 감시, 통제하며 특히 보조기억장치유닛(30)을 보안관리컴퓨팅 저장영역과 사용자컴퓨팅 저장영역으로 나누어 관리하여 복구 기능을 수행하고, 사용자컴퓨팅부(200)는 I/O장치유닛(40)들로부터 고립되어 별도의 CPU와 메모리를 가지고 상호통신유닛(70)을 통하여 보안관리컴퓨팅부(100)에 연결되어 사용자 프로그램과 사용자OS를 실행한다.
도 2에 상기 보조기억장치유닛(30)의 개략 구성을 나타내었다. 저장영역1과 저장영역2로 물리적 또는 논리적으로 분리되어 있는데, 각각, 보안관리컴퓨팅부(100)가 사용하는 보안관리컴퓨팅 저장영역(31)과 사용자컴퓨팅부(200)가 사용하는 사용자컴퓨팅 저장영역(32)이다. 이들 중 보안관리컴퓨팅 저장영역(31)은 사용자컴퓨팅부(200)에 노출되지 않는다. 즉, 하나의 기억장치(예를 들어, HDD)를 파티션으로 나누어 보안관리컴퓨팅부(100)가 사용하는 파티션을 보안관리컴퓨팅 저장영역(31)으로 설정하되 이 영역은 사용자컴퓨팅부(200)에 노출되지 않도록 설정하는 것이 바람직하다. 이러한 파티셔닝과 달리, 경우에 따라서는 물리적으로 분리된 두 개의 HDD를 사용하는 것도 가능하다. 또한 속도의 개선을 위해서는 플래쉬메모리로 구성된 기억장치가 더 바람직할 수도 있을 것이다.
다른 방식으로, 전체 HDD를 보안관리컴퓨팅부(100)와 사용자컴퓨팅부(200)가 함께 사용하되 보안관리컴퓨팅부(100)가 사용하는 파일이나 섹터가 사용자컴퓨팅부(200)에 노출되지 않도록 하는 방법도 가능하다. 이 경우 사용자컴퓨팅부(200)에 노출되는 파일시스템은 사실상 단일의 연속된 공간으로 나타나지만 실제로는 각각의 섹터를 일일이 누가 사용하는지 확인해야 하므로 파일시스템의 관리가 까다로운 단점이 있다. 그러나 사용자컴퓨팅부(200)가 파일을 변경할 때 보안관리컴퓨팅부(100)가 파일의 속성을 자신이 사용하는 것으로만 변경하여 관리가 가능해지므로 백업시에는 상당한 시간단축 효과를 얻을 수 있다.
도 3은 보안관리컴퓨팅부(100)와 사용자컴퓨팅부(200)의 세부 기능 구성을 나타낸다.
도 3에 나타낸 각 모듈들은 보안관리컴퓨팅부(100)의 제1중앙처리장치(10) 또는 사용자컴퓨팅부(200)의 제2중앙처리장치(50)의 개별적 기능 구현을 위한 소프트웨어적 구성을 나타내며, 별도의 하드웨어 없이 또는 필요시에는 특정의 하드웨어가 부가되어 동작할 수 있다.
이제, 상기 도 1 ~ 도 3을 참조하여 본 발명의 구성 및 작용을 설명한다.
한 실시예에서, 사용자컴퓨팅부(200) 내에(즉, 제2중앙처리장치(50) 내에) 기능 단위로서 포함되는 구성요소인 사용자프로그램실행모듈(210)에서 사용자프로그램이 실행되는데, 이때에는 보안관리컴퓨팅부(100)와 고립된 보안잠금 및 해제프로세스를 갖는 고립된 사용자프로그램 실행이 일어난다. 사용자컴퓨팅부(200)에는(즉, 제2중앙처리장치(50)에는) 또한, 사용자OS실행모듈(220)과 I/O접속모듈(230)이 포함되어 있다. 이들에 대해서는 향후에 설명한다.
그리고 보안관리컴퓨팅부(100)에는(즉, 제1중앙처리장치(10)에는) 사용자컴퓨팅부(200)를 감시 및 통제하는 사용자컴퓨팅부관리모듈(110), I/O장치유닛(40)들을 감시 및 통제하는 I/O관리모듈(120), 복구 기능을 수행하기 위하여 보조기억장치유닛(30)을 도 2에서와 같이 보안관리컴퓨팅용 저장영역과 사용자컴퓨팅용 저장영역으로 나누어 관리하는 보조기억장치관리모듈(130)이 포함된다. 또한 이들에 덧붙여 보안관리컴퓨팅부(100)에는 사용자OS관리모듈(140)이 추가로 포함된다. 이들 모듈(110~140)들도 보안관리컴퓨팅부(100)의 제1중앙처리장치(10) 내에 소프트웨어 기능 블록으로서 포함될 수 있다.
사용자컴퓨팅부(200)의 예를 들어 사용자OS실행모듈(220)은 사용자OS 프로그램 및 데이타 실행을 수행하는데, 이 경우에 사용자OS실행모듈(220)은 사용자OS를 포함한 프로그램과 데이타를, 보안관리컴퓨팅부(100)가 관리하는 보조기억장치유닛(30)에 의존한다. 즉, 사용자컴퓨팅부(200)에서 실행되는 사용자OS 데이타는, 보안관리컴퓨팅부(100)의 사용자OS관리모듈(140)에 의해, 보안관리컴퓨팅부(100)에 있는 보조기억장치유닛(30)의 사용자컴퓨팅부 저장영역(32)에 원본이 저장되고 그 사본은 보안관리컴퓨팅 저장영역(31)에 저장된다. 실행시에는 상기 상호통신유닛(70)을 통하여 상기 보안관리컴퓨팅부(100)로부터 상기 사용자컴퓨팅부(200)로 원본이 전달되어 상기 제2메모리유닛(60)에 설치되어 실행된다.
또한, 사용자컴퓨팅부(200)의 예를 들어 I/O접속모듈(230)은 보안관리컴퓨팅부(100)에 있는 I/O장치(40)들과의 접속을 보안관리컴퓨팅부(100)에 의존한다. 즉, 예를 들어, USB나 LAN과 같은 범용 통신인터페이스, 키보드, 마우스와 같은 I/O장치들은 하드웨어적으로 보안관리컴퓨팅부(100)의 I/O관리모듈(120)에 연결되어 드라이버소프트웨어나 시뮬레이션소프트웨어를 통해서 사용자컴퓨팅부(200)의 I/O접속모듈(230)에 선택적으로 연결된다. 이 때 보안관리컴퓨팅부(100)는 사용자의 접근이 엄격하게 관리되고 프로그램의 변경이나 설치가 원칙적으로 불가능하게 구성된다. 이러한 구조로써, 사실상 제3자가 되는 보안관리컴퓨팅부(100)는 기존의 컴퓨터와 같은 구조인 사용자컴퓨팅부(200)의 동작 감시가 가능해진다.
보안관리컴퓨팅부(100)의 I/O관리모듈(120)은 모든 I/O장치(40)를 관리하며 데이타의 부적절한 이동이나 컴퓨터의 부적절한 사용을 감시한다. 예를 들어 디스플레이의 화면이나 키보드입력의 기록이 가능하므로 부적절한 사용을 감시할 수 있다. USB를 통하여 파일을 복사하는 경우에도 그 기록이 가능하므로 적절한 보안조치가 가능하다. 기존과 같이 하나의 OS가 전체를 관장하는 컴퓨터에서도 기록이 가능하지만 기록된 정보에 최상위 관리자는 접근가능하므로 몰래 이를 삭제하거나 변형하는 경우에는 보안에 허점이 발생한다. 따라서 본 발명에 따른 컴퓨터장치는 기업이나 군사용 등 보안이 필요한 경우에 매우 유용하다. 이 경우 보안통신망을 통하여 보안담당부서에서 전체컴퓨터의 작업내용이나 보안사항을 감시하고 통제하는 것이 가능하다. 이때 보안통신망은 사용자컴퓨터부에는 노출되지 않으므로 매우 안전하다.
또한 보안관리컴퓨팅부(100)는 I/O장치유닛에 연결되는 입출력장치가 프로그램코드를 전달하려 하는 경우 이를 상호통신유닛(70)을 통하여 상기 사용자컴퓨팅부(200)에 전달하고 상기 사용자컴퓨팅부(200)는 이를 수행한다.
보안관리컴퓨팅부(100)에 연결되는 I/O 장치별 사용자컴퓨팅부(200)의 동작을 설명하면, 보안관리컴퓨팅부(100)에 결합되는 키보드유닛과 마우스유닛에 대하여 사용자컴퓨팅부(200)는 키보드유닛과 마우스유닛과의 정보 입출력을 상기 보안관리컴퓨팅부(100)의 통제하에(예를 들어, I/O관리모듈(120)의 기능에 의해) 상기 상호통신유닛(70)을 통하여 수행할 수 있다. 보안관리컴퓨팅부(100)에 결합되는 USB유닛의 경우에도 사용자컴퓨팅부(200)는 상기 USB유닛과의 정보 입출력을 상기 보안관리컴퓨팅부(100)의 통제하에 상기 상호통신유닛(70)을 통하여 수행할 수 있다. 보안관리컴퓨팅부(100)에 결합되는 PCI유닛의 경우에도 상기 사용자컴퓨팅부(200)는 상기 PCI유닛과의 정보 입출력을 상기 보안관리컴퓨팅부(100)의 통제하에 상기 상호통신유닛(70)을 통하여 수행할 수 있다. 보안관리컴퓨팅부(100)에 결합되는 LAN유닛에 대해서도 상기 사용자컴퓨팅부(200)는 상기 LAN유닛과의 정보 입출력을 상기 보안관리컴퓨팅부(100)의 통제하에 상기 상호통신유닛(70)을 통하여 수행할 수 있다. 이들 I/O장치들과의 통신은 장치들의 하드웨어 어드레스와 입출력정보, 입출력동작을 지정하여 개별적으로 진행할 수 있으나, I/O장치들의 종류마다 기능이 정해져있으므로 일부 I/O장치들에 대하여는 프린터모듈에 대하여는 프린트정보를 제공하고 ‘장치로 출력’이라는 명령으로, 외장보조기억장치에 대하여는 파일이름을 지정하고 ‘장치로 복사’라는 명령으로 간단하게 처리할 수도 있다.
보안관리컴퓨팅부(100)의 사용자컴퓨팅부관리모듈(110)은 사용자컴퓨팅부(200)의 동작을 점검하고 감시하는 기능을 갖는다. 이 기능은 또한, 경우에 따라서 제2중앙처리장치(50)를 정지시키거나 리셋, 또는 인터럽트신호를 발생시켜 특정 프로그램을 실행시키는 등의 방법으로 이상 동작을 중지시키거나 복구할 수 있는 기능을 포함할 수 있다.
사용자컴퓨팅부관리모듈(110)은 또한 사용자컴퓨팅부(200)의 사용자프로그램실행모듈(210)이나 사용자OS실행모듈(220)에서 수행되는 코드중 안전하게 관리될 수 있는 부분을 보안관리컴퓨팅부(100)에서도 병행하여 실행가능하도록 구성하는 기능을 가질 수 있다. 예를 들어 OS나 프로그램의 업데이트, 바이러스백신프로그램의 실시간감시부분 등을 보안관리컴퓨팅부(100)가 수행하게 되면 사용자컴퓨팅부(200)가 수행하는 것보다 빠르게 다른 작업들을 수행할 수 있을 것이다.
또한, 예를 들어 인터넷접속시에, 화면 구성중 그래픽과 관련된 부분은 보안관리컴퓨팅부(100)가, 나머지는 사용자컴퓨팅부(200)가 담당하도록 사용자컴퓨팅부관리모듈(110)을 설정할 수 있다. 이로써 보다 빠른 동작이 가능해진다.
상기와 같이 본 발명의 컴퓨터에서 구동되는 모든 소프트웨어는 그 프로그램 코드나 데이타가 보안관리컴퓨팅부(100)에서 실행되는 부분과 사용자컴퓨팅부(200)에서 실행되는 부분으로 분리될 수 있다. 이때 보안관리컴퓨팅부(100)에서 실행되는 부분은 OS나 사용자프로그램의 소프트웨어의 업데이트를 담당하는 업데이트 모듈일 수 있다.
또한 인터넷접속시에 사용자컴퓨팅부(200)의 동작이 의심된다면 보안관리컴퓨팅부(100)가 키보드입력을 사용자컴퓨팅부(200)로 보내지 않고 접속중인 인터넷 사이트로 직접 송신하는 것도 가능하다. 이 경우에 사용자컴퓨팅부(200)로는 '*'와 같이 키보드입력을 대신하는 문자를 보내주고 보안관리컴퓨팅부(100)가 사용하는 화면에 사용자가 입력하는 실제 정보를 보여주는 것이 가능하다..
또한 본 발명에 따른 컴퓨터는 가정에서도 아이들의 과도한 게임사이트 접속이나 음란물 시청 등을 부모가 쉽게 감시할 수 있도록 한다. 보안관리컴퓨팅부(100)의 사용자컴퓨팅부관리모듈(110)에 이러한 기능을 부가하여, 아이들이 사용자컴퓨팅부(200)에만 접속할 수 있도록 설정해 놓으면 보안관리컴퓨팅부(100)의 통제하에 특정 프로그램의 실행 시간을 통제하거나 실행을 차단하는 것이 가능하고 또 화면을 캡처하여 저장하는 것이 가능하다. 상기 상황을 통신망을 통하여 부모의 휴대폰으로 실시간으로 감시할 수 있으므로 아이들의 무절제한 컴퓨터 사용을 부모가 효과적으로 막을 수 있다. 이 경우 부모의 휴대폰과는 블루투스, 무선LAN, 공용데이타망 등으로 연결될 수 있으며. 전용 앱을 제공한다면 보다 편리할 것이다..
이러한 기능을 위해서, 모니터를 위한 비디오디스플레이유닛에는 상기 보안관리컴퓨팅부(100)에 연결되는 제1비디오메모리(도시하지 않음); 상기 보안관리컴퓨팅부(100) 및 상기 사용자컴퓨팅부(200)에 연결되는 제2비디오메모리(도시하지 않음); 상기 보안관리컴퓨팅부(100)에 연결되고, 상기 제1비디오 메모리와 상기 제2비디오메모리의 정보를 선택적으로 모니터 디스플레이화면에 표시하는 비디오그래픽콘트롤러가 포함되어야 할 것이다.
이렇게 구성된 비디오디스플레이유닛이 연결된 보안관리컴퓨팅부(100)는 상기 사용자컴퓨팅부(200)로부터 보조기억장치유닛(30)의 특정 영역에 저장된 정보의 변경을 요청받은 경우에, 상기 비디오디스플레이유닛을 통하여 이를 디스플레이하고 사용자에게 확인을 요구하는 동작(예를 들어 키보드입력)을 수행할 수 있다.
또한 보안관리컴퓨팅부(100)는 상기 제2비디오메모리의 정보를 보안관리컴퓨팅부(100)의 사용자가 설정한 방식대로 보조기억장치유닛(30)의 보안관리컴퓨팅 저장영역(31)에 저장하였다가 사용자의 요청이 있을때 이를 제공할 수 있다.
한편, 본 발명에는 보안관리컴퓨팅부(100)에서 구동되는 시스템OS로서, 사용자의 하드웨어적인 입력에 따라 상기 제1비디오메모리의 내용이나 제2비디오메모리의 내용을 선택적으로 디스플레이하도록 비디오디스플레이 유닛을 제어하는 기능이 있는 소프트웨어도 포함된다. 이 경우에는 사용자의 하드웨어 입력을 위한 전용키를 갖는 키보드를 갖춘다면 보다 편리할 수 있을 것이다.
해커나 바이러스의 침투로 사용자컴퓨팅부(200)가 이상동작을 할 경우 이에 대응하는 프로그램을 보안관리컴퓨팅부(100)의 사용자컴퓨팅부관리모듈(110)과 보조기억장치관리모듈(130)에 갖춘다면 해킹이나 바이러스에 대한 효과적인 대응이 가능하다. 기존의 컴퓨터구조는 바이러스의 이상동작을 백신프로그램이나 기타 다른방법으로 나중에 확인하게 되지만, 본 발명에서는 보안관리컴퓨팅부(100)가 실시간으로 사용자컴퓨팅부(200)의 동작(이 경우에는 바이러스의 동작)을 감시하게 되므로 즉각 대처가 가능하다.
예를 들면 바이러스가 침투하여 하드디스크에 저장되는 파일에 숨기 위하여 파일내용을 변조하는 경우 기존컴퓨터는 파일이 변조된 후에 나중에 백신프로그램으로 이를 확인할 수 있었지만 본 발명에 따른 컴퓨터장치에서는 실시간으로 파일의 변조를 차단하는 것이 가능하다. 또한 일부 알려진 바이러스는 기존 컴퓨터백신프로그램의 실시간 감시기능을 사용하여 차단가능하지만, 신종으로 등장하는 바이러스에는 속수무책이고 백신프로그램의 업데이트가 안 된 경우에는 더더욱 보안에 문제가 발생한다. 이에 비해서 본 발명에 따른 컴퓨터장치에서는 원도즈와 같은 OS의 경우 바이러스의 파일시스템 변경이나 레지스트리 변경을 제3자인 보안관리컴퓨팅부(100)가 차단할 수 있어 바이러스가 최상위관리자 권한을 가지고 접근해도 보다 더 근본적인 대책이 가능하다.
나아가 본 발명에 따른 컴퓨터에서는 하드디스크 등의 보조기억장치유닛(30)을 보안관리컴퓨팅부(100)의 보조기억장치관리모듈(130)이 통제하므로 다양한 보안기능을 편리하게 구현할 수 있다.
예를 들어, 앞에서 언급한 것과 같이 보안관리컴퓨팅부(100)가 사용하는 보조기억장치유닛(30)의 보안관리컴퓨팅 저장영역(31)을 사용자컴퓨팅부(200)에 전혀 노출되지 않게 설정 또는 구성할 수 있다. 따라서 이 저장영역은 악성코드의 공격에서 매우 안전하다. 따라서 사용자컴퓨팅부(200)가 파일시스템의 변경을 요구하면 파일시스템의 백업정보를 보안관리컴퓨팅 저장영역(31)에 저장하고 파일시스템을 변경한다면 문제발생시에도 특정 시간을 지정하여 파일시스템을 복구하는 것이 가능해진다. 즉, 상기 보안관리컴퓨팅부(100)는 상기 사용자컴퓨팅부(200)로부터 상기 사용자컴퓨팅 저장영역(32)의 파일시스템변경을 요구받았을 때 기존파일시스템의 복원정보를 상기 보안관리컴퓨팅부(100)가 독점적으로 사용하는 보안관리컴퓨팅 저장영역(31)의 특정 부분에 저장한다. 이 정보는 사용자컴퓨팅부에는 노출되지 않으므로 안전한 대응이 가능하다.
이미 윈도즈(Windows)에 특정 시점의 컴퓨터 프로그램과 데이타 이미지백업하여 이를 사용하여 시스템을 복구하는 기능이 있고 OS가 문제가 있는 경우에는 OS를 복구할 수 있는 기능도 있다. 그러나 앞서 설명한 것처럼 백업정보에 누구든지 접근이 가능한 기존 컴퓨터구조에서는 악성코드도 백업정보에 접근할 수 있어 완전한 보안은 불가능하다. 예를 들어 해킹프로그램이나 바이러스프로그램이 하드디스크를 파괴하려 하여도 기존의 컴퓨터는 이들 프로그램의 속성을 전혀 모른채 무작정 악성코드의 명령을 수행하여 컴퓨터가 동작불능 상태에 빠지고 만다. 예를 들어 랜섬웨어가 사용자파일들을 무작위로 암호화하여도 이를 전혀 모른채 암호화작업을 수행한다.
그러나 본 발명에 따른 컴퓨터에서는 보안관리컴퓨팅부(100)가(예를 들어, 사용자컴퓨팅부관리모듈(110)이) 사용자컴퓨팅부(200)의 동작을 감시할 수 있으므로 OS파일이나 데이타파일의 변경이나 삭제시에 안전한 곳에 백업정보파일을 만들어 놓아 복구가 쉽게 가능하다. 또한 이들 파일의 삭제 등 명령을 받으면 보안관리컴퓨팅부(100)가 다시 한번 사용자의 확인을 요구할 수도 있어 보안성이 크게 강화된다. 기존 컴퓨터에서 일부 악성코드들은 사용자의 확인이 필요한 경우에 키보드 드라이버를 감염시켜 가짜확인입력을 발생시켜 사용자의 추가확인을 건너뛰게 할 수 있지만 본 발명에 따른 컴퓨터에서는 사용자의 추가확인이 보안관리컴퓨팅부(100)에서 이뤄지므로 악성코드의 가짜확인입력은 불가능하다.
일반적으로 최근에 사용되는 대부분의 PC계열 컴퓨터장치들은 고속의 그래픽처리를 위하여 GPU를 사용한다. GPU는 고립된 코드와 작업영역을 갖는다는 측면에서는 본 발명의 고립된 사용자컴퓨팅부(200)와 유사하다고 볼 수도 있으나, CPU가 GPU의 작업을 감시하고 이상동작시 복구하려는 어떠한 하드웨어나 소프트웨어적인 구성이 없어서 근본적으로 차이가 있다. 즉 두개의 중앙처리장치가 다른 하나의 중앙처리장치의 이상 동작을 감지하고 대응하기위한 목적으로 결합된 구조가 아니어서, GPU는 다른 I/O장치들을 사용하지 않으며 OS도 없고, 영역이 분리된 보조기억장치를 사용하지도 않는다.
이상과 같이 구성된 본 발명에 따른 컴퓨터의 세부적인 동작별로 구체적으로 설명하면 다음과 같다.
1-1. 부팅
전원이 인가되어 부팅이 시작되면 보안관리컴퓨팅부(100)와 사용자컴퓨터의 BIOS코드가 각각 수행된다. 이때 보안관리컴퓨팅부(100)의 제1중앙처리장치(10)의 부팅 처리모듈(도시하지 않음)은 I/O장치(40)와 메모리들의 POST(Power On Self Test)를 수행하고 연결된 하드디스크, 즉, 보조기억장치유닛(30)으로부터 시스템OS를 읽어들인다.(이때 하드디스크의 용량이 충분하여 하나의 하드디스크가 사용자컴퓨팅 저장영역(32)과 보안관리컴퓨팅 저장영역(31)을 다 포함하고 있는 것으로 가정한다. 즉 하드디스크의 일부분이 보안관리컴퓨팅 저장영역(31)으로 설정되어 있는 것으로 가정한다). 한편 사용자컴퓨팅부(200)의 부팅 처리모듈(도시하지 않음)도 부팅을 시작하고 메모리와 상호통신유닛(70)의 자가테스트를 거쳐서 사용자OS데이타(사용자컴퓨팅부(200)의 OS)와 I/O장치(40)들의 POST 결과를 상호통신유닛(70)을 통하여 보안관리컴퓨팅부(100)에 요청한다.
보안관리컴퓨팅부(100)는 POST 결과와 사용자OS 데이타를 상호통신유닛(70)을 통하여 전달하고 사용자컴퓨팅부(200)는 이를 이용해 부팅작업을 수행한다. 사용자OS가 정상적으로 설치되면 사용자OS는 사용자가 설정한 프로파일에 따라 시작응용프로그램들의 데이타를 다시 보안관리컴퓨팅부(100)에 요청하고 이들 정보들을 이용하여 시작응용프로그램들을 메모리에 설치하고 부팅을 종료한다. 사용자OS가 윈도즈라하면 부팅을 마친 초기화면에는 사용자프로그램 아이콘들이 나타날 것이다.
이때 보안관리컴퓨팅부(100)의 OS와 사용자컴퓨팅부(200)의 OS가 같을 필요는 없다. 그러나 일정부분이라도 공유한다면 상당한 작업능력의 상승효과를 기대할 수 있을 것이다. 예를 들어 보안관리컴퓨팅부(100)의 OS가 윈도즈의 안전모드부팅에 상응하는 OS이고 사용자컴퓨팅부(200)의 OS가 윈도즈라면 보안관리컴퓨팅부(100)가 프로그램이나 OS의 업데이트, 나아가 백신프로그램의 실시간감시모듈을 실행시킴으로써 의심스러운 프로그램코드의 실시간 점검도 가능해질 것이다.
1-2. 한편 OS부팅 전에 보안관리컴퓨팅부(100)의 BIOS 처리 모듈(도시하지 않음)은 사용자컴퓨팅부(200) BIOS의 기능을 변경하는 것이 가능하다.
인터럽트레지스터(도시하지 않음)나 상호통신유닛(70)을 이용하여 BIOS 일부기능을 변경하는 경우를 살펴보자. 인터럽트레지스터가 16비트로 구성된다고 하면 각각의 비트에 하나의 ON/OFF정보를 전달할 수 있으므로 다양한 용도로 사용이 가능하다. 예를 들어 인터럽트레지스터의 비트0는 하드웨어적으로 사용자컴퓨터의 NMI라인에 바로 연결되고 비트1은 하드웨어적으로 사용자컴퓨터의 리셋라인에 POR(Power On Reset)신호와 OR게이트로 연결된다고 가정하고, 비트15는 BIOS변경을 나타낸다고 가정하자. 또한 인터럽트레지스터는 전원ON시에 0으로 설정된다고 가정하고 인터럽트레지스터의 현재값은 보안관리컴퓨팅부(100)와 사용자컴퓨팅부(200) 모두에서 읽을수 있다고 가정하자.
보안관리컴퓨팅부(100)의 BIOS 처리 모듈은 부트시에 사용자컴퓨팅부(200)의 BIOS 변경이 필요하면 인터럽트레지스터의 비트15를 셋(set)하고 변경이 필요한 부분의 데이타를 상호통신유닛(70)에 저장한다(상호통신유닛(70)을 DPRAM(Dual Port RAM)으로 가정할 경우).
사용자컴퓨팅부(200)의 BIOS 처리 모듈(도시하지 않음)은 전원인가후 인터럽트레지스터의 비트15를 읽어 BIOS의 변경이 필요한지 확인하고 필요한 것으로 체크되어 있으면 상호통신유닛(70)을 통하여 정보를 읽어들여 BIOS를 변경한다. 변경이 종료되면 이를 다시 상호통신유닛(70)으로 보안관리컴퓨팅부(100)에 알려주고 사용자컴퓨팅부(200) 자신은 처음부터 다시 부팅을 진행한다. 보안관리컴퓨팅부(100)는 인터럽트레지스터의 비트15를 클리어(clear)해서 BIOS 변경을 해제한다.
이때 하드웨어적으로 별도의 레지스터를 통하여 사용자컴퓨팅부(200) BIOS의 WR(write)신호를 제어하는 것이 바람직하다. 즉 보안관리컴퓨팅부(100)의 BIOS 처리 모듈이 허용할 때에만 사용자컴퓨팅부(200)의 BIOS 처리 모듈이 자신의 BIOS 메모리(도시하지 않음)에 쓰기가 가능하도록 하게 되면 악성코드로 인한 BIOS의 변경을 막을 수 있다. 즉 별도의 레지스터의 출력과 WR신호를 AND게이트를 통하여 BIOS메모리의 WR입력에 인가하면 해당 비트가 1일 때만 WR신호가 전달되므로 부트시에 보안관리컴퓨팅부(100)가 허용할 때만 쓰기가 가능해진다.
1-3. 보안관리컴퓨팅부(100)의 I/O관리모듈(120)은 설정에 따라 입출력장치유닛(40)과 연결된 주변장치들의 정보를 상호통신유닛(70)을 통하여 사용자컴퓨팅부(200)의 I/O접속모듈(230)에 제공한다.
사용자컴퓨팅부(200)의 I/O접속모듈(230)은 해당 주변장치들의 접속이 인지되면 필요한 드라이버를 보안관리컴퓨팅부(100)의 사용자컴퓨팅부관리모듈(110)에 요구하여 설치하고 자신의 주변장치목록에 추가하게 된다. 이러한 주변장치목록과 정보는 보안관리컴퓨팅부(100)와(가령, I/O관리모듈(120)과) 공유된다. 상호통신유닛(70)을 통하여 전달된 해당 주변장치에 대한 읽기와 쓰기는 보안관리컴퓨팅부(100)(가령, I/O관리모듈(120))가 수행하고 그 결과는 상호통신유닛(70)을 통하여 사용자컴퓨팅부(200)에 전달된다. 즉 해당 장치에 대한 드라이버는 사용자컴퓨팅부(200)에 존재하고 보안관리컴퓨팅부(100)는 사용자컴퓨팅부(200)의 요청에 따라 하드웨어적인 단순 입출력을 담당한다. 이때 단순입출력을 블럭화시켜서 데이타 블럭의 이동으로 확장할 수도 있다.
예를 들어, 프린터가 USB를 통하여 접속되면 보안관리컴퓨팅부(100)의 I/O관리모듈(120)은 접속을 인지하고 관련된 정보를 상호통신유닛(70)을 통하여 사용자컴퓨팅부(200)의 I/O접속모듈(230)에 전달한다. 사용자컴퓨팅부(200)는 수신된 정보를 분석하여 프린터임이 확인되면 해당 프린터의 드라이버를 설치하게 된다.
드라이버의 설치는 기존 컴퓨터의 경우와 유사하게 진행된다. 사용자컴퓨팅부(200)는 상호통신유닛(70)을 통하여 보안관리컴퓨팅부(100)의 통제하에 보조기억장치유닛(30)의 드라이버들을 검색한다. 이 과정은 드라이버프로그램을 찾을 때까지 계속된다. 적절한 드라이버프로그램이 발견되면 사용자컴퓨팅부(200)는 이를 자신의 메모리에 설치하고 자신의 주변장치목록에 이를 추가한다. 이 과정에서 보안관리컴퓨팅부(100)는 단순한 입출력만을 제공할 뿐이지만 해당 장치의 접속에 관한 내용은 기록되고 관리가 가능하다.
그러나 앞서 언급한 것처럼 I/O장치들에 대하여는 다양한 관리방법이 존재한다. 예를 들어 프린터와 같은 경우에는 프린터드라이버를 보안관리컴퓨팅부(100)에서 실행시켜놓고 사용자컴퓨팅부(200)의 사용자프로그램(예를 들어 MS워드)은 프린트할 정보와 프린터 파라메타를 보안관리컴퓨팅부에 전달하고 ‘장치로 출력’이라는 처리명령을 전달하여 간단하게 프린트를 수행할 수도 있다. 이 경우 프린터드라이버가 악성코드에 감염되지 않도록 주의해야 할 것이다.
2. 응용프로그램(사용자프로그램)의 실행
부팅이 종료되면 사용자컴퓨팅부(200)의 사용자프로그램실행모듈(210)은 패스워드를 확인하는 과정을 거쳐서 사용자의 접속을 허가한다. 예를 들어 접속허가를 받은 사용자가 인터넷에 들어가기 위하여 브라우저를 실행시키면 사용자컴퓨팅부(200)의 사용자OS실행모듈(220)과 사용자프로그램실행모듈(210)은 해당 프로그램의 코드를 보안관리컴퓨팅부(100)에 요청하여 넘겨받아 실행시킨다. 다음으로 사용자가 특정 인터넷사이트에 접속한다면 이 모든 정보는 상호통신유닛(70)을 통하여 중계하게 된다. 예를 들어 해당 사이트가 액티브X와 같은 코드의 실행을 요청한다면 이는 사용자컴퓨팅부(200)로 전달된다(만일 보안관리컴퓨팅부(100)에 실시간 감시프로그램이 있다면 점검 후에 전달하게 될 것이다).
만일 해당 코드가 악성코드이고 특정 프로그램파일을 변조해 숨기 위하여 보조기억장치유닛(30)의 사용자컴퓨팅 저장영역(32)의 특정 파일의 내용을 변경하려 한다면, 보안관리컴퓨팅부(100)의 사용자컴퓨팅부관리모듈(110)은 이를 보안관리컴퓨팅부(100)에 포함된 비디오장치를 통해서 화면에 표시하고 사용자의 확인을 요구한다. 이때 스피커가 부착된 경우라면 경고음의 발생도 가능하다. 따라서 1차적인 대응이 가능하다.
3. 악성코드의 감염
앞서 밝힌 것처럼 백신프로그램은 기본적으로 악성코드의 특정 이미지를 사용하여 검색을 시도하기 때문에 신종으로 등장하는 악성코드에 대하여 취약하다. 또한 사용자컴퓨팅부(200)가 독자적인 입출력장치들을 갖을수도 있으므로 악성코드의 감염은 불가능한 것은 아닐 것이다. 하여간 악성코드에 감염되었다고 가정하자. 이렇게 되면 악성코드는 이미 보조기억장치유닛(30)의 사용자컴퓨팅 저장영역(32)에 있는 사용자컴퓨팅부(200)의 파일시스템 내에 숨어 있고 악의적인 동작을 수행할 것이다. 예를 들어 랜섬웨어라고 가정하면 사용자의 워드파일이나 작업파일들을 암호화하려고 시도할 수 있다.
그러나 본 발명에 따른 컴퓨터에서는 파일이 변경되거나 삭제되면 해당 파일의 백업이미지가 보조기억장치관리모듈(130)에 의해(예를 들어, 보조기억장치관리모듈(130)에 의해) 보조기억장치유닛(30)의 보안관리컴퓨팅 저장영역(31)에 안전하게 저장되므로 기존 컴퓨터에서와 같이 백업이미지까지 모두 삭제되는 경우는 없다. 따라서 사용자가, 해커가 부당한 요구로 감염을 확인하게 되면 바로 보안관리컴퓨팅부(100)에 접속하여 사용자컴퓨팅부(200)의 파일시스템을 감염 전으로 되돌릴 수 있게 된다. 따라서 악성코드의 피해복구가 가능하다. 이때 감염경로로 의심되는 사이트의 접속기록을 확인하여 OS 및 응용프로그램도 해당 시점 이전으로 변경하게 되면 시스템은 완전하게 정상으로 복구된다.
만일 해커가 OS까지 훼손하여 사용자컴퓨팅부(200)가 해커의 명령에 따라 아무런 작업도 수행하지 못하는 상황이라도 대응이 가능하다. 이러한 상황은 악성컴퓨터바이러스가 부트섹터를 지워버리거나 사용자데이타를 지워버리는 경우와 비슷할 수 있다. 이 경우에 사용자가 상황을 인지하게 되면 사용자는 키보드입력을 통하여 보안관리컴퓨팅부(100)의 화면을 띄워 대응할 수 있다. 사용자가 복구를 원하는 경우에는 복구프로그램은 인터럽트레지스터를 이용하여 사용자컴퓨팅부(200)의 중앙처리장치에 인터럽트를 걸어서 지정된 작업을 수행시킬 수 있다. 이때 인터럽트 서비스프로그램은 비휘발성 메모리에 저장되어 있고 접근은 통제가되므로 악성코드가 이를 막을 방법은 없다. 이런 방식으로 사용자컴퓨팅부(200)의 프로세스 리스트를 넘겨받아 프로세스를 검사할 수 있으며 의심스러운 프로세스를 강제로 종료하도록 명령하는 것도 가능하다. 또한 인터럽트레지스터의 해당비트를 셋하였다가 해제하는 방식으로 사용자컴퓨팅부(200)를 강제로 리셋시켜서 부트프로세스를 콜드스타트 모드로 다시 수행토록 하는 것도 가능하다. 이때는 보조기억장치유닛(30)의 보안컴퓨터영역에 보관된 사용자컴퓨팅부(200)의 OS 사본을 제공하여 정상적으로 사용자컴퓨팅부(200)를 복구할 수 있다.
한편 이러한 작업은 보안관리컴퓨팅부(100)의 화면을 통해서 수행되어야 하는데 사용자는 화면전환용 키가 부착된 전용 키보드를 이용하여 사용자컴퓨팅부(200)의 화면으로부터 보안관리컴퓨팅부(100)의 화면으로 전환하여 작업할 수 있다.
4. 파일의 프린트나 외부저장장치의 감시
사용자컴퓨팅부(200)에서 워드프로세서를 구동하고 특정 파일의 인쇄를 시도하였다고 가정하자. 이때 프린터는 보안관리컴퓨팅부(100)에 연결될 뿐이기 때문에 사용자컴퓨팅부(200)는(예를 들어, I/O접속모듈(230)이) 드라이버프로그램이나 시뮬레이션프로그램을 통하여 프린터에 명령을 내릴 수 밖에 없다.
이때 보안관리컴퓨팅부(100)는(예를 들어, I/O관리모듈(120)은) 사용자컴퓨팅부(200)의 요청에 따라서 I/O장치들과의 통신을 중계하게 되는데 통신내용을 모두 기록하거나 사용자가 지정한 시간 간격에 따라서 해당 통신기록을 저장하는 것이 가능하다. 이때 프린터에 출력을 명령한 응용프로그램의 확인도 프로세스정보를 통하여 확인할 수 있다. 또한 사용자컴퓨팅부(200)에서 제공한 주변장치정보를 통하여 해당 장비가 프린터임을 인지하고 있는 경우에는 보다 체계적으로, 출력되는 정보를 중간에서 복사하여 저장하였다가 보안관리컴퓨팅부(100)에 접속하는 보안담당자에게 제공하는 것도 가능할 것이다.
외부저장장치가 접속되는 경우 만일 외부저장장치가 드라이버프로그램이나 셋업프로그램의 수행을 요구하게 되면 해당 프로그램은 모두 사용자컴퓨팅부(200)로 전달되고 수행된다. 따라서 이들의 접속기록이나 통신기록도 모두 관리가 가능하다. 나아가 해당 장비가 외부저장장치임을 보안관리컴퓨팅부(100)가 인지하고 있는 경우에는 보다 체계적으로 입출력되는 파일의 사본이나 접근정보를 저장하였다가 제공하는 것이 가능하다. 또한 프로그램마다의 파일체계를 알 수 있는 경우에는 이를 입력화면과 같은 원시적인 단계로 확인이 가능하므로 특정 단어가 있는 파일의 외부저장을 실시간으로 차단하는 것도 가능하다. 또한 사용자컴퓨팅부(200)의 화면을 저장하였다가 제공할 수도 있어서 강력한 보안효과를 얻을 수 있다.
5. 특정 프로그램의 사용통제
본 발명에 따른 컴퓨터는 특성상 사용자컴퓨팅부(200)에서 실행되는 모든 프로그램을 보안관리컴퓨팅부(100)의 프로그램이 제공하므로 보안관리컴퓨팅부(100)의 사용자컴퓨팅부관리모듈(110)의 설정에 따라 사용자컴퓨팅부(200)에서 실행되는 프로그램을 통제할 수 있다. 예를 들어 많은 기업에서 근무시간중에 인터넷서핑을 회사차원에서 막고 있으나, 회사통신망을 이용하지 않고 자신의 휴대폰을 매개체로 하여 외부망에 직접 접속하면 감시망을 피할 수 있다. 그러나 본 발명의 컴퓨터에서는 브라우저의 사용을 금하거나 브라우저를 예를 들어 9:00-18:00 사이에는 쓰지 못하도록 설정하는 것이 가능하므로 이를 막을 수 있다.
예를 들어 사내 통신망을 통하여 보안관리컴퓨팅부(100)에 브라우저가 통제대상프로그램목록에 올라 있고 통제방법은 회사승인하에만 가능하도록 설정되었다고 하면 작업자는 브라우저의 사용을 보안부서에 요청할 수 있다. 이 것이 승인되면 보안부서는 통신망을 통하여 보안관리컴퓨팅부(100)의 통제방법을 변경하여 10:00-12:00에 사용가능으로 변경해줌으로써 작업자는 브라우저를 사용할 수 있게 된다. 이때 작업자의 사용자컴퓨터 화면을 주기적으로 저장하여 보다 철저한 감시를 할 수도 있을 것이다.
6. 보안관리컴퓨팅부(100)의 접속과 프로그램변경
경우에 따라 보안관리컴퓨팅부(100)에 프로그램을 추가하거나 기존 프로그램을 업데이트할 필요가 있을 수 있다. 이 때는 기존의 컴퓨터처럼 보안상의 취약점이 노출되므로 매우 주의하여야 한다. 그러나 성격상 보안관리컴퓨팅부(100)에서는 제한적인 프로그램만이 실행되므로 소프트웨어의 형상변경이 자주 있는 일은 아닐 것이다. 따라서 소프트웨어의 형상변경은 보안담당자나 보안이 확인된 사이트로부터만 가능하도록 한다면 문제발생을 최소화시킬 수 있다.
예를 들어 회사라면 사내통신망의 특정 어드레스(보안관리자)를 제외하고는 네트워크를 통한 소프트웨어의 형상 변경이 불가능하게 하는 것이 바람직하다. 개인인 경우에는 안전이 확인된 사이트의 접속시에만 소프트웨어의 형상변경이 가능토록 하는 것도 좋은 방법이다.
보안관리컴퓨팅부(100)로의 접속은 사용자컴퓨팅부(200)와는 서로 고립된 패스워드인식 과정을 거치게 되므로 외부에 노출되지만 않는다면 큰 문제는 없다. 그러나 보안을 위하여 하드웨어적인 잠금장치를 추가할 수도 있을 것이다. 즉 사용자컴퓨팅부(200)로는 연결되지 않는 별도의 USB장치 등을 통하여 하드웨어키를 인식한 후 패스워드를 인식하는 소프트웨어가 구동된다면 보다 안전한 접속을 보장할 수 있을 것이다.
한편, 도 1에 나타낸 것과 같은 구조는 기본적인 컴퓨터의 구성요소인 ROM, RAM, I/O장치를 기준으로 설명한 것이다. 그러나 최근에는 컴퓨터의 처리속도를 높이기 위해서 데이타의 이동이 많은 RAM이나 그래픽장치들을 위한 고속의 전용인터페이스를 두거나, 속도가 느린 입출력장치들을 따로 모아서 관리하는 주변기기제어용 허브칩을 두어 설계하는 경우가 매우 흔하다. 이를 기준으로 본 발명에 따른 다른 실시예의 컴퓨터의 구조를 설명하면 도 4와 같다.
도 4에서 보안관리컴퓨팅부(100)는, 접속되는 장치들의 특성을 반영하여 각각 독립적으로 설계된, 복수의 전용 하드웨어 인터페이스(14)들을 갖는 제1중앙처리장치(10); 상기 전용인터페이스(14)들을 이용하여 상기 제1중앙처리장치(10)에 독립적으로 연결되는 제1랜덤액세스메모리(RAM)(15), 그래픽콘트롤러유닛(16), 제1부트ROM(17), 주변기기콘트롤러허브유닛(18), 상호통신유닛(70); 상기 주변기기콘트롤러허브유닛(18)에 연결되는 보조기억장치유닛(30)과 입출력장치유닛(40)으로 구성되고,
사용자컴퓨팅부(200)는, 상기 상호통신유닛(70)과 전용인터페이스1(54)로 연결되고, 제2랜덤액세스메모리(57)와 전용인터페이스2(55)로 연결되고, 제2부트ROM(58)과는 전용 인터페이스3(56)으로 연결되는 제2중앙처리장치(50)를 포함한다.
여기서도 상기 보조기억장치유닛(30)은 도 2에서와 같이, 보안관리컴퓨팅부(100)가 사용하는 부분인 보안관리컴퓨팅 저장영역(31)과 사용자컴퓨팅부(200)가 사용하는 사용자컴퓨팅 저장영역(32)이 물리적 또는 논리적으로 분리되고, 보안관리컴퓨팅 저장영역(31)은 사용자컴퓨팅부(200)에 노출되지 않는 특징이 있고, 상기 사용자컴퓨팅부(200)에 설치되는 사용자OS데이타는 상기 보조기억장치유닛(30)의 사용자컴퓨팅 저장영역(32)에 저장되고 그 사본은 상기 보조기억장치유닛(30)의 보안관리컴퓨팅 저장영역(31)에 저장되며, 상기 상호통신유닛(70)을 통하여 상기 보안관리컴퓨팅부(100)로부터 상기 사용자컴퓨팅부(200)로 전달되어 상기 제2랜덤액세스메모리유닛에 설치되어 실행된다.
흔히 사용되는 인텔의 칩셋을 예로 들면 CPU가 DDR3를 통하여 DRAM에 연결되고 그래픽유닛은 고속의 PCI인터페이스로 연결되며 주변기기를 총괄하여 통제하는 PCH(Platform Controller Hub)와는 DMI(Desktop Management Interface)로 연결된다. HDD와 ODD 등의 보조기억장치유닛은 SATA나 ESATA 등을 통하여 PCH에 연결되고 USB인터페이스들을 통하여 키보드나 마우스, 외장장치들이 연결된다. 부트용 BIOS는 PCH를 통하여 연결되는데 가끔은 LPC(Low Profile Connection)라는 저속통신인터페이스를 통하여 연결되는 경우도 있다.
이때 DDR3인터페이스, PCI인터페이스, DMI 등은 본 발명의 전용인터페이스에 해당 된다. 한편 본 발명의 상호통신유닛(70)은 고속으로 통신해야 하므로 CPU에 직접 연결되는 고속의 PCI인터페이스에 연결되는 것이 바람직할 수 있다.
이상과 같이 몇 가지 예시적 실시예를 도면을 참조하여 설명하였다. 그러나 본 발명의 기술적범위 내지는 권리범위가 상술한 실시예의 내용에 한정되는 것은 아니다. 본 발명의 기술적범위 내지 권리범위는 이하의 특허청구범위의 합리적 해석에 의해 정해지는 것이다.

Claims (24)

  1. 제1어드레스버스, 제1데이타버스, 제1제어버스를 갖는 제1중앙처리장치(CPU); 상기 제1중앙처리장치에 제1어드레스버스, 제1데이타버스, 제1제어버스를 통하여 연결되는 제1메모리유닛; 상기 제1중앙처리장치에 제1어드레스버스, 제1데이타버스, 제1제어버스를 통하여 연결되는 보조기억장치유닛; 상기 제1중앙처리장치에 제1어드레스버스, 제1데이타버스, 제1제어버스를 통하여 연결되는 I/O(입출력)장치유닛을 포함하는 보안관리컴퓨팅부,
    제2어드레스버스, 제2데이타버스, 제2제어버스를 갖는 제2중앙처리장치(CPU); 상기 제2중앙처리장치에 제2어드레스버스, 제2데이타버스, 제2제어버스를 통하여 연결되는 제2메모리유닛을 포함하는 사용자컴퓨팅부,
    상기 보안관리컴퓨팅부의 제1중앙처리장치와 제1어드레스버스, 제1데이타버스, 제1제어버스를 통하여 연결되고, 상기 사용자컴퓨팅부의 제2중앙처리장치와 제2어드레스버스, 제2데이타버스, 제2제어버스를 통하여 연결되어, 제1중앙처리장치와 제2중앙처리장치 사이의 통신을 담당하는 상호통신유닛을 포함하되,
    상기 보안관리컴퓨팅부는 I/O장치의 관리 및 시스템 감시와 복구, 그리고 사용자컴퓨팅부의 감시 및 통제를 수행하고,
    상기 사용자컴퓨팅부는 상기 보안관리컴퓨팅부로부터 고립되어 사용자프로그램과 사용자OS를 실행하고,
    상기 보조기억장치유닛은, 보안관리컴퓨팅부에만 직접 연결되고 사용자컴퓨팅부에 노출되지 않는 보안관리컴퓨팅 저장영역과, 사용자컴퓨팅부가 사용하는 사용자컴퓨팅 저장영역을 포함하여, 사용자컴퓨팅부에서 실행되는 사용자OS 데이타의 원본은 상기 사용자컴퓨팅 저장영역에 저장되고 그 사본은 보안관리컴퓨팅 저장영역에 저장되는 것을 특징으로 하는 컴퓨터.
  2. 복수의 전용 하드웨어 인터페이스를 갖는 제1중앙처리장치; 전용인터페이스를 이용하여 상기 제1중앙처리장치에 독립적으로 연결되는 제1랜덤액세스메모리(RAM), 그래픽콘트롤러유닛, 제1부트ROM, 주변기기콘트롤러허브유닛, 및 상호통신유닛; 상기 주변기기콘트롤러허브유닛에 연결되는 보조기억장치유닛과 입출력장치유닛을 포함하는 보안관리컴퓨팅부,
    상기 상호통신유닛과 제1전용인터페이스로 연결되고 제2랜덤액세스메모리와 제2전용인터페이스로 연결되고 제2부트ROM과는 제3전용인터페이스로 연결되는 제2중앙처리장치를 포함하는 사용자컴퓨팅부를 포함하되,
    상기 보안관리컴퓨팅부는 I/O장치의 관리 및 시스템 감시와 복구, 그리고 사용자컴퓨팅부의 감시 및 통제를 수행하고,
    상기 사용자컴퓨팅부는 상기 보안관리컴퓨팅부로부터 고립되어 사용자프로그램과 사용자OS를 실행하고,
    상기 보조기억장치유닛은, 보안관리컴퓨팅부에만 직접 연결되고 사용자컴퓨팅부에 노출되지 않는 보안관리컴퓨팅 저장영역과 사용자컴퓨팅부가 사용하는 사용자컴퓨팅 저장영역을 포함하여, 사용자컴퓨팅부에서 실행되는 OS 데이타의 원본은 상기 사용자컴퓨팅 저장영역에 저장되고 그 사본은 보안관리컴퓨팅 저장영역에 저장되는 것을 특징으로 하는 컴퓨터.
  3. 제1항 또는 제2항에 있어서, 상호통신유닛은 상기 제1중앙처리장치와 제1어드레스버스, 제1데이타버스, 및 제1제어버스를 통하여 연결되고, 상기 제2중앙처리장치와 제2어드레스버스, 제2데이타버스, 및 제2제어버스를 통하여 연결되는 인터럽트레지스터를 포함하는 컴퓨터.
  4. 제3항에 있어서, 상기 사용자컴퓨팅부는, 상기 인터럽트레지스터를 통하여 상기 보안관리컴퓨팅부로부터 인터럽트신호를 받는 경우, 수행중인 소프트웨어의 리스트와 프로세스정보를 상기 상호통신유닛을 통하여 제공하는 수단을 추가로 포함하는 컴퓨터.
  5. 제3항에 있어서, 상기 사용자컴퓨팅부는, 상기 인터럽트레지스터를 통하여 상기 보안관리컴퓨팅부로부터 인터럽트신호를 받는 경우, 상기 상호통신유닛을 통하여 제공되는 정보를 이용하여, 수행중인 소프트웨어와 프로세스의 수행을 선택적으로 중단시키는 수단을 추가로 포함하는 컴퓨터.
  6. 제1항 또는 제2항에 있어서, 상호통신유닛은 상기 제1중앙처리장치와 제1어드레스버스, 제1데이타버스, 및 제1제어버스를 통하여 연결되고, 상기 제2중앙처리장치와 제2어드레스버스, 제2데이타버스, 및 제2제어버스를 통하여 연결되는 듀얼포트메모리를 포함하는 컴퓨터.
  7. 제1항 또는 제2항에 있어서, 상호통신유닛은 상기 제1중앙처리장치와 제1어드레스버스, 제1데이타버스, 및 제1제어버스를 통하여 연결되고, 상기 제2중앙처리장치와 제2어드레스버스, 제2데이타버스, 및 제2제어버스를 통하여 연결되는 DMA인터페이스를 포함하는 컴퓨터.
  8. 연결된 I/O장치 및 보조기억장치유닛을 관리하는 보안관리컴퓨팅부와; 상기 I/O장치와 상기 보안관리컴퓨팅부 및 상기 사용자컴퓨팅부 사이의 통신을 담당하는 상호통신유닛을 통하여 통신하고, 별도의 CPU와 메모리를 가지고 상기 보안관리컴퓨팅부에 연결되는 사용자컴퓨팅부를 포함하되,
    상기 보안관리컴퓨팅부는 I/O장치의 관리 및 시스템 감시와 복구, 그리고 사용자컴퓨팅부를 감시 및 통제하고,
    상기 사용자컴퓨팅부는 상기 보안관리컴퓨팅부로부터 고립되어 사용자프로그램과 OS를 실행하고,
    상기 보조기억장치유닛은 보안관리컴퓨팅부에만 직접 연결되고 사용자컴퓨팅부에 노출되지 않는 보안관리컴퓨팅 저장영역과 사용자컴퓨팅부가 사용하는 사용자컴퓨팅 저장영역을 포함하여, 사용자컴퓨팅부에서 실행되는 OS 데이타의 원본은 상기 사용자컴퓨팅 저장영역에 저장되고 그 사본은 보안관리컴퓨팅 저장영역에 저장되는 것을 특징으로 하는 컴퓨터.
  9. 제1항, 제2항, 및 제8항 중 어느 한 항에 있어서, 상기 보안관리컴퓨팅부는 상기 보안관리컴퓨팅 저장영역에 저장된 사용자 OS의 사본을 선택적으로 상기 사용자컴퓨팅부의 부팅시에 제공하는 것을 특징으로 하는 컴퓨터.
  10. 제1항, 제2항, 및 제8항 중 어느 한 항에 있어서,
    상기 I/O장치유닛에 결합되는 키보드유닛과 마우스유닛을 추가로 포함하고,
    상기 사용자컴퓨터부는 상기 키보드유닛과 마우스유닛과의 정보 입출력을 상기 보안관리컴퓨터부의 통제하에 상기 상호통신유닛을 통하여 수행하는 컴퓨터.
  11. 제1항, 제2항, 및 제8항 중 어느 한 항에 있어서, 상기 보안관리컴퓨팅부로의 접속은 상기 사용자컴퓨팅부와 서로 독립된 패스워드인식 과정을 거쳐 수행되는 것을 특징으로 하는 컴퓨터.
  12. 제1항, 제2항, 및 제8항 중 어느 한 항에 있어서, 상기 보안관리컴퓨팅부는 상기 사용자컴퓨팅부에서 실행되는 프로그램의 실행시간이나 실행여부를 통제하는 수단을 추가로 포함하는 컴퓨터.
  13. 제1항, 제2항, 및 제8항 중 어느 한 항에 있어서, 상기 보안관리컴퓨팅부는 상기 사용자컴퓨팅부가 상기 상호통신유닛을 통하여 상기 I/O장치유닛에 출력할 정보를 전달하는 경우, 상기 보안관리컴퓨팅부는 출력할 정보의 일부분을 상기 보안관리컴퓨팅영역에 저장하였다가 보안관리컴퓨팅부에 접속한 사용자의 요청이 있을때 이를 제공하는 것을 특징으로 하는 컴퓨터.
  14. 제1항, 제2항, 및 제8항 중 어느 한 항에 있어서,
    상기 보안관리컴퓨팅부에 연결되는 제1비디오메모리; 상기 보안관리컴퓨팅부 및 상기 사용자컴퓨팅부에 연결되는 제2비디오메모리; 상기 보안관리컴퓨팅부에 연결되고, 상기 제1비디오 메모리와 상기 제2비디오메모리의 정보를 선택적으로 모니터 디스플레이화면에 표시하는 비디오그래픽콘트롤러가 포함된 비디오디스플레이유닛을 포함하는 컴퓨터.
  15. 제14항에 있어서, 상기 보안관리컴퓨팅부는 상기 사용자컴퓨팅부로부터 보조기억장치유닛에 저장된 레지스트리파일이나 실행가능한 파일의 변경을 요청받은 경우 상기 비디오디스플레이유닛을 통하여 이를 보여주고 상기 키보드입력을 통하여 확인받는 것을 특징으로 하는 컴퓨터.
  16. 제14항에 있어서, 상기 보안관리컴퓨팅부는 상기 제2비디오메모리의 정보를 상기 보안관리컴퓨팅부사용자가 설정한 방식으로 상기 보조기억장치유닛의 상기 보안관리컴퓨팅영역에 저장하였다가 상기 보안관리컴퓨팅부 사용자의 요청이 있을때 이를 제공하는 것을 특징으로 하는 컴퓨터.
  17. 제14항에 있어서, 상기 보안관리컴퓨터부에서 구동되는 OS는 사용자의 하드웨어적인 입력에 따라 상기 제1비디오메모리의 내용이나 제2비디오메모리의 내용을 선택적으로 디스플레이하도록 비디오디스플레이 유닛을 제어하는 수단을 추가로 포함하는 컴퓨터.
  18. 제17항에 있어서, 상기 하드웨어적인 입력은 키보드입력인 것을 특징으로 하는 컴퓨터.
  19. 청구항 18의 키보드입력을 위한 전용 키를 갖는 키보드.
  20. 제1항, 제2항, 및 제8항 중 어느 한 항에 있어서, 상기 보안관리컴퓨팅부는 상기 사용자컴퓨팅부로부터 상기 보조기억장치유닛의 상기 사용자컴퓨팅영역의 파일시스템변경을 요구받았을 때 기존파일시스템의 복원정보를 상기 보조기억장치유닛의 상기 보안관리컴퓨팅영역에 저장하는 것을 특징으로 하는 컴퓨터.
  21. 상기 청구항 1, 2, 및 8 중 어느 한 항의 컴퓨터에서 실행되는 소프트웨어 프로그램으로서 이 프로그램의 코드 또는 데이타가 상기 보안관리컴퓨팅부에서 실행되는 제1소프트웨어모듈과 상기 사용자컴퓨팅부에서 실행되는 제2소프트웨어모듈로 나누어져 있는 소프트웨어 프로그램이 기록된 컴퓨터판독가능한 기록매체.
  22. 제21항에 있어서, 상기 소프트웨어 프로그램의 제1소프트웨어모듈과 제2소프트웨어모듈은 상기 상호통신유닛을 통하여 정보를 교환하는 것을 특징으로 하는 컴퓨터판독가능한 기록매체.
  23. 제21항에 있어서, 상기 소프트웨어 프로그램의 제1소프트웨어모듈은 소프트웨어의 업데이트를 담당하는 실시간 업데이트 모듈인 것을 특징으로 하는 컴퓨터판독가능한 기록매체.
  24. 제21항에 있어서, 상기 제1소프트웨어모듈은 실시간 감시 모듈인 악성코드감시프로그램인 것을 특징으로 하는 컴퓨터판독가능한 기록매체.
PCT/KR2018/004689 2017-05-10 2018-04-23 고립된 사용자컴퓨팅부를 갖는 컴퓨터 Ceased WO2018208032A1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
EP18797801.0A EP3623978B1 (en) 2017-05-10 2018-04-23 Computer having isolated user computing unit
FIEP18797801.0T FI3623978T3 (fi) 2017-05-10 2018-04-23 Tietokone eristetyllä käyttäjätietokoneyksiköllä
CN201880030602.8A CN110622162B (zh) 2017-05-10 2018-04-23 具有独立用户计算部的计算机
JP2020513473A JP7499175B2 (ja) 2017-05-10 2018-04-23 孤立したユーザーコンピューティング部を有するコンピュータ
US16/611,984 US11386200B2 (en) 2017-05-10 2018-04-23 Computer having isolated user computing unit

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020170057998A KR101997254B1 (ko) 2017-05-10 2017-05-10 고립된 사용자컴퓨팅부를 갖는 컴퓨터
KR10-2017-0057998 2017-05-10

Publications (1)

Publication Number Publication Date
WO2018208032A1 true WO2018208032A1 (ko) 2018-11-15

Family

ID=64104812

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2018/004689 Ceased WO2018208032A1 (ko) 2017-05-10 2018-04-23 고립된 사용자컴퓨팅부를 갖는 컴퓨터

Country Status (7)

Country Link
US (1) US11386200B2 (ko)
EP (1) EP3623978B1 (ko)
JP (1) JP7499175B2 (ko)
KR (1) KR101997254B1 (ko)
CN (1) CN110622162B (ko)
FI (1) FI3623978T3 (ko)
WO (1) WO2018208032A1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102416612B1 (ko) * 2020-03-16 2022-07-05 김덕우 고립된 사용자컴퓨팅부를 갖는 제어시스템 및 그 제어방법
US12499213B2 (en) 2021-02-19 2025-12-16 Deok Woo KIM Computer having transformable architecture and method of transforming virtual computers
JP7774047B2 (ja) * 2021-03-24 2025-11-20 キム、ドクウ 孤立したユーザコンピューティング部を有する制御システムおよびその制御方法
CN115827355B (zh) * 2023-01-10 2023-04-28 深流微智能科技(深圳)有限公司 图形处理器中异常核的检测方法、检测装置和电子设备
JP7507536B1 (ja) 2023-04-25 2024-06-28 パナソニックオートモーティブシステムズ株式会社 監視システム及び制御方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010000299A (ko) * 2000-09-07 2001-01-05 서주석 컴퓨터 보안장치와 그 제어방법
KR20040022439A (ko) * 2001-06-29 2004-03-12 시큐어 시스템스 리미티드 컴퓨터용 보안 시스템 및 그 방법
JP2006318435A (ja) * 2005-05-16 2006-11-24 Koji Akai コンピュ−タのセキュリティ対策システム
KR100774013B1 (ko) * 2004-12-23 2007-11-08 인피니언 테크놀로지스 아게 데이터 처리 장치, 원격 통신 단말 장치 및 데이터 처리장치에 의한 데이터 처리 방법
KR100948386B1 (ko) * 2009-08-10 2010-03-22 주식회사 시큐브 컴퓨터 시스템의 원본 보존 장치 및 방법

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4211927A (en) * 1978-11-24 1980-07-08 Cgr Medical Corporation Computerized tomography system
US7380140B1 (en) * 1998-12-30 2008-05-27 Spyrus, Inc. Providing a protected volume on a data storage device
WO2000057290A1 (en) * 1999-03-19 2000-09-28 Hitachi, Ltd. Information processor
IL152936A0 (en) * 2000-05-19 2003-06-24 Self Repairing Computers Inc A computer with switchable components
EP1195679A1 (en) * 2000-10-06 2002-04-10 Hewlett-Packard Company, A Delaware Corporation Performing operating system recovery from external back-up media in a headless computer entity
JP2003330902A (ja) 2002-05-15 2003-11-21 Hitachi Ltd 大規模集積回路とその制御方法及びエレベータ制御システム
TW591395B (en) * 2003-02-27 2004-06-11 Acer Inc Recovery method of multi-functional operating system and system thereof
JP3941955B2 (ja) 2004-08-31 2007-07-11 株式会社ソニー・コンピュータエンタテインメント 複合装置
US7484247B2 (en) * 2004-08-07 2009-01-27 Allen F Rozman System and method for protecting a computer system from malicious software
KR101098947B1 (ko) * 2009-02-03 2011-12-28 김상범 데이터 보안 장치 및 데이터 보안 방법, 그리고 데이터 보안 방법을 실행하기 위한 프로그램을 저장한 기록매체
JP2011022639A (ja) 2009-07-13 2011-02-03 Ratoc Systems Inc Kvm切替器およびkvm切替方法
US9697375B2 (en) * 2014-06-27 2017-07-04 Microsoft Technology Licensing, Llc Fast data protection using dual file systems
US9578054B1 (en) 2015-08-31 2017-02-21 Newman H-R Computer Design, LLC Hacking-resistant computer design
EP3742324B1 (en) * 2015-09-15 2024-11-27 Gatekeeper Ltd. System and method for securely connecting to a peripheral device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010000299A (ko) * 2000-09-07 2001-01-05 서주석 컴퓨터 보안장치와 그 제어방법
KR20040022439A (ko) * 2001-06-29 2004-03-12 시큐어 시스템스 리미티드 컴퓨터용 보안 시스템 및 그 방법
KR100774013B1 (ko) * 2004-12-23 2007-11-08 인피니언 테크놀로지스 아게 데이터 처리 장치, 원격 통신 단말 장치 및 데이터 처리장치에 의한 데이터 처리 방법
JP2006318435A (ja) * 2005-05-16 2006-11-24 Koji Akai コンピュ−タのセキュリティ対策システム
KR100948386B1 (ko) * 2009-08-10 2010-03-22 주식회사 시큐브 컴퓨터 시스템의 원본 보존 장치 및 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3623978A4 *

Also Published As

Publication number Publication date
KR101997254B1 (ko) 2019-07-08
JP2020520037A (ja) 2020-07-02
CN110622162B (zh) 2024-01-26
US11386200B2 (en) 2022-07-12
EP3623978A1 (en) 2020-03-18
KR20180123815A (ko) 2018-11-20
EP3623978A4 (en) 2020-12-16
US20210141894A1 (en) 2021-05-13
FI3623978T3 (fi) 2024-04-10
JP7499175B2 (ja) 2024-06-13
EP3623978B1 (en) 2024-03-20
CN110622162A (zh) 2019-12-27

Similar Documents

Publication Publication Date Title
RU2397537C2 (ru) Управление безопасностью компьютера, например, в виртуальной машине или реальной операционной системе
WO2018208032A1 (ko) 고립된 사용자컴퓨팅부를 갖는 컴퓨터
US10474819B2 (en) Methods and systems for maintaining a sandbox for use in malware detection
WO2019192344A1 (zh) 基于信任区的操作系统和方法
WO2018212474A1 (ko) 독립된 복원영역을 갖는 보조기억장치 및 이를 적용한 기기
US20100005531A1 (en) Isolated multiplexed multi-dimensional processing in a virtual processing space having virus, spyware, and hacker protection features
CN111353162B (zh) 基于TrustZone分核异步执行的主动可信计算方法及系统
JP2011503689A (ja) 分離型の読み取り専用領域及び読み書き領域を有するコンピュータ記憶デバイス、リムーバブル媒体コンポーネント、システム管理インタフェース、及び、ネットワークインタフェース
WO2015102220A1 (ko) 보안저장장치를 구비하는 저장 시스템 및 그 관리 방법
CN112818327A (zh) 基于TrustZone的用户级代码和数据安全可信保护方法及装置
WO2007009328A1 (en) A virtual machine system supporting trusted computing and a trusted computing method implemented on it
WO2014200201A1 (ko) 시스템 보호를 위한 파일 보안용 관리장치와 관리방법
US8572742B1 (en) Detecting and repairing master boot record infections
AU2005248713A1 (en) Isolated multiplexed multi-dimensional processing in a virtual processing space having virus, spyware, and hacker protection features
KR101013419B1 (ko) 시스템 보호 장치 및 방법
WO2019093762A1 (ko) 전자 장치 및 그 제어 방법
CN117390623A (zh) 一种勒索病毒加密文件恢复方法、装置、设备和介质
WO2007022687A1 (en) System and method for security control of operating system
Zhao et al. Vrfps: A novel virtual machine-based real-time file protection system
JP7761329B1 (ja) 情報処理装置、情報処理方法、及び、プログラム
JP7763552B1 (ja) 情報処理装置、情報処理方法、及び、プログラム
JP7761330B1 (ja) 情報処理装置、情報処理方法、及び、プログラム
Chen et al. DScope: To Reliably and Securely Acquire Live Data from Kernel-Compromised ARM Devices
JP2024175588A (ja) コンピュータプログラム、プログラム保護装置及びプログラム保護方法
WO2020246711A1 (ko) 보조기억장치에서의 파일시스템 보호장치 및 방법

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18797801

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2020513473

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2018797801

Country of ref document: EP

Effective date: 20191210