KR20150072007A - Method for accessing temper-proof device and apparatus enabling of the method - Google Patents

Method for accessing temper-proof device and apparatus enabling of the method Download PDF

Info

Publication number
KR20150072007A
KR20150072007A KR1020130159219A KR20130159219A KR20150072007A KR 20150072007 A KR20150072007 A KR 20150072007A KR 1020130159219 A KR1020130159219 A KR 1020130159219A KR 20130159219 A KR20130159219 A KR 20130159219A KR 20150072007 A KR20150072007 A KR 20150072007A
Authority
KR
South Korea
Prior art keywords
application
value
tamper
hash value
memory
Prior art date
Application number
KR1020130159219A
Other languages
Korean (ko)
Other versions
KR101711024B1 (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 KR1020130159219A priority Critical patent/KR101711024B1/en
Publication of KR20150072007A publication Critical patent/KR20150072007A/en
Application granted granted Critical
Publication of KR101711024B1 publication Critical patent/KR101711024B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Abstract

The present invention relates to a tamper-proof device access method and a terminal device employing the method. According to an embodiment of the present invention, the method includes the steps of: generating a first verification hash value by using a file relevant to the execution of an application when the application is executed; determining whether the first verification hash value matches an integrity value of the application stored in the tamper-proof device; connecting a session of the tamper-proof device and the application when the integrity value and the first verification hash value match; registering a random value generated at each time the application is executed in the tamper-proof device as a handle value of the application; and conducting an encryption or decryption operation by using a key value corresponding to the handle value stored in the tamper-proof device when there is a command coupled with the handle value from the application. The present invention enables the device to conduct the information encryption or decryption operation by using the key value of the tamper-proof device without requiring a password from a user.

Description

부정조작방지 장치 접근 방법 및 그 방법을 채용한 단말 장치{METHOD FOR ACCESSING TEMPER-PROOF DEVICE AND APPARATUS ENABLING OF THE METHOD}TECHNICAL FIELD [0001] The present invention relates to a tamper-proof device and a terminal device employing the tamper-

본 발명은 부정조작방지 장치 접근 방법 및 그 방법을 채용한 단말 장치에 관한 것이다. The present invention relates to a tamper-proof device approaching method and a terminal device employing the method.

최근 정보통신기술의 발달에 따라 정보 유출로 인한 피해 역시 급증하고 있다. 따라서, 정보 유출로 인한 피해를 줄이기 위하여, 정보가 유출되더라도 그 내용을 알 수 없도록 정보를 암호화하는 기술에 대한 관심이 증가하고 있다. Recently, due to the development of information and communication technology, the damage caused by information leakage is also increasing rapidly. Therefore, in order to reduce the damage caused by information leakage, there is an increasing interest in a technique of encrypting information so that the information can not be known even if the information is leaked.

일반적인 암호화 기술에는 비밀번호와 키 값이 함께 사용된다. 즉, 사용자가 비밀번호를 이용하여 키 값에 접근할 수 있는 권한을 획득하고, 해당 키 값을 이용해 정보를 암/복호화 할 수 있다. 다만, 일반적으로 키 값은 하드디스크나 플래시 메모리 같은 저장장치에 저장되므로, 파일 시스템에 대해 포렌직(Forensic) 기법을 사용하면 통해 키 값을 찾아낼 수 있어 유출 가능성이 있다. 또한, 비밀번호 역시 화면해킹, 키 해킹, 사회공학적 기법들을 통해 유출될 수 있으나, 이에 대한 대응방안이라고는 어렵고 복잡하며 길이가 긴 비밀번호를 자주 바꿔주는 방법뿐이어서 비밀번호 관리에 어려움이 있다. Common encryption techniques use both passwords and key values. That is, the user can obtain the authority to access the key value using the password, and can use the key value to encrypt / decrypt the information. However, since the key value is generally stored in a storage device such as a hard disk or a flash memory, a forensic technique can be used to find a key value in the file system, which is likely to leak. Also, passwords can be leaked through screen hacking, key hacking, and social engineering techniques. However, it is difficult to manage passwords because it is difficult and complicated to cope with, and only a method of frequently changing long passwords.

최근, 키 값의 유출에 대한 대응 방안으로 HSM(Hardware Security Module), TPM(Trusted Platform Module) 또는 MTM(Mobile Trusted Module)과 같은 부정조작방지(tamper-proof) 기능이 있는 하드웨어 장치를 사용하는 방법이 제시되고 있다. 그러나, 이러한 하드웨어 장치들 역시 내부에 저장된 키 값에 접근하기 위해서는 사용자가 비밀번호를 입력해야 하므로, 비밀번호 관리 문제는 그대로 남아 있게 된다. Recently, a method of using a hardware device having a tamper-proof function such as a hardware security module (HSM), a trusted platform module (TPM), or a mobile trusted module (MTM) . However, since these hardware devices also require the user to input a password in order to access the key value stored therein, the problem of password management remains unchanged.

본 발명은 사용자가 비밀번호를 입력하지 않고도 부정조작방지 장치의 키 값을 이용하여 정보의 암/복호화를 수행하는 방법 및 그 방법을 채용한 단말 장치를 제공하는데 그 목적이 있다.An object of the present invention is to provide a method for performing encryption / decryption of information by using a key value of a tamper-proof device without requiring a user to input a password, and a terminal device employing the method.

본 발명의 일 실시예에 따르면, 애플리케이션 실행 시, 상기 애플리케이션의 실행에 관계된 파일을을 이용하여 제1 검증 해시값을 생성하는 단계, 부정조작방지(tamper-proof) 장치에 저장된 상기 애플리케이션의 무결성 값과 상기 제1 검증 해시값이 일치하는지 여부를 판단하는 단계, 상기 무결성 값과 상기 제1 검증 해시값이 일치하는 경우, 상기 애플리케이션과 상기 부정조작방지 장치 간 세션을 연결하는 단계, 상기 부정조작방지 장치에 상기 애플리케이션이 실행될 때마다 랜덤(random)하게 생성되는 값을 상기 애플리케이션의 핸들값으로 등록하는 단계 및 상기 애플리케이션으로부터 상기 핸들값이 결합된 명령이 있는 경우, 상기 부정조작방지 장치에 저장된 상기 핸들값에 대응하는 키 값을 이용해 암/복호화를 수행하는 단계를 포함하는 것을 특징으로 한다. According to an embodiment of the present invention, there is provided a method of controlling a method for generating a first verification hash value using a file related to execution of an application when an application is executed, generating a first verification hash value using an integrity value of the application stored in a tamper- Determining whether the first verification hash value is identical to the first verification hash value, connecting the session between the application and the tamper-proof device if the integrity value matches the first verification hash value, Registering, as a handle value of the application, a value randomly generated each time the application is executed in the device, and when there is an instruction combined with the handle value from the application, And performing encryption / decryption using the key value corresponding to the value .

본 발명의 다른 실시예에 따르면, 애플리케이션을 실행하는 애플리케이션 실행부, 상기 애플리케이션의 실행에 관계된 파일을 이용하여 제1 검증 해시값을 생성하는 무결성 검증부, 상기 무결성 값과 상기 제1 검증 해시값이 일치하는 경우, 상기 애플리케이션과 상기 부정조작방지 장치 간 세션을 연결하는 미들웨어 처리부, 저장된 상기 애플리케이션의 무결성 값과 상기 제1 검증 해시값이 일치하는지 여부를 판단하고, 상기 무결성 값과 상기 제1 검증 해시값이 일치하는 경우, 상기 애플리케이션이 실행될 때마다 랜덤(random)하게 생성되는 값을 상기 애플리케이션의 핸들값으로 등록하며, 상기 애플리케이션으로부터 상기 핸들값이 결합된 명령이 있는 경우, 저장된 상기 핸들값에 대응하는 키 값을 이용해 암/복호화를 수행하는 부정조작방지 장치를 포함하는 것을 특징으로 한다. According to another embodiment of the present invention, there is provided an information processing apparatus including an application execution unit that executes an application, an integrity verification unit that generates a first verification hash value using a file related to execution of the application, A middleware processing unit for connecting a session between the application and the unauthorized tamper protection apparatus to each other when the first verification hash value matches the first verification hash value, Registers a value generated randomly each time the application is executed as a handle value of the application when the value of the handle is equal to the value of the handle, A tamper-proof device for performing encryption / decryption using a key value .

본 발명에 따르면, 사용자가 비밀번호를 입력하지 않고도 부정조작방지 장치의 키 값을 이용하여 정보의 암/복호화를 수행할 수 있다. According to the present invention, the user can perform encryption / decryption of information using the key value of the tamper-proof device without inputting the password.

도 1은 본 발명의 일 실시예에 따른 부정조작방지 장치 접근 방법을 수행하는 시스템을 나타내는 도면이다.
도 2는 본 발명의 일 실시예에 따른 부정조작방지 장치 접근 방법의 순서도를 나타내는 도면이다.
도 3은 본 발명의 다른 실시예에 따른 부정조작방지 장치 접근 방법의 순서도를 나타내는 도면이다.
1 is a diagram illustrating a system for performing an anti-tamper device approach according to an embodiment of the present invention.
FIG. 2 is a flowchart illustrating an anti-tampering method according to an exemplary embodiment of the present invention. Referring to FIG.
FIG. 3 is a flowchart illustrating an anti-tamper device approach according to another embodiment of the present invention.

본 발명의 이점 및 특징, 그리고 그것을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 통해 설명될 것이다. 그러나 본 발명은 여기에서 설명되는 실시예들에 한정되지 않고 다른 형태로 구체화될 수도 있다. 단지, 본 실시예들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 본 발명의 기술적 사상을 용이하게 실시할 수 있을 정도로 상세히 설명하기 위하여 제공되는 것이다.BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention, and how to accomplish it, will be described with reference to the embodiments described in detail below with reference to the accompanying drawings. However, the present invention is not limited to the embodiments described herein but may be embodied in other forms. The embodiments are provided so that those skilled in the art can easily carry out the technical idea of the present invention to those skilled in the art.

명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "간접적으로 연결"되어 있는 경우도 포함한다. 명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.Throughout the specification, when a part is referred to as being "connected" to another part, it includes not only "directly connected" but also "indirectly connected" . Throughout the specification, when an element is referred to as "comprising ", it means that it can include other elements as well, without excluding other elements unless specifically stated otherwise.

도 1은 본 발명의 일 실시예에 따른 부정조작방지 장치 접근 방법을 수행하는 시스템을 나타내는 도면이다. 1 is a diagram illustrating a system for performing an anti-tamper device approach according to an embodiment of the present invention.

도 1을 참조하면, 발명의 일 실시예에 따른 부정조작방지 장치 접근 방법을 수행하는 시스템은 애플리케이션 스토어(101), 애플리케이션 공급자(102), 인증센터(103) 및 단말 장치(100)를 포함할 수 있다. 여기서, 애플리케이션 스토어(101), 애플리케이션 공급자(102) 및 인증센터(103)는 각각의 역할을 수행하는 서버에 해당할 수 있다. 1, a system for performing an anti-tamper device approach according to an embodiment of the present invention includes an application store 101, an application provider 102, an authentication center 103 and a terminal device 100 . Here, the application store 101, the application provider 102, and the authentication center 103 may correspond to servers performing respective roles.

애플리케이션 스토어(101)는 애플리케이션을 사고 팔 수 있는 온라인 상의 콘텐츠(소프트웨어) 시장이다. 본 발명의 일 실시예에 따르면, 애플리케이션 스토어(101)는 애플리케이션 공급자(102)로부터 애플리케이션을 공급받아 단말 장치(100)의 요청에 따라 단말 장치(100)로 애플리케이션을 전송한다. The application store 101 is an online content (software) marketplace where applications can be bought and sold. According to an embodiment of the present invention, the application store 101 receives an application from the application provider 102 and transmits the application to the terminal device 100 at the request of the terminal device 100.

애플리케이션 공급자(102)는 개발한 애플리케이션을 공급한다. 본 발명의 일 실시예에 따르면, 애플리케이션 공급자(102)는 개발한 애플리케이션을 인증센터(103)로 전송하여 인증을 받고, 인증정보가 포함된 애플리케이션을 애플리케이션 스토어(101)로 전송한다. The application provider 102 supplies the developed application. According to an embodiment of the present invention, the application provider 102 transmits the developed application to the authentication center 103, receives the authentication, and transmits the application containing the authentication information to the application store 101. [

인증센터(103)는 애플리케이션에 대한 무결성 인증을 수행한다. 본 발명의 일 실시예에 따르면, 애플리케이션 공급자(102)로부터 애플리케이션을 인증 요청을 수신하는 경우, 애플리케이션 공급자(102)는 애플리케이션 인증을 위한 인증 정보인 원본 해시값을 생성한다. 원본 해시값은 애플리케이션의 실행에 관계된 파일들에 대해 해시값을 생성하고, 생성한 해시값들을 이용하여 최종 해시값을 생성하는 방법에 의해 만들어질 수 있다. 다만, 원본 해시값을 생성하는 방법은 이에 한정되지 않고 다양한 방법으로 생성할 수 있다. 인증센터(103)는 공개키를 이용하여 생성한 원본 해시값을 암호화한다. 공개키로 암호화된 원본 해시값을 비밀키로만 정상 복호할 수 있다. The authentication center 103 performs integrity authentication for the application. According to one embodiment of the present invention, when receiving an authentication request from an application provider 102, the application provider 102 generates a source hash value, which is authentication information for application authentication. The original hash value can be generated by generating a hash value for files related to the execution of the application and generating the final hash value using the generated hash values. However, the method of generating the original hash value is not limited to this and can be generated by various methods. The authentication center 103 encrypts the original hash value generated using the public key. The original hash value encrypted with the public key can be normally decrypted only with the secret key.

그 후, 인증센터(103)는 암호화된 원본 해시값이 포함된 애플리케이션을 애플리케이션 공급자(102)로 전송한다. The authentication center 103 then sends the application containing the encrypted original hash value to the application provider 102.

단말 장치(100)는 본 발명의 일 실시예에 따른 부정조작방지 장치 접근 방법을 채용한 단말 장치(100)로, 애플리케이션을 다운받아 설치하고 실행한다. 본 발명의 실시예에 따른 단말 장치(100)는 노트북(Laptop), 퍼스널 컴퓨터(Personal Computer, PC), 이동통신 단말기, 태블릿 PC(Tablet PC) 등과 같은 정보 통신 기기 및 멀티미디어 기기가 될 수 있다.The terminal device 100 downloads and installs an application to a terminal device 100 employing a tamper-proof device approach according to an embodiment of the present invention and executes the application. The terminal device 100 according to the embodiment of the present invention may be an information communication device such as a laptop, a personal computer (PC), a mobile communication terminal, a tablet PC, and a multimedia device.

본 발명의 실시예에 따른 단말 장치(100)는 애플리케이션 설치부(110), 애플리케이션 실행부(120), 무결성 검증부(130), 미들웨어 처리부(140) 및 부정조작방지 장치(150)를 포함할 수 있다. The terminal device 100 according to an embodiment of the present invention includes an application installation unit 110, an application execution unit 120, an integrity verification unit 130, a middleware processing unit 140, and a tamper-proof device 150 .

애플리케이션 설치부(110)는 통신부(미도시)를 통해 애플리케이션 스토어(101)로부터 애플리케이션의 설치를 위한 애플리케이션 패키지를 수신하고, 수신한 애플리케이션 패키지로부터 설치 파일을 추출하여 애플리케이션을 설치하는 역할을 수행한다. 본 발명의 일 실시예에 따르면, 애플리케이션 설치부(110)는 애플리케이션 설치 시, 실행에 관계된 파일을 이용하여 생성된 제2 검증 해시값과 복호된 원본 해시값이 일치하는 경우에만 애플리케이션 설치를 완료한다. 이러한 과정을 통해, 단말 장치(100)에 설치되는 애플리케이션의 무결성을 확보할 수 있다. The application installation unit 110 receives an application package for installing an application from the application store 101 via a communication unit (not shown), extracts the installation file from the received application package, and installs the application. According to an embodiment of the present invention, when the application is installed, the application installing unit 110 completes application installation only when the second verification hash value generated using the file related to execution coincides with the decrypted original hash value . Through this process, the integrity of the application installed in the terminal device 100 can be ensured.

여기서, 애플리케이션의 실행에 관계된 파일은 애플리케이션 실행에 필요한 실행 파일 또는 데이터 파일 중 적어도 하나 이상을 포함할 수 있다. Here, the file related to the execution of the application may include at least one of an executable file or a data file necessary for executing the application.

애플리케이션 실행부(120)는 설치된 애플리케이션을 실행하는 역할을 수행한다. 본 발명의 일 실시예에 따르면, 애플리케이션 실행부(120)는, 애플리케이션 실행 시, 실행에 관계된 파일을 이용하여 생성된 제1 검증 해시값과, 부정조작방지 장치(150)에 등록된 무결성 값이 일치하는 경우에 애플리케이션을 실행한다. 이러한 과정을 통해, 단말 장치(100)에서 실행되는 애플리케이션의 무결성을 확보할 수 있다. The application execution unit 120 plays a role of executing an installed application. According to an embodiment of the present invention, when executing an application, the application executing unit 120 stores a first verification hash value generated using a file related to execution and an integrity value registered in the tamper- Run the application if it matches. Through this process, the integrity of the application executed in the terminal device 100 can be ensured.

여기서, 애플리케이션의 실행에 관계된 파일은 애플리케이션 실행에 필요한 실행 파일 또는 데이터 파일 중 적어도 하나 이상을 포함할 수 있다. Here, the file related to the execution of the application may include at least one of an executable file or a data file necessary for executing the application.

무결성 검증부(130)는 애플리케이션 설치 및 실행 시, 무결성 검증을 위하여 제1 검증 해시값 및 제2 검증 해시값을 생성하는 역할을 수행한다. 본 발명의 일 실시예에 따르면, 무결성 검증부(130)는 생성한 제1 검증 해시값 및 제2 검증 해시값을 해시값 비교를 위해 부정조작방지 장치(150)로 전달한다. The integrity verification unit 130 generates a first verification hash value and a second verification hash value for integrity verification at the time of installing and executing the application. According to an embodiment of the present invention, the integrity verification unit 130 transmits the generated first verification hash value and the generated second verification hash value to the tamper prevention apparatus 150 for hash value comparison.

미들웨어 처리부(140)는 여러 종류의 하드웨어나 소프트웨어를 충돌 없이 실행될 수 있도록 하는 미들웨어에 대한 연산을 수행한다. 본 발명의 일 실시예에 따르면, 부정조작방지 장치(150)에 등록된 무결성 값과 제1 검증 해시값이 일치하는 경우, 미들웨어 처리부(140)는 애플리케이션과 부정조작방지 장치(150) 간 세션을 연결한다. The middleware processing unit 140 performs operations on middleware that allows various kinds of hardware or software to be executed without collision. According to an embodiment of the present invention, when the integrity value registered in the tamper-proof device 150 matches the first verification hash value, the middleware processing unit 140 determines a session between the application and the tamper-proof device 150 Connect.

이 경우, 미들웨어 처리부(140)는, 애플리케이션과 부정조작방지(tamper-proof) 장치 간 통신을 위한 메시지 버퍼에 대하여 메모리를 할당받고, 메모리의 시작 주소값을 저장한다. 그 후, 미들웨어에 상기 애플리케이션만 접속할 때까지 대기하고, 미들웨어에 애플리케이션만 접속하는 경우, 애플리케이션과 통신을 위한 메모리를 할당 받고, 메모리의 시작 주소값을 저장할 수 있다. 대기 시간을 부여하는 것은 다른 불법 애플리케이션들이 애플리케이션 식별 정보(AppID), 프로세스 식별 정보(ProcessID) 등의 정보를 취득하여 검증 과정 중에 불법적으로 끼어드는 것을 어렵게 하기 위함이다.In this case, the middleware processing unit 140 allocates a memory to the message buffer for communication between the application and the tamper-proof device, and stores the start address value of the memory. Thereafter, when the application is connected only to the middleware, the application waits until the middleware is accessed. When accessing only the application to the middleware, a memory for communication with the application is allocated and the memory start address value can be stored. Granting the wait time is to make it illegal for other illegal applications to acquire information such as application identification information (AppID), process identification information (ProcessID) and so on illegally during the verification process.

또한, 미들웨어 처리부(140)는, 설정된 시간 내에 상기 애플리케이션의 세션 연결 요청이 있는 경우, 메모리의 시작 주소값을 애플리케이션에 전달하고, 애플리케이션의 식별 정보와 메모리의 시작 주소값을 부정조작방지 장치(150)에 전달할 수 있다. 이때, 미들웨어 처리부(140)는 설정된 시간 내에 기다리고 있던 AppID, ProcessID 등의 정보를 가진 접속 요청이 있는 경우, 이를 수락한다. 설정된 시간이 지나는 경우, 애플리케이션 실행을 위한 새로운 무결성 검증 요청이 들어오지 않는 한 모든 세션 접속 요청은 거부한다. If there is a session connection request of the application within the set time, the middleware processing unit 140 transfers the start address value of the memory to the application, and transmits the identification information of the application and the start address value of the memory to the tamper- ). At this time, the middleware processing unit 140 accepts a connection request having information such as an AppID, a ProcessID, and the like waiting for a predetermined time. If the set time has passed, all session access requests are rejected unless a new integrity verification request for application execution is received.

위 설명에서는 애플리케이션 설치부(110), 애플리케이션 실행부(120), 무결성 검증부(130) 및 미들웨어 처리부(140)를 각각 별개의 구성으로 설명하였으나, 이에 한정되지 않고, 하나의 처리 장치가 적어도 하나 이상의 구성부의 역할을 수행할 수도 있다. 예를 들어, 중앙 처리 장치(CPU)가 애플리케이션 설치부(110), 애플리케이션 실행부(120), 무결성 검증부(130) 및 미들웨어 처리부(140)의 역할을 수행할 수 있다. In the above description, the application installing unit 110, the application executing unit 120, the integrity verifying unit 130, and the middleware processing unit 140 are described as separate components, but the present invention is not limited thereto. And may play the role of the above-mentioned constituent parts. For example, a central processing unit (CPU) may serve as the application installation unit 110, the application execution unit 120, the integrity verification unit 130, and the middleware processing unit 140.

부정조작방지 장치(150)는 내부에 비밀키(151)를 저장하고 있어, 비밀키(151)를 이용하여 데이터를 암/복호화 하는 역할을 수행한다. 본 발명의 일 실시예에 따르면, 부정조작방지 장치(150)는 저장된 애플리케이션의 무결성 값과 제1 검증 해시값이 일치하는지 여부를 판단하고, 무결성 값과 제1 검증 해시값이 일치하는 경우, 애플리케이션이 실행될 때마다 랜덤(random)하게 생성되는 값을 애플리케이션(152)의 핸들값(154)으로 등록하며, 애플리케이션으로부터 핸들값(154)이 결합된 명령이 있는 경우, 저장된 핸들값(154)에 대응하는 키 값(155)을 이용해 암/복호화를 수행한다. 이와 같이, 핸들값(154)을 통해 비밀번호 없이 부정조작방지 장치(150)를 이용하여 암/복호화를 수행할 수 있다. 따라서, 본 발명의 일 실시예에 따르면, 부정조작방지 장치 내의 키 값(155)에 접근하기 위해, 각종 해킹 기법에 의해 노출 위험이 있는 비밀번호 방식을 사용하지 않아도 된다는 장점이 있다. 이러한 핸들값(154)은 애플리케이션이 실행될 때 마다 새롭게 생성되며, 애플리케이션이 종료되면 삭제된다. 본 발명의 일 실시예에 따르면 메모리의 시작 주소값을 핸들값(154)으로 사용할 수 있다. The tamper-proof device 150 stores the secret key 151 therein, and plays the role of encrypting / decrypting the data using the secret key 151. According to an embodiment of the present invention, tamper-proof device 150 determines whether the integrity value of the stored application matches the first verification hash value, and if the integrity value matches the first verification hash value, Registering the randomly generated value with the handle value 154 of the application 152 each time it is executed and if there is an instruction with the handle value 154 combined from the application, Decryption is performed using the key value 155 that is used for encryption / decryption. In this way, the encryption / decryption can be performed using the tamper-proof device 150 without a password through the handle value 154. [ Therefore, according to one embodiment of the present invention, there is an advantage that it is not necessary to use a password scheme which is exposed to a risk by various hacking techniques in order to access the key value 155 in the tamper-proof apparatus. This handle value 154 is newly generated each time the application is executed, and is deleted when the application is terminated. According to an embodiment of the present invention, the start address value of the memory may be used as the handle value 154.

또한, 부정조작방지 장치(150)는, 애플리케이션 패키지로부터 암호화된 원본 해시값을 추출하여 부정조작방지(tamper-proof) 장치에 저장된 비밀키를 이용해 원본 해시값을 복호하고, 제2 검증 해시값과 원본 해시값이 일치하는지 여부를 판단하는 역할을 수행한다. 부정조작방지 장치(150)는 제2 검증 해시값과 원본 해시값이 일치하는 경우, 제2 검증 해시값을 애플리케이션의 무결성 값으로 저장할 수 있다.In addition, the tamper-proof device 150 extracts the encrypted original hash value from the application package, decrypts the original hash value using the secret key stored in the tamper-proof device, And performs a role of determining whether the original hash values coincide with each other. Tamper-proof device 150 may store the second verification hash value as an integrity value of the application if the second verification hash value and the original hash value match.

지금까지 부정조작방지 장치 접근 방법을 채용한 단말 장치에 대하여 설명하였다. 아래에서는 부정조작방지 장치 접근 방법에 대해서 보다 상세히 설명하도록 한다. A terminal device employing an unauthorized operation preventing device approach has heretofore been described. The following is a more detailed description of the anti-tamper approach.

도 2는 본 발명의 일 실시예에 따른 부정조작방지 장치 접근 방법의 순서도를 나타내는 도면이다. FIG. 2 is a flowchart illustrating an anti-tampering method according to an exemplary embodiment of the present invention. Referring to FIG.

먼저, 210 단계에서, 애플리케이션 실행부(120)는 애플리케이션을 실행하고, 실행되는 애플리케이션의 실행 정보를 무결성 검증부(130)로 전달한다. 애플리케이션의 실행 정보는 애플리케이션 식별 정보, 프로세스 식별 정보 또는 저장 경로(storage path) 정보 중 적어도 하나 이상을 포함할 수 있다. 이때, 애플리케이션 식별 정보는 AppID 가 될 수 있고, 프로세스 식별 정보는 Process ID가 될 수 있다. First, in step 210, the application execution unit 120 executes the application and transmits the execution information of the executed application to the integrity verification unit 130. [ The execution information of the application may include at least one of application identification information, process identification information, and storage path information. At this time, the application identification information may be AppID, and the process identification information may be Process ID.

그 후, 220 단계에서, 무결성 검증부(130)는 애플리케이션의 실행에 관계된 파일을이용하여 제1 검증 해시값을 생성하고, 생성한 제1 검증 해시값을 부정조작방지 장치(150)로 전달한다. 이때, 무결성 검증부(130)는 구성에 따라 미들웨어 처리부(140)를 거쳐 부정조작방지 장치(150)로 제1 검증 해시값을 전달할 수도 있다. Thereafter, in step 220, the integrity verification unit 130 generates a first verification hash value using a file related to the execution of the application, and transmits the generated first verification hash value to the tamper-proof apparatus 150 . At this time, the integrity verification unit 130 may transmit the first verification hash value to the tampering prevention device 150 via the middleware processing unit 140 according to the configuration.

230 단계에서, 부정조작방지 장치(150)는 저장된 상기 애플리케이션의 무결성 값과 제1 검증 해시값을 비교하고, 240 단계에서 두 값이 일치하는지 여부를 판단한다. 240 단계에서 부정조작방지 장치(150)가 두 값이 일치한다고 판단하는 경우, 250 단계로 진행하여, 미들웨어 처리부(140)는 미들웨어에 상기 애플리케이션만 접속할 때까지 대기하고, 미들웨어에 애플리케이션만 접속하는 경우, 애플리케이션과 상기 부정조작방지 장치 간 통신을 위한 메시지 버퍼에 대하여 메모리를 할당받고, 메모리의 시작 주소값을 저장한다. 대기 시간을 부여하는 것은 다른 불법 애플리케이션들이 애플리케이션 식별 정보(AppID), 프로세스 식별 정보(ProcessID) 등의 정보를 취득하여 검증 과정 중에 불법적으로 끼어드는 것을 어렵게 하기 위함이다.In operation 230, the tamper-proof device 150 compares the integrity value of the stored application with the first verification hash value, and determines whether the two values match in operation 240. If it is determined in step 240 that the two values match, the middleware processing unit 140 proceeds to step 250, waits until only the application is connected to the middleware, and when only the application connects to the middleware , A memory is allocated to a message buffer for communication between the application and the tamper-proof device, and a start address value of the memory is stored. Granting the wait time is to make it illegal for other illegal applications to acquire information such as application identification information (AppID), process identification information (ProcessID) and so on illegally during the verification process.

240 단계에서 부정조작방지 장치(150)가 두 값이 일치하지 않는다고 판단하는 경우, 280 단계로 진행하여 애플리케이션 실행부(120)는 애플리케이션의 실행을 종료한다. If the tamper-proof device 150 determines that the two values do not coincide with each other in step 240, the application execution unit 120 ends the execution of the application in step 280.

그 후, 애플리케이션이 실행되면, 미들웨어 처리부(140)는 애플리케이션과 부정조작방지 장치(150) 간 세션을 연결한다. 이 경우, 미들웨어 처리부(140)는, 설정된 시간 내에 상기 애플리케이션의 세션 연결 요청이 있는 경우, 메모리의 시작 주소값을 애플리케이션에 전달하고, 애플리케이션의 식별 정보와 메모리의 시작 주소값을 부정조작방지 장치(150)에 전달할 수 있다. 이때, 미들웨어 처리부(140)는 설정된 시간 내에 기다리고 있던 AppID, ProcessID 등의 정보를 가진 접속 요청이 있는 경우, 이를 수락한다. 설정된 시간이 지나는 경우, 애플리케이션 실행을 위한 새로운 무결성 검증 요청이 들어오지 않는 한 모든 세션 접속 요청은 거부한다.Thereafter, when the application is executed, the middleware processing unit 140 connects the session between the application and the anti-tamper device 150. [ In this case, if there is a session connection request of the application within the set time, the middleware processing unit 140 transfers the start address value of the memory to the application, and transmits the identification information of the application and the start address value of the memory to the tamper- 150). At this time, the middleware processing unit 140 accepts a connection request having information such as an AppID, a ProcessID, and the like waiting for a predetermined time. If the set time has passed, all session access requests are rejected unless a new integrity verification request for application execution is received.

260 단계에서 부정조작방지 장치(150)는 메모리의 시작 주소값을 애플리케이션의 핸들값(154)으로 등록하고, 270 단계에서 애플리케이션으로부터 핸들값(154)이 결합된 명령이 있는 경우, 저장된 핸들값(154)에 대응하는 키 값(154)을 이용해 암/복호화를 수행한다. 도 2에 도시된 본 발명의 실시예에서는 메모리의 시작 주소값을 애플리케이션의 핸들값(154)으로 사용하는 것으로 설명하였으나 이에 한정되지 않고 애플리케이션이 실행될 때마다 랜덤(random)하게 생성되는 값을 핸들값(154)으로 사용할 수 있다. 예를 들어 랜덤 값 생성 함수를 이용하여 생성한 값을 핸들값(154)으로 사용할 수도 있다. The tamper-proof device 150 registers the start address value of the memory as the handle value 154 of the application in step 260. If there is an instruction combined with the handle value 154 from the application in step 270, Decryption is performed using the key value 154 corresponding to the key value 154 corresponding to the encryption key. In the embodiment of the present invention shown in FIG. 2, the start address value of the memory is used as the handle value 154 of the application. However, the present invention is not limited to this, (154). For example, the value generated using the random value generation function may be used as the handle value 154. [

이와 같이, 핸들값(154)을 통해 비밀번호 없이 부정조작방지 장치(150)를 이용하여 암/복호화를 수행할 수 있다. 따라서, 본 발명의 일 실시예에 따르면, 부정조작방지 장치(150) 내의 키 값(155)에 접근하기 위해, 각종 해킹 기법에 의해 노출 위험이 있는 비밀번호 방식을 사용하지 않아도 된다는 장점이 있다. In this way, the encryption / decryption can be performed using the tamper-proof device 150 without a password through the handle value 154. [ Thus, according to one embodiment of the present invention, there is an advantage in that it is not necessary to use a password scheme which is exposed by various hacking techniques in order to access the key value 155 in the tamper-proof device 150.

이러한 핸들값(154)은 애플리케이션이 실행될 때 마다 새롭게 생성되며, 애플리케이션이 종료되면 삭제된다. This handle value 154 is newly generated each time the application is executed, and is deleted when the application is terminated.

도 3은 본 발명의 다른 실시예에 따른 부정조작방지 장치 접근 방법의 순서도를 나타내는 도면이다. FIG. 3 is a flowchart illustrating an anti-tamper device approach according to another embodiment of the present invention.

먼저, 310 단계에서, 애플리케이션 설치부(110)는 통신부(미도시)를 통해 애플리케이션의 설치를 위한 애플리케이션 패키지를 수신하고, 320 단계에서 수신한 애플리케이션 패키지로부터 설치 파일을 추출하여 애플리케이션을 설치한다. 이때, 애플리케이션 설치부(110)는 설치를 모두 완료하지 않고, 애플리케이션의 설치 정보를 무결성 검증부(130)로 전달한다. 여기서, 애플리케이션의 설치 정보는 애플리케이션 식별 정보 또는 저장 경로(storage path) 정보 중 적어도 하나 이상을 포함할 수 있다. 이때, 애플리케이션 식별 정보는 AppID 가 될 수 있다. First, in step 310, the application installing unit 110 receives an application package for installing an application through a communication unit (not shown), extracts an installation file from the received application package in step 320, and installs the application. At this time, the application installing unit 110 transfers the installation information of the application to the integrity verification unit 130 without completing the installation. Here, the installation information of the application may include at least one of application identification information or storage path information. At this time, the application identification information may be AppID.

330 단계에서, 무결성 검증부(130)는 애플리케이션의 실행에 관계된 파일을 이용하여 제2 검증 해시값을 생성하고, 생성한 제2 검증 해시값을 부정조작방지 장치(150)로 전달한다. 무결성 검증부(130)는 제2 검증 해시값과 함께 애플리케이션 패키지로부터 암호화된 원본 해시값을 추출하여 함께 전달할 수 있다. 이때, 무결성 검증부(130)는 구성에 따라 미들웨어 처리부(140)를 거쳐 부정조작방지 장치(150)로 제2 검증 해시값 및 원본 해시값을 전달할 수도 있다. In operation 330, the integrity verification unit 130 generates a second verification hash value using a file related to the execution of the application, and transmits the generated second verification hash value to the tamper-proof apparatus 150. [ The integrity verification unit 130 may extract the encrypted original hash value from the application package together with the second verification hash value and deliver it together. At this time, the integrity verification unit 130 may transmit the second verification hash value and the original hash value to the tamper prevention apparatus 150 via the middleware processing unit 140 according to the configuration.

340 단계에서 부정조작방지 장치(150)는 저장된 비밀키를 이용해 원본 해시값을 복호하고, 350 단계에서 제2 검증 해시값과 원본 해시값을 비교하여, 360 단계에서 두 값이 일치하는지 여부를 판단한다. 360 단계에서 부정조작방지 장치(150)가 두 값이 일치한다고 판단하는 경우, 370 단계로 진행하여, 제2 검증 해시값을 애플리케이션의 무결성 값으로 저장 후, 380 단계에서 애플리케이션 설치를 완료한다. In step 340, the tamper-proof device 150 decrypts the original hash value using the stored secret key. In step 350, the second verification hash value is compared with the original hash value. In step 360, it is determined whether the two values match do. If the tamper-proof device 150 determines that the two values match in step 360, the process proceeds to step 370 where the second verification hash value is stored as the integrity value of the application, and the application installation is completed in step 380.

360 단계에서 부정조작방지 장치(150)가 두 값이 일치하지 않는다고 판단하는 경우, 390 단계로 진행하여 애플리케이션 설치부(120)는 애플리케이션의 설치를 종료한다. If the tamper-proof apparatus 150 determines that the two values do not coincide with each other in step 360, the application installer 120 ends the installation of the application in step 390.

본 명세서와 도면에 개시된 본 발명의 실시예들은 본 발명의 기술 내용을 쉽게 설명하고 본 발명의 이해를 돕기 위해 특정 예를 제시한 것일 뿐이며, 본 발명의 범위를 한정하고자 하는 것은 아니다. 여기에 개시된 실시예들 이외에도 본 발명의 기술적 사상에 바탕을 둔 다른 변형 예들이 실시 가능하다는 것은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 자명한 것이다.The embodiments of the present invention disclosed in the present specification and drawings are intended to be illustrative only and not intended to limit the scope of the present invention. It will be apparent to those skilled in the art that other modifications based on the technical idea of the present invention are possible in addition to the embodiments disclosed herein.

100: 단말 장치
110: 애플리케이션 설치부
120: 애플리케이션 실행부
130: 무결성 검증부
140: 미들웨어 처리부
150: 부정조작방지 장치
100: terminal device
110: application installation section
120: Application execution unit
130: integrity verification unit
140: Middleware processor
150: Anti-tamper device

Claims (18)

애플리케이션 실행 시, 상기 애플리케이션의 실행에 관계된 파일을 이용하여 제1 검증 해시값을 생성하는 단계;
부정조작방지(tamper-proof) 장치에 저장된 상기 애플리케이션의 무결성 값과 상기 제1 검증 해시값이 일치하는지 여부를 판단하는 단계;
상기 무결성 값과 상기 제1 검증 해시값이 일치하는 경우, 상기 애플리케이션과 상기 부정조작방지 장치 간 세션을 연결하는 단계;
상기 부정조작방지 장치에 상기 애플리케이션이 실행될 때마다 랜덤(random)하게 생성되는 값을 상기 애플리케이션의 핸들값으로 등록하는 단계; 및
상기 애플리케이션으로부터 상기 핸들값이 결합된 명령이 있는 경우, 상기 부정조작방지 장치에 저장된 상기 핸들값에 대응하는 키 값을 이용해 암/복호화를 수행하는 단계를 포함하는 것을 특징으로 하는 부정조작방지 장치 접근 방법.
When executing an application, generating a first verification hash value using a file related to execution of the application;
Determining whether the integrity value of the application stored in the tamper-proof device matches the first verification hash value;
Connecting a session between the application and the tamper-proof device when the integrity value matches the first verification hash value;
Registering, as a handle value of the application, a randomly generated value every time the application is executed in the tamper-proof device; And
And performing encryption / decryption using a key value corresponding to the handle value stored in the tamper-proof device when the command has an instruction combined with the handle value. Way.
제1항에 있어서,
상기 실행에 관계된 파일은,
상기 애플리케이션 실행에 필요한 실행 파일 또는 데이터 파일 중 적어도 하나 이상을 포함하는 것을 특징으로 하는 부정조작방지 장치 접근 방법.
The method according to claim 1,
The file related to the execution is,
And an executable file or a data file necessary for executing the application.
제1항에 있어서,
상기 애플리케이션과 상기 부정조작방지 장치 간 세션을 연결하는 단계는,
상기 애플리케이션과 상기 부정조작방지 장치 간 통신을 위한 메시지 버퍼에 대하여 메모리를 할당받고, 상기 메모리의 시작 주소값을 저장하는 단계를 포함하고,
상기 애플리케이션이 실행될 때마다 랜덤(random)하게 생성되는 값을 상기 애플리케이션의 핸들값으로 등록하는 단계에서,
상기 애플리케이션이 실행될 때마다 랜덤(random)하게 생성되는 값은 상기 메모리의 시작 주소값인 것을 특징으로 하는 부정조작방지 장치 접근 방법.
The method according to claim 1,
Wherein the step of connecting the session between the application and the tamper-
And allocating a memory for a message buffer for communication between the application and the tamper-proof device, and storing a start address value of the memory,
Registering a randomly generated value as a handle value of the application each time the application is executed,
Wherein the value generated randomly each time the application is executed is a start address value of the memory.
제3항에 있어서,
상기 애플리케이션과 통신을 위한 메모리를 할당받고, 상기 메모리의 시작 주소값을 저장하는 단계는,
미들웨어에 상기 애플리케이션만 접속할 때까지 대기하는 단계; 및
상기 미들웨어에 상기 애플리케이션만 접속하는 경우, 상기 애플리케이션과 통신을 위한 메모리를 할당 받고, 상기 메모리의 시작 주소값을 저장하는 단계를 포함하는 것을 특징으로 하는 부정조작방지 장치 접근 방법.
The method of claim 3,
Wherein the step of allocating a memory for communication with the application and storing the start address value of the memory comprises:
Waiting until the application only connects to the middleware; And
And allocating a memory for communication with the application when storing only the application in the middleware, and storing the start address value of the memory.
제3항에 있어서,
상기 애플리케이션과 상기 부정조작방지 장치 간 세션을 연결하는 단계는,
설정된 시간 내에 상기 애플리케이션의 세션 연결 요청이 있는 경우, 상기 메모리의 시작 주소값을 애플리케이션에 전달하는 단계; 및
상기 애플리케이션의 식별 정보와 상기 메모리의 시작 주소값을 부정조작방지 장치에 전달하는 단계를 포함하는 것을 특징으로 하는 부정조작방지 장치 접근 방법.
The method of claim 3,
Wherein the step of connecting the session between the application and the tamper-
Transferring a start address value of the memory to an application when there is a session connection request of the application within a set time; And
And transmitting the identification information of the application and the start address value of the memory to the tamper prevention apparatus.
제1항에 있어서,
상기 핸들값은,
상기 애플리케이션이 종료되면 삭제되는 것을 특징으로 하는 부정조작방지 장치 접근 방법.
The method according to claim 1,
The handle value may be,
And when the application is terminated, it is deleted.
제1항에 있어서,
애플리케이션 실행 전,
상기 애플리케이션의 설치를 위한 애플리케이션 패키지를 수신하는 단계;
상기 애플리케이션 패키지로부터 설치 파일을 추출하여 상기 애플리케이션을 설치하는 단계;
상기 애플리케이션의 실행에 관계된 파일을 이용하여 제2 검증 해시값을 생성하는 단계;
상기 애플리케이션 패키지로부터 암호화된 원본 해시값을 추출하여 부정조작방지 장치에 저장된 비밀키를 이용해 상기 원본 해시값을 복호하는 단계;
상기 제2 검증 해시값과 상기 원본 해시값이 일치하는지 여부를 판단하는 단계; 및
상기 제2 검증 해시값과 상기 원본 해시값이 일치하는 경우, 상기 애플리케이션 설치를 완료하는 단계를 더 포함하는 것을 특징으로 하는 부정조작방지 장치 접근 방법.
The method according to claim 1,
Before running the application,
Receiving an application package for installation of the application;
Extracting an installation file from the application package and installing the application;
Generating a second verification hash value using a file associated with execution of the application;
Extracting an encrypted original hash value from the application package and decrypting the original hash value using the secret key stored in the tamper resistant device;
Determining whether the second verification hash value and the original hash value match; And
And completing the application installation if the second verification hash value matches the original hash value.
제7항에 있어서,
상기 제2 검증 해시값과 상기 원본 해시값이 일치하는 경우, 상기 제2 검증 해시값을 상기 애플리케이션의 무결성 값으로 저장하는 단계를 더 포함하는 것을 특징으로 하는 부정조작방지 장치 접근 방법.
8. The method of claim 7,
And storing the second verification hash value as the integrity value of the application if the second verification hash value and the original hash value match.
제7항에 있어서,
상기 실행에 관계된 파일은,
상기 애플리케이션 실행에 필요한 실행 파일 또는 데이터 파일 중 적어도 하나 이상을 포함하는 것을 특징으로 하는 부정조작방지 장치 접근 방법.
8. The method of claim 7,
The file related to the execution is,
And an executable file or a data file necessary for executing the application.
애플리케이션을 실행하는 애플리케이션 실행부;
상기 애플리케이션의 실행에 관계된 파일을 이용하여 제1 검증 해시값을 생성하는 무결성 검증부;
상기 무결성 값과 상기 제1 검증 해시값이 일치하는 경우, 상기 애플리케이션과 부정조작방지 장치 간 세션을 연결하는 미들웨어 처리부;
저장된 상기 애플리케이션의 무결성 값과 상기 제1 검증 해시값이 일치하는지 여부를 판단하고, 상기 무결성 값과 상기 제1 검증 해시값이 일치하는 경우, 상기 애플리케이션이 실행될 때마다 랜덤(random)하게 생성되는 값을 상기 애플리케이션의 핸들값으로 등록하며, 상기 애플리케이션으로부터 상기 핸들값이 결합된 명령이 있는 경우, 저장된 상기 핸들값에 대응하는 키 값을 이용해 암/복호화를 수행하는 부정조작방지 장치를 포함하는 것을 특징으로 하는 단말 장치.
An application execution unit for executing the application;
An integrity verification unit for generating a first verification hash value using a file related to execution of the application;
A middleware processing unit for connecting the session between the application and the unauthorized operation prevention device when the integrity value matches the first verification hash value;
And determining whether the integrity value of the stored application matches the first verification hash value, and when the integrity value matches the first verification hash value, a value randomly generated each time the application is executed And an unauthorized operation preventing device for performing an arming / decrypting operation by using a key value corresponding to the stored handle value when there is an instruction to which the handle value is combined from the application, as the handle value of the application .
제10항에 있어서,
상기 실행에 관계된 파일은,
상기 애플리케이션 실행에 필요한 실행 파일 또는 데이터 파일 중 적어도 하나 이상을 포함하는 것을 특징으로 하는 단말 장치.
11. The method of claim 10,
The file related to the execution is,
And an executable file or a data file necessary for executing the application.
제10항에 있어서,
상기 미들웨어 처리부는,
상기 애플리케이션과 부정조작방지 장치 간 통신을 위한 메시지 버퍼에 대하여 메모리를 할당받고, 상기 메모리의 시작 주소값을 저장하며,
상기 부정조작방지 장치는,
상기 메모리의 시작 주소값을 상기 애플리케이션의 핸들값으로 등록하는 것을 특징으로 하는 단말 장치.
11. The method of claim 10,
The middleware processing unit,
A memory is allocated to a message buffer for communication between the application and the tamper-proof device, a start address value of the memory is stored,
The tamper-
And registers the start address value of the memory as a handle value of the application.
제12항에 있어서,
상기 미들웨어 처리부는,
미들웨어에 상기 애플리케이션만 접속할 때까지 대기하고, 상기 미들웨어에 상기 애플리케이션만 접속하는 경우, 상기 애플리케이션과 통신을 위한 메모리를 할당 받고, 상기 메모리의 시작 주소값을 저장하는 것을 특징으로 하는 단말 장치.
13. The method of claim 12,
The middleware processing unit,
Wherein the central processing unit waits until only the application is connected to the middleware, allocates a memory for communication with the application when accessing only the application to the middleware, and stores the start address value of the memory.
제12항에 있어서,
상기 미들웨어 처리부는,
설정된 시간 내에 상기 애플리케이션의 세션 연결 요청이 있는 경우, 상기 메모리의 시작 주소값을 애플리케이션에 전달하고, 상기 애플리케이션의 식별 정보와 상기 메모리의 시작 주소값을 부정조작방지 장치에 전달하는 것을 특징으로 하는 단말 장치.
13. The method of claim 12,
The middleware processing unit,
And transmits the start address value of the memory to the application and the start address value of the memory to the tamper prevention apparatus when the session connection request of the application is made within the set time. Device.
제10항에 있어서,
상기 핸들값은,
상기 애플리케이션이 종료되면 삭제되는 것을 특징으로 하는 단말 장치.
11. The method of claim 10,
The handle value may be,
And deletes the application when the application is terminated.
제10항에 있어서,
상기 애플리케이션의 설치를 위한 애플리케이션 패키지를 수신하고, 상기 애플리케이션 패키지로부터 설치 파일을 추출하여 상기 애플리케이션을 설치하는 애플리케이션 설치부를 더 포함하고,
상기 무결성 검증부는,
상기 애플리케이션의 실행에 관계된 파일을 이용하여 제2 검증 해시값을 생성하고,
상기 부정조작방지 장치는,
상기 애플리케이션 패키지로부터 암호화된 원본 해시값을 추출하여 부정조작방지 장치에 저장된 비밀키를 이용해 상기 원본 해시값을 복호하고, 상기 제2 검증 해시값과 상기 원본 해시값이 일치하는지 여부를 판단하는 것을 특징으로 하는 단말 장치.
11. The method of claim 10,
Further comprising an application installation unit for receiving an application package for installing the application and extracting an installation file from the application package and installing the application,
The integrity verification unit,
Generating a second verification hash value using a file associated with execution of the application,
The tamper-
Extracts the encrypted original hash value from the application package, decrypts the original hash value using the secret key stored in the tamper-proof device, and determines whether the second verification hash value matches the original hash value .
제16항에 있어서,
상기 부정조작방지 장치는,
상기 제2 검증 해시값과 상기 원본 해시값이 일치하는 경우, 상기 제2 검증 해시값을 상기 애플리케이션의 무결성 값으로 저장하는 것을 특징으로 하는 단말 장치.
17. The method of claim 16,
The tamper-
And stores the second verification hash value as the integrity value of the application if the second verification hash value matches the original hash value.
제14항에 있어서,
상기 실행에 관계된 파일은,
상기 애플리케이션 실행에 필요한 실행 파일 또는 데이터 파일 중 적어도 하나 이상을 포함하는 것을 특징으로 하는 단말 장치.
15. The method of claim 14,
The file related to the execution is,
And an executable file or a data file necessary for executing the application.
KR1020130159219A 2013-12-19 2013-12-19 Method for accessing temper-proof device and apparatus enabling of the method KR101711024B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130159219A KR101711024B1 (en) 2013-12-19 2013-12-19 Method for accessing temper-proof device and apparatus enabling of the method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130159219A KR101711024B1 (en) 2013-12-19 2013-12-19 Method for accessing temper-proof device and apparatus enabling of the method

Publications (2)

Publication Number Publication Date
KR20150072007A true KR20150072007A (en) 2015-06-29
KR101711024B1 KR101711024B1 (en) 2017-02-28

Family

ID=53518115

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130159219A KR101711024B1 (en) 2013-12-19 2013-12-19 Method for accessing temper-proof device and apparatus enabling of the method

Country Status (1)

Country Link
KR (1) KR101711024B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109684839A (en) * 2018-12-19 2019-04-26 Oppo广东移动通信有限公司 Self-definition model tamper resistant method, device, terminal device and storage medium
CN110610001A (en) * 2019-08-12 2019-12-24 大箴(杭州)科技有限公司 Short text integrity identification method and device, storage medium and computer equipment
KR20210094300A (en) * 2020-01-21 2021-07-29 주식회사 행복소프트 A Method and an Apparatus for Detecting Dynamic Defacement in Application

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030085236A (en) * 2002-04-29 2003-11-05 삼성전자주식회사 Tamper-resistant method and data processing system using the same
KR20060132921A (en) * 2004-03-08 2006-12-22 지멘스 악티엔게젤샤프트 Manipulation proof production of authentic random numbers

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030085236A (en) * 2002-04-29 2003-11-05 삼성전자주식회사 Tamper-resistant method and data processing system using the same
KR20060132921A (en) * 2004-03-08 2006-12-22 지멘스 악티엔게젤샤프트 Manipulation proof production of authentic random numbers

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Rosario Gennaro et al, 'Algorithmic Tamper-Proof (ATP) Security: Theoretical Foundations for Security Against Hardware Tampering', Springer-Verlag Berlin Heidelberg 2004, pp.258-277 *
김원영 외 3인, 'USN환경에서 2단계 사용자 인증을 이용한 침입 방지 방안', 한국정보통신학회논문지 Vol.18, No. 1, 2014.01, pp.191-200 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109684839A (en) * 2018-12-19 2019-04-26 Oppo广东移动通信有限公司 Self-definition model tamper resistant method, device, terminal device and storage medium
CN110610001A (en) * 2019-08-12 2019-12-24 大箴(杭州)科技有限公司 Short text integrity identification method and device, storage medium and computer equipment
CN110610001B (en) * 2019-08-12 2024-01-23 大箴(杭州)科技有限公司 Short text integrity recognition method, device, storage medium and computer equipment
KR20210094300A (en) * 2020-01-21 2021-07-29 주식회사 행복소프트 A Method and an Apparatus for Detecting Dynamic Defacement in Application

Also Published As

Publication number Publication date
KR101711024B1 (en) 2017-02-28

Similar Documents

Publication Publication Date Title
CN108810894B (en) Terminal authorization method, device, computer equipment and storage medium
US9853957B2 (en) DRM protected video streaming on game console with secret-less application
US7546468B2 (en) Program update method and server
US7975312B2 (en) Token passing technique for media playback devices
JP5449905B2 (en) Information processing apparatus, program, and information processing system
US8214630B2 (en) Method and apparatus for controlling enablement of JTAG interface
KR101657613B1 (en) Backing up digital content that is stored in a secured storage device
US8131997B2 (en) Method of mutually authenticating between software mobility device and local host and a method of forming input/output (I/O) channel
CN113271212A (en) Certificate issuance dependent on key authentication
US9288054B2 (en) Method and apparatus for authenticating and managing application using trusted platform module
CN106936588B (en) Hosting method, device and system of hardware control lock
WO2013107362A1 (en) Method and system for protecting data
US8538890B2 (en) Encrypting a unique cryptographic entity
CN111310213A (en) Service data protection method, device, equipment and readable storage medium
CN110795126A (en) Firmware safety upgrading system
KR101817152B1 (en) Method for providing trusted right information, method for issuing user credential including trusted right information, and method for obtaining user credential
TW201530344A (en) Application program access protection method and application program access protection device
CN104104650A (en) Data file visit method and terminal equipment
CN111431840A (en) Security processing method and device
US20110154436A1 (en) Provider Management Methods and Systems for a Portable Device Running Android Platform
US20150047001A1 (en) Application program execution device
JP6199712B2 (en) Communication terminal device, communication terminal association method, and computer program
KR101711024B1 (en) Method for accessing temper-proof device and apparatus enabling of the method
US10771249B2 (en) Apparatus and method for providing secure execution environment for mobile cloud
US8755521B2 (en) Security method and system for media playback devices

Legal Events

Date Code Title Description
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: 20200128

Year of fee payment: 4