KR101624590B1 - Method and apparatus for data encryption and decryption based on rhythm - Google Patents

Method and apparatus for data encryption and decryption based on rhythm Download PDF

Info

Publication number
KR101624590B1
KR101624590B1 KR1020140160241A KR20140160241A KR101624590B1 KR 101624590 B1 KR101624590 B1 KR 101624590B1 KR 1020140160241 A KR1020140160241 A KR 1020140160241A KR 20140160241 A KR20140160241 A KR 20140160241A KR 101624590 B1 KR101624590 B1 KR 101624590B1
Authority
KR
South Korea
Prior art keywords
input
encryption key
encryption
decryption
key generation
Prior art date
Application number
KR1020140160241A
Other languages
Korean (ko)
Other versions
KR20160058573A (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 KR1020140160241A priority Critical patent/KR101624590B1/en
Publication of KR20160058573A publication Critical patent/KR20160058573A/en
Application granted granted Critical
Publication of KR101624590B1 publication Critical patent/KR101624590B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/10Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols with particular housing, physical features or manual controls

Abstract

데이터 암호화 및 복호화 방법이 개시된다. 본 발명의 일 실시예에 따른 데이터 암호화 및 복호화 방법은 암호화 키를 입력 받기 위한 복수개의 영역으로 구성된 사용자 인터페이스를 장치로부터 제공받아, 그 복수개의 영역 중 적어도 하나를 선택하는 암호화 키 생성 입력을 순차적으로 수신한 다음, 순차적으로 수신된 암호화 키 생성 입력에 대한 입력 영역, 입력 순서, 입력 지속시간, 입력 발생시간 및 입력 간격 중 적어도 하나를 이용하여 암호화 키를 생성하고, 이 암호화 키를 이용하여 데이터를 암호화한다.A data encryption and decryption method is disclosed. A method of encrypting and decrypting data according to an embodiment of the present invention includes receiving a user interface composed of a plurality of areas for receiving an encryption key from an apparatus and sequentially inputting an encryption key generation input for selecting at least one of the plurality of areas, Generates an encryption key using at least one of an input area, an input order, an input duration, an input occurrence time, and an input interval for sequentially received encryption key generation inputs, and uses the encryption key to generate data Encrypt.

Description

리듬 기반의 데이터 암호화 방법, 복호화 방법 및 그 장치 {Method and apparatus for data encryption and decryption based on rhythm}BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method and apparatus for encrypting and decrypting data based on a rhythm,

본 발명의 일 실시예는 데이터의 암호화 및 복호화에 관한 것으로, 사용자가 버튼을 터치하는 리듬을 기반으로 생성된 암호화 키를 이용하여 데이터를 암호화하는 방법, 복호화하는 방법 및 그 장치에 관한 것이다.An embodiment of the present invention relates to encryption and decryption of data, and a method and an apparatus for encrypting and decrypting data using an encryption key generated based on a rhythm in which a user touches a button.

스마트폰 어플리케이션이 다양해지고 또 메일, 금융 등의 민감한 정보를 다루게 되면서 스마트폰을 통한 개인정보 유출의 위험성이 증가하고 있다.As smartphone applications become more diverse and sensitive information such as e-mail and finance is dealt with, the risk of personal information leakage through smartphones is increasing.

파일 암호화 없이 운영체제 또는 플랫폼이 구동 중이면, 파일을 열 때 운영체제가 사용자 인증과 접근 제어 목록을 확인한다. 하지만 공격자가 직접 컴퓨터 또는 스마트폰을 조작할 수 있다면 이런 보호는 쉽게 피할 수 있다.If the operating system or platform is running without file encryption, the operating system checks the user authentication and access control lists when opening the file. However, this protection is easily avoided if an attacker can manipulate the computer or smartphone directly.

예를 들어 그 파일만을 분리하여 그 파일 시스템을 볼 수 있는 운영체제를 설치한 다른 기기에서 확인하여 손쉽게 파일 시스템에 접근할 수 있다.For example, you can easily access the file system by checking it on another device that has an operating system that can separate the file and view the file system.

이러한 문제점 때문에, PC 뿐만 아니라, 스마트폰에서의 파일 암호화가 요구되고 있다. 스마트폰 외에도 태블릿 PC, 외장하드 등 다양한 전자기기에서 파일 암호화 프로세스가 적용되고 있는 추세이다.Due to these problems, file encryption is required not only in PCs but also in smart phones. In addition to smartphones, file encryption processes are being applied to various electronic devices such as tablet PCs and external hard disks.

본 발명의 일 실시예의 목적은 사용자가 버튼을 터치하는 리듬을 기반으로 생성된 암호화 키를 이용하여 데이터를 암호화함으로써 암호화 키 생성에 있어서의 사용자 편의성을 높여주는 리듬 기반의 데이터 암호화 방법, 복호화 방법 및 그 장치를 제공하는 것이다. An object of an embodiment of the present invention is to provide a rhythm-based data encryption method, a decryption method, and a method for encrypting data by encrypting data using a cryptographic key generated based on a rhythm by which a user touches a button, And to provide such a device.

상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 데이터 암호화 방법은 암호화 키를 입력 받기 위한 복수개의 영역으로 구성된 사용자 인터페이스를 제공하는 단계; 상기 복수개의 영역 중 적어도 하나를 선택하는 암호화 키 생성 입력을 순차적으로 수신하는 단계; 상기 순차적으로 수신된 암호화 키 생성 입력에 대한 입력 영역, 입력 순서, 입력 지속시간, 입력 발생시간 및 입력 간격 중 적어도 하나를 이용하여 암호화 키를 생성하는 단계; 및 상기 암호화 키를 이용하여 상기 데이터를 암호화하는 단계를 포함한다. According to another aspect of the present invention, there is provided a data encryption method comprising: providing a user interface including a plurality of areas for receiving an encryption key; Sequentially receiving an encryption key generation input for selecting at least one of the plurality of areas; Generating an encryption key using at least one of an input area, an input order, an input duration, an input occurrence time, and an input interval for the sequentially received encryption key generation input; And encrypting the data using the encryption key.

바람직하게는, 본 발명의 일 실시예에 따른 데이터 암호화 방법은 보안 레벨 정보를 수신하는 단계를 더 포함하고, 상기 사용자 인터페이스 내의 상기 복수개의 영역은 상기 보안 레벨 정보의 보안 레벨이 높아질수록 보다 많은 개수의 영역으로 구분될 수 있다. Preferably, the data encryption method according to an exemplary embodiment of the present invention further includes receiving security level information, and the plurality of areas in the user interface are configured such that the higher the security level of the security level information is, As shown in FIG.

바람직하게는, 상기 첫 번째 암호화 키 생성 입력이 있는 때부터 상기 마지막 암호화 키 생성 입력이 있는 때까지의 시간 간격을 나타내는 총 입력시간을 수신하는 단계를 더 포함하고, 상기 암호화 키는 상기 총 입력시간이 경과함으로써 생성될 수 있다. Preferably, the method further comprises receiving a total input time indicating a time interval from when the first encryption key generation input is present to when the last encryption key generation input is present, Can be generated by elapsing.

바람직하게는, 상기 암호화 키는 상기 사용자 인터페이스에 포함된 입력 완료 영역 또는 별도로 구비된 입력 완료 버튼을 선택함으로써 생성될 수 있다. Preferably, the encryption key may be generated by selecting an input completion area included in the user interface or a separately provided input completion button.

바람직하게는, 상기 암호화 키 생성 입력은 상기 복수개의 영역 중 적어도 2개를 동시에 선택하는 입력을 포함할 수 있다. Advantageously, said encryption key generation input may comprise an input for simultaneously selecting at least two of said plurality of areas.

바람직하게는, 상기 암호화된 데이터는 128비트, 192비트 및 256비트 중 하나의 크기를 갖는 데이터 단위로 AES(Advanced Encryption Standard) 알고리즘에 따라 암호화될 수 있다. Advantageously, the encrypted data may be encrypted according to an Advanced Encryption Standard (AES) algorithm in units of data having a size of one of 128 bits, 192 bits and 256 bits.

바람직하게는, 본 발명의 일 실시예에 따른 데이터 암호화 방법은 상기 데이터를 암호화하는 단계 이후에 상기 암호화 키를 변경하는 단계; 및 상기 암호화된 데이터 및 상기 변경된 암호화 키를 복호화 장치에게 전송하는 단계를 더 포함하고, 상기 암호화 키를 변경하는 단계는 시간에 따라 복수의 영역 각각에 할당되는 변동되는 고유값을 정의하는 키 테이블에 기초하여 암호화 키를 구성하는 복수의 암호화 키 생성 입력 중에서 적어도 하나의 입력 값을 변경하는 단계; 및 상기 변경된 암호화 키 생성 입력에 기초하여 변경된 암호화 키를 생성하는 단계를 포함한다. Preferably, the method of encrypting data according to an embodiment of the present invention includes: changing the encryption key after encrypting the data; And transmitting the encrypted data and the modified encryption key to a decryption apparatus, wherein the step of changing the encryption key comprises the steps of: Modifying at least one input value among a plurality of encryption key generation inputs configuring an encryption key based on the input values; And generating a modified encryption key based on the changed encryption key generation input.

또한, 상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 복호화 방법은 복호화 키를 입력 받기 위한 복수개의 영역으로 구성된 사용자 인터페이스를 제공하는 단계; 상기 복수개의 영역 중 적어도 하나를 선택하는 복호화 키 생성 입력을 순차적으로 수신하는 단계; 상기 순차적으로 수신된 복호화 키 생성 입력에 대한 입력 영역, 입력 순서, 입력 지속시간, 입력 발생시간 및 입력 간격 중 적어도 하나를 이용하여 복호화 키를 생성하는 단계; 암호화된 데이터에 적용된 암호화 키와 상기 복호화 키를 비교하는 단계; 및 상기 비교 결과에 기초하여, 상기 암호화된 데이터를 선택적으로 복호화하는 단계를 포함한다. According to another aspect of the present invention, there is provided a method of providing a user interface including a plurality of areas for receiving a decryption key, Sequentially receiving a decryption key generation input for selecting at least one of the plurality of areas; Generating a decryption key using at least one of an input region, an input order, an input duration, an input occurrence time, and an input interval for the sequentially received decryption key generation input; Comparing the encryption key applied to the encrypted data with the decryption key; And selectively decoding the encrypted data based on the comparison result.

또한, 상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 암호화 장치는 암호화 키를 입력 받기 위한 복수개의 영역으로 구성된 사용자 인터페이스를 제공하는 암호 인터페이스 제공부; 상기 복수개의 영역 중 적어도 하나를 선택하는 암호화 키 생성 입력을 순차적으로 수신하는 암호화 키 수신부; 상기 순차적으로 수신된 암호화 키 생성 입력에 대한 입력 영역, 입력 순서, 입력 지속시간, 입력 발생시간 및 입력 간격 중 적어도 하나를 이용하여 암호화 키를 생성하는 암호화 키 생성부; 및 상기 암호화 키를 이용하여 상기 데이터를 암호화하는 암호화부를 포함한다. According to another aspect of the present invention, there is provided an encryption apparatus comprising: a cryptographic interface providing a user interface configured to receive a cryptographic key; An encryption key receiving unit for sequentially receiving an encryption key generation input for selecting at least one of the plurality of areas; An encryption key generation unit for generating an encryption key using at least one of an input area, an input order, an input duration, an input occurrence time, and an input interval for the sequentially received encryption key generation input; And an encryption unit encrypting the data using the encryption key.

또한, 상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 복호화 장치는 복호화 키를 입력 받기 위한 복수개의 영역으로 구성된 사용자 인터페이스를 제공하는 복호 인터페이스 제공부; 상기 복수개의 영역 중 적어도 하나를 선택하는 복호화 키 생성 입력을 순차적으로 수신하는 복호화 키 수신부; 상기 순차적으로 수신된 복호화 키 생성 입력에 대한 입력 영역, 입력 순서, 입력 지속시간, 입력 발생시간 및 입력 간격 중 적어도 하나를 이용하여 복호화 키를 생성하는 복호화 키 생성부; 암호화된 데이터에 적용된 암호화 키와 상기 복호화 키를 비교하는 비교부; 및 상기 비교 결과에 기초하여 상기 암호화된 데이터를 선택적으로 복호화하는 복호화부를 포함한다. According to another aspect of the present invention, there is provided a decoding apparatus including a decoding interface providing a user interface including a plurality of areas for receiving a decoding key; A decryption key receiving unit for sequentially receiving a decryption key generating input for selecting at least one of the plurality of areas; A decryption key generation unit for generating a decryption key using at least one of an input area, an input order, an input duration, an input occurrence time, and an input interval for the sequentially received decryption key generation input; A comparing unit comparing the decryption key with an encryption key applied to the encrypted data; And a decryption unit for selectively decrypting the encrypted data based on the comparison result.

본 발명의 일 실시예는 사용자로부터 버튼을 터치하는 리듬을 키로 이용하여 암호화 키를 생성함으로써 행동기억에 의존하는 암호화 및 복호화 키 생성 방법을 제공하고, 이를 통해 제3자에게 낮은 기억 수용량을 보장하며 사용자에게는 높은 사용자 편의성과 기억 지속성을 가지는 암호화 키 생성 방법을 제공한다. One embodiment of the present invention provides a method of generating an encryption and decryption key that relies on behavioral memory by generating an encryption key using a rhythm that touches a button from a user as a key, thereby assuring a low memory capacity to a third party And provides a method for generating an encryption key with high user convenience and memory persistence for the user.

또한, 본 발명의 다른 실시예에 따르면 암호화된 데이터에 적용된 암호화 키에 대응되는 복수의 암호화 키 생성 입력의 값 중 적어도 하나의 값을 변경하고 그 변경된 암호화 키 생성 입력에 기초한 암호화 키와 암호화된 데이터를 전송함으로써, 제3자가 암호화 키를 분석하여 암호화 키를 복원할 수 있는 가능성을 최소화하는 효과가 있다. According to another embodiment of the present invention, at least one value of the plurality of encryption key generation inputs corresponding to the encryption key applied to the encrypted data is changed, and an encryption key based on the changed encryption key generation input and the encrypted data Thereby minimizing the possibility that the third party can analyze the encryption key to restore the encryption key.

도 1은 본 발명의 일 실시예에 따른 데이터 암호화 방법을 설명하기 위하여 도시한 흐름도이다.
도 2는 본 발명의 일 실시예에 따른 암호화 키 생성 방법을 설명하기 위하여 도시한 도면이다.
도 3은 본 발명의 일실시예에 따라 암호화된 데이터를 전송하는 방법을 설명하기 위하여 도시한 흐름도이다.
도 4는 본 발명의 일 실시예에 따른 데이터 복호화 방법을 도시한 흐름도이다.
도 5는 본 발명의 일 실시예에 따른 데이터 암호화 장치를 도시한 도면이다.
도 6은 본 발명의 일 실시예에 따른 데이터 복호화 장치를 도시한 도면이다.
도 7은 본 발명의 일 실시예에 따라 암호화 키를 입력 받기 위한 사용자 인터페이스 관련 설정을 수행하는 방법을 설명하기 위하여 도시한 도면이다.
도 8은 본 발명의 일 실시예에 따른 복호화 과정을 설명하기 위하여 도시한 도면이다.
1 is a flowchart illustrating a data encryption method according to an embodiment of the present invention.
FIG. 2 is a diagram for explaining a method of generating an encryption key according to an embodiment of the present invention. Referring to FIG.
3 is a flowchart illustrating a method for transmitting encrypted data according to an embodiment of the present invention.
4 is a flowchart illustrating a data decoding method according to an embodiment of the present invention.
5 is a diagram illustrating a data encryption apparatus according to an embodiment of the present invention.
6 is a diagram illustrating a data decoding apparatus according to an embodiment of the present invention.
FIG. 7 is a diagram illustrating a method for performing a user interface-related setting for receiving an encryption key according to an embodiment of the present invention. Referring to FIG.
FIG. 8 is a diagram illustrating a decoding process according to an embodiment of the present invention. Referring to FIG.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail. It is to be understood, however, that the invention is not to be limited to the specific embodiments, but includes all changes, equivalents, and alternatives falling within the spirit and scope of the invention. Like reference numerals are used for like elements in describing each drawing.

제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수개의 관련된 기재된 항목들의 조합 또는 복수개의 관련된 기재된 항목들 중의 어느 항목을 포함한다.The terms first, second, A, B, etc. may be used to describe various elements, but the elements should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component. And / or < / RTI > includes any combination of a plurality of related listed items or any of a plurality of related listed items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.It is to be understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, . On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수개의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used in this application is used only to describe a specific embodiment and is not intended to limit the invention. The singular expressions include plural expressions unless the context clearly indicates otherwise. In the present application, the terms "comprises" or "having" and the like are used to specify that there is a feature, a number, a step, an operation, an element, a component or a combination thereof described in the specification, But do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the contextual meaning of the related art and are to be interpreted as either ideal or overly formal in the sense of the present application Do not.

이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
Hereinafter, preferred embodiments according to the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 데이터 암호화 방법을 설명하기 위하여 도시한 흐름도이다.1 is a flowchart illustrating a data encryption method according to an embodiment of the present invention.

단계 110에서는, 암호화 장치가 암호화 키를 입력 받기 위한 복수개의 영역으로 구성된 사용자 인터페이스를 제공한다.In step 110, the encryption apparatus provides a user interface composed of a plurality of areas for receiving the encryption key.

장치는 어떠한 종류의 전자기기라도 상관없으나, 터치 또는 클릭을 통한 정보를 입력 받을 수 있는 입력장치가 부가되어 있어야 한다. 스마트폰, 태블릿 PC, 외장하드 등 다양한 장비가 이에 해당될 수 있다.The device may be any kind of electronic device, but an input device capable of receiving information through touch or click must be added. Smart phones, tablet PCs, and external hard drives.

복수개의 영역은 영역별로 어떠한 형태 또는 크기로 구분되어도 상관없으나, 동일한 면적과 동일 모양을 가진 영역으로 구분하는 것이 전형적인 형태가 될 것이다.The plurality of areas may be classified into any form or size by area, but it is a typical form to be divided into areas having the same area and shape.

제공된 사용자 인터페이스를 구성하는 영역의 수는 보안레벨에 따라서 달라질 수 있다. 즉, 보안레벨이 높아질수록 분할되는 영역의 개수는 많아지고 보안레벨이 낮아질수록 영역의 개수가 적어지게 설정할 수 있다. 영역의 개수가 많아질수록 보안 설정이 복잡해지고, 암호화 정보를 모르는 제3자가 임의로 암호화된 데이터를 복호화할 수 있는 확률이 줄어들게 된다.The number of areas constituting the provided user interface may vary depending on the security level. That is, as the security level increases, the number of divided areas increases, and as the security level decreases, the number of areas decreases. As the number of areas increases, the security setting becomes complicated, and the probability that a third party who does not know the encryption information can decrypt randomly encrypted data is reduced.

보안레벨은 장치 관리자 또는 사용자가 사용자 인터페이스를 통하여 임의로 등록하도록 할 수 있다.The security level can be arbitrarily registered by the device manager or the user through the user interface.

단계 120에서는, 암호화 장치가 그 복수개의 영역 중 적어도 하나를 선택하는 암호화 키 생성 입력을 순차적으로 수신한다.In step 120, the encryption apparatus sequentially receives an encryption key generation input for selecting at least one of the plurality of areas.

여기서, 선택이란 특정 영역을 선택함으로써 해당 영역에 대한 고유 정보를 인식하도록 하는 것으로서, 스마트 폰, 태블릿 PC 등에는 사용자가 손 등 신체, 터치펜 등을 이용하여 터치함으로써 선택이 가능하고 노트북, PC 등에는 마우스를 통한 클릭으로 가능하다. 선택은 입력기기의 입력 방식에 따라서 다양한 방법으로 할 수 있다.Here, the selection is to select a specific area so as to recognize unique information about the area. The smart phone, the tablet PC, and the like can be selected by touching the user using a body such as a hand or a touch pen, Is possible by clicking through the mouse. Selection can be made in various ways depending on the input method of the input device.

암호화 키 생성 입력에는 두 가지 이상의 영역에 대한 정보의 입력이 동시에 있는 경우도 포함한다.The encryption key generation input also includes the case where information on two or more areas is input at the same time.

암호화 키 생성 입력이란 암호화를 위하여 복수개의 영역 중 적어도 하나를 선택하는 키 입력을 뜻한다.An encryption key generation input is a key input for selecting at least one of a plurality of areas for encryption.

단계 130에서는, 암호화 장치가 순차적으로 수신된 암호화 키 생성 입력에 대한 입력 영역, 입력 순서, 입력 지속시간, 입력 발생시간 및 입력 간격 중 적어도 하나를 이용하여 암호화 키를 생성한다.In step 130, the encryption apparatus generates an encryption key using at least one of an input area, an input order, an input duration, an input occurrence time, and an input interval for an encryption key generation input sequentially received.

암호화 키는 미리 저장된 영역에 대한 입력 영역, 입력 순서, 입력 지속시간, 입력 발생시간 및 입력 간격에 관한 정보로서 사용자 인증의 기준이 되는 정보를 뜻한다. 암호화 키는 시스템 설정 초기에 시스템 제작자에 의하여 등록될 수도 있으나, 정당한 권한이 있는 사용자에 의해서도 등록될 수 있다.The encryption key is information about an input area, an input order, an input duration, an input occurrence time, and an input interval for a previously stored area, and is information on which user authentication is based. The encryption key may be registered by the system maker at the beginning of the system configuration, but may also be registered by the authorized user.

암호화 장치가 암호화 키 생성 입력을 한정하기 위하여 암호화 키 생성 입력의 완료를 인지하여야 하는데, 본 발명의 일 실시예에 따르면 일련의 암호화 키 생성 입력 중 가장 마지막의 입력이 완료되고 소정 시간이 지나면 전체 암호화 키 생성 입력이 완료된 것으로 인지할 수 있다. The encryption device must recognize the completion of the encryption key generation input in order to define the encryption key generation input. According to the embodiment of the present invention, after the last input of the series of encryption key generation inputs is completed and the predetermined time has elapsed, It can be recognized that the key generation input is completed.

또한, 암호화 키 생성 입력의 완료를 인지하는 다른 실시예에 따르면 암호화 키 생성 입력을 모두 완료한 후 별도의 입력 완료 영역을 선택하는 경우에 한하여 암호화 키 생성 입력이 완료된 것으로 인지할 수 있다. According to another embodiment of the present invention, it is recognized that the encryption key generation input is completed only when all the encryption key generation inputs are completed and a separate input completion area is selected.

마지막으로, 암호화 키 생성 입력의 완료를 인지하는 또 다른 실시예에 따르면 암호화 키 생성 입력을 위한 총 입력 시간을 미리 설정해 두고, 첫 번째 암호화 키 생성 입력이 있는 때부터 총 입력 시간이 경과하면 암호화 키 생성 입력이 완료된 것으로 인지할 수 있다. According to another embodiment of the present invention, when the total input time elapses from when the first encryption key generation input is input to the encryption key generation input, It can be recognized that the generation input is completed.

총 입력 시간은 장치 관리자 또는 암호화 키 생성 입력을 하는 자가 사용자 인터페이스를 통하여 임의로 등록하도록 할 수 있다.The total input time may be arbitrarily registered by a device manager or a person who inputs an encryption key generation input through a user interface.

단계 140에서는, 암호화 장치가 생성된 암호화 키를 이용하여 데이터를 암호화한다.In step 140, the encryption device encrypts the data using the generated encryption key.

데이터의 암호화는 기존의 다양한 방법이 이용되고 있다. 일반적으로 사용되는 암호화 알고리즘은 SEED, AES(Advanced Encryption Standard), RSA 등 다양한 알고리즘이 사용될 수 있다. Various methods of encrypting data have been used. A variety of algorithms such as SEED, Advanced Encryption Standard (AES), and RSA can be used as the commonly used encryption algorithms.

바람직하게는, AES 알고리즘이 사용될 수 있는데, AES는 기존의 DES의 취약점을 극복하고자 개발된 알고리즘으로, 지금까지 알려진 모든 블록 암호 알고리즘에 대한 모든 공격 방법에 대해 안전하게 설계되었으며, 하드웨어나 스프트웨어 구현시 속도나 코드 압축 면에서 효율적이므로 스마트 카드와 같은 응용에 적합하다는 장점이 있다.Preferably, the AES algorithm can be used. AES is an algorithm developed to overcome the existing DES vulnerability. It is designed to be safe against all attack methods for all known block cipher algorithms. It is advantageous in applications such as a smart card because it is efficient in compression of the code.

AES는 128비트, 192비트 및 256비트 중 하나의 크기를 갖는 데이터 단위로 데이터를 암호화한다.AES encrypts data in units of data with a size of either 128 bits, 192 bits, or 256 bits.

도 2는 본 발명의 일 실시예에 따른 암호화 키 생성 방법을 설명하기 위하여 도시한 도면이다.FIG. 2 is a diagram for explaining a method of generating an encryption key according to an embodiment of the present invention. Referring to FIG.

첫번째 단계에서, 리듬키 입력의 초기 화면이 출력되는데, 이 초기화면이 암호화 키를 입력 받기 위한 사용자 인터페이스이다. In the first step, an initial screen of the rhythm key input is output, which is the user interface for receiving the encryption key.

두번째 단계에서는, 사용자가 E버튼을 터치하여 E버튼이 활성화된다. In the second step, the user touches the E button to activate the E button.

세번째 단계에서는, 사용자가 B, E 버튼을 동시에 터치하여 B, E 버튼이 활성화된다. In the third step, the B and E buttons are activated by the user simultaneously touching the B and E buttons.

네번째 단계에서는, 사용자가 A, C 버튼을 동시에 터치하여 A, C 버튼이 활성화된다. In the fourth step, the A and C buttons are activated by the user simultaneously touching the A and C buttons.

다섯번째 단계에서는, 리듬키 입력 완료 화면이 출력된다. In the fifth step, a rhythm key input completion screen is displayed.

즉, 도 2에서는 (E), (B, E), (A, C)를 암호화 키 생성 입력으로서 입력되고, 이에 기초하여 암호화 키가 생성되게 된다. That is, in FIG. 2, (E), (B, E), and (A, C) are input as an encryption key generation input, and an encryption key is generated based thereon.

마지막으로, 도 2에는 도시되지 않았지만 그 생성된 암호화 키를 이용하여 데이터를 암호화하게 된다. Finally, although not shown in FIG. 2, data is encrypted using the generated encryption key.

한편, 본 발명의 다른 실시예에 따르면 데이터를 암호화한 후 암호화된 데이터를 복호화 장치로 전송할 수 있다. According to another embodiment of the present invention, after encrypting the data, the encrypted data may be transmitted to the decryption apparatus.

암호화된 데이터는 데이터의 전송 등 데이터의 이동 없이 암호화된 그 장치에서 데이터가 복호화 되는 경우도 있겠지만, 제3자 또는 암호화 장치 외의 다른 복호화 장치로 이동되어 복호화가 되는 경우도 예상할 수 있다.The encrypted data may be decrypted by moving to a decryption apparatus other than the third party or the encryption apparatus, although data may be decrypted in the encrypted apparatus without data movement such as data transmission.

데이터 전송 시 암호화 된 데이터뿐만 아니라 암호화 키도 함께 전송할 수 있는데, 이하에서는 도 3을 참조하여 암호화 키를 암호화된 데이터와 함께 전송하는 경우에 대한 암호화 데이터 전송 방법을 설명한다.In addition to the encrypted data, it is also possible to transmit the encrypted data together with the encrypted data. Hereinafter, an encrypted data transmission method for transmitting the encrypted key together with the encrypted data will be described with reference to FIG.

도 3은 본 발명의 일 실시예에 따라 암호화된 데이터를 전송하는 방법을 설명하기 위하여 도시한 흐름도이다.3 is a flowchart illustrating a method for transmitting encrypted data according to an embodiment of the present invention.

단계 310에서는, 암호화 장치가 암호화 키를 이용하여 데이터를 암호화 한다.In step 310, the encryption device encrypts the data using the encryption key.

전술하였듯이, 암호화 장치는 AES 알고리즘을 사용하여 128비트, 192비트 및 256비트 중 하나의 크기를 갖는 데이터 단위로 데이터를 암호화할 수 있다.As described above, the encryption apparatus can encrypt data in units of data having a size of one of 128 bits, 192 bits, and 256 bits using the AES algorithm.

단계 320에서는, 암호화 장치가 시간에 따라 복수의 영역 각각에 할당되는 변동되는 고유값을 정의하는 키 테이블에 기초하여 암호화 키를 구성하는 복수의 암호화 키 생성 입력 중에서 적어도 하나의 입력 값을 변경한다. In step 320, the encryption apparatus changes at least one input value among a plurality of encryption key generation inputs configuring an encryption key based on a key table defining a time-varying eigenvalue that is assigned to each of the plurality of areas over time.

예컨대, 도 2에서 고유값이 A로 설정되었던 영역이 10초 후에는 고유값이 B로 변동될 수 있고, 키 테이블에는 A로 설정된 영역이 최초 암호화 키 생성 입력이 수신된 후 10초 후에는 B로 변동된다는 규칙이 포함될 수 있다. 이 경우에는, 암호화 장치는 사용자가 최초로 암호화 키 생성 입력을 입력한 후 10초 후에 A라는 고유값이 할당된 영역을 선택하더라도 B라는 고유값을 선택한 것으로 암호화 키 생성 입력의 입력 값을 변경하게 된다. For example, in FIG. 2, the eigenvalue may be changed to B after 10 seconds of the area where the eigenvalue is set to A, and the area set to A in the key table may be changed to B after 10 seconds after the initial encryption key generation input is received The rule may be changed. In this case, even if the user selects the area assigned the unique value A 10 seconds after the user inputs the encryption key generation input for the first time, the encryption device selects the unique value of B and changes the input value of the encryption key generation input .

이와 같이, 암호화 키 생성 입력 중 적어도 하나의 입력 값을 키 테이블에 기초하여 변경하는 이유는 키 테이블을 공유하는 당사자만이 암호화 키를 인지할 수 있게 하기 위한 것이다. 즉, 제3자가 암호화된 데이터와 함께 전송되는 암호화 키를 획득하더라도 키 테이블을 소지하지 않은 이상 원래의 암호화 키를 파악할 수 없게 된다. 여기서 반드시 전제되어야 할 것은 키 테이블을 암호화 하는 측과 복호화 하는 측이 데이터 복호화 전에 공유할 수 있어야 하며, 이는 데이터 전송 시 같이 전송되어서는 안 된다는 점이다.As such, the reason for changing at least one input value of the encryption key generation input based on the key table is that only the party sharing the key table can recognize the encryption key. That is, even if the third party obtains the encryption key transmitted together with the encrypted data, the original encryption key can not be grasped unless the third party holds the key table. It should be noted that the key table must be shared between the encrypting side and the decrypting side before decrypting the data, and it should not be transmitted at the time of data transmission.

단계 330에서는, 암호화 장치가 그 변경된 암호화 키 생성 입력에 기초하여 변경된 암호화 키를 생성한다. In step 330, the encryption apparatus generates a modified encryption key based on the changed encryption key generation input.

단계 340에서는, 암호화 장치가 암호화된 데이터 및 변경된 암호화 키를 복호화 장치에게 전송한다. In step 340, the encryption apparatus transmits the encrypted data and the changed encryption key to the decryption apparatus.

이때, 복호화 장치는 암호화된 데이터 및 변경된 암호화 키를 수신하게 되면, 그 변경된 암호화 키와 키 테이블을 이용하여 암호화된 데이터에 적용된 암호화 키를 복원한 후, 그 복원된 암호화 키를 이용하여 암호화된 데이터를 복호화하게 된다.At this time, upon receiving the encrypted data and the changed encryption key, the decryption apparatus restores the encryption key applied to the encrypted data using the changed encryption key and the key table, and then encrypts the encrypted data using the recovered encryption key .

도 4는 본 발명의 일 실시예에 따른 데이터 복호화 방법을 도시한 흐름도이다.4 is a flowchart illustrating a data decoding method according to an embodiment of the present invention.

단계 410에서는, 복호화 장치가 복호화 키를 입력 받기 위한 복수개의 영역으로 구성된 사용자 인터페이스를 제공한다.In step 410, the decryption apparatus provides a user interface composed of a plurality of areas for receiving a decryption key.

단계 420에서는, 복호화 장치가 복수개의 영역 중 적어도 하나를 선택하는 복호화 키 생성 입력을 순차적으로 수신한다.In step 420, the decryption apparatus sequentially receives a decryption key generation input for selecting at least one of the plurality of areas.

단계 430에서는, 복호화 장치가 순차적으로 수신된 복호화 키 생성 입력에 대한 입력 영역, 입력 순서, 입력 지속시간, 입력 발생시간 및 입력 간격 중 적어도 하나를 이용하여 복호화 키를 생성한다.In operation 430, the decoding apparatus generates a decryption key by using at least one of an input region, an input order, an input duration, an input occurrence time, and an input interval for a decryption key generation input sequentially received.

생성된 복호화 키는 후술하듯이, 암호화 키와 비교하여 이를 기초로 선택적으로 데이터를 복호화 하기 위하여 사용된다.The generated decryption key is used to selectively decrypt data based on the decryption key as compared with an encryption key, as described later.

복호화 키 생성도 암호화 키 생성 입력과 마찬가지로, 복호화 키 입력을 완료 하거나 입력 완료 버튼을 누르거나 총 입력시간이 지남으로써 복호화 키가 생성될 수 있다.Decryption key generation As with the encryption key generation input, the decryption key can be generated by completing the decryption key input, pressing the input complete button, or passing the total input time.

하지만 입력 완료 영역 또는 입력 완료 버튼을 누르는 것도 불편할 수 있기에 또 다른 실시예에서는 입력 버튼 없이 후술하는 임계치에 기초해서 복호화 키 생성 입력의 완료를 인지할 수 있는 실시예가 제시된다. 그 실시예는 복호화 키 생성 입력의 마지막 입력의 지속시간을 길게 하도록 설정하고, 후술하는 지속시간 오차값을 다른 입력과 비교하여 충분히 긴 시간으로 설정하는 방법을 제시한다.However, since it may be inconvenient to press the input completion area or the input complete button, another embodiment provides an embodiment that can recognize the completion of the decryption key generation input based on a threshold value described later without an input button. The embodiment proposes a method for setting the duration of the last input of the decryption key generation input to be long, and setting the duration time error value to be described later to a sufficiently long time by comparing it with another input.

그 또 다른 실시예에서, 복호화 키 생성 입력에 있어 긴 지속시간을 갖는 입력이 있으면 장치는 이로써 복호화 키 생성 입력이 종료되었음을 알게 된다. 또한, 지속시간 오차값을 충분히 길게 하여 복호화 키 생성 입력의 마지막 입력의 입력 지속 시간과 이에 대응하는 암호화 키 생성 입력의 마지막 정보의 입력 지속 시간이 동일한 것으로 간주하여 의도된 긴 지속시간의 입력으로 인하여 사용자 인증이 거절되는 것을 방지한다.In yet another embodiment, if there is an input with a long duration in the decryption key generation input, the device will thereby know that the decryption key generation input has ended. Also, since the duration time error value is sufficiently long to allow the input duration of the last input of the decryption key generation input to be equal to the input duration of the last information of the corresponding encryption key generation input, Thereby preventing user authentication from being rejected.

단계 440에서는, 복호화 장치가 복호화 키를 암호화 키와 비교한다.In step 440, the decryption apparatus compares the decryption key with the encryption key.

복호화 키와 암호화 키를 비교하는 일 실시예는, 순차적으로 수신된 복호화 키 생성 입력에 대한 입력 영역, 입력 순서, 입력 지속시간, 입력 발생시간 및 입력 간격 중 적어도 하나를 이에 대응되는 순차적으로 수신된 암호화 키 생성 입력에 대한 입력 순서, 입력 지속시간, 입력 발생시간 및 입력 간격 중 적어도 하나와 비교한다.One embodiment for comparing a decryption key with an encryption key is to compare at least one of an input region, an input order, an input duration, an input occurrence time, and an input interval to sequentially received decryption key generation inputs, And compares it with at least one of an input sequence for an encryption key generation input, an input duration, an input occurrence time, and an input interval.

단계 450에서는, 복호화 장치가 그 비교 결과에 기초하여 암호화된 데이터를 선택적으로 복호화 한다.In step 450, the decryption apparatus selectively decrypts the encrypted data based on the comparison result.

이때, 복호화 장치는 암호화 키와 복호화 키가 일치하는 경우에는 암호화된 데이터를 복호화할 수 있지만, 일치하지 않는 경우에는 암호화된 데이터를 복호화할 수 없다. At this time, the decryption apparatus can decrypt the encrypted data if the encryption key and the decryption key match, but can not decrypt the encrypted data if they do not coincide.

여기에서, 비교는 암호화 키 생성 입력의 입력 영역, 입력 순서, 입력 지속시간, 입력 발생시간 및 입력 간격 중 적어도 하나를 복호화 키 생성 입력의 입력 순서, 입력 지속시간, 입력 발생시간 및 입력 간격과 비교하여 일치하는 경우 암호화된 데이터를 복호화할 수 있다.Here, the comparison compares at least one of the input area, the input order, the input duration, the input occurrence time, and the input interval of the encryption key generation input with the input order of the decoding key generation input, the input duration, the input occurrence time, and the input interval So that the encrypted data can be decrypted.

바람직하게는, 입력 영역, 입력 순서, 입력 지속시간, 입력 발생시간 및 입력 간격 모두를 비교하여 하나라도 불일치하게 되는 경우에는 데이터의 복호화는 수행할 수 없게 된다. Preferably, if the input region, the input order, the input duration, the input occurrence time, and the input interval are all compared, and if any one of them is inconsistent, the data can not be decoded.

데이터 복호화는 사용자의 민감도 설정에 기초하여 수행될 수 있다. 민감도 설정이란 암호화 키와 복호화 키의 비교 결과 불일치가 있을 경우 그 불일치를 어느 범위에서 일치되는 것으로 볼 것인가에 관한 것이다. The data decryption may be performed based on the sensitivity setting of the user. Sensitivity setting refers to a range in which a mismatch is regarded as being matched when there is a mismatch result between the encryption key and the decryption key.

암호화 키와 복호화 키는 완벽히 일치할 수 없기에 미리 설정된 오차 범위 내의 불일치가 있는 경우에는 일치하는 것으로 설정할 수 있다. 이 오차 범위를 넓게 설정할 경우 비교 결과가 일치하는 것으로 판단되는 범위가 넓을 것이고, 오차 범위를 좁게 설정할 경우에는 비교 결과가 일치하는 것으로 판단되는 범위가 좁아지게 될 것이다. 여기서 오차 범위를 오차 임계치라고 명명할 수 있다.Since the encryption key and the decryption key can not perfectly coincide with each other, they can be set to coincide when there is a mismatch within a predetermined error range. If the error range is set to be wide, the range in which the comparison results are determined to be consistent will be wide, and if the error range is set to be narrow, the range in which the comparison results are determined to be consistent will be narrowed. Here, the error range can be referred to as an error threshold value.

여기에서 오차를 정의하는데 비교되는 대상은 복호화 키에 포함되는 순차적인 복호화 키 입력의 각각의 값과 대응되는 암호화 키에 포함되는 암호화 키 생성 입력의 각각의 값을 비교한다.The object to be compared in defining the error is to compare each value of the sequential decryption key input included in the decryption key with each value of the encryption key generation input included in the corresponding encryption key.

복호화 키 생성 입력의 각 값과 암호화 키 생성 입력의 각 값을 비교하여 그것이 오차 임계치 범위 내에 있다고 판단할 경우에는 사용자가 정당한 권한이 있는 것으로 보아 데이터를 복호화할 수 있다. When each value of the decryption key generation input is compared with each value of the encryption key generation input and it is judged that the value is within the error threshold range, the user can decrypt the data considering that the user has the proper authority.

예를 들어, n-1 번째 복호화 키 생성 입력의 지속시간이 0.3초로 수신되었고, 이에 대응하는 n-1 번째 암호화 키 생성 입력의 지속시간이 0.5초로 등록되어 있으며, 복호화 장치에 오차 임계치가 0.1초로 설정된 경우, 오차는 0.2초이기 때문에 n-1 번째 입력은 다른 입력 유형으로 판단될 수 있다.For example, if the duration of the (n-1) th decryption key generation input is received in 0.3 seconds, the corresponding duration of the (n-1) th encryption key generation input is registered as 0.5 second, and the decryption apparatus has an error threshold of 0.1 seconds If set, the error is 0.2 second, so the n-1 th input can be judged to be of the other input type.

오차 임계치가 커질수록 보안이 약화되고 임계치가 작을수록 보안이 강화되나, 임계치를 지나치게 적게 설정할 경우 정당한 권한이 있는 사용자라도 인증을 받을 수 없는 경우가 있을 수 있기 때문에 일정 기준값 이하는 설정하지 못하도록 하는 것이 바람직하다.As the error threshold increases, the security decreases. The smaller the threshold value, the more security is secured. However, if the threshold value is set too low, even a user with the right authority may not be able to be authenticated. desirable.

오차 임계치는 장치 관리자만이 결정하도록 하거나, 암호화 키를 등록하는 자가 사용자 인터페이스를 통하여 임의로 결정하도록 할 수 있다.The error threshold may be determined only by the device manager, or the person who registers the encryption key may arbitrarily decide through the user interface.

도 5는 본 발명의 일 실시예에 따른 데이터 암호화 장치를 도시한 도면이다. 도 5를 참조하면, 암호화 장치는 암호 인터페이스 제공부(510), 수신부(520), 암호화 키 생성부(530) 및 암호화부(540)를 포함한다.5 is a diagram illustrating a data encryption apparatus according to an embodiment of the present invention. 5, the encryption apparatus includes an encryption interface providing unit 510, a receiving unit 520, an encryption key generating unit 530, and an encrypting unit 540.

암호 인터페이스 제공부(510)는 암호화 키를 입력 받기 위한 복수개의 영역으로 구성된 사용자 인터페이스를 제공한다.The encryption interface providing unit 510 provides a user interface composed of a plurality of areas for receiving an encryption key.

암호화 키 수신부(520)는 그 복수개의 영역 중 적어도 하나를 선택하는 암호화 키 생성 입력을 순차적으로 수신한다.The encryption key receiving unit 520 sequentially receives an encryption key generating input for selecting at least one of the plurality of areas.

암호화 키 생성부(530)는 순차적으로 수신된 암호화 키 생성 입력에 대한 입력 순서, 입력 지속시간, 입력 발생시간 및 입력 간격 중 적어도 하나를 이용하여 암호화 키를 생성한다.The encryption key generation unit 530 generates an encryption key using at least one of an input order, an input duration, an input occurrence time, and an input interval for the sequentially generated encryption key generation input.

암호화부(540)는 생성된 암호화 키를 이용하여 데이터를 암호화한다.The encryption unit 540 encrypts the data using the generated encryption key.

도 6은 본 발명의 일 실시예에 따른 데이터 복호화 장치를 도시한 도면이다.6 is a diagram illustrating a data decoding apparatus according to an embodiment of the present invention.

도 6을 참조하면, 본 발명의 일 실시예에 따른 데이터 복호화 장치는 복호 인터페이스 제공부(610), 복호화 키 수신부(620), 복호화 키 생성부(630), 비교부(640) 및 복호화부(650)를 포함한다.6, a data decoding apparatus according to an exemplary embodiment of the present invention includes a decoding interface providing unit 610, a decoding key receiving unit 620, a decoding key generating unit 630, a comparing unit 640, 650).

복호 인터페이스 제공부 (610)는 복호화 키를 입력 받기 위한 복수개의 영역으로 구성된 사용자 인터페이스를 제공한다.The decryption interface providing unit 610 provides a user interface composed of a plurality of areas for receiving a decryption key.

복호화 키 수신부 (620)는 복수개의 영역 중 적어도 하나를 선택하는 복호화 키 생성 입력을 순차적으로 수신한다.The decryption key receiving unit 620 sequentially receives a decryption key generating input for selecting at least one of the plurality of areas.

복호화 키 생성부 (630)는 순차적으로 수신된 복호화 키 생성 입력에 대한 입력 영역, 입력 순서, 입력 지속시간, 입력 발생시간 및 입력 간격 중 적어도 하나를 이용하여 복호화 키를 생성한다. The decryption key generation unit 630 generates a decryption key using at least one of an input region, an input order, an input duration, an input occurrence time, and an input interval for a sequentially received decryption key generation input.

비교부(640)는 암호화된 데이터에 적용된 암호화 키와 복호화 키를 비교한다.The comparing unit 640 compares the decryption key with the encryption key applied to the encrypted data.

복호화부(650)는 그 비교 결과에 기초하여 암호화된 데이터를 선택적으로 복호화한다.The decryption unit 650 selectively decrypts the encrypted data based on the comparison result.

도 7은 본 발명의 일 실시예에 따라 암호화 키를 입력 받기 위한 사용자 인터페이스 관련 설정을 수행하는 방법을 설명하기 위하여 도시한 도면이다.FIG. 7 is a diagram illustrating a method for performing a user interface-related setting for receiving an encryption key according to an embodiment of the present invention. Referring to FIG.

도 7은 암호화 장치와 복호화 장치가 하나의 장치에 포함되어 있는 것을 전제로 한다.7 assumes that an encrypting device and a decrypting device are included in one device.

첫 번째 단계에서는, 초기 화면(Initial Screen)에서 사용자가 암호화를 할 것인지 복호화를 할 것인지 선택한다.In the first step, the user selects whether to encrypt or decrypt in the initial screen.

두 번째 단계에서는, 암호화할 데이터 또는 폴더를 선택한다.In the second step, you select the data or folder to encrypt.

세 번째 단계에서는, 분할되는 영역의 개수(The Number of Note)와 총 입력시간을 짧은 시간(S), 중간 시간(M), 긴 시간(L) 중 하나로 선택 한다.In the third step, the number of divided regions (Number of Note) and the total input time are selected as one of a short time (S), an intermediate time (M), and a long time (L).

네 번째 단계에서는, 암호화 키 생성 입력을 입력받기 위한 사용자 인터페이스를 출력한다. In the fourth step, a user interface for inputting an encryption key generation input is output.

도 8은 본 발명의 일 실시예에 따른 복호화 과정을 설명하기 위하여 도시한 도면이다.FIG. 8 is a diagram illustrating a decoding process according to an embodiment of the present invention. Referring to FIG.

첫 번째 단계에서는, 복수의 암호화된 데이터 중에서 복호화할 대상을 선택한다.In the first step, an object to be decrypted is selected from a plurality of encrypted data.

두 번째 단계에서는, 복호화 키 생성 입력을 입력받기 위한 사용자 인터페이스가 출력되면 복호화 키 생성 입력을 순차적으로 입력한다.In the second step, when a user interface for inputting a decryption key generation input is output, a decryption key generation input is sequentially input.

세 번째 단계에서는, 복호화 키와 암호화 키가 일치하는 경우에는 상단과 같이 암호화된 데이터에 대한 복호화가 성공적으로 수행되어 복호화가 완료된 암호화된 데이터가 목록에서 사라지게 된다. 만약 양자가 불일치 하는 경우에는 하단과 같이 복호화 동작은 더 이상 수행되지 않고 에러 메시지를 출력하게 된다.
In the third step, when the decryption key and the encryption key match, the decryption of the encrypted data is successfully performed as shown in the upper part, and the decrypted encrypted data disappears from the list. If both of them are inconsistent, the decoding operation is not performed any more and the error message is outputted as shown in the lower part.

이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.The present invention has been described with reference to the preferred embodiments. It will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims. Therefore, the disclosed embodiments should be considered in an illustrative rather than a restrictive sense. The scope of the present invention is defined by the appended claims rather than by the foregoing description, and all differences within the scope of equivalents thereof should be construed as being included in the present invention.

Claims (10)

암호화 키를 입력 받기 위한 복수개의 영역으로 구성된 사용자 인터페이스를 제공하는 단계;
상기 복수개의 영역 중 적어도 하나를 선택하는 암호화 키 생성 입력을 순차적으로 수신하는 단계;
상기 순차적으로 수신된 암호화 키 생성 입력에 대한 입력 영역, 입력 순서, 입력 지속시간, 입력 발생시간 및 입력 간격 중 적어도 하나를 이용하여 암호화 키를 생성하는 단계;
상기 암호화 키를 이용하여 데이터를 암호화하는 단계;
상기 암호화 키를 변경하는 단계; 및
상기 암호화된 데이터 및 상기 변경된 암호화 키를 복호화 장치에게 전송하는 단계를 포함하고,
상기 암호화 키를 변경하는 단계는
시간에 따라 복수의 영역 각각에 할당되는 변동되는 고유값을 정의하는 키 테이블에 기초하여 암호화 키를 구성하는 복수의 암호화 키 생성 입력 중에서 적어도 하나의 입력 값을 변경하는 단계; 및
상기 변경된 암호화 키 생성 입력에 기초하여 변경된 암호화 키를 생성하는 단계를 포함하는 데이터 암호화 방법.
Providing a user interface comprising a plurality of areas for receiving an encryption key;
Sequentially receiving an encryption key generation input for selecting at least one of the plurality of areas;
Generating an encryption key using at least one of an input area, an input order, an input duration, an input occurrence time, and an input interval for the sequentially received encryption key generation input;
Encrypting the data using the encryption key;
Modifying the encryption key; And
And transmitting the encrypted data and the modified encryption key to a decryption apparatus,
The step of modifying the encryption key
Changing at least one input value among a plurality of encryption key generation inputs constituting an encryption key based on a key table defining a fluctuating eigenvalue assigned to each of a plurality of regions according to time; And
And generating a modified encryption key based on the changed encryption key generation input.
제1항에 있어서,
보안 레벨 정보를 수신하는 단계를 더 포함하고,
상기 사용자 인터페이스 내의 상기 복수개의 영역은 상기 보안 레벨 정보의 보안 레벨이 높아질수록 보다 많은 개수의 영역으로 구분되는 데이터 암호화 방법.
The method according to claim 1,
Further comprising receiving security level information,
Wherein the plurality of areas in the user interface are divided into a greater number of areas as the security level of the security level information is higher.
제1항에 있어서,
상기 암호화 키를 생성하는데 이용된 첫 번째 입력이 발생한 때부터 마지막 입력이 발생한 때까지의 시간 간격을 나타내는 총 입력시간을 수신하는 단계를 더 포함하고,
상기 암호화 키는 상기 총 입력시간이 경과함으로써 생성되는 데이터 암호화 방법.
The method according to claim 1,
Further comprising receiving a total input time indicating a time interval from when the first input used to generate the encryption key occurs to when the last input occurs,
Wherein the encryption key is generated by elapsing the total input time.
제1항에 있어서,
상기 암호화 키는
상기 사용자 인터페이스에 포함된 입력 완료 영역 또는 별도로 구비된 입력 완료 버튼을 선택함으로써 생성되는 데이터 암호화 방법.
The method according to claim 1,
The encryption key
And selecting an input completion area included in the user interface or a separately provided input completion button.
제1항에 있어서,
상기 암호화 키 생성 입력은
상기 복수개의 영역 중 적어도 2개를 동시에 선택하는 입력을 포함하는 데이터 암호화 방법.
The method according to claim 1,
The encryption key generation input
And an input for simultaneously selecting at least two of the plurality of areas.
제1항에 있어서,
상기 암호화된 데이터는
128비트, 192비트 및 256비트 중 하나의 크기를 갖는 데이터 단위로 AES(Advanced Encryption Standard) 알고리즘에 따라 암호화되는 데이터 암호화 방법.
The method according to claim 1,
The encrypted data
Wherein the data is encrypted according to an Advanced Encryption Standard (AES) algorithm in units of data having a size of one of 128 bits, 192 bits and 256 bits.
삭제delete 복호화 키를 입력 받기 위한 복수개의 영역으로 구성된 사용자 인터페이스를 제공하는 단계;
상기 복수개의 영역 중 적어도 하나를 선택하는 복호화 키 생성 입력을 순차적으로 수신하는 단계;
상기 순차적으로 수신된 복호화 키 생성 입력에 대한 입력 영역, 입력 순서, 입력 지속시간, 입력 발생시간 및 입력 간격 중 적어도 하나를 이용하여 복호화 키를 생성하는 단계;
암호화 장치로부터 수신된 암호화 키를 복원하는 단계;
상기 암호화 키와 상기 복호화 키를 비교하는 단계; 및
상기 비교 결과에 기초하여, 상기 암호화된 데이터를 선택적으로 복호화하는 단계를 포함하고,
상기 암호화 장치로부터 수신된 암호화 키를 복원하는 단계는
시간에 따라 복수의 영역 각각에 할당되는 변동되는 고유값을 정의하는 키 테이블에 기초하여 암호화 키를 구성하는 복수의 암호화 키 생성 입력 중에서 적어도 하나의 입력 값을 복원하는 단계; 및
상기 복원된 암호화 키 생성 입력에 기초하여 복원된 암호화 키를 생성하는 단계를 포함하는 데이터 복호화 방법.
Providing a user interface comprising a plurality of areas for receiving a decryption key;
Sequentially receiving a decryption key generation input for selecting at least one of the plurality of areas;
Generating a decryption key using at least one of an input region, an input order, an input duration, an input occurrence time, and an input interval for the sequentially received decryption key generation input;
Restoring an encryption key received from the encryption device;
Comparing the encryption key with the decryption key; And
And selectively decrypting the encrypted data based on the comparison result,
And restoring the encryption key received from the encryption device
Restoring at least one input value among a plurality of encryption key generation inputs constituting an encryption key based on a key table defining a fluctuating eigenvalue assigned to each of a plurality of regions according to time; And
And generating a restored encryption key based on the restored encryption key generation input.
암호화 키를 입력 받기 위한 복수개의 영역으로 구성된 사용자 인터페이스를 제공하는 암호 인터페이스 제공부;
상기 복수개의 영역 중 적어도 하나를 선택하는 암호화 키 생성 입력을 순차적으로 수신하는 암호화 키 수신부;
상기 순차적으로 수신된 암호화 키 생성 입력에 대한 입력 영역, 입력 순서, 입력 지속시간, 입력 발생시간 및 입력 간격 중 적어도 하나를 이용하여 암호화 키를 생성하는 암호화 키 생성부;
상기 암호화 키를 이용하여 데이터를 암호화하는 암호화부;
상기 암호화 키를 변경하는 변경부; 및
상기 암호화된 데이터 및 상기 변경된 암호화 키를 복호화 장치에게 전송하는 전송부를 포함하고,
상기 변경부 는
시간에 따라 복수의 영역 각각에 할당되는 변동되는 고유값을 정의하는 키 테이블에 기초하여 암호화 키를 구성하는 복수의 암호화 키 생성 입력 중에서 적어도 하나의 입력 값을 변경하고,
상기 변경된 암호화 키 생성 입력에 기초하여 변경된 암호화 키를 생성하는 데이터 암호화 장치.
An encryption interface providing a user interface including a plurality of areas for receiving an encryption key;
An encryption key receiving unit for sequentially receiving an encryption key generation input for selecting at least one of the plurality of areas;
An encryption key generation unit for generating an encryption key using at least one of an input area, an input order, an input duration, an input occurrence time, and an input interval for the sequentially received encryption key generation input;
An encryption unit encrypting data using the encryption key;
A changing unit for changing the encryption key; And
And a transmission unit for transmitting the encrypted data and the changed encryption key to a decryption apparatus,
The changing unit
Changing at least one input value among a plurality of encryption key generation inputs configuring an encryption key based on a key table that defines fluctuating eigenvalues assigned to each of a plurality of regions according to time,
And generates a modified encryption key based on the changed encryption key generation input.
복호화 키를 입력 받기 위한 복수개의 영역으로 구성된 사용자 인터페이스를 제공하는 복호 인터페이스 제공부;
상기 복수개의 영역 중 적어도 하나를 선택하는 복호화 키 생성 입력을 순차적으로 수신하는 복호화 키 수신부;
상기 순차적으로 수신된 복호화 키 생성 입력에 대한 입력 영역, 입력 순서, 입력 지속시간, 입력 발생시간 및 입력 간격 중 적어도 하나를 이용하여 복호화 키를 생성하는 복호화 키 생성부;
암호화 장치로부터 수신된 암호화 키를 복원하는 복원부;
상기 암호화 키와 상기 복호화 키를 비교하는 비교부; 및
상기 비교 결과에 기초하여 상기 암호화된 데이터를 선택적으로 복호화하는 복호화부를 포함하고,
상기 복원부는
시간에 따라 복수의 영역 각각에 할당되는 변동되는 고유값을 정의하는 키 테이블에 기초하여 암호화 키를 구성하는 복수의 암호화 키 생성 입력 중에서 적어도 하나의 입력 값을 복원하고,
상기 복원된 암호화 키 생성 입력에 기초하여 복원된 암호화 키를 생성하는 데이터 복호화 장치.
A decoding interface providing unit for providing a user interface composed of a plurality of areas for receiving a decoding key;
A decryption key receiving unit for sequentially receiving a decryption key generating input for selecting at least one of the plurality of areas;
A decryption key generation unit for generating a decryption key using at least one of an input area, an input order, an input duration, an input occurrence time, and an input interval for the sequentially received decryption key generation input;
A restoration unit for restoring an encryption key received from the encryption apparatus;
A comparing unit comparing the encryption key with the decryption key; And
And a decryption unit for selectively decrypting the encrypted data based on the comparison result,
The restoring unit
Restoring at least one input value from among a plurality of encryption key generation inputs constituting an encryption key based on a key table that defines a fluctuating eigenvalue assigned to each of a plurality of regions according to time,
And generates a restored encryption key based on the restored encryption key generation input.
KR1020140160241A 2014-11-17 2014-11-17 Method and apparatus for data encryption and decryption based on rhythm KR101624590B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140160241A KR101624590B1 (en) 2014-11-17 2014-11-17 Method and apparatus for data encryption and decryption based on rhythm

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140160241A KR101624590B1 (en) 2014-11-17 2014-11-17 Method and apparatus for data encryption and decryption based on rhythm

Publications (2)

Publication Number Publication Date
KR20160058573A KR20160058573A (en) 2016-05-25
KR101624590B1 true KR101624590B1 (en) 2016-05-26

Family

ID=56104862

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140160241A KR101624590B1 (en) 2014-11-17 2014-11-17 Method and apparatus for data encryption and decryption based on rhythm

Country Status (1)

Country Link
KR (1) KR101624590B1 (en)

Also Published As

Publication number Publication date
KR20160058573A (en) 2016-05-25

Similar Documents

Publication Publication Date Title
US8176324B1 (en) Method and system for a secure virtual keyboard
US10146983B2 (en) Fingerprint decryption method and device
CN103455764B (en) A kind of file encryption based on file division folding and decryption system
CN107431924B (en) Device theft protection associating device identifiers with user identifiers
EP3324572B1 (en) Information transmission method and mobile device
CN108769027B (en) Secure communication method, device, mobile terminal and storage medium
CN105160227A (en) Remote fingerprint verification method, user terminal and fingerprint verification system
US10216935B2 (en) Mobile device resistant to malware
US10789372B2 (en) Primary device, an accessory device, and methods for processing operations on the primary device and the accessory device
TW201539247A (en) Password input and verification method and system thereof
JP6756056B2 (en) Cryptographic chip by identity verification
CN110401538A (en) Data ciphering method, system and terminal
CN106648583B (en) Information processing method and terminal
US10320563B2 (en) Cryptographic entropy tree
CN108199847A (en) Security processing method, computer equipment and storage medium
CN107248972B (en) Data encryption and decryption method and device and electronic equipment
CN104915583A (en) Interface decryption processing method and mobile terminal
CN105933503B (en) Information processing method and electronic equipment
US9432186B2 (en) Password-based key derivation without changing key
KR101624590B1 (en) Method and apparatus for data encryption and decryption based on rhythm
Schürmann et al. Openkeychain: an architecture for cryptography with smart cards and nfc rings on android
CN107392039B (en) Computer hard disk data encryption method and device
KR101834522B1 (en) Apparatus for confirming data and method for confirming data using the same
CN105141609A (en) Fingerprint verification method, relevant device and fingerprint verification system
US11831759B1 (en) Optimized authentication system for a multiuser device

Legal Events

Date Code Title Description
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190513

Year of fee payment: 4