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 PDF

Info

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
Application number
KR1020050009639A
Other languages
Korean (ko)
Other versions
KR20060088707A (en
Inventor
김영한
Original Assignee
김영한
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 김영한 filed Critical 김영한
Priority to KR1020050009639A priority Critical patent/KR100637350B1/en
Publication of KR20060088707A publication Critical patent/KR20060088707A/en
Application granted granted Critical
Publication of KR100637350B1 publication Critical patent/KR100637350B1/en

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A42HEADWEAR
    • A42BHATS; HEAD COVERINGS
    • A42B1/00Hats; Caps; Hoods
    • A42B1/18Coverings for protecting hats, caps or hoods against dust, rain, or sunshine
    • AHUMAN NECESSITIES
    • A42HEADWEAR
    • A42BHATS; HEAD COVERINGS
    • A42B1/00Hats; Caps; Hoods
    • A42B1/206Transformable, convertible or reversible hats
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61FFILTERS 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/00Methods 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/04Eye-masks ; Devices to be worn on the face, not intended for looking through; Eye-pads for sunbathing
    • A61F9/045Eye-shades or visors; Shields beside, between or below the eyes
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F16ENGINEERING ELEMENTS AND UNITS; GENERAL MEASURES FOR PRODUCING AND MAINTAINING EFFECTIVE FUNCTIONING OF MACHINES OR INSTALLATIONS; THERMAL INSULATION IN GENERAL
    • F16BDEVICES FOR FASTENING OR SECURING CONSTRUCTIONAL ELEMENTS OR MACHINE PARTS TOGETHER, e.g. NAILS, BOLTS, CIRCLIPS, CLAMPS, CLIPS OR WEDGES; JOINTS OR JOINTING
    • F16B39/00Locking 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

응용 프로그램의 실행 인증 방법과, 이를 저장한 컴퓨터로 읽을 수 있는 기록매체 및 외장형 저장 장치{Method for certifying execution of application, Recordable medium saved above method and External storage}Method for certifying execution of application, Recordable medium saved above method and External storage}

도 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 storage device 200 of the local hard drive or the external storage device is encrypted with an authentication key and thus cannot be used (played) with general software, and can be used only with dedicated software contained in the external storage device. That is, the external storage device, the software (application program), and the content each have the same authentication key to use the content.

상술한 바와 같이 본 발명에 따른 외장형 저장 장치에 저장되는 응용 프로그램은 호스트로 로딩되어 실행되는 경우에 외장형 저장 장치의 저장 수단 영역 중 사용자 액세스가 불가능한 시스템 영역에 기록된 인증키를 통해 인증이 이루어진 후 실행되므로, 복제된 응용 프로그램의 경우 적발이 가능하다. 또한 인증키는 사용자에게 노출되지 않는 영역에 저장되므로, 종래의 패스워드와 같이 유출의 염려가 없다.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)

호스트로부터의 실행 명령에 의해 상기 호스트로 로딩되어 실행되는 응용 프로그램의 실행 인증 방법에 있어서, 상기 방법이 :In the execution authentication method of an application program loaded and executed by the execution command from the host, the method includes: a) 상기 응용 프로그램이 저장된 외장형 저장 장치의 저장 영역 중 파일 할당 정보가 기록된 시스템 영역에 포함된 인증키를 확인하는 단계와;a) identifying an authentication key included in a system area in which file allocation information is recorded in a storage area of an external storage device in which the application program is stored; b) 확인된 인증키가 만족되면 정상적으로 실행을 개시하며, 그렇지 않으면 에러 처리하는 단계;b) starting execution normally if the verified authentication key is satisfied; otherwise, error processing; 를 포함하는 것을 특징으로 하는 응용 프로그램의 실행 인증 방법.Execution authentication method of an application comprising a. 제 1 항에 있어서, 상기 방법이 :The method of claim 1 wherein the method is: c) 이벤트에 응답하여 상기 응용 프로그램이 저장된 저장 수단 영역 중 파일 할당 정보가 기록된 시스템 영역에 기록된 인증키를 확인하는 단계와;c) responsive to an event, identifying an authentication key recorded in a system area in which file allocation information is recorded in a storage means area in which the application program is stored; d) 상기 단계 c)에 의해 확인된 인증키가 만족되면 실행을 계속 유지하며, 그렇지 않으면 종료하거나 에러 처리하는 단계;d) continuing execution if the authentication key identified in step c) is satisfied; otherwise terminating or error processing; 를 더 포함하는 것을 특징으로 하는 응용 프로그램의 실행 인증 방법.Execution authentication method of the application, characterized in that it further comprises. 제 2 항에 있어서, 상기 인증키가 :The method of claim 2, wherein the authentication key is: 상기 응용 프로그램을 인증하기 위한 인증값에 추가하여 상기 응용 프로그램의 실행을 제한하기 위한 사용 가능 기한 혹은 횟수 정보를 더 포함하는 것 을 특징으로 하는 응용 프로그램의 실행 인증 방법. In addition to the authentication value for authenticating the application, the execution authentication method of the application, characterized in that it further comprises the available period or the number of information for limiting the execution of the application. 제 2 항에 있어서, 상기 인증키가 :The method of claim 2, wherein the authentication key is: 상기 응용 프로그램을 인증하기 위한 인증값에 추가하여 상기 응용 프로그램의 최대 사용 시간 정보를 더 포함하는 것을 특징으로 하는 응용 프로그램의 실행 인증 방법.In addition to the authentication value for authenticating the application program execution authentication method of the application characterized in that it further comprises a maximum usage time information of the application. 제 2 항에 있어서, 상기 인증키가 :The method of claim 2, wherein the authentication key is: 상기 응용 프로그램을 인증하기 위한 인증값에 추가하여 상기 응용 프로그램 내의 특정 기능 사용권 정보를 더 포함하며,In addition to the authentication value for authenticating the application further includes a specific function license information in the application, 상기 단계 d)가 :Step d) above: 확인된 인증키가 만족되면 정상적으로 실행을 개시하되, 상기 특정 기능 사용권 정보에 따라 그 기능을 제공하는 것을 특징으로 하는 응용 프로그램의 실행 인증 방법.If the confirmed authentication key is satisfied, execution starts normally, and the execution authentication method of the application program, characterized in that to provide the function according to the specific function license information. 제 1 항 내지 제 5 항 중 어느 한 항에 기재된 상기 호스트로 로딩되어 실행되는 응용 프로그램의 실행 인증 방법을 실행하는 프로그램이 저장된 컴퓨터로 판독 가능한 기록 매체.A computer-readable recording medium storing a program for executing the execution authentication method of an application program loaded and executed by the host according to any one of claims 1 to 5. 제 6 항에 있어서, 상기 기록 매체가 외장형 저장 장치인 것을 특징으로 하는 컴퓨터로 판독 가능한 기록 매체.7. The computer readable recording medium of claim 6, wherein the recording medium is an external storage device. 호스트와 인터페이싱되는 인터페이스 수단과;Interface means for interfacing with the host; 파일 할당 정보가 기록된 시스템 영역 및 적어도 하나 이상의 응용 프로그램을 저장하는 데이타 영역을 포함하되, 상기 시스템 영역에 인증키를 저장하는 저장 수단과;Storage means including a system area in which file allocation information is recorded and a data area storing at least one or more application programs, the authentication area being stored in the system area; 장치 전반을 제어하며, 상기 호스트로부터의 프로그램 실행 명령에 따라 상기 저장 수단에 저장된 해당 응용 프로그램을 읽어들여 상기 인터페이스 수단을 통해 상기 호스트로 출력하는 제어 수단;을 포함하되,Control means for controlling the overall device, and reading the corresponding application program stored in the storage means in accordance with the program execution command from the host and outputs to the host through the interface means; 상기 호스트로 로딩되어 실행되는 응용 프로그램이 :I have an application loaded and running on the host: 상기 저장 수단의 파일 할당 정보가 기록된 시스템 영역에 저장된 인증키를 확인하여 정당하면 정상적으로 실행을 개시하고, 그렇지 않으면 에러 처리하는 프로그램 코드를 포함하는 것을 특징으로 하는 외장형 저장 장치.And a program code which checks the authentication key stored in the system area in which the file allocation information of the storage means is recorded, if justified, executes normally, and otherwise error-processes. 제 8 항에 있어서, 상기 호스트로 로딩되어 실행되는 응용 프로그램이 :The application of claim 8, wherein the application loaded and executed by the host is: 이벤트에 응답하여 상기 저장 수단의 파일 할당 정보가 기록된 시스템 영역에 저장된 인증키를 확인하고, 확인된 인증키가 정당하면 실행을 계속 유지하며, 그렇지 않으면 에러 처리하는 프로그램 코드를 더 포함하는 것을 특징으로 하는 외장형 저장 장치.And responsive to the event, checking the authentication key stored in the system area in which the file allocation information of the storage means is recorded, and if the confirmed authentication key is justified, continuing to execute the program. External storage device.
KR1020050009639A 2005-02-02 2005-02-02 Method for certifying execution of application, Recordable medium saved above method and External storage KR100637350B1 (en)

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)

* Cited by examiner, † Cited by third party
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

Cited By (1)

* Cited by examiner, † Cited by third party
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