KR100637350B1 - Method for certifying execution of application, Recordable medium saved above method and External storage - Google Patents
Method for certifying execution of application, Recordable medium saved above method and External storage Download PDFInfo
- Publication number
- KR100637350B1 KR100637350B1 KR1020050009639A KR20050009639A KR100637350B1 KR 100637350 B1 KR100637350 B1 KR 100637350B1 KR 1020050009639 A KR1020050009639 A KR 1020050009639A KR 20050009639 A KR20050009639 A KR 20050009639A KR 100637350 B1 KR100637350 B1 KR 100637350B1
- Authority
- KR
- South Korea
- Prior art keywords
- application
- authentication
- execution
- authentication key
- external storage
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 24
- 238000005516 engineering process Methods 0.000 abstract description 4
- 230000006870 function Effects 0.000 description 7
- 230000015654 memory Effects 0.000 description 5
- 230000001186 cumulative effect Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 2
- 238000009434 installation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Classifications
-
- A—HUMAN NECESSITIES
- A42—HEADWEAR
- A42B—HATS; HEAD COVERINGS
- A42B1/00—Hats; Caps; Hoods
- A42B1/18—Coverings for protecting hats, caps or hoods against dust, rain, or sunshine
-
- A—HUMAN NECESSITIES
- A42—HEADWEAR
- A42B—HATS; HEAD COVERINGS
- A42B1/00—Hats; Caps; Hoods
- A42B1/206—Transformable, convertible or reversible hats
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61F—FILTERS IMPLANTABLE INTO BLOOD VESSELS; PROSTHESES; DEVICES PROVIDING PATENCY TO, OR PREVENTING COLLAPSING OF, TUBULAR STRUCTURES OF THE BODY, e.g. STENTS; ORTHOPAEDIC, NURSING OR CONTRACEPTIVE DEVICES; FOMENTATION; TREATMENT OR PROTECTION OF EYES OR EARS; BANDAGES, DRESSINGS OR ABSORBENT PADS; FIRST-AID KITS
- A61F9/00—Methods or devices for treatment of the eyes; Devices for putting-in contact lenses; Devices to correct squinting; Apparatus to guide the blind; Protective devices for the eyes, carried on the body or in the hand
- A61F9/04—Eye-masks ; Devices to be worn on the face, not intended for looking through; Eye-pads for sunbathing
- A61F9/045—Eye-shades or visors; Shields beside, between or below the eyes
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F16—ENGINEERING ELEMENTS AND UNITS; GENERAL MEASURES FOR PRODUCING AND MAINTAINING EFFECTIVE FUNCTIONING OF MACHINES OR INSTALLATIONS; THERMAL INSULATION IN GENERAL
- F16B—DEVICES FOR FASTENING OR SECURING CONSTRUCTIONAL ELEMENTS OR MACHINE PARTS TOGETHER, e.g. NAILS, BOLTS, CIRCLIPS, CLAMPS, CLIPS OR WEDGES; JOINTS OR JOINTING
- F16B39/00—Locking of screws, bolts or nuts
Abstract
본 발명은 외장형 저장 장치에 저장되는 소프트웨어의 불법 복제 및 부정 사용을 방지할 수 있도록 하는 인증 기술에 관한 것이다.The present invention relates to an authentication technology that can prevent illegal copying and illegal use of software stored in an external storage device.
본 발명에 따른 외장형 저장 장치에 저장된 응용 프로그램의 실행 인증 방법은 응용 프로그램이 외장형 저장 장치로부터 호스트로 로딩되어 실행되게 되면, 응용 프로그램은 외장형 저장 장치의 저장 수단 영역 중 파일 할당 정보가 기록된 시스템 영역에 포함된 인증키가 정당한지를 확인한다. 인증키가 정당하면 응용 프로그램은 정상적으로 실행을 개시하며, 그렇지 않으면 에러 발생 처리를 수행한다.In the execution authentication method of an application stored in an external storage device according to the present invention, when an application is loaded and executed from an external storage device to a host, the application program is a system area in which file allocation information is recorded in the storage means area of the external storage device. Check if the authentication key included in the file is valid. If the authentication key is valid, the application program starts to run normally. Otherwise, an error generation process is performed.
본 발명의 이 같은 양상에 따라 본 발명에 따른 외장형 저장 장치에 저장되는 응용 프로그램은 호스트로 로딩되어 실행되는 경우에 외장형 저장 장치의 저장 수단 영역 중 사용자 액세스가 불가능한 시스템 영역에 기록된 인증키를 통해 인증이 이루어진 후 실행되므로, 복제된 응용 프로그램의 경우 적발이 가능하다.According to this aspect of the present invention, an application program stored in an external storage device according to the present invention may be loaded through a host through an authentication key recorded in a system area in which a user cannot access one of the storage means areas of the external storage device. Since the authentication is executed, the cloned application can be caught.
외장형 저장 장치, 응용 프로그램, 인증.External storage, applications, authentication.
Description
도 1은 본 발명에 따른 외장형 저장 장치 구성을 개략적으로 도시한 블록도.1 is a block diagram schematically showing the configuration of an external storage device according to the present invention;
도 2는 도 1의 외장형 저장 장치에 저장된 응용 프로그램의 실행 인증 방법을 도시한 흐름도.FIG. 2 is a flowchart illustrating a method for authenticating execution of an application stored in the external storage device of FIG. 1. FIG.
<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for the main parts of the drawings>
100 : 인터페이스 수단 200 : 저장 수단100: interface means 200: storage means
300 : 제어 수단300 control means
본 발명은 외장형 저장 장치에 저장되는 소프트웨어의 불법 복제 및 부정 사용을 방지할 수 있도록 하는 인증 기술에 관한 것이다.The present invention relates to an authentication technology that can prevent illegal copying and illegal use of software stored in an external storage device.
종래 외장형 하드디스크를 비롯하여 여러가지 형태의 외장형 저장 장치가 사용되고 있으며, 또한 최근에는 플래시 디스크와 같은 플래시 메모리를 사용한 외장형 저장 장치가 소형이면서 비교적 저가인 장점으로 널리 사용되고 있는 추세이다. 이 같은 외장형 저장 장치에는 예를 들어 한글 97이나 아웃룩(outlook)과 같은 소프트웨어, 즉 응용 프로그램을 저장하여 PC에 연결되어 사용자의 PC 마우스 조작 등에 의해 PC의 램(RAM)으로 복사되어 실행된다.Conventionally, various types of external storage devices have been used, including external hard disks, and in recent years, external storage devices using flash memories such as flash disks have been widely used due to their small size and relatively low cost. For example, the external storage device may store software such as Hangul 97 or Outlook, that is, an application program, be connected to a PC, and copied and executed by a user's PC mouse.
외장형 저장 장치가 저작권을 가지며 특히 고가의 응용 프로그램들을 저장하고 있는 경우에 저장된 응용 프로그램들이 무단 복제되거나 부정 사용되는 것을 방지할 필요가 있는데, 이에 대한 방안으로 종래에는 패스워드 방식에 대한 기술이 제시되어 있다. 이는 외장형 저장 장치에 저장된 응용 프로그램 실행시 사용자에게 패스워드 입력을 요구하는 것으로, 사용자의 번거로운 작업을 요구할 뿐만 아니라 패스워드를 기억해야 하는 불편함이 있다. 또한 누군가에게 패스워드가 노출된다면, 외장형 저장 장치 내의 응용 프로그램은 용이하게 복제될 수 있다.When an external storage device is copyrighted and particularly stores expensive applications, there is a need to prevent unauthorized applications from being copied or used illegally. As a solution, a password technology has been proposed in the related art. . This requires a user to enter a password when executing an application program stored in an external storage device, which not only requires a user's cumbersome work but also has a inconvenience of remembering a password. Also, if a password is exposed to someone, the application in the external storage device can be easily duplicated.
본 발명은 이러한 상황에서 도출된 것으로, 저장된 소프트웨어의 무단 복제 및 부정 사용을 방지할 수 있도록 하는 기술을 제공하는 것을 목적으로 한다.SUMMARY OF THE INVENTION The present invention is derived from this situation and aims to provide a technique that can prevent unauthorized copying and unauthorized use of stored software.
상술한 목적을 달성하기 위한 본 발명의 일 양상에 따른 응용 프로그램의 실행 인증 방법은 응용 프로그램이 외장형 저장 장치로부터 호스트로 로딩되어 실행되게 되면, 응용 프로그램은 외장형 저장 장치의 저장 수단 영역 중 시스템 영역에 포함된 인증키가 정당한지를 확인한다. 인증키가 정당하면 응용 프로그램은 정상적으로 실행을 개시하며, 그렇지 않으면 에러 발생 처리를 수행한다.The execution authentication method of the application program according to an aspect of the present invention for achieving the above object is that when the application is loaded and executed from the external storage device to the host, the application program in the system area of the storage means area of the external storage device; Check that the included authentication key is justified. If the authentication key is valid, the application program starts to run normally. Otherwise, an error generation process is performed.
본 발명의 이 같은 양상에 따라 본 발명에 따른 외장형 저장 장치에 저장되 는 응용 프로그램은 호스트로 로딩되어 실행되는 경우에 외장형 저장 장치의 저장 수단 영역 중 사용자 액세스가 불가능한 시스템 영역에 포함된 인증키를 통해 인증이 이루어진 후 실행되므로, 복제된 응용 프로그램의 경우 적발이 가능하다. 또한 인증키는 사용자에게 노출되지 않는 시스템 영역에 저장되므로, 종래의 패스워드와 같이 유출의 염려가 없다.According to this aspect of the present invention, the application program stored in the external storage device according to the present invention uses an authentication key included in a system area in which a user cannot access the storage means area of the external storage device when loaded and executed by a host. After authentication is executed, the cloned application can be caught. In addition, since the authentication key is stored in the system area that is not exposed to the user, there is no fear of leakage like the conventional password.
본 발명의 추가적인 양상에 따라 본 발명에 따른 응용 프로그램은 이벤트(예를 들어 주기적인 시간)에 응답하여 외장형 저장 장치의 저장 수단 영역 중 시스템 영역에 기록된 인증키가 정당한지를 확인한다.According to a further aspect of the present invention, the application program according to the present invention checks whether the authentication key recorded in the system area of the storage means area of the external storage device is valid in response to an event (for example, a periodic time).
본 발명의 이 같은 양상에 따라 본 발명에 따른 응용 프로그램은 외장형 저장 장치가 호스트(PC)에 접속되어 호스트로 로딩되어 실행된 후에, 분리되어 또 다른 PC에 접속되어 그 PC에서 응용 프로그램이 실행되는 것을 차단할 수 있다. 즉, 외장형 저장 장치가 호스트에 계속적으로 연결되어 있어야만 응용 프로그램을 실행할 수 있다.According to this aspect of the present invention, after the external storage device is connected to a host (PC) and loaded and executed by the host, the application program is detached and connected to another PC to execute the application program on the PC. Can be blocked. That is, the external storage device must be continuously connected to the host to run the application.
전술한, 그리고 추가적인 본 발명의 양상들은 첨부된 도면을 참조하여 설명되는 바람직한 실시예들을 통하여 더욱 명백해질 것이다. 이하에서는 본 발명을 이러한 실시예를 통해 당업자가 용이하게 이해하고 재현할 수 있도록 상세히 설명하기로 한다.The foregoing and further aspects of the present invention will become more apparent through the preferred embodiments described with reference to the accompanying drawings. Hereinafter, the present invention will be described in detail to enable those skilled in the art to easily understand and reproduce the present invention.
도 1은 본 발명의 바람직한 실시예에 따른 외장형 저장 장치 구성을 개략적으로 도시한 블록도이다. 도시된 바와 같이, 외장형 저장 장치는 인터페이스 수단(100)과, 저장 수단(200)과, 제어 수단(300)을 포함한다. 인터페이스 수단(100)은 이미 알려진 바와 같이 외장형 저장 장치에 널리 사용되고 있는 USB(Universal Serial Bus) 방식의 인터페이스일 수 있다. USB 방식 자체는 공지된 기술이므로 상세한 설명은 생략한다.1 is a block diagram schematically illustrating an external storage device according to a preferred embodiment of the present invention. As shown, the external storage device includes an interface means 100, a storage means 200, and a control means 300. The interface means 100 may be a universal serial bus (USB) type interface that is widely used in an external storage device, as is known. Since the USB method itself is a known technology, a detailed description thereof will be omitted.
외장형 저장 장치는 인터페이스 수단(100)을 통해 호스트(PC)에 접속되고, PC는 외장형 저장 장치의 연결을 검출한다. PC에는 기본적으로 외장형 저장 장치를 구동시키기 위한 구동 드라이버가 설치되어 있어야 하며, 이 같은 구동 드라이버 설치 사항은 주지된 바와 같으므로 상세한 설명은 생략한다.The external storage device is connected to the host PC via the interface means 100, and the PC detects the connection of the external storage device. Basically, a driver for driving an external storage device must be installed in a PC, and the details of the driver installation are well known, and thus a detailed description thereof will be omitted.
저장 수단(200)은 통상 플래시 메모리나 하드디스크일 수 있으며, 도시된 바와 같이 파일 할당 정보가 기록된 시스템 영역과 데이타 영역을 포함한다. 데이타 영역은 사용자에 의해 액세스 가능한 사용자 영역으로 구분되며, 적어도 하나 이상의 응용 프로그램 파일을 저장한다.The storage means 200 may be a conventional flash memory or a hard disk, and includes a system area and a data area in which file allocation information is recorded, as shown. The data area is divided into user areas accessible by the user, and stores at least one application file.
그리고 시스템 영역은 바람직하게 통상 디스크 상의 0번 섹터(PC의 하드디스크에서 지칭되는 부트 섹터)가 될 수 있으며, 파일 할당 테이블(FAT : File Allocation Table) 정보를 기록하고 있다. 즉, 시스템 영역은 파일 시스템 포맷 형식(file system format type), 볼륨 라벨(volume label), 볼륨 시리얼번호(volume serial number), 전체 메모리 용량, 사용 가능 메모리 용량, 파일들이 저장되어 있는 위치, 파일의 크기 , 속성들에 관한 정보를 기록하고 있다. 이 같은 시스템 영역은 비사용자 영역으로 구분된다.The system area may preferably be sector 0 on the disk (the boot sector referred to in the PC's hard disk), and records file allocation table (FAT) information. That is, the system area includes the file system format type, the volume label, the volume serial number, the total memory capacity, the available memory capacity, the location where the files are stored, and the location of the file. Records information about size and attributes. This system area is divided into non-user areas.
응용 프로그램은 데이타 영역 중 여러개의 클러스터들에 나뉘어져 기록되게 되는데, FAT가 이러한 각 클러스터의 어드레스 정보를 가지고 있으므로 하나의 완 전한 응용 프로그램을 제공하는 것이 가능하다. 이 같은 FAT는 하드디스크, 플래시 메모리와 같은 각 저장 수단마다 고정된 고유한 정보 영역이며 고유한 정보를 지니고 있으므로, 복제하여 이용하는 것이 불가능하다. 즉, 시스템 영역은 일반적인 액세스 접근이 불가능한 영역이며, 이에 따라 읽기/쓰기가 금지되어 있는 영역이다. The application program is divided into several clusters of the data area and recorded. Since the FAT has address information of each cluster, it is possible to provide one complete application program. Such a FAT is a unique information area fixed for each storage means such as a hard disk and a flash memory and has unique information. Therefore, the FAT cannot be copied and used. That is, the system area is an area where general access cannot be accessed, and therefore, a read / write area is prohibited.
본 발명에 따라 시스템 영역에는 인증키가 저장되는데, 바람직하게 암호화되어 예비(reserved) 영역에 저장되어 있을 수 있다. 이 인증키는 후술하는 바에 따라 저장 수단(200)에 저장된 응용 프로그램이 PC로 로딩되어 실행되는 경우에, 응용 프로그램이 정당한지를 인증하기 위한 정보로 활용된다.According to the present invention, the authentication key is stored in the system area, preferably, it may be encrypted and stored in the reserved area. This authentication key is used as information for authenticating whether the application program is legitimate when the application program stored in the storage means 200 is loaded into the PC and executed as described below.
한편 PC에서 외장형 저장 장치를 구동시킬 수 있도록 하기 위한 구동 드라이버는 PC의 운영체제에 저장 수단(200)의 데이타 영역에 대한 정보를 제공하게 된다. 이에 따라 PC의 윈도우 탐색기(OS가 Window의 경우)는 새로이 할당된 하위 드라이브(예를 들어 F 드라이브)의 하위 디렉토리에 사용자가 액세스할 수 있는 저장 수단(200)의 데이타 영역에 저장된 응용 프로그램 파일에 대한 정보를 제공한다. On the other hand, the drive driver for driving the external storage device in the PC to provide information on the data area of the storage means 200 to the operating system of the PC. As a result, the Windows Explorer on the PC (if the OS is Window) is stored in an application file stored in the data area of the storage means 200 that the user has access to a subdirectory of the newly assigned subdrive (e.g., F drive). Provide information.
PC 사용자가 마우스 조작을 통해 F 드라이브의 하위 디렉토리에 위치한 저장 수단(200)에 저장된 응용 프로그램을 실행시키면, 제어 수단(300)은 시스템 영역을 참조하여 데이타 영역 중 해당 응용 프로그램이 위치한 어드레스에 액세스하여 응용 프로그램을 읽어들인다. 제어 수단(300)은 읽어들인 응용 프로그램을 인터페이스 수단(100)을 통해 PC로 출력하며, PC에서는 그 응용 프로그램을 램(RAM)으로 로딩시켜 실행시키게 된다.When the PC user executes an application stored in the storage means 200 located in a subdirectory of the F drive through a mouse operation, the control means 300 accesses the address where the application is located in the data area by referring to the system area. Load the application. The control means 300 outputs the read application program to the PC through the interface means 100, and the PC loads the application program into RAM and executes it.
이하 도 2를 참조하여 PC의 램(RAM)으로 로딩되어 실행되는 응용 프로그램의 실행 인증 방법에 대해 설명하기로 한다. 램(RAM)으로 로딩되어 실행되는 응용 프로그램은 최초 외장형 저장 장치의 저장 수단 중 시스템 영역의 특정 부분에 기록된 인증키를 확인하고(단계 S201), 자신이 바이너리 코드로 가지고 있는 값과 동일한지를 비교한다(단계 S203). 동일하다면, 응용 프로그램은 정상적으로 실행을 개시하고(단계 S205), 그렇지 않으면 에러 처리를 수행한다(단계 S220).Hereinafter, a method of authenticating execution of an application program loaded and executed into RAM of a PC will be described with reference to FIG. 2. The application program loaded and executed in the RAM checks the authentication key recorded in a specific part of the system area among the storage means of the first external storage device (step S201), and compares whether it is equal to the value it has in binary code. (Step S203). If the same, the application program starts execution normally (step S205), otherwise performs error processing (step S220).
본 발명의 이 같은 양상에 따라 본 발명에 따른 외장형 저장 장치에 저장되는 응용 프로그램은 호스트로 로딩되어 실행되는 경우에 외장형 저장 장치의 저장 수단 영역 중 시스템 영역에 기록된 인증키를 통해 인증이 이루어진 후 실행되므로, 복제된 응용 프로그램의 경우 시스템 영역은 그 자체 복제될 수 없으므로 적발이 가능하다.According to this aspect of the present invention, after the application program stored in the external storage device according to the present invention is authenticated through an authentication key recorded in the system area of the storage means area of the external storage device when it is loaded and executed by a host, Since it is executed, in the case of a cloned application, the system area cannot be cloned by itself and thus can be caught.
본 발명의 추가적인 양상에 따라 단계 S205에 의해 실행이 개시되는 응용 프로그램은 이벤트가 발생되는지를 체크한다(단계 S207). 여기서 이벤트는 예를 들어 타이머 이벤트일 수 있다. 즉, 타이머에서 예를 들어 설정된 시간 간격인 60초마다 펄스 신호를 출력하게 되면, 응용 프로그램은 그에 따라 외장형 저장 장치의 저장 수단 중 시스템 영역에 포함된 인증키를 확인하고(단계 S209), 자신이 바이너리 코드로 가지고 있는 값과 동일한지를 비교한다(단계 S211). 동일하다면, 응용 프로그램은 실행을 계속 유지하고(단계 S213), 그렇지 않으면 에러 처리를 수행한다(단계 S220).According to a further aspect of the present invention, the application program whose execution is started by step S205 checks whether an event has occurred (step S207). Here, the event may be, for example, a timer event. That is, when the timer outputs a pulse signal every 60 seconds, for example, a set time interval, the application program accordingly checks the authentication key included in the system area among the storage means of the external storage device (step S209), It is compared whether or not it has the same value as the binary code (step S211). If it is the same, the application program keeps executing (step S213), otherwise performs error processing (step S220).
또한 도시하지는 않았지만 응용 프로그램이 단계 S201 및 단계 S209 실행시 외장형 저장 장치가 PC에 연결되어 있지 않다면, 응용 프로그램은 저장 수단 중 시스템 영역에 포함된 인증키를 확인조차 할 수 없으므로 단계 S220에 따른 에러 처리를 수행하게 된다.Also, although not shown, if the external storage device is not connected to the PC when the application executes steps S201 and S209, the application cannot even check the authentication key included in the system area among the storage means. Will be performed.
본 발명의 이 같은 양상에 따라 본 발명에 따른 응용 프로그램은 외장형 저장 장치가 호스트(PC)에 접속되어 호스트로 로딩되어 실행된 후에, 분리되어 또 다른 PC에 접속되어 그 PC에서 응용 프로그램이 실행되는 것을 차단할 수 있다. 즉, 외장형 저장 장치가 호스트에 계속적으로 연결되어 있어야만 응용 프로그램을 실행할 수 있다.According to this aspect of the present invention, after the external storage device is connected to a host (PC) and loaded and executed by the host, the application program is detached and connected to another PC to execute the application program on the PC. Can be blocked. That is, the external storage device must be continuously connected to the host to run the application.
본 발명의 추가적인 양상에 따라 인증키는 응용 프로그램을 인증하기 위한 인증값에 추가하여 응용 프로그램의 실행을 제한하기 위한 사용 가능 기한 혹은 횟수 정보를 더 포함한다. 이러한 사용 가능 기한 혹은 횟수 제한을 두는 이유는, 예를 들어 10회만 사용 가능한 소프트웨어 상품, 구입 후 2개월까지만 사용할 수 있는 소프트웨어 상품, 1일 소프트웨어 상품 등과 같은 다양한 소프트웨어 상품들의 요구에 따라 저가 혹은 종량제 상품을 서비스하기 위함이다.According to an additional aspect of the present invention, the authentication key further includes the available expiration date or the number of times for limiting the execution of the application in addition to the authentication value for authenticating the application. The reason for such a limit or the number of times of use is that a low-cost or pay-as-you-go product is required depending on the needs of various software products, for example, software products that can only be used 10 times, software products that can be used for up to 2 months after purchase, and daily software products. To service them.
응용 프로그램은 1차적으로 인증키의 인증값을 확인하고 정당하면, 즉 인증값이 만족되면 2차적으로 사용 가능 기한 혹은 사용 횟수를 현재 날짜 혹은 현재까지의 응용 프로그램 누적 사용 횟수와 비교하여 현재 날짜가 초과하였는지 사용 횟수가 초과하였는지를 확인한다. 여기서 누적 사용 횟수의 경우는 매 실행시마다 인증키에 그 정보를 누적시켜 관리할 수 있다. 2차 확인 결과 또한 만족되면 응용 프로그램은 실행을 개시하거나 실행 상태를 유지하게 된다.The application first checks the authentication value of the authentication key and, if it is justified, that is, if the authentication value is satisfied, the application date is compared with the current date or the cumulative number of application usages up to the present date. Check if it has been exceeded or if the number of uses has been exceeded. In this case, the cumulative number of times can be managed by accumulating the information in the authentication key at each execution. If the secondary check also satisfies, the application starts or remains running.
또 다른 양상에 따라 인증키는 응용 프로그램을 인증하기 위한 인증값에 추가하여 응용 프로그램의 실행을 제한하기 위한 최대 사용 시간 정보를 더 포함한다. 여기서도 마찬가지로 응용 프로그램의 누적 사용 시간 정보는 인증키에 계속적으로 누적시켜 관리할 수 있다. 응용 프로그램은 1차적으로 인증키의 인증값을 확인하고 정당하면, 2차적으로 누적 사용 시간이 최대 사용 시간에 도달하거나 초과하였는지를 확인한다. 2차 확인 결과 누적 사용 시간이 최대 사용 시간 미만이면 응용 프로그램은 실행을 개시하거나 실행 상태를 유지하게 된다.According to another aspect, the authentication key further includes maximum usage time information for limiting the execution of the application in addition to the authentication value for authenticating the application. Similarly, cumulative usage time information of the application can be continuously accumulated and managed in the authentication key. The application first checks the authentication value of the authentication key and, if legitimately, secondly checks whether the cumulative usage time has reached or exceeded the maximum usage time. As a result of the secondary check, if the accumulated usage time is less than the maximum usage time, the application program starts or remains running.
본 발명의 이 같은 양상에 따라 본 발명에 따른 응용 프로그램은 특히 고가의 경우에 상술한 바와 같은 다양한 소프트웨어 상품에 따라 저가에 서비스될 수 있다.According to this aspect of the present invention, the application program according to the present invention can be serviced at a low price according to various software products as described above, especially in case of high price.
본 발명의 추가적인 양상에 따라 인증키는 응용 프로그램을 인증하기 위한 인증값에 추가하여 응용 프로그램 내의 특정 기능 사용권 정보를 더 포함한다. 그리고 인증키가 정당하여 응용 프로그램 실행이 개시되면, 응용 프로그램은 인증키에 포함된 특정 기능 사용권 정보의 유무에 따라 해당 기능을 제공한다. 이 같은 특정 기능은 예를 들어 문서 프로그램의 인쇄 기능이 될 수 있다.According to an additional aspect of the present invention, the authentication key further includes specific function license information in the application in addition to the authentication value for authenticating the application. If the authentication key is justified and the execution of the application program is started, the application program provides the corresponding function according to the presence or absence of specific function license information included in the authentication key. This particular function can be, for example, the printing function of a document program.
본 발명의 이 같은 양상에 따라 본 발명에 따른 응용 프로그램은 정당한 권한을 가진 자만이 응용 프로그램에서 제공하는 특정 기능을 이용할 수 있도록 한다.According to this aspect of the present invention, the application program according to the present invention allows only a person having a right to use a specific function provided by the application program.
한편 외장형 저장 장치의 저장 수단에 저장되는 응용 프로그램 및 인증키는 PC를 통해 인터넷과 같은 네트워크에 연결되어 응용 프로그램을 제공하는 서비스 사업자로부터 다운로드받아 설치될 수 있다. 또한 사용자는 PC를 조작하여 외장형 저장 장치에 저장된 응용 프로그램을 위한 전용 컨텐츠(예를 들어 동영상, 오디오, 학습자료 파일 등)를 추가적으로 네트워크를 통해 컨텐츠 서버로부터 다운로드할 수 있는데, 이러한 경우 사용자가 컨텐츠 서버에서 제공하는 다수의 컨텐츠들 중 특정 컨텐츠를 선택하면 컨텐츠 서버는 해당 응용 프로그램의 인증키를 요구한다.Meanwhile, the application program and the authentication key stored in the storage means of the external storage device may be downloaded and installed from a service provider that provides an application program by connecting to a network such as the Internet through a PC. The user can also manipulate the PC to additionally download dedicated content (e.g. video, audio, learning material files, etc.) for applications stored on an external storage device from the content server via the network. If a specific content is selected from among a plurality of contents provided by the content server, the content server requests an authentication key of the corresponding application.
PC는 인터페이스 수단(100)을 통해 물리적으로 연결되어 있는 외장형 저장 장치에 인증키를 요구하고, 제어 수단(300)은 저장 수단의 시스템 영역을 액세스하여 해당 인증키를 PC로 전송한다. PC는 수신한 인증키를 네트워크를 통해 컨텐츠 서버로 전송하게 되고, 컨텐츠 서버는 수신하게 되는 인증키를 컨텐츠에 삽입하여 컨텐츠 전체를 암호화한 뒤 PC로 전송한다. PC에서 수신한 인증키로 암호화된 컨텐츠는 사용자 선택에 따라 내부 로컬 하드드라이브에 저장되거나 혹은 외장형 저장 장치의 저장 수단(200)에 저장되게 된다.The PC requests an authentication key from an external storage device that is physically connected through the interface means 100, and the control means 300 accesses the system area of the storage means and transmits the corresponding authentication key to the PC. The PC transmits the received authentication key to the content server through the network. The content server inserts the received authentication key into the content, encrypts the entire content, and transmits the content to the PC. The content encrypted by the authentication key received from the PC is stored in the internal local hard drive or stored in the storage means 200 of the external storage device according to the user's selection.
로컬 하드드라이브나 외장형 저장 장치의 저장 수단(200)에 다운로드 받은 컨텐츠는 인증키로 암호화되어 있어서 일반 소프트웨어로 사용(재생)이 불가능하고, 외장형 저장 장치에 담긴 전용 소프트웨어로만 사용할 수 있게 된다. 즉, 외장형 저장 장치, 소프트웨어(응용 프로그램), 컨텐츠 각각이 동일한 인증키를 가져야 컨텐츠를 사용할 수 있게 된다.The content downloaded to the
상술한 바와 같이 본 발명에 따른 외장형 저장 장치에 저장되는 응용 프로그램은 호스트로 로딩되어 실행되는 경우에 외장형 저장 장치의 저장 수단 영역 중 사용자 액세스가 불가능한 시스템 영역에 기록된 인증키를 통해 인증이 이루어진 후 실행되므로, 복제된 응용 프로그램의 경우 적발이 가능하다. 또한 인증키는 사용자에게 노출되지 않는 영역에 저장되므로, 종래의 패스워드와 같이 유출의 염려가 없다.As described above, the application program stored in the external storage device according to the present invention is authenticated through an authentication key recorded in a system area in which the user cannot access the storage means area of the external storage device when loaded and executed by a host. Since it is executed, it is possible to detect a cloned application. In addition, since the authentication key is stored in an area which is not exposed to the user, there is no fear of leakage like the conventional password.
또한 본 발명에 따른 응용 프로그램은 외장형 저장 장치가 호스트(PC)에 접속되어 호스트로 로딩되어 실행된 후에, 분리되어 또 다른 PC에 접속되어 그 PC에서 응용 프로그램이 실행되는 것을 차단할 수 있다. 즉, 외장형 저장 장치가 호스트에 계속적으로 연결되어 있어야만 응용 프로그램을 실행할 수 있도록 함에 의해 저작권을 가지는 응용 프로그램이 공유되는 것을 방지할 수 있다.In addition, the application program according to the present invention may be connected to a host (PC), loaded and executed by the host, and then separated and connected to another PC to block execution of the application program on the PC. That is, the external storage device must be continuously connected to the host so that the application can be executed, thereby preventing the copyrighted application from being shared.
또한 본 발명에 따른 응용 프로그램은 특히 고가의 경우에 사용 기한 혹은 사용 횟수와 같은 제한을 두어 저가에 서비스될 수 있도록 한다.In addition, the application program according to the present invention can be serviced at a low price by placing restrictions such as the expiration date or the number of times of use, especially in the case of high price.
또한 본 발명에 따른 응용 프로그램은 정당한 권한을 가진 자만이 응용 프로그램에서 제공하는 특정 기능을 이용할 수 있도록 한다.In addition, the application program according to the present invention allows only a person having a legitimate authority to use a specific function provided by the application program.
한편 본 발명은 도면에 도시된 실시예들을 참고로 설명되었으나 이는 예시적인 것에 불과하며, 당해 기술분야에 통상의 지식을 지닌 자라면 이로부터 다양한 변형 및 균등한 타실시예가 가능하다는 점을 이해할 것이다. 따라서 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위에 의해서만 정해져야 할 것이다.On the other hand, the present invention has been described with reference to the embodiments shown in the drawings, which are merely exemplary, and those skilled in the art will understand that various modifications and equivalent other embodiments are possible therefrom. Therefore, the true technical protection scope of the present invention should be defined only by the appended claims.
Claims (9)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050009639A KR100637350B1 (en) | 2005-02-02 | 2005-02-02 | Method for certifying execution of application, Recordable medium saved above method and External storage |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050009639A KR100637350B1 (en) | 2005-02-02 | 2005-02-02 | Method for certifying execution of application, Recordable medium saved above method and External storage |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20060088707A KR20060088707A (en) | 2006-08-07 |
KR100637350B1 true KR100637350B1 (en) | 2006-10-23 |
Family
ID=37177051
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020050009639A KR100637350B1 (en) | 2005-02-02 | 2005-02-02 | Method for certifying execution of application, Recordable medium saved above method and External storage |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100637350B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101588965B1 (en) | 2014-08-04 | 2016-01-26 | 주식회사 엔씨소프트 | Computer program and computing device for executing security program by run-time authorization |
-
2005
- 2005-02-02 KR KR1020050009639A patent/KR100637350B1/en not_active IP Right Cessation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101588965B1 (en) | 2014-08-04 | 2016-01-26 | 주식회사 엔씨소프트 | Computer program and computing device for executing security program by run-time authorization |
Also Published As
Publication number | Publication date |
---|---|
KR20060088707A (en) | 2006-08-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10289860B2 (en) | Method and apparatus for access control of application program for secure storage area | |
JP5276438B2 (en) | Anti-hacker protection that restricts the installation of operating systems and other software | |
CN101414263B (en) | Software installation method and anti-pirate module | |
US20050216685A1 (en) | Intelligent media storage system | |
CN101430700B (en) | File management device and storage device | |
CN1617101A (en) | Operating system resource protection | |
KR970012154A (en) | Personal computer with security device, security method thereof and installation and removal method of the security device | |
JP2003162452A (en) | System and method for protecting data stored in storage medium device | |
EP1078311A1 (en) | Protected storage device for computer system | |
JP2008146642A (en) | Device, system and method for protecting hard disk in multiple operating system environment | |
US20050193195A1 (en) | Method and system for protecting data of storage unit | |
US6898555B2 (en) | Method for indicating the integrity of use-information of a computer program | |
KR100637350B1 (en) | Method for certifying execution of application, Recordable medium saved above method and External storage | |
EP2341458B1 (en) | Method and device for detecting if a computer file has been copied | |
JP3834241B2 (en) | Software recording unit separation type information processing apparatus and software management method | |
US20090077671A1 (en) | Protection of software on portable medium | |
CN114564702A (en) | Off-line software license control method and device based on firmware | |
US20030131112A1 (en) | Computer firewall system | |
EP3814910B1 (en) | Hardware protection of files in an integrated-circuit device | |
US11960617B2 (en) | Hardware protection of files in an integrated-circuit device | |
JP4597651B2 (en) | Information processing unit, method and program for controlling ripping of data in media | |
CN114519189A (en) | Domestic UEFI firmware conference control method | |
JP2023144561A (en) | Information processing device and method for controlling information processing device | |
JP2023085210A (en) | Information processing device and determination method | |
CN113722736A (en) | Access isolation method of application file, electronic device and readable storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20101015 Year of fee payment: 5 |
|
LAPS | Lapse due to unpaid annual fee |