KR102038217B1 - Information security system through encrypting and decrypting personal data and contents in smart device based on Lightweight Encryption Algorithm, method thereof and computer recordable medium storing program to perform the method - Google Patents

Information security system through encrypting and decrypting personal data and contents in smart device based on Lightweight Encryption Algorithm, method thereof and computer recordable medium storing program to perform the method Download PDF

Info

Publication number
KR102038217B1
KR102038217B1 KR1020180001886A KR20180001886A KR102038217B1 KR 102038217 B1 KR102038217 B1 KR 102038217B1 KR 1020180001886 A KR1020180001886 A KR 1020180001886A KR 20180001886 A KR20180001886 A KR 20180001886A KR 102038217 B1 KR102038217 B1 KR 102038217B1
Authority
KR
South Korea
Prior art keywords
secret key
user device
content
key
devices
Prior art date
Application number
KR1020180001886A
Other languages
Korean (ko)
Other versions
KR20180081469A (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 경일대학교산학협력단
Publication of KR20180081469A publication Critical patent/KR20180081469A/en
Application granted granted Critical
Publication of KR102038217B1 publication Critical patent/KR102038217B1/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/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • 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

Abstract

본 발명은 경량암호 알고리즘(LEA: Lightweight Encryption Algorithm) 기반의 스마트 기기 내의 개인정보 및 콘텐츠 암복호화를 통한 정보 보안 시스템, 이를 위한 방법 및 이 방법을 수행하기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체에 관한 것이다. 이러한 본 발명은 제1 형식의 데이터가 입력되면, 이미지 파일 형식인 제2 형식으로 데이터를 인코딩하는 단계와, 경량암호 알고리즘을 통해 상기 변환된 데이터를 스크램블링하여 암호화하는 단계와, 복호화 요청이 있으면, 상기 경량암호 알고리즘을 통해 상기 암호화된 데이터를 디스크램블링하여 제2 형식의 데이터로 복호화하는 단계와, 복호화된 제2 형식의 데이터를 제1 형식의 데이터로 디코딩하는 단계를 포함하는 것을 특징으로 하는 정보 보안 시스템의 정보 보안 방법을 제공한다. The present invention provides an information security system through encryption and decryption of personal information and content in a smart device based on a light weight encryption algorithm (LEA), a method therefor, and a computer readable recording medium having recorded thereon a program for performing the method. It is about. In the present invention, when the data of the first format is input, encoding the data in a second format, which is an image file format, scrambled and encrypted the converted data through a lightweight encryption algorithm, and if there is a decryption request, And descrambling the encrypted data through the lightweight encryption algorithm to decrypt the encrypted data into a second type of data, and decoding the decrypted second type of data into a first type of data. Provides information security method of security system.

Figure 112018001768410-pat00015
Figure 112018001768410-pat00015

Description

경량암호 알고리즘 기반의 스마트 기기 내의 개인정보 및 콘텐츠 암복호화를 통한 정보 보안 시스템, 이를 위한 방법 및 이 방법을 수행하기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체{Information security system through encrypting and decrypting personal data and contents in smart device based on Lightweight Encryption Algorithm, method thereof and computer recordable medium storing program to perform the method} Information security system through encryption and decryption of personal information and contents in smart device based on lightweight encryption algorithm, method for this, and computer readable recording medium recording program for performing the method contents in smart device based on Lightweight Encryption Algorithm, method approximately and computer recordable medium storing program to perform the method}

본 발명은 저작권 보호 기술에 관한 것으로, 보다 상세하게는, 경량암호 알고리즘(LEA: Lightweight Encryption Algorithm) 기반의 스마트 기기 내의 개인정보 및 콘텐츠 암복호화를 통한 정보 보안 시스템, 이를 위한 방법 및 이 방법을 수행하기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체에 관한 것이다. The present invention relates to a copyright protection technology, and more particularly, to an information security system through encryption and decryption of personal information and content in a smart device based on Lightweight Encryption Algorithm (LEA), a method for performing the same, and performing the method. A computer readable recording medium having recorded thereon a program therefor.

ICT(Information and Communications Technologies) 기술의 발전과 개인용 PC(Personal Computer), 휴대전화 그리고 PDA(Personal Digital Assistants)등의 휴대형 장비들의 사용의 증가로 인한 사물인터넷(IoT: Internet of Things), 클라우드 등 경량 환경을 기반으로 하는 다양한 서비스가 확대되고 있다. 이러한 서비스는 다양한 분야에서 이용되고 있으며, 예를 들면 스마트한 교육 시스템을 구축하기 위해서 교육 사업 분야에서 경량 환경 기반의 휴대형 장비와 네트워크 서비스들을 이용하고 있다. 스마트한 교육 시스템과 같은 저작권 보호가 필요한 시스템에서는 경량 환경 기반의 휴대형 장비와 네트워크를 기반으로 해서 대용량의 멀티미디어 컨텐츠들을 송수신 하고 있기 때문에, 이러한 컨텐츠들은 네트워크의 개방성으로 인해 악의적인 공격자들에게 탈취 및 도용 될 수 있다. 그러므로 경량 환경 기반에서 송수신되는 컨텐츠들에 대해서 개인이나 단체의 지적 재산권 침해를 방지하기 위한 저작권 보호 기술의 제공이 반드시 필요하다. 하지만 기존의 암호 알고리즘들은 계산능력의 한계와 네트워크의 대역폭과 같은 문제들로 인해서 경량 환경 기반의 장비들에는 보안성을 제공하기가 어려움이 있었다. Lightweight, such as the Internet of Things (IoT), the cloud, due to the development of ICT (Information and Communications Technologies) technology and the increasing use of portable devices such as personal computers, mobile phones, and personal digital assistants (PDAs) Various services based on environment are expanding. These services are used in various fields. For example, in order to build a smart education system, lightweight environment-based portable equipment and network services are used in the education business field. Because copyright protection systems such as smart education systems transmit and receive large-capacity multimedia contents based on lightweight environment-based portable devices and networks, these contents are hijacked and stolen by malicious attackers due to the openness of the network. Can be. Therefore, it is necessary to provide copyright protection technology to prevent infringement of intellectual property rights of individuals or organizations on contents transmitted / received in a lightweight environment. However, the existing cryptographic algorithms have difficulty in providing security for lightweight environment-based devices due to problems such as computational power limitation and network bandwidth.

한국공개특허 제2007-0060955호 2007년 06월 13일 공개 (명칭: 저작권 보호를 위한 디지털 콘텐츠 송수신 장치 및 그 방법)Korean Laid-Open Patent Publication No. 2007-0060955, issued June 13, 2007 (Name: Digital Content Transceiver and Method for Copyright Protection)

본 발명의 목적은 경량암호 알고리즘 기반의 스마트 기기 내의 개인정보 및 콘텐츠 암복호화를 통한 정보 보안 시스템, 이를 위한 방법 및 이 방법을 수행하기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체를 제공함에 있다. An object of the present invention is to provide an information security system through encryption and decryption of personal information and content in a smart device based on a lightweight encryption algorithm, a method therefor, and a computer readable recording medium having recorded thereon a program for performing the method.

상술한 바와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 정보 보안 시스템은 물리적으로 구분된 복수의 인증장치와, 논리적으로 구분되어 인증장치의 기능을 수행하는 복수의 가상머신을 포함하는 클라우드서버와, 비밀키를 생성하고, k가 자연수일 때, 상기 비밀키를 k개의 비밀키 조각으로 분할하고, 상기 k개의 비밀키 조각을 상기 복수의 인증장치 및 상기 복수의 가상머신 중 k개의 장치에 분배하여 전송하고, 상기 비밀키를 이용하여 암호키를 생성하고, 상기 암호키와 라운드 함수를 이용하여 컨텐츠를 암호화하며, 암호화된 컨텐츠를 제2 사용자장치로 전송하는 제1 사용자장치를 포함한다. Information security system according to a preferred embodiment of the present invention for achieving the above object is a cloud comprising a plurality of physically separated authentication device, and a plurality of virtual machines logically divided to perform the function of the authentication device A server, a secret key is generated, and when k is a natural number, the secret key is divided into k secret key pieces, and the k secret key pieces are k devices among the plurality of authentication devices and the plurality of virtual machines. And a first user device for distributing the data to the second user device, generating an encryption key using the secret key, encrypting the content using the encryption key and a round function, and transmitting the encrypted content to a second user device. .

상기 시스템은 n이 k 보다 작은 자연수일 때, 상기 k개의 장치 중 적어도 n개의 장치로부터 비밀키 조각을 수집하고, 라그랑지 보간법을 통해 수집된 비밀키 조각으로부터 상기 비밀키를 복원하고, 상기 비밀키를 이용하여 복호키를 생성하고, 상기 복호키와 라운드 함수를 이용하여 컨텐츠를 복원하는 상기 제2 사용자장치를 더 포함한다. The system collects secret key pieces from at least n of the k devices when n is a natural number smaller than k, restores the secret key from secret key pieces collected through Lagrange interpolation, and the secret key. The second user device further generates a decryption key using the decryption key and restores the content using the decryption key and the round function.

상술한 바와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 정보 보안 시스템의 정보 보안 방법은 제1 사용자장치가 문서 파일 형식의 컨텐츠가 입력되면, 이미지 파일 형식으로 컨텐츠를 변환하는 단계와, 상기 제1 사용자장치가 비밀키를 생성하는 단계와, 상기 제1 사용자장치가 상기 비밀키를 이용하여 암호키를 생성하는 단계와, 상기 제1 사용자장치가 상기 암호키와 라운드 함수를 이용하여 컨텐츠를 암호화하는 단계와, 상기 제1 사용자장치가 상기 컨텐츠를 제2 사용자장치로 전송하는 단계를 포함한다. An information security method of an information security system according to a preferred embodiment of the present invention for achieving the above object comprises the steps of: converting the content into an image file format when the first user device receives the content in the document file format; Generating, by the first user device, a secret key; generating, by the first user device, an encryption key using the secret key; and content, by the first user device using the encryption key and a round function. And encrypting, and transmitting, by the first user device, the content to the second user device.

상기 제1 사용자장치가 비밀키를 생성하는 단계 후, k가 자연수일 때, 상기 제1 사용자장치가 수학식

Figure 112018001768410-pat00001
에 따라 상기 비밀키를 k개의 비밀키 조각으로 분할하는 단계와, 상기 제1 사용자장치가 상기 k개의 비밀키 조각을 물리적으로 구분된 복수의 인증장치 및 논리적으로 구분되어 인증장치의 기능을 수행하는 클라우드서버의 복수의 가상머신 중 k개의 장치에 분배하여 전송하는 단계를 더 포함한다. After the first user device generates a secret key, when k is a natural number, the first user device performs an equation.
Figure 112018001768410-pat00001
Dividing the secret key into k secret key fragments, and wherein the first user device performs the functions of the plurality of physically separated authentication devices and logically divided authentication devices of the k secret key pieces. The method may further include distributing and transmitting the data to k devices of the plurality of virtual machines of the cloud server.

상기 컨텐츠를 제2 사용자장치로 전송하는 단계 후, n이 k 보다 작은 자연수일 때, 상기 제2 사용자장치가 상기 k개의 장치 중 적어도 n개의 장치로부터 비밀키 조각을 수집하는 단계와, 라그랑지 보간법을 통해 수집된 비밀키 조각으로부터 상기 비밀키를 복원하는 단계와, 상기 비밀키를 이용하여 복호키를 생성하는 단계와, 상기 복호키와 라운드 함수를 이용하여 컨텐츠를 복원하는 단계를 더 포함한다. After the step of transmitting the content to the second user device, when n is a natural number smaller than k, the second user device collecting secret key pieces from at least n of the k devices, and a Lagrangian interpolation method. Restoring the secret key from the collected secret key fragments; generating a decryption key using the secret key; and restoring content using the decryption key and a round function.

또한, 상술한 바와 같은 목적을 달성하기 위해 전술한 본 발명의 실시예에 따른 정보 보안 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체를 제공한다. In addition, the present invention provides a computer-readable recording medium having recorded thereon a program for performing the information security method according to an embodiment of the present invention to achieve the above object.

본 발명의 실시예에 따른 방법은 경량암호 알고리즘인 LEA(Lightweight Encryption Algorithm)는 클라우드, 사물인터넷 등의 경량 환경에서 보안성을 제공하며, 국제 표준암호인 AES(Advanced Encryption Standard)에 비해서 최대 2배로 빠른 속도를 제공한다. 무엇보다도 본 발명의 실시예에 따른 방법은 저전력의 보안 환경을 제공할 수 있다. The method according to an embodiment of the present invention is a lightweight encryption algorithm (LEA), which provides security in a lightweight environment, such as cloud and the Internet of Things, and up to twice the size of the international encryption standard AES (Advanced Encryption Standard). Provides high speed First of all, the method according to the embodiment of the present invention may provide a low power security environment.

도 1은 본 발명의 실시예에 따른 정보 보안 시스템의 구성을 설명하기 위한 도면이다.
도 2는 본 발명의 실시예에 따른 클라우드서버의 구성을 설명하기 위한 블록도이다.
도 3은 본 발명의 실시예에 따른 사용자장치의 구성을 설명하기 위한 블록도이다.
도 4는 본 발명의 실시예에 따른 인증장치의 구성을 설명하기 위한 블록도이다.
도 5는 본 발명의 실시예에 따른 암복호부의 구성을 설명하기 위한 블록도이다.
도 6은 본 발명의 실시예에 따른 정보 보안을 위한 방법을 설명하기 위한 흐름도이다.
도 7은 본 발명의 실시예에 따른 콘텐츠에 저작권 정보를 삽입하는 방법을 설명하기 위한 흐름도이다.
도 8은 본 발명의 실시예에 따른 비밀키 조각을 분배하여 저장하는 방법을 설명하기 위한 흐름도이다.
도 9는 본 발명의 실시예에 따른 생세 신호를 이용한 암호화 방법을 설명하기 위한 흐름도이다.
도 10은 본 발명의 실시예에 따른 정보 보안을 위한 방법을 설명하기 위한 흐름도이다.
도 11은 본 발명의 실시예에 따른 생세 신호를 이용한 암호화 방법을 설명하기 위한 흐름도이다.
도 12는 본 발명의 대안적인 실시예에 따른 비밀키 조각을 수집하는 방법을 설명하기 위한 흐름도이다.
도 13은 본 발명의 실시예에 따른 콘텐츠에서 저작권 정보를 추출하는 방법을 설명하기 위한 흐름도이다.
도 14 내지 도 17은 본 발명의 실시예에 따른 정보 보안 방법을 설명하기 위한 도면이다.
1 is a view for explaining the configuration of an information security system according to an embodiment of the present invention.
2 is a block diagram illustrating a configuration of a cloud server according to an exemplary embodiment of the present invention.
3 is a block diagram illustrating a configuration of a user device according to an exemplary embodiment of the present invention.
4 is a block diagram illustrating a configuration of an authentication apparatus according to an embodiment of the present invention.
5 is a block diagram illustrating a configuration of an encryption / decryption unit according to an embodiment of the present invention.
6 is a flowchart illustrating a method for information security according to an embodiment of the present invention.
7 is a flowchart illustrating a method of inserting copyright information into content according to an embodiment of the present invention.
8 is a flowchart illustrating a method of distributing and storing a secret key fragment according to an embodiment of the present invention.
9 is a flowchart illustrating an encryption method using live signal according to an embodiment of the present invention.
10 is a flowchart illustrating a method for information security according to an embodiment of the present invention.
11 is a flowchart illustrating an encryption method using live signal according to an embodiment of the present invention.
12 is a flowchart illustrating a method of collecting secret key pieces according to an alternative embodiment of the present invention.
13 is a flowchart illustrating a method of extracting copyright information from content according to an embodiment of the present invention.
14 to 17 are diagrams for describing an information security method according to an embodiment of the present invention.

본 발명의 상세한 설명에 앞서, 이하에서 설명되는 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 실시예에 불과할 뿐, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다. Prior to the description of the present invention, the terms or words used in the specification and claims described below should not be construed as being limited to the ordinary or dictionary meanings, and the inventors should consider their own invention in the best way. For the purpose of explanation, it should be interpreted as meaning and concept corresponding to the technical idea of the present invention on the basis of the principle that it can be appropriately defined as the concept of term. Therefore, the embodiments described in the present specification and the configuration shown in the drawings are only the most preferred embodiments of the present invention, and do not represent all of the technical idea of the present invention, and various equivalents may be substituted for them at the time of the present application. It should be understood that there may be water and variations.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다. 이때, 첨부된 도면에서 동일한 구성 요소는 가능한 동일한 부호로 나타내고 있음을 유의해야 한다. 또한, 본 발명의 요지를 흐리게 할 수 있는 공지 기능 및 구성에 대한 상세한 설명은 생략할 것이다. 마찬가지의 이유로 첨부 도면에 있어서 일부 구성요소는 과장되거나 생략되거나 또는 개략적으로 도시되었으며, 각 구성요소의 크기는 실제 크기를 전적으로 반영하는 것이 아니다. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. In this case, it should be noted that like elements are denoted by like reference numerals as much as possible. In addition, detailed descriptions of well-known functions and configurations that may blur the gist of the present invention will be omitted. For the same reason, some components in the accompanying drawings are exaggerated, omitted, or schematically illustrated, and the size of each component does not entirely reflect the actual size.

먼저, 본 발명의 실시예에 따른 정보 보안 시스템의 구성에 대해서 설명하기로 한다. 도 1은 본 발명의 실시예에 따른 정보 보안 시스템의 구성을 설명하기 위한 도면이다. 도 1을 참조하면, 본 발명의 실시예에 따른 정보 보안 시스템(10)은 클라우드서버(100), 복수의 사용자장치(200) 및 복수의 인증장치(300)를 포함한다. First, the configuration of an information security system according to an embodiment of the present invention will be described. 1 is a view for explaining the configuration of an information security system according to an embodiment of the present invention. Referring to FIG. 1, an information security system 10 according to an exemplary embodiment of the present invention includes a cloud server 100, a plurality of user devices 200, and a plurality of authentication devices 300.

클라우드서버(100)는 사용자장치(200)의 요청에 따라 복수의 가상머신을 소정 시간 동안 생성하고, 소정 시간이 경과된 후 소멸시킨다. 즉, 복수의 가상머신 각각은 설정된 시간 동안 동작한다. 복수의 가상머신 각각은 논리적으로 구분되며, 소정 시간 동안 본 발명의 실시예에 따른 비밀키 조각을 저장하거나, 본 발명의 실시예에 따른 생체 데이터를 저장한다. The cloud server 100 generates a plurality of virtual machines for a predetermined time according to a request of the user device 200, and extinguishes after a predetermined time elapses. That is, each of the plurality of virtual machines operates for a set time. Each of the plurality of virtual machines is logically divided, and stores a secret key fragment according to an embodiment of the present invention or a biometric data according to an embodiment of the present invention for a predetermined time.

본 발명의 실시예에서 사용자장치(200)는 제1 사용자장치(201) 및 제2 사용자장치(202)를 포함한다. 본 발명은 제1 사용자장치(201)가 컨텐츠(원본 컨텐츠)를 암호화하여 전송하면, 제2 사용자장치(202)는 암호화된 컨텐츠를 복호화하여 컨텐츠 원본을 복원하는 상황을 상정한다. 이러한 암호화 및 복화화를 위하여 비밀키 조각 및 생체 데이터 중 적어도 하나를 이용할 수 있다. In an embodiment of the present invention, the user device 200 includes a first user device 201 and a second user device 202. In the present invention, when the first user device 201 encrypts and transmits the content (original content), the second user device 202 assumes a situation in which the original content is restored by decrypting the encrypted content. At least one of a secret key fragment and biometric data may be used for such encryption and decryption.

그러면, 전술한 클라우드서버(100), 사용자장치(200) 및 인증장치(300) 각각의 구성에 대해서 설명하기로 한다. 먼저, 본 발명의 실시예에 따른 클라우드서버(100)의 구성에 대해서 설명하기로 한다. 도 2는 본 발명의 실시예에 따른 클라우드서버의 구성을 설명하기 위한 블록도이다. 도 2를 참조하면, 본 발명의 실시예에 따른 클라우드서버(100)는 통신모듈(110), 저장모듈(120) 및 제어모듈(130)을 포함한다. 특히, 제어모듈(130)은 복수의 가상머신을 포함한다. Then, each of the above-described configuration of the cloud server 100, the user device 200 and the authentication device 300 will be described. First, the configuration of the cloud server 100 according to an embodiment of the present invention will be described. 2 is a block diagram illustrating a configuration of a cloud server according to an exemplary embodiment of the present invention. Referring to FIG. 2, the cloud server 100 according to an embodiment of the present invention includes a communication module 110, a storage module 120, and a control module 130. In particular, the control module 130 includes a plurality of virtual machines.

통신모듈(110)은 네트워크를 통해 사용자장치(200)와 통신하기 위한 것이다. 통신모듈(110)은 제어모듈(130)의 제어에 따라 사용자장치(200)로부터 데이터, 예컨대, 비밀키 조각을 수신하거나, 사용자장치(200)로 데이터, 예컨대, 비밀키 조각을 전송할 수 있다. 통신모듈(110)은 네트워크를 통해 데이터를 송수신하기 위해 송신되는 신호를 변조하고, 수신되는 신호를 복조하는 모뎀(modem)을 포함할 수 있다. 이러한 통신모듈(110)은 제어모듈(130)로부터 전달 받은 데이터를 네트워크를 통해 사용자장치(200)로 전송할 수 있다. 또한, 통신모듈(110)은 수신되는 데이터를 제어모듈(130)로 전달할 수 있다. The communication module 110 is for communicating with the user device 200 through a network. The communication module 110 may receive data such as a secret key fragment from the user device 200 or transmit data such as a secret key fragment to the user device 200 under the control of the control module 130. The communication module 110 may include a modem that modulates a signal to be transmitted and received through a network and demodulates the received signal. The communication module 110 may transmit data received from the control module 130 to the user device 200 through a network. In addition, the communication module 110 may transmit the received data to the control module 130.

저장모듈(120)은 클라우드서버(100)의 동작에 필요한 프로그램 및 데이터를 저장하는 역할을 수행한다. 예컨대, 저장모듈(120)은 제어모듈(130)의 복수의 가상 머신 각각에 대응하여 데이터, 예컨대, 비밀키 조각을 저장할 수 있다. The storage module 120 stores a program and data necessary for the operation of the cloud server 100. For example, the storage module 120 may store data, for example, secret key pieces, in correspondence with each of the plurality of virtual machines of the control module 130.

제어모듈(130)은 클라우드서버(100)의 전반적인 동작 및 클라우드서버(100)의 내부 블록들 간 신호 흐름을 제어하고, 데이터를 처리하는 데이터 처리 기능을 수행할 수 있다. 제어모듈(130)은 중앙처리장치(central processing unit), 디지털신호처리기(digital signal processor) 등이 될 수 있다. 특히, 제어모듈(130)은 본 발명의 실시예에 따른 인증 장치와 동일한 기능을 수행할 수 있도록 논리적으로 구분되는 복수의 프로세스인 가상 머신을 생성할 수 있다. 이러한 제어모듈(130)의 동작은 아래에서 더 상세하게 설명될 것이다. The control module 130 may control an overall operation of the cloud server 100 and a signal flow between internal blocks of the cloud server 100, and may perform a data processing function for processing data. The control module 130 may be a central processing unit, a digital signal processor, or the like. In particular, the control module 130 may create a virtual machine, which is a plurality of processes that are logically divided to perform the same function as the authentication apparatus according to the embodiment of the present invention. The operation of this control module 130 will be described in more detail below.

다음으로, 본 발명의 실시예에 따른 사용자장치(200)에 대해서 설명하기로 한다. 도 3은 본 발명의 실시예에 따른 사용자장치의 구성을 설명하기 위한 블록도이다. 도 3을 참조하면, 본 발명의 실시예에 따른 사용자장치(200)는 통신부(210), 입력부(220), 표시부(230), 저장부(240) 및 제어부(250)를 포함한다. Next, the user device 200 according to an embodiment of the present invention will be described. 3 is a block diagram illustrating a configuration of a user device according to an exemplary embodiment of the present invention. Referring to FIG. 3, a user device 200 according to an embodiment of the present invention includes a communication unit 210, an input unit 220, a display unit 230, a storage unit 240, and a control unit 250.

통신부(210)는 클라우드서버(100), 다른 사용자장치(200) 혹은 인증장치(300)와 통신하기 위한 것이다. 이러한 통신부(210)는 BS(Base Station), NodeB, eNodeB 등과 같은 기지국, AP 등을 포함하는 네트워크를 통해 클라우드서버(100), 다른 사용자장치(200) 혹은 인증장치(300)와 통신할 수 있다. 또한, 통신부(210)는 예컨대, NFC(Near Field Communication), 블루투스(Bluetooth), 지그비(ZigBee), IrDA(Infrared Data Association) 등의 통신 방식을 이용하여 다른 사용자장치(200) 혹은 인증장치(300)와 통신할 수 있다. 이러한 통신부(210)는 송신되는 신호의 주파수를 상승 변환 및 증폭하는 RF 송신기와, 수신되는 신호를 저 잡음 증폭하고 주파수를 하강 변환하는 RF 수신기 등으로 구성될 수 있다. 통신부(210)는 제어부(250)로부터 각종 메시지, 정보, 데이터 등을 수신하면, 이를 다른 장치로 전송할 수 있다. 또한, 통신부(210)는 다른 장치로부터 각종 메시지, 정보, 데이터 등을 수신하면, 제어부(250)에 전달할 수 있다. The communication unit 210 is for communicating with the cloud server 100, another user device 200, or the authentication device 300. The communication unit 210 may communicate with the cloud server 100, another user device 200, or an authentication device 300 through a network including a base station (BS), a base station such as a base station (BS), a NodeB, an eNodeB, and the like. . In addition, the communication unit 210 may use another user device 200 or an authentication device 300 using a communication method such as Near Field Communication (NFC), Bluetooth, ZigBee, and Infrared Data Association (IrDA). ) Can be communicated with. The communication unit 210 may be configured as an RF transmitter for up-converting and amplifying a frequency of a transmitted signal, and an RF receiver for low noise amplifying and down-converting a received signal. When the communication unit 210 receives various messages, information, data, etc. from the control unit 250, the communication unit 210 may transmit them to other devices. In addition, when the communication unit 210 receives various messages, information, data, etc. from another device, the communication unit 210 may transmit the message to the control unit 250.

입력부(220)는 사용자장치(200)의 각 종 기능, 동작 등을 제어하기 위한 사용자의 키 조작을 입력받고 입력 신호를 생성하여 제어부(250)에 전달한다. 입력부(220)는 전원 on/off를 위한 전원 키, 문자 키, 숫자 키, 방향키 중 적어도 하나를 포함할 수 있다. 입력부(220)의 기능은 표시부(230)가 터치스크린으로 구현된 경우, 표시부(230)에서 이루어질 수 있으며, 표시부(230)만으로 모든 기능을 수행할 수 있는 경우, 입력부(220)는 생략될 수도 있다. The input unit 220 receives a user's key operation for controlling various functions, operations, and the like of the user device 200, generates an input signal, and transmits the generated input signal to the controller 250. The input unit 220 may include at least one of a power key, a character key, a numeric key, and a direction key for power on / off. The function of the input unit 220 may be performed in the display unit 230 when the display unit 230 is implemented as a touch screen, and when the display unit 230 can perform all functions, the input unit 220 may be omitted. have.

표시부(230)는 제어부(250)로부터 화면 표시를 위한 데이터를 수신하여 수신된 데이터를 화면으로 표시할 수 있다. 또한, 표시부(230)는 사용자장치(200)의 메뉴, 데이터, 기능 설정 정보 및 기타 다양한 정보를 사용자에게 시각적으로 제공할 수 있다. 표시부(230)가 터치스크린으로 형성되는 경우, 입력부(220)의 기능의 일부 또는 전부를 대신 수행할 수 있다. 표시부(230)는 액정표시장치(LCD, Liquid Crystal Display), 유기 발광 다이오드(OLED, Organic Light Emitting Diodes), 능동형 유기 발광 다이오드(AMOLED, Active Matrix Organic Light Emitting Diodes) 등으로 형성될 수 있다. The display unit 230 may receive data for screen display from the controller 250 and display the received data on the screen. In addition, the display unit 230 may visually provide a menu, data, function setting information, and various other information of the user apparatus 200 to the user. When the display unit 230 is formed of a touch screen, some or all of the functions of the input unit 220 may be performed instead. The display unit 230 may be formed of a liquid crystal display (LCD), organic light emitting diodes (OLEDs), active matrix organic light emitting diodes (AMOLEDs), or the like.

저장부(240)는 사용자장치(200)의 동작에 필요한 각 종 데이터, 어플리케이션, 사용자장치(200)의 동작에 따라 발생된 각 종 데이터를 저장하는 역할을 수행한다. 이러한 저장부(240)는 스토리지, 메모리 등이 될 수 있다. 이러한 저장부(240)는 사용자장치(200)의 부팅(booting) 및 운영(operation)을 위한 운영체제(OS, Operating System), 본 발명의 실시예에 따른 각 종 애플리케이션을 저장할 수 있다. 저장부(240)에 저장되는 각 종 데이터는 사용자의 조작에 따라, 삭제, 변경, 추가될 수 있다. The storage unit 240 stores various data necessary for the operation of the user device 200, applications, and various data generated according to the operation of the user device 200. The storage unit 240 may be a storage, a memory, or the like. The storage unit 240 may store an operating system (OS) for booting and operating the user device 200 and various applications according to an embodiment of the present invention. Various data stored in the storage unit 240 may be deleted, changed, or added according to a user's manipulation.

제어부(250)는 사용자장치(200)의 전반적인 동작 및 사용자장치(200)의 내부 블록들 간 신호 흐름을 제어하고, 데이터를 처리하는 데이터 처리 기능을 수행할 수 있다. 이러한 제어부(250)는 중앙 처리 장치(Central Processing Unit : CPU), 어플리케이션 프로세서(Application Processor), GPU(Graphic Processing Unit) 등이 될 수 있다. 특히, 제어부(250)는 암복호부(400)를 포함한다. 이러한 암복호부(400)는 경량 암호 알고리즘(LEA: Lightweight Encryption Algorithm)에 따라 암호화 혹은 복호화를 수행한다. 이러한 암복호부(400)를 포함하는 제어부(250)의 동작은 아래에서 보다 상세하게 설명될 것이다. 또한, 도시되진 않았으나, 본 발명의 실시예에 따른 사용자장치(200)는 메모리 카드와 같은 외부 저장 매체를 삽입하여 데이터 저장을 가능토록 하는 저장매체 삽입부, 외부 디지털 기기와의 데이터 교환을 위한 연결 단자, 충전용 단자를 구비할 수 있다. 또한, 사용자장치(200)는 마이크 및 스피커를 통해 오디오 신호, 음성 신호 등을 입력 혹은 출력하는 오디오 처리부, 디지털 음원 재생을 위한 MP3 모듈 등의 부가 기능을 갖는 기능 부속들을 선택적으로 더 포함하여 구성될 수 있다. 디지털 기기의 컨버전스(convergence) 추세에 따라 휴대 기기의 변형이 매우 다양하여 모두 열거할 수는 없으나, 상기 언급된 유닛들과 동등한 수준의 유닛이 본 발명에 따른 사용자장치(200)에 추가로 더 포함되어 구성될 수 있다는 것은 본 기술분야의 통상의 지식을 가진 자라면 쉽게 이해할 수 있을 것이다. The controller 250 may control an overall operation of the user device 200 and a signal flow between internal blocks of the user device 200, and may perform a data processing function for processing data. The controller 250 may be a central processing unit (CPU), an application processor, a graphic processing unit (GPU), or the like. In particular, the controller 250 includes an encryption / decryption unit 400. The encryption and decryption unit 400 performs encryption or decryption according to a Lightweight Encryption Algorithm (LEA). The operation of the controller 250 including the encryption / decryption unit 400 will be described in more detail below. In addition, although not shown, the user device 200 according to the embodiment of the present invention includes a storage medium inserting unit for inserting an external storage medium such as a memory card to store data, and a connection for exchanging data with an external digital device. A terminal and a terminal for charging can be provided. In addition, the user device 200 may be configured to further include a functional part having an additional function, such as an audio processing unit for inputting or outputting an audio signal, a voice signal, etc. through a microphone and a speaker, an MP3 module for digital sound source reproduction Can be. Due to the convergence trend of digital devices, variations of mobile devices are very diverse and cannot be enumerated. However, a unit equivalent to the above-mentioned units is further included in the user device 200 according to the present invention. It can be easily understood by those of ordinary skill in the art.

다음으로, 본 발명의 실시예에 따른 인증장치(300)에 대해서 설명하기로 한다. 도 4는 본 발명의 실시예에 따른 인증장치의 구성을 설명하기 위한 블록도이다. 도 4를 참조하면, 본 발명의 실시예에 따른 인증장치(300)는 통신유닛(310), 입력유닛(320), 표시유닛(330), 저장유닛(340) 및 제어유닛(350)을 포함한다. Next, the authentication apparatus 300 according to the embodiment of the present invention will be described. 4 is a block diagram illustrating a configuration of an authentication apparatus according to an embodiment of the present invention. Referring to FIG. 4, the authentication apparatus 300 according to the embodiment of the present invention includes a communication unit 310, an input unit 320, a display unit 330, a storage unit 340, and a control unit 350. do.

통신유닛(310)은 네트워크를 통해 사용자장치(200)와 통신하기 위한 것이다. 이러한 통신을 통해 데이터 등을 수신하거나, 전달할 수 있다. 통신유닛(310)은 송신되는 신호의 주파수를 상승 변환 및 증폭하는 RF 송신기와, 수신되는 신호를 저 잡음 증폭하고 주파수를 하강 변환하는 RF 수신기 등으로 구성될 수 있다. The communication unit 310 is for communicating with the user device 200 via a network. Through such communication, data or the like can be received or transmitted. The communication unit 310 may be configured as an RF transmitter for upconverting and amplifying a frequency of a transmitted signal, and an RF receiver for low noise amplifying and downconverting a received signal.

입력유닛(320)은 사용자의 명령, 선택, 데이터, 정보 중에서 적어도 하나를 입력 받기 위한 수단으로서, 숫자 또는 문자 정보를 입력 받고 다양한 기능을 설정하기 위한 다수의 입력키 및 기능키를 포함할 수 있다. 그리고 입력유닛(320)은 사용자의 키 입력을 감지하여, 감지된 키 입력에 따른 입력 신호를 제어유닛(350)으로 전달할 수 있다. The input unit 320 is a means for receiving at least one of a user's command, selection, data, and information. The input unit 320 may include a plurality of input keys and function keys for receiving numeric or text information and setting various functions. . In addition, the input unit 320 may detect a user's key input and transmit an input signal according to the detected key input to the control unit 350.

표시유닛(330)은 제어유닛(350)으로부터 화면 표시를 위한 데이터를 수신하여 수신된 데이터를 화면으로 표시할 수 있다. 또한, 표시유닛(330)은 인증장치(300)의 메뉴, 데이터, 기능 설정 정보 및 기타 다양한 정보를 사용자에게 시각적으로 제공할 수 있다. 표시유닛(330)이 터치스크린으로 형성되는 경우, 입력유닛(320)의 기능의 일부 또는 전부를 대신 수행할 수 있다. 표시유닛(330)은 액정표시장치(LCD, Liquid Crystal Display), 유기 발광 다이오드(OLED, Organic Light Emitting Diodes), 능동형 유기 발광 다이오드(AMOLED, Active Matrix Organic Light Emitting Diodes) 등으로 형성될 수 있다. The display unit 330 may receive data for screen display from the control unit 350 and display the received data on the screen. In addition, the display unit 330 may visually provide a menu, data, function setting information, and various other information of the authentication apparatus 300 to the user. When the display unit 330 is formed as a touch screen, some or all of the functions of the input unit 320 may be performed instead. The display unit 330 may be formed of a liquid crystal display (LCD), organic light emitting diodes (OLEDs), active matrix organic light emitting diodes (AMOLEDs), or the like.

저장유닛(340)은 인증장치(300)의 동작에 필요한 프로그램 및 데이터를 저장하는 역할을 수행하며, 프로그램 영역과 데이터 영역으로 구분될 수 있다. 프로그램 영역은 인증장치(300)의 전반적인 동작을 제어하는 프로그램 및 인증장치(300)를 부팅시키는 운영체제(OS, Operating System), 응용 프로그램 등을 저장할 수 있다. 데이터 영역은 인증장치(300)의 사용에 따라 발생하는 사용자 데이터가 저장되는 영역이다. 또한, 저장유닛(340)은 인증장치(300) 사용에 따라 발생되는 각 종 데이터를 저장할 수 있다. 저장유닛(340)에 저장되는 각 종 데이터는 사용자의 조작에 따라, 삭제, 변경, 추가될 수 있다. The storage unit 340 stores a program and data necessary for the operation of the authentication device 300, and may be divided into a program area and a data area. The program area may store a program for controlling the overall operation of the authentication device 300, an operating system (OS) for booting the authentication device 300, an application program, and the like. The data area is an area in which user data generated according to the use of the authentication device 300 is stored. In addition, the storage unit 340 may store various types of data generated according to the use of the authentication device 300. Various data stored in the storage unit 340 may be deleted, changed, or added according to a user's manipulation.

제어유닛(350)은 인증장치(300)의 전반적인 동작 및 인증장치(300)의 내부 블록들 간 신호 흐름을 제어하고, 데이터를 처리하는 데이터 처리 기능을 수행할 수 있다. 이러한 제어유닛(350)은 중앙 처리 장치(Central Processing Unit : CPU), 어플리케이션 프로세서(Application Processor) 등이 될 수 있다. 제어유닛(350)은 저장유닛(340)에 저장된 어플리케이션을 로드시켜 실행시키고, 필요한 경우, 임시 저장 공간으로 버퍼를 할당할 수 있다. 이러한 제어유닛(350)의 동작은 아래에서 보다 상세하게 설명될 것이다. The control unit 350 may control the overall operation of the authentication device 300 and the signal flow between the internal blocks of the authentication device 300, and perform a data processing function for processing data. The control unit 350 may be a central processing unit (CPU), an application processor, or the like. The control unit 350 may load and execute an application stored in the storage unit 340, and allocate a buffer to the temporary storage space if necessary. The operation of this control unit 350 will be described in more detail below.

전술한 바와 같이, 사용자장치(200)는 암복호부(400)를 포함하며, 이러한 암복호부(400)에 대해서 상세하게 설명하기로 한다. 도 5는 본 발명의 실시예에 따른 암복호부의 구성을 설명하기 위한 블록도이다. As described above, the user device 200 includes an encryption / decoding unit 400, and the encryption / decryption unit 400 will be described in detail. 5 is a block diagram illustrating a configuration of an encryption / decryption unit according to an embodiment of the present invention.

암복호부(400)에서 예컨대, 블록 암호 LEA의 평문과 암호문은 각각 128비트 길이의 비트열이며, 비밀키는 128, 192, 또는 256비트 길이의 비트열이다. LEA의 비밀키, 평문, 암호문은 바이트 배열이며, 암호화, 복호화 및 키스케줄 과정에 사용되는 내부 상태 변수 및 라운드키는 워드 배열이다. In the encryption / decryption unit 400, for example, the plaintext and the ciphertext of the block cipher LEA are 128-bit long bit streams, and the secret key is 128, 192, or 256-bit long bit streams. The LEA's secret key, plaintext, and ciphertext are byte arrays, and the internal state variables and roundkeys used for encryption, decryption, and key scheduling are word arrays.

암복호부(400)는 비밀키모듈(410), 키스케줄모듈(420), 암호모듈(430) 및 복호모듈(440)을 포함한다. 비밀키모듈(410)은 암호화를 위하여, 비밀키를 생성하고, 생성한 비밀키를 다음의 수학식 1에 따라 복수의 비밀키 조각, 예컨대, k가 자연수일 때, 다음과 같이, k개의 비밀키 조각으로 분할할 수 있다. The encryption / decryption unit 400 includes a secret key module 410, a key schedule module 420, an encryption module 430, and a decryption module 440. The secret key module 410 generates a secret key for encryption and converts the generated secret key into a plurality of secret key pieces, for example, when k is a natural number, according to Equation 1 below. Can be divided into key pieces.

Figure 112018001768410-pat00002
Figure 112018001768410-pat00002

Figure 112018001768410-pat00003
Figure 112018001768410-pat00003

여기서 p는 k+1 보다 같거나 큰 소수, x는 k개의 비밀키 조각, a는 다항식의 계수이며, 임의로 선택된다. 즉, 비밀키모듈(410)은 수학식 1에 따라 복수의 비밀키 조각

Figure 112018001768410-pat00004
을 생성할 수 있다. Where p is a prime number equal to or greater than k + 1, x is k secret key fragments, a is the coefficient of the polynomial, and is chosen arbitrarily. That is, the secret key module 410 is a plurality of secret key pieces according to equation (1)
Figure 112018001768410-pat00004
Can be generated.

복수의 비밀키 조각을 생성한 후, 비밀키모듈(410)은 생성된 복수의 비밀키 조각을 통신부(210)를 통해 클라우드서버(100)의 복수의 가상머신 혹은 복수의 인증장치(300)로 분배하여 전송할 수 있다. After generating a plurality of secret key pieces, the secret key module 410 is a plurality of generated secret key pieces through the communication unit 210 to a plurality of virtual machines or a plurality of authentication devices 300 of the cloud server 100 Can be distributed and sent.

또한, 비밀키모듈(410)은 복호화를 위하여, 통신부(210)를 통해 클라우드서버(100)의 복수의 가상머신 혹은 복수의 인증장치(300)로부터 복수의 비밀키 조각의 일부를 수집한다. 그런 다음, 비밀키모듈(410)은 라그랑지 보간법을 통해 수집된 비밀키 조각으로부터 비밀키를 복원할 수 있다. In addition, the secret key module 410 collects a part of the plurality of secret key pieces from the plurality of virtual machines or the plurality of authentication apparatus 300 of the cloud server 100 through the communication unit 210 for decryption. Then, the secret key module 410 may recover the secret key from the secret key pieces collected through the Lagrangian interpolation.

키스케줄모듈(420)은 암호화를 위한 키 스케줄 기능 및 복화화를 위한 키 스케줄 기능을 수행한다. 키스케줄모듈(420)은 비밀키모듈(410)이 생성한 비밀키가 입력되면, 비밀키로부터 복수개의 라운드키를 생성한다. 예를 들면, 키스케줄부(310)는 암호화를 위한 키 스케줄을 위해, 암호화 키스케줄 함수

Figure 112018001768410-pat00005
를 이용하여 k 비트의 비밀키 K로부터 Nr개의 192비트 암호화용 라운드키
Figure 112018001768410-pat00006
(0 ≤ i ≤ Nr-1)를 생성할 수 있다. 또한, 키스케줄부(310)는 복호화를 위한 키 스케줄을 위해, 복호화 키스케줄 함수
Figure 112018001768410-pat00007
를 이용하여 k 비트의 비밀키 K로부터 Nr개의 192비트 복호화용 라운드키
Figure 112018001768410-pat00008
(0 ≤ i ≤ Nr-1)를 생성할 수 있다. The key schedule module 420 performs a key schedule function for encryption and a key schedule function for decryption. The key schedule module 420 generates a plurality of round keys from the secret key when the secret key generated by the secret key module 410 is input. For example, the key schedule unit 310 is an encryption key schedule function for a key schedule for encryption.
Figure 112018001768410-pat00005
N-192-bit encryption roundkey from k-bit secret key K
Figure 112018001768410-pat00006
(0 ≦ i ≦ Nr−1). Also, the key scheduler 310 decrypts a key schedule function for the key schedule for decryption.
Figure 112018001768410-pat00007
Round key for N-192-bit decryption from k-bit secret key K
Figure 112018001768410-pat00008
(0 ≦ i ≦ Nr−1).

암호모듈(430)은 복수개의 라운드키를 라운드 함수

Figure 112018001768410-pat00009
에 입력하여 평문을 암호문으로 변환하는 암호화를 수행한다. 예를 들면, 암호모듈(430)은 라운드 함수
Figure 112018001768410-pat00010
를 이용하여 128비트 평문 P를 128비트 암호문 C로 변환하는 암호화를 수행한다. The cryptographic module 430 rounds a plurality of round keys
Figure 112018001768410-pat00009
Type in to encrypt the plain text into cipher text. For example, cryptographic module 430 is a round function
Figure 112018001768410-pat00010
Encrypts 128-bit plain text P into 128-bit ciphertext C using

복호모듈(440)은 복수개의 라운드키를 라운드 함수

Figure 112018001768410-pat00011
에 입력하여 암호문을 평문으로 변환하는 복호화를 수행한다. 예를 들면, 복호모듈(440)은 라운드 함수
Figure 112018001768410-pat00012
를 이용하여 128비트 암호문 P를 128비트 평문 C로 변환하는 암호화를 수행한다. The decoding module 440 rounds a plurality of round keys.
Figure 112018001768410-pat00011
Enter into to decrypt the ciphertext into plaintext. For example, the decoding module 440 is a round function
Figure 112018001768410-pat00012
Encrypts the 128-bit ciphertext P into 128-bit plaintext C using

그러면, 본 발명의 실시예에 따른 정보 보안을 위한 방법에 대해서 설명하기로 한다. 전술한 바와 같이, 사용자장치(200)는 제1 사용자장치(201) 및 제2 사용자장치(202)를 포함한다. 특히, 제1 사용자장치(201)는 저작권 보호를 위한 컨텐츠(원본 컨텐츠)를 암호화하여 전송하는 사용자장치(200)이며, 제2 사용자장치(202)는 암호화된 컨텐츠를 복호화하여 컨텐츠 원본을 복원하는 사용자장치(200)라고 가정한다. 먼저, 제1 사용자장치(201)가 저작권 보호를 위한 컨텐츠(원본 컨텐츠)를 암호화하여 제2 사용자장치(202)로 전송하는 방법에 대해서 설명하기로 한다. 도 6은 본 발명의 실시예에 따른 정보 보안을 위한 방법을 설명하기 위한 흐름도이다. Next, a method for information security according to an embodiment of the present invention will be described. As described above, the user device 200 includes a first user device 201 and a second user device 202. In particular, the first user device 201 is a user device 200 that encrypts and transmits the content (original content) for copyright protection, and the second user device 202 decrypts the encrypted content to restore the content original. Assume that the user device 200. First, a description will be given of a method in which the first user device 201 encrypts a copyright protection content (original content) and transmits the same to the second user device 202. 6 is a flowchart illustrating a method for information security according to an embodiment of the present invention.

제1 사용자장치(201)의 제어부(250)는 S110 단계 제1 형식의 컨텐츠를 입력받는다. 본 발명의 실시예에 따른 제1 형식의 컨텐츠는 이미지 파일 형식 이외의 형식의 파일을 의미한다. 제1 형식의 컨텐츠는 PPT 파일, HWP 파일, PDF 파일 등의 문서 형식의 파일을 예시할 수 있다. 그러면, 제어부(250)는 S120 단계에서 문서 파일 형식의 컨텐츠를 제2 형식인 이미지 파일 형식으로 변환한다. 이미지 파일 형식은 JPG, PNG, BMP 등을 예시할 수 있다. The control unit 250 of the first user device 201 receives the content of the first format in step S110. Content of the first format according to an embodiment of the present invention means a file of a format other than the image file format. The content of the first format may exemplify a file of a document format such as a PPT file, a HWP file, a PDF file, or the like. Then, the control unit 250 converts the content of the document file format to the image file format which is the second format in step S120. The image file format may include JPG, PNG, and BMP.

다음으로, 제어부(250)는 S130 단계에서 콘텐츠에 저작권 정보를 삽입한다. 도 7은 본 발명의 실시예에 따른 콘텐츠에 저작권 정보를 삽입하는 방법을 설명하기 위한 흐름도이다. 이러한 도 7은 S130 단계를 보다 자세하게 설명하기 위한 것이다. 다음의 표 1 및 표 2는 본 발명의 실시예에 따른 저작권 정보를 삽입하는 알고리즘을 구현한 소스 코드이다. 도 7, 표 1 및 표 2를 참조로 본 발명의 실시예에 따른 저작권 정보를 삽입하는 방법에 대해서 보다 상세하게 설명하기로 한다. Next, the control unit 250 inserts copyright information into the content in step S130. 7 is a flowchart illustrating a method of inserting copyright information into content according to an embodiment of the present invention. 7 is for explaining the step S130 in more detail. Table 1 and Table 2 below are source codes that implement an algorithm for inserting copyright information according to an embodiment of the present invention. 7, a method of inserting copyright information according to an embodiment of the present invention with reference to Tables 1 and 2 will be described in more detail.

T <- 125
for x <- 0 to Watermark_Width
for y <- 0 to Watermark_Height
Average <- (R + G + B) / 3
if Average <= T then
Bin_Watermark<- Color.Black
else
Bin_Watermark<- Color.White
end if
next y
next x
T <-125
for x <-0 to Watermark_Width
for y <-0 to Watermark_Height
Average <-(R + G + B) / 3
if Average <= T then
Bin_Watermark <-Color.Black
else
Bin_Watermark <-Color.White
end if
next y
next x

procedure Chaotic(Image)
WC[Image_Width * Image_Height]
WC2[Image_Width, Image_Height]
initial_x <- 0.5
initial_m <- 3.7
WC[0] <- initial_x
for i <- 0 to Image_Width * Image_Height
?? 1
WC[i + 1] <- initial_m * WC[i] *
(1 ?? WC[i])
next I
count <- 0
for i <- 0 to Image_Height
for j <- 0 to Image_Width
WC2[i, j] <- Floor(WC[count] + 0.5)
count++
next j
next I
return WC2
end procedure

Chaotic(Resize_Image)
for y <- 0 to Image_Height
for x <- 0 to Image_Width
if Resize_Watermark(y, x) == 255 then
bin[7] <- 1 ^ Chaotic[y, x]
else
bin[7] <- 0 ^ Chaotic[y, x]
end if
next x
next y
procedure Chaotic (Image)
WC [Image_Width * Image_Height]
WC2 [Image_Width, Image_Height]
initial_x <-0.5
initial_m <-3.7
WC [0] <-initial_x
for i <-0 to Image_Width * Image_Height
?? One
WC [i + 1] <-initial_m * WC [i] *
(1 ?? WC [i])
next I
count <-0
for i <-0 to Image_Height
for j <-0 to Image_Width
WC2 [i, j] <-Floor (WC [count] + 0.5)
count ++
next j
next I
return WC2
end procedure

Chaotic (Resize_Image)
for y <-0 to Image_Height
for x <-0 to Image_Width
if Resize_Watermark (y, x) == 255 then
bin [7] <-1 ^ Chaotic [y, x]
else
bin [7] <-0 ^ Chaotic [y, x]
end if
next x
next y

S131: 제어부(250)는 저작권 정보를 삽입하기 전, 먼저 저작권 정보를 마련한다. 본 발명의 실시예에 따른 저작권 정보는 이미지 파일이 될 수 있다. 저작권 정보가 예컨대, 텍스트 파일 등의 이미지 파일이 아닌 경우, 그 저작권 정보의 파일 형식을 이미지 파일 형식으로 변환한다. S131: The control unit 250 prepares the copyright information before inserting the copyright information. Copyright information according to an embodiment of the present invention may be an image file. If the copyright information is not an image file such as a text file, for example, the file format of the copyright information is converted into an image file format.

S132: 제어부(250)는 카오틱 시퀀스를 생성한다. 생성 과정에서 카오틱 맵이 사용되며, 초기 값 2개를 키로써 사용한다. 카오틱 시퀀스는 다음의 수학식 2를 이용하여 생성한다. S132: The controller 250 generates a chaotic sequence. Chaotic maps are used in the creation process, using two initial values as keys. The chaotic sequence is generated using Equation 2 below.

Figure 112018001768410-pat00013
Figure 112018001768410-pat00013

여기서, 초기 값은 Chaotic[i]에 들어가며, 파라미터 값은 initial_m에 들어간다. Here, the initial value is entered in Chaotic [i] and the parameter value is entered in initial_m.

S133: 제어부(250)는 이미지 파일인 저작권 정보를 다음의 표 1의 소스 코드에 따라 바이너리 이미지로 변환한다. 이때, 제어부(250)는 표 1에 보인 바와 같이, RGB 이미지의 평균 픽셀 값을 계산하여 평균값보다 작을 경우 흑색, 높을 경우 백색으로 이미지를 변환한다. S133: The controller 250 converts copyright information, which is an image file, into a binary image according to the source code of Table 1 below. In this case, as shown in Table 1, the controller 250 calculates an average pixel value of the RGB image and converts the image into black when the average value is smaller than the average value and white when the average value is smaller than the average value.

S134: 제어부(250)는 바이너리 이미지를 콘텐츠(원본 콘텐츠)의 이미지 크기로 리사이즈(Re-size)한다. S134: The controller 250 resizes the binary image to the image size of the content (original content).

S135: 제어부(250)는 바이너리 이미지의 픽셀 값을 2진수로 변환한다. S135: The controller 250 converts pixel values of the binary image into binary numbers.

S136: 제어부(250)는 콘텐츠인 원본 이미지의 픽셀값의 LSB에 2진수로 변환된 바이너리 이미지의 콘텐츠와 동일한 픽셀 좌표의 픽셀과 카오틱 시퀀스를 XOR한 값을 삽입한다. 즉, 바이너리 이미지는 콘텐츠와 동일한 크기로 리사이징되었기 때문에 콘텐츠의 모든 픽셀 각각과 대응하는 픽셀을 가진다. 따라서 대응하는 픽셀을 이진수로 변환하고, 변환된 이진수와 카오틱 시퀀스를 XOR 연산하여 콘텐츠의 대응하는 픽셀에 삽입한다. 예를 들면, 이미지 픽셀값이 255라면, 변환된 2진수 픽셀 값의 LSB에 1과 카오틱 시퀀스를 XOR한 값을 넣는다. 이러한 S136 단계는 콘텐츠 원본 이미지의 모든 픽셀 값의 LSB에 저작권 정보가 모두 삽입될 때까지 반복한다. S136: The controller 250 inserts a value obtained by XORing a pixel and a chaotic sequence having the same pixel coordinates as the content of the binary image converted to binary into the LSB of the pixel value of the original image as the content. That is, since the binary image has been resized to the same size as the content, it has a pixel corresponding to each and every pixel of the content. Therefore, the corresponding pixel is converted into a binary number, and the converted binary number and chaotic sequence are XORed and inserted into the corresponding pixel of the content. For example, if the image pixel value is 255, XOR of 1 and the chaotic sequence is inserted into the LSB of the converted binary pixel value. This step S136 is repeated until all the copyright information is inserted into the LSB of all pixel values of the content original image.

다음으로, 제어부(250)의 암복호화부(400)의 비밀키모듈(410)은 S140 단계에서 암호화를 위하여, 비밀키를 생성한다. 여기서, 비밀키는 생체 신호를 이용하여 생성될 수 있다. 사용자장치(200)는 생체 신호를 수집하기 위한 생체 신호 센서를 더 포함할 수 있다. 예를 들면, 생체 신호는 얼굴 특징, 음성, 지문, 홍채, 망막, 손 기하학, 서명 역학, 키입력 역학, 입술 움직임, 열 얼굴 이미지, 열 손 이미지, 걸음걸이, 체취 등을 포함하며, 사용자장치(200)는 이러한 생체 신호의 종류에 맞는 생체 신호 센서를 더 포함할 수 있다. 이러한 생체 신호 센서는 카메라 센서, 적외선 센서, 적외선 카메라 센서, 관성 센서, 터치 센서, 오디오 센서, 햅틱 센서 등을 예시할 수 있다. 비밀키모듈(410)은 생체 신호 센서를 통해 수집된 생체 신호는 이미지이며, 이러한 이미지를 비트열로 변환하고, 생체 신호의 비트열 중 소정 길이의 비트열을 비밀키로 이용할 수 있다. Next, the secret key module 410 of the encryption and decryption unit 400 of the control unit 250 generates a secret key for encryption in step S140. Here, the secret key may be generated using a biosignal. The user device 200 may further include a biosignal sensor for collecting the biosignal. For example, biometric signals include facial features, speech, fingerprints, irises, retinas, hand geometry, signature mechanics, keying mechanics, lip movements, thermal facial images, thermal hand images, gait, body odor, and the like. The biosignal 200 may further include a biosignal sensor suitable for the type of the biosignal. Such biosignal sensors may exemplify camera sensors, infrared sensors, infrared camera sensors, inertial sensors, touch sensors, audio sensors, haptic sensors, and the like. The secret key module 410 may be an image of a biosignal collected through a biosignal sensor, and may convert the image into a bitstream and use a bitstream of a predetermined length among the bitstreams of the biosignal as a secret key.

그런 다음, 암복호화부(400)의 비밀키모듈(410)은 S150 단계에서 앞서 생성한 비밀키를 전술한 수학식 1에 따라 복수의 비밀키 조각으로 분할하고, 복수의 비밀키 조각을 통신부(210)를 통해 클라우드서버(100)의 복수의 가상머신 혹은 복수의 인증장치(300) 중 k개의 장치에 분배하여 저장한다. 또한, 필요한 경우, k개의 장치의 접속 주소를 제2 사용자장치(202)에 제공한다. 이에 대해 보다 자세히 설명하기로 한다. 도 8은 본 발명의 실시예에 따른 비밀키 조각을 분배하여 저장하는 방법을 설명하기 위한 흐름도이다. 이러한 도 8은 S150 단계를 보다 상세하게 설명하기 위한 것이다. Then, the secret key module 410 of the encryption / decryption unit 400 divides the secret key generated in step S150 into a plurality of secret key pieces according to Equation 1 above, and divides the plurality of secret key pieces into a communication unit ( Through 210, the plurality of virtual machines or the plurality of authentication devices 300 of the cloud server 100 is distributed and stored in k devices. Also, if necessary, the second user devices 202 are provided with connection addresses of k devices. This will be described in more detail. 8 is a flowchart illustrating a method of distributing and storing a secret key fragment according to an embodiment of the present invention. 8 is for explaining the step S150 in more detail.

도 8을 참조하면, 제어부(250)는 S151 단계에서 비밀키로부터 k개의 비밀키 조각을 생성한 후, S152 단계에서 통신부(210)를 통해 클라우드서버(100) 및 복수의 인증장치(300) 중 소정 수의 장치에 비밀키 조각을 포함하는 비밀키 조각 보관 요청 메시지를 전송한다. 본 발명의 실시예에 따르면, 클라우드서버(100)는 가상머신을 통해 복수의 비밀키 조각을 수용한다. 따라서 제어부(250)는 복수의 비밀키 조각을 포함하는 비밀키 조각 보관 요청 메시지를 클라우드서버(100)로 전송할 수 있다. 또한, 복수의 인증장치(300) 각각은 인증장치(300) 당 하나의 비밀키 조각을 수용하며, 제어부(250)는 어느 하나의 인증장치(300)에 하나의 비밀키 조각을 포함하는 비밀키 조각 보관 요청 메시지를 전송할 수 있다. Referring to FIG. 8, the control unit 250 generates k secret key pieces from the secret key in step S151, and then, among the cloud server 100 and the plurality of authentication devices 300 through the communication unit 210 in step S152. A secret key fragment storage request message including a secret key fragment is sent to a predetermined number of devices. According to an embodiment of the present invention, the cloud server 100 accommodates a plurality of secret key pieces through a virtual machine. Therefore, the controller 250 may transmit a secret key fragment storage request message including a plurality of secret key fragments to the cloud server 100. Also, each of the plurality of authentication devices 300 accommodates one secret key piece per authentication device 300, and the controller 250 includes a secret key including one secret key piece in any one authentication device 300. Send a fragment archive request message.

인증장치(300)가 비밀키 조각 보관 요청 메시지를 수신한 경우, 인증장치(300)의 제어유닛(350)은 저장유닛(340)에 소정 시간 동안 하나의 비밀키 조각을 저장할 수 있는 저장 공간을 할당하고, 할당된 저장 공간에 비밀키 조각을 저장한다. 그런 다음, 제어유닛(350)은 S153 단계에서 통신모듈(110)을 통해 저장모듈(340)에 저장된 비밀키 조각에 접근할 수 있는 접속 주소를 제1 사용자장치(201)로 전송한다. 이때, 제어유닛(350)은 접속 주소와 더불어 비밀키 조각의 저장 만료 시간을 더 포함시켜 제1 사용자장치(201)로 전송한다. When the authentication device 300 receives the secret key piece storage request message, the control unit 350 of the authentication device 300 has a storage space for storing one secret key piece for a predetermined time in the storage unit 340. Allocate a private key fragment in the allocated storage space. Then, the control unit 350 transmits the access address for accessing the secret key fragment stored in the storage module 340 to the first user device 201 through the communication module 110 in step S153. At this time, the control unit 350 further includes a storage expiration time of the secret key fragment in addition to the access address and transmits it to the first user device 201.

클라우드서버(100)가 비밀키 조각 보관 요청 메시지를 수신한 경우, 클라우드서버(100)의 제어모듈(130)은 메시지에 포함된 비밀키 조각의 수에 대응하는 수의 가상머신을 생성한다. 이때, 제어모듈(130)은 가상머신에 접근할 수 있는 접속 주소를 할당하여 가상머신을 생성한다. 생성된 가상머신 각각은 저장모듈(130)에 비밀키 조각을 저장할 수 있는 저장 공간을 할당한 후, 할당된 저장 공간에 비밀키 조각을 저장한다. 그런 다음, 제어모듈(130)의 가상머신 각각은 S153 단계에서 통신모듈(110)을 통해 가상 머신 각각이 저장한 비밀키 조각에 접근할 수 있는 접속 주소를 제1 사용자장치(201)로 전송한다. 이때, 제어모듈(130)이 가상머신을 소정 시간 동안 생성시켰다가 소멸시키기 때문에 제어모듈(130)의 가상머신 각각은 접속 주소와 더불어 해당 가상머신의 동작 만료 시간, 즉, 비밀키 조각의 저장 만료 시간을 더 포함시켜 제1 사용자장치(201)로 전송한다. 이와 같이, 하나의 가상머신은 하나의 인증장치(300)와 동일하게 동작한다. 이는 하나의 가상머신이 개별적인 접속 주소를 가지고 개별적인 프로세스로 동작하고, 개별적인 저장 공간을 할당하여 제공하는 네트워크 상의 개별 장치로 동작하는 것을 의미한다. When the cloud server 100 receives the secret key fragment storage request message, the control module 130 of the cloud server 100 generates a virtual machine corresponding to the number of secret key fragments included in the message. At this time, the control module 130 generates a virtual machine by allocating an access address for accessing the virtual machine. Each of the generated virtual machines allocates a storage space for storing the secret key fragment to the storage module 130 and stores the secret key fragment in the allocated storage space. Then, each of the virtual machines of the control module 130 transmits to the first user device 201 an access address for accessing the secret key pieces stored by each of the virtual machines through the communication module 110 in step S153. . At this time, since the control module 130 creates and then extinguishes the virtual machine for a predetermined time, each of the virtual machines of the control module 130 has an access address and an operation expiration time of the corresponding virtual machine, that is, storage expiration of the secret key fragment. The time is further included and transmitted to the first user device 201. As such, one virtual machine operates in the same manner as one authentication apparatus 300. This means that a virtual machine operates as a separate process with separate access addresses and as a separate device on the network that allocates and provides separate storage spaces.

이와 같이, 복수의 가상 머신 및 복수의 인증 장치(300) 각각으로부터 복수(예컨대, k개)의 비밀키 조각 각각에 대한 접속 주소 및 저장 만료 시간을 수신할 때마다, 제1 사용자장치(201)의 제어부(250)는 S155 단계에서 통신부(210)를 통해 복수(예컨대, k개)의 비밀키 조각 중 해당하는 비밀키 조각에 대한 접속 주소 및 저장 만료 시간을 개별적인 채널 및 세션을 할당하여 제2 사용자장치(202)로 전송한다. 즉, 복수의 비밀키 조각 각각의 접속 주소 및 저장 만료 시간은 따로 구분하여 개별적인 채널 및 세션을 통해 전송한다. As such, each time the first user device 201 receives a connection address and a storage expiration time for each of a plurality of (eg, k) secret key fragments from each of the plurality of virtual machines and the plurality of authentication devices 300, the first user device 201 In step S155, the control unit 250 allocates a separate channel and session to the access address and storage expiration time for the corresponding secret key fragment among the plurality of (eg, k) secret key fragments through the communication unit 210. Send to user device 202. That is, the access address and the storage expiration time of each of the plurality of secret key fragments are separately transmitted and transmitted through separate channels and sessions.

한편, 암복호화부(400)의 키스케줄모듈(420)은 S160 단계에서 비밀키모듈(410)이 생성한 비밀키로부터 복수개의 라운드키를 생성한다. 그리고 암복호화부(400)의 암호모듈(430)은 S170 단계에서 복수개의 라운드키를 라운드 함수에 입력하여 평문인 콘텐츠를 암호문으로 변환하는 암호화를 수행한다. On the other hand, the key schedule module 420 of the encryption and decryption unit 400 generates a plurality of round keys from the secret key generated by the secret key module 410 in step S160. The encryption module 430 of the encryption / decryption unit 400 performs encryption to convert the plain text content into a cipher text by inputting a plurality of round keys to the round function in step S170.

다음으로, 제어부(250)는 S180 단계에서 생체 신호를 이용하여 추가적인 암호화를 수행한다. 이러한 S180 단계는 선택적으로 수행될 수 있다. 도 9는 본 발명의 실시예에 따른 생세 신호를 이용한 암호화 방법을 설명하기 위한 흐름도이다. 이러한 도 9는 S180 단계를 보다 상세하게 설명하기 위한 것이다. Next, the controller 250 performs additional encryption using the biosignal in step S180. This step S180 may be selectively performed. 9 is a flowchart illustrating an encryption method using live signal according to an embodiment of the present invention. 9 is for explaining the step S180 in more detail.

제어부(250)는 S181 단계에서 생체 신호를 입력받는다. 이를 위하여, 도시되지는 않았지만, 사용자장치(200)는 생체 신호를 수집하기 위한 생체 신호 센서를 더 포함할 수 있다. 예를 들면, 생체 신호는 얼굴 특징, 음성, 지문, 홍채, 망막, 손 기하학, 서명 역학, 키입력 역학, 입술 움직임, 열 얼굴 이미지, 열 손 이미지, 걸음걸이, 체취 등을 포함하며, 사용자장치(200)는 이러한 생체 신호의 종류에 맞는 생체 신호 센서를 더 포함할 수 있다. The controller 250 receives a biosignal in operation S181. To this end, although not shown, the user device 200 may further include a biosignal sensor for collecting a biosignal. For example, biometric signals include facial features, speech, fingerprints, irises, retinas, hand geometry, signature mechanics, keying mechanics, lip movements, thermal facial images, thermal hand images, gait, body odor, and the like. The biosignal 200 may further include a biosignal sensor suitable for the type of the biosignal.

생체 신호가 입력되면, 제어부(250)는 S182 단계에서 생체 신호를 이진화하고, S183 단계에서 이진화된 생체 신호를 생체 데이터로 변환한다. 이때, 제어부(250)는 생체인식 데이터 교환 포맷(CBEFF: (Common Biometric Exchange File Format))의 BIR(Biometric Identification Record) 구조에 따라 생체 데이터로 변환할 수 있다. 이러한 생체 데이터는 다음의 표 3과 같은 구조를 가진다. When the biosignal is input, the control unit 250 binarizes the biosignal in operation S182 and converts the biosignal converted into biometric data in operation S183. In this case, the controller 250 may convert the biometric data according to the Biometric Identification Record (BIR) structure of the Biometric Exchange File Format (CBEFF). Such biometric data has a structure as shown in Table 3 below.

SBH(헤더)SBH (header) BDB(이진화된 생체 신호)Binary Biosignal (BDB) SB(서명)SB (Signature)

즉, 제어부(250)는 이진화된 생체 신호에 그 생체 신호를 분류하는 헤더를 생성하고, 서명을 추가하여 생체 데이터를 생성한다. That is, the controller 250 generates a header for classifying the biosignal to the binarized biosignal, and adds a signature to generate biometric data.

다음으로, 제어부(250)는 S183 단계에서 타임스탬프를 생성한다. 여기서, 타임스탬프는 제1 및 제2 사용자장치(201, 202) 양자 간에 미리 협의된 방식에 의해 생성된다. Next, the control unit 250 generates a time stamp in step S183. Here, the time stamp is generated by a method negotiated in advance between both the first and second user apparatuses 201 and 202.

이어서, 제어부(250)는 S184 단계에서 컨텐츠, 생체 데이터 및 타임스탬프를 인자로 해시 함수 입력하여 암호화를 수행한다. 전술한 암호화가 이루어진 후, 제어부(250)는 S185 단계에서 생체 데이터를 클라우드서버(100)에 저장할 수 있다. Subsequently, the controller 250 encrypts the hash function by inputting the content, the biometric data, and the time stamp as a factor in operation S184. After the above encryption is made, the controller 250 may store the biometric data in the cloud server 100 in step S185.

S185 단계의 일실시예에 따르면, 제어부(250)는 클라우드서버(100)에 생체 데이터를 저장할 것을 요청할 수 있다. 그러면, 클라우드서버(100)의 제어모듈(130)은 가상머신을 생성하고, 생성된 가상머신은 저장모듈(120)에 생체 데이터를 저장할 수 있는 저장 공간을 할당하고, 할당된 공간에 저장한다. 그런 다음, 제어모듈(130)은 통신모듈(110)을 통해 생체 데이터에 접근할 수 있는 접속 주소를 제1 사용자장치(201)에 전송한다. 이때, 생체 데이터를 소정 기간 동안만 저장하는 경우, 생체 데이터의 저장 만료 시간을 더 포함하여 전송할 수 있다. According to an embodiment of step S185, the controller 250 may request the cloud server 100 to store biometric data. Then, the control module 130 of the cloud server 100 generates a virtual machine, the generated virtual machine allocates a storage space for storing biometric data in the storage module 120, and stores in the allocated space. Then, the control module 130 transmits the access address for accessing the biometric data through the communication module 110 to the first user device 201. In this case, when the biometric data is stored only for a predetermined period, the biometric data may further include a storage expiration time of the biometric data.

S185 단계의 대안적인 실시예에 따르면, 이때, 제어부(250)는 전술한 수학식 1을 이용하여 생체 데이터를 복수의 생체 데이터 조각으로 분할한다. 그런 다음, 클라우드서버(100)에 복수의 생체 데이터 조각을 저장할 것을 요청할 수 있다. 제1 사용자장치(201)로부터 복수의 생체 데이터 조각을 수신한 경우, 클라우드서버(100)의 제어모듈(130)은 메시지에 포함된 생체 데이터 조각의 수에 대응하는 수의 가상머신을 생성한다. 이때, 제어모듈(130)은 가상머신에 접근할 수 있는 접속 주소를 할당하여 가상머신을 생성한다. 생성된 가상머신 각각은 저장모듈(130)에 생체 데이터 조각을 저장할 수 있는 저장 공간을 할당한 후, 할당된 저장 공간에 생체 데이터 조각을 저장한다. 그런 다음, 제어모듈(130)의 가상머신 각각은 통신모듈(110)을 통해 가상 머신 각각이 저장한 생체 데이터 조각에 접근할 수 있는 접속 주소를 제1 사용자장치(201)로 전송한다. 이때, 제어모듈(130)이 가상머신을 소정 시간 동안 생성시켰다가 소멸시키기 때문에 제어모듈(130)의 가상머신 각각은 접속 주소와 더불어 해당 가상머신의 동작 만료 시간, 즉, 생체 데이터 조각의 저장 만료 시간을 더 포함시켜 제1 사용자장치(201)로 전송한다. 이는 하나의 가상머신이 개별적인 접속 주소를 가지고 개별적인 프로세스로 동작하고, 개별적인 저장 공간을 할당하여 제공하는 네트워크 상의 개별 장치로 동작하는 것을 의미한다. According to an alternative embodiment of step S185, at this time, the controller 250 divides the biometric data into a plurality of biometric data pieces by using the above equation (1). Thereafter, the cloud server 100 may request to store a plurality of pieces of biometric data. When the plurality of biometric data fragments are received from the first user device 201, the control module 130 of the cloud server 100 generates a virtual machine corresponding to the number of biometric data fragments included in the message. At this time, the control module 130 generates a virtual machine by allocating an access address for accessing the virtual machine. Each of the generated virtual machines allocates a storage space for storing biometric data fragments to the storage module 130 and stores the biometric data fragments in the allocated storage space. Then, each of the virtual machines of the control module 130 transmits to the first user device 201 an access address for accessing the biometric data pieces stored by each of the virtual machines through the communication module 110. At this time, since the control module 130 generates and then extinguishes the virtual machine for a predetermined time, each of the virtual machines of the control module 130 has an access address and an operation expiration time of the corresponding virtual machine, that is, storage expiration of the biometric data fragment. The time is further included and transmitted to the first user device 201. This means that a virtual machine operates as a separate process with separate access addresses and as a separate device on the network that allocates and provides separate storage spaces.

전술한 바와 같이, 콘텐츠에 대한 암호화가 완료되면, 제어부(250)는 S190 단계에서 콘텐츠를 통신부(210)를 통해 제2 사용자 장치(202)로 전송한다. 만약, S180 단계가 수행된 경우, 제어부(250)는 콘텐츠와 더불어 타임스탬프를 같이 전송할 수 있다. 더욱이, 클라우드서버(100)에 저장된 생체 데이터 혹은 생체 데이터 조각에 접근할 수 있는 접속 주소와 생체 데이터 혹은 생체 데이터 조각의 저장 만료 시간을 더 포함하여 전송할 수 있다. 이와 같이, 제1 사용자장치(201)의 제어부(250)는 통신부(210)를 통해 생체 데이터 혹은 복수의 생체 데이터 조각 각각의 접속 주소 및 저장 만료 시간을 개별적인 채널 및 세션을 할당하여 제2 사용자장치(202)로 전송한다. 즉, 생체 데이터 혹은 복수의 생체 데이터 조각 각각의 접속 주소 및 저장 만료 시간은 따로 구분하여 개별적인 채널 및 세션을 통해 전송한다. As described above, when the encryption for the content is completed, the control unit 250 transmits the content to the second user device 202 through the communication unit 210 in step S190. If step S180 is performed, the controller 250 may transmit the time stamp together with the content. In addition, the transmission address may further include a connection address for accessing the biometric data or the biometric data fragment stored in the cloud server 100 and a storage expiration time of the biometric data or the biometric data fragment. As described above, the control unit 250 of the first user device 201 allocates a separate channel and session to the access address and storage expiration time of each of the biometric data or the plurality of biometric data fragments through the communication unit 210 to allocate the second user device. Send to 202. That is, the access address and storage expiration time of each biometric data or a plurality of biometric data fragments are separately transmitted and transmitted through separate channels and sessions.

다음으로, 제2 사용자장치(202)가 제1 사용자장치(201)가 전송한 암호화된 컨텐츠(원본 컨텐츠)를 복호화하는 방법에 대해서 설명하기로 한다. 도 10은 본 발명의 실시예에 따른 정보 보안을 위한 방법을 설명하기 위한 흐름도이다. Next, a method of decrypting the encrypted content (original content) transmitted by the first user device 201 by the second user device 202 will be described. 10 is a flowchart illustrating a method for information security according to an embodiment of the present invention.

제2 사용자장치(202)의 제어부(250)는 S190 단계에서 통신부(210)를 통해 컨텐츠를 수신한다. 이러한 콘텐츠에 대해 생체 신호를 이용하여 암호화가 이루어진 경우, 제어부(250)는 S210 단계에서 생체 신호를 이용하여 복호화를 수행한다. 도 11은 본 발명의 실시예에 따른 생세 신호를 이용한 암호화 방법을 설명하기 위한 흐름도이다. 이러한 도 11은 S210 단계를 보다 상세하게 설명하기 위한 것이다. 도 11을 참조하면, 생체 신호를 이용하여 암호화가 이루어진 경우, 제2 사용자장치(202)의 제어부(250)는 통신부(210)를 통해 암호화된 컨텐츠와 더불어, 생체 데이터(혹은 생체 데이터 조각)에 접근할 수 있는 접속 주소 및 타임스탬프를 수신할 수 있다. 이에 따라, 제어부(250)는 S211 단계에서 수신된 타임스탬프를 검증한다. 이때, 타임스탬프가 검증에 성공하여 타임스탬프가 유효한 타임스탬프인 것으로 가정한다. 다음으로, 제어부(250)는 S212 단계에서 접속 정보를 이용하여 클라우드서버(100)의 가상머신에 접근하여 생체 데이터(혹은 생체 데이터 조각)를 요청하면, 가상머신은 해당 생체 데이터(혹은 생체 데이터 조각)를 제2 사용자장치(202)로 전송한다. 이로써, 제어부(250)는 생체 데이터(혹은 생체 데이터 조각)를 수신할 수 있다. 이때, 필요한 경우, 즉, 복수의 생체 데이터 조각이 존재하는 경우, 제어부(250)는 라그랑지 보간법을 이용하여 복수의 생체 데이터 조각으로부터 생체 데이터를 복원할 수 있다. The control unit 250 of the second user device 202 receives the content through the communication unit 210 in step S190. If the content is encrypted using the biosignal, the control unit 250 decrypts the biosignal in operation S210. 11 is a flowchart illustrating an encryption method using live signal according to an embodiment of the present invention. 11 is for explaining the step S210 in more detail. Referring to FIG. 11, when encryption is performed using a biosignal, the control unit 250 of the second user device 202 may store the biometric data (or the biometric data fragment) together with the encrypted content through the communication unit 210. Accessible access addresses and timestamps can be received. Accordingly, the controller 250 verifies the time stamp received in step S211. In this case, it is assumed that the time stamp succeeds in verification and the time stamp is a valid time stamp. Next, when the controller 250 accesses the virtual machine of the cloud server 100 to request biometric data (or biometric data fragments) by using the access information in operation S212, the virtual machine transmits the biometric data (or biometric data fragments). ) Is transmitted to the second user device 202. As a result, the controller 250 may receive the biometric data (or the biometric data fragment). In this case, when necessary, that is, when there are a plurality of pieces of biometric data, the controller 250 may restore the biometric data from the plurality of biometric data pieces using Lagrange interpolation.

이와 같이, 타임스탬프를 검증하고, 생체 데이터를 수신한 후, 제어부(250)는 S213 단계에서 타임스탬프 및 생체 데이터를 해시 함수에 입력하여 컨텐츠를 복호화한다. As such, after verifying the time stamp and receiving the biometric data, the controller 250 inputs the time stamp and the biometric data into the hash function in step S213 to decode the content.

또한, 선택적으로, 제1 사용자장치(201)가 전송한 경우, 제2 사용자장치(202)의 제어부(250)는 앞서 S155 단계에서 복수의 비밀키 조각이 분배된 복수의 가상머신 혹은 복수의 인증장치(300) 중 k개의 장치 중 적어도 n개의 장치의 접속 정보를 수신할 수 있다. 제어부(250)는 S220 단계에서 통신부(210)를 통해 복수의 비밀키 조각이 분배된 복수의 가상머신 혹은 복수의 인증장치(300) 중 k개의 장치 중 적어도 n개의 장치로부터 비밀키 조각을 수집한다. 여기서, 일 실시예에 따르면, n개의 장치의 접속 정보는 제1 사용자장치(201)와 제2 사용자장치(202)가 미리 공유할 수 있다. 또는 대안적인 실시예에 따르면, 제2 사용자장치(202)는 앞서 S155 단계에서 n개의 장치의 접속 정보를 제1 사용자장치(201)로부터 수신할 수 있다. 도 12는 본 발명의 대안적인 실시예에 따른 비밀키 조각을 수집하는 방법을 설명하기 위한 흐름도이다. 도 12를 참조하는 실시예에 따르면, 제2 사용자장치(202)의 제어부(250)는 S221 단계에서 앞서(S155) 수신된 접속 정보를 통해 클라우드서버(100)의 가상머신 혹은 인증장치(300)에 비밀키 조각을 요청하는 요청 메시지를 전송한다. 이에 따라, 아직 비밀키 조각 저장 만료 시점이 도과되지 않은 경우, 제2 사용자장치(202)의 제어부(250)는 S222 단계에서 통신부(210)를 통해 클라우드서버(100)의 가상머신 혹은 인증장치(300)로부터 비밀키 조각을 수신할 수 있다. Also, optionally, when the first user device 201 transmits, the control unit 250 of the second user device 202 may include a plurality of virtual machines or a plurality of authentications in which a plurality of secret key pieces have been distributed in step S155. The device 300 may receive connection information of at least n devices of k devices. The control unit 250 collects the secret key fragments from at least n of k devices among the plurality of virtual machines or the plurality of authentication apparatuses 300 in which the plurality of secret key fragments are distributed through the communication unit 210 in step S220. . Here, according to an embodiment, the access information of the n devices may be shared in advance between the first user device 201 and the second user device 202. Alternatively, according to an alternative embodiment, the second user device 202 may receive the access information of the n devices from the first user device 201 in step S155. 12 is a flowchart illustrating a method of collecting secret key pieces according to an alternative embodiment of the present invention. According to the embodiment referring to FIG. 12, the control unit 250 of the second user device 202 may use the virtual machine or the authentication device 300 of the cloud server 100 through the access information previously received at step S221. Sends a request message requesting a secret key fragment Accordingly, if the secret key fragment storage expiration time has not yet passed, the control unit 250 of the second user device 202 through the communication unit 210 in step S222 of the virtual machine or authentication device of the cloud server 100 ( 300 may receive a secret key fragment.

n이 k 보다 작은 자연수일 때, n개의 비밀키 조각이 수집되면, 제2 사용자장치(202)의 제어부(250)는 S230 단계에서 라그랑지 보간법을 통해 수집된 비밀키 조각으로부터 비밀키를 복원한다. When n is a natural number smaller than k, when n secret key pieces are collected, the control unit 250 of the second user device 202 restores the secret key from the secret key pieces collected through the Lagrange interpolation method in step S230. .

그런 다음, 제어부(250)의 암복호화부(400)의 키스케줄모듈(420)은 S240 단계에서 비밀키모듈(410)이 생성한 비밀키로부터 복수개의 라운드키를 생성한다. 그리고 암복호화부(400)의 복호모듈(440)은 S250 단계에서 복수개의 라운드키를 라운드 함수에 입력하여 암호문인 컨텐츠를 평문으로 변환하는 복호화를 수행한다. Then, the key schedule module 420 of the encryption and decryption unit 400 of the control unit 250 generates a plurality of round keys from the secret key generated by the secret key module 410 in step S240. In operation S250, the decryption module 440 of the encryption / decryption unit 400 decrypts the ciphertext content into plain text by inputting a plurality of round keys into a round function.

다음으로, 제어부(250)는 S260 단계에서 콘텐츠에서 저작권 정보를 추출한다. 도 13은 본 발명의 실시예에 따른 콘텐츠에서 저작권 정보를 추출하는 방법을 설명하기 위한 흐름도이다. 이러한 도 13은 S260 단계를 보다 자세하게 설명하기 위한 것이다. 다음의 표 4는 본 발명의 실시예에 따른 저작권 정보를 추출하는 알고리즘을 구현한 소스 코드이다. 도 13 및 표 4를 참조로 본 발명의 실시예에 따른 저작권 정보를 추출하는 방법에 대해서 보다 상세하게 설명하기로 한다. Next, the control unit 250 extracts copyright information from the content in step S260. 13 is a flowchart illustrating a method of extracting copyright information from content according to an embodiment of the present invention. 13 is for explaining the step S260 in more detail. Table 4 below is a source code for implementing an algorithm for extracting copyright information according to an embodiment of the present invention. A method of extracting copyright information according to an embodiment of the present invention will be described in more detail with reference to FIGS. 13 and 4.

Chaotic(Image)
for y <- 0 to Image_Height
for x <- 0 to Image_Width
lsb <- lsb ^ WC2[y, x]
if lsb == 1 then
Image(y, x) <- 255
else
Image(y, x) <- 0
end if
next x
next y
Chaotic (Image)
for y <-0 to Image_Height
for x <-0 to Image_Width
lsb <-lsb ^ WC2 [y, x]
if lsb == 1 then
Image (y, x) <-255
else
Image (y, x) <-0
end if
next x
next y

S261: 제어부(250)는 전술한 수학식 2와 같이 카오틱 시퀀스를 생성한다. S261: The controller 250 generates a chaotic sequence as shown in Equation 2 above.

S262: 제어부(250)는 저작권 정보가 삽입된 콘텐츠에서 각 픽셀의 LSB와 카오틱 시퀀스와 XOR 연산을 수행한다. S262: The controller 250 performs an XOR operation with the LSB and the chaotic sequence of each pixel in the content in which the copyright information is inserted.

S263: 제어부(250)는 연산 결과 LSB가 1인 경우에는 바이너리 이미지의 픽셀 값을 255로, 0인 경우 바이너리 이미지의 픽셀값을 0으로 생성하여 저작권 정보인 바이너리 이미지를 복원한다. S263: If the result of the calculation, the control unit 250 generates a pixel value of the binary image as 255 when the LSB is 1 and a pixel value of the binary image as 0 when the LSB is 1, and restores the binary image which is copyright information.

다음으로, 제어부(250)는 S270 단계에서 JPG, PNG, BMP와 같은 이미지 파일 형식인 콘텐츠를 PPT, HWP, PDF와 같은 문서 파일 형식으로 변환한다. 이로써, 제2 사용자장치(202)의 제어부(250)는 S280 단계에서 문서 파일 형식으로 변환된 콘텐츠를 사용할 수 있다. Next, the control unit 250 converts the content of the image file format such as JPG, PNG, BMP to a document file format such as PPT, HWP, PDF in step S270. Thus, the control unit 250 of the second user device 202 can use the content converted to the document file format in step S280.

도 14 내지 도 17은 본 발명의 실시예에 따른 정보 보안 방법을 설명하기 위한 도면이다. 도 14 및 도 15는 비밀키를 이용한 암호화 기법을 설명하기 위한 도면이고, 도 16은 저작권 정보를 삽입하는 방법을 설명하기 위한 도면이며, 도 17은 본 발명의 실시예에 따른 생체 데이터를 설명하기 위한 도면이다. 14 to 17 are diagrams for describing an information security method according to an embodiment of the present invention. 14 and 15 are diagrams for explaining an encryption scheme using a secret key, FIG. 16 is a diagram for explaining a method of inserting copyright information, and FIG. 17 is for explaining biometric data according to an embodiment of the present invention. It is for the drawing.

본 발명의 실시예에 따른 카오틱맵을 활용한 이미지 형태의 저작권 정보 삽입 및 추출 기법은 저작권 정보 이미지를 원본 이미지와 크기를 맞추고, 바이너리 이미지로 변환한 후에 카오틱맵을 활용하여 암호화 한 뒤 삽입이 이루어지므로 안전한 저작권 정보 삽입이 가능하다. 그리고 본 발명에 따르면, 원본 이미지의 LSB에 저작권 정보를 삽입하기 때문에 원본 이미지 왜곡을 최소화 할 수 있다. The copyright information insertion and extraction technique in the form of an image using a chaotic map according to an embodiment of the present invention fits the size of the copyright information image with the original image, converts the binary information into a binary image, and then encrypts the image using a chaotic map. Secure copyright information can be inserted. According to the present invention, since the copyright information is inserted in the LSB of the original image, the distortion of the original image can be minimized.

한편, 앞서 설명된 본 발명의 실시예로 설명된 방법들은 다양한 컴퓨터수단을 통하여 판독 가능한 프로그램 형태로 구현되어 컴퓨터로 판독 가능한 기록매체에 기록될 수 있다. 여기서, 기록매체는 프로그램 명령, 데이터 파일, 데이터구조 등을 단독으로 또는 조합하여 포함할 수 있다. 기록매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 예컨대 기록매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광 기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함한다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 와이어뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 와이어를 포함할 수 있다. 이러한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다. On the other hand, the methods described in the embodiments of the present invention described above may be implemented in a program form readable through various computer means may be recorded on a computer-readable recording medium. Here, the recording medium may include a program command, a data file, a data structure, etc. alone or in combination. Program instructions recorded on the recording medium may be those specially designed and constructed for the present invention, or they may be of the kind well-known and available to those having skill in the computer software arts. For example, the recording medium may be magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs, DVDs, or magnetic-optical media such as floptical disks. magneto-optical media, and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions may include high-level language wires that can be executed by a computer using an interpreter as well as machine language wires such as those produced by a compiler. Such hardware devices may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.

이상 본 발명을 몇 가지 바람직한 실시예를 사용하여 설명하였으나, 이들 실시예는 예시적인 것이며 한정적인 것이 아니다. 이와 같이, 본 발명이 속하는 기술분야에서 통상의 지식을 지닌 자라면 본 발명의 사상과 첨부된 특허청구범위에 제시된 권리범위에서 벗어나지 않으면서 균등론에 따라 다양한 변화와 수정을 가할 수 있음을 이해할 것이다. While the invention has been described using some preferred embodiments, these embodiments are illustrative and not restrictive. As such, those of ordinary skill in the art will appreciate that various changes and modifications may be made according to equivalents without departing from the spirit of the present invention and the scope of rights set forth in the appended claims.

100: 클라우드서버 110: 통신모듈
120: 저장모듈 130: 제어모듈
200: 사용자장치 210: 통신부
220: 입력부 230: 표시부
240: 저장부 250: 제어부
300: 인증장치 310: 통신유닛
320: 입력유닛 330: 표시유닛
340: 저장유닛 350: 제어유닛
400: 암복호부 410: 비밀키모듈
420: 키스케줄모듈 430: 암호모듈
440: 복호모듈
100: cloud server 110: communication module
120: storage module 130: control module
200: user device 210: communication unit
220: input unit 230: display unit
240: storage unit 250: control unit
300: authentication device 310: communication unit
320: input unit 330: display unit
340: storage unit 350: control unit
400: encryption and decryption unit 410: secret key module
420: key schedule module 430: encryption module
440: decoding module

Claims (6)

정보 보안 시스템에 있어서,
물리적으로 구분된 복수의 인증장치;
논리적으로 구분되어 인증장치의 기능을 수행하는 복수의 가상머신을 포함하는 클라우드서버; 및
비밀키를 생성하고, k가 자연수일 때, 상기 비밀키를 k개의 비밀키 조각으로 분할하고, 상기 k개의 비밀키 조각을 상기 복수의 인증장치 및 상기 복수의 가상머신을 포함하는 복수의 장치 중 k개의 장치에 분배하여 전송하고, 상기 비밀키를 이용하여 라운드키를 생성하고, 상기 라운드키와 라운드 함수를 이용하여 컨텐츠를 암호화하며, 암호화된 컨텐츠를 제2 사용자장치로 전송하는 제1 사용자장치;를 포함하는 것을 특징으로 하는 정보 보안 시스템.
In an information security system,
A plurality of physically separated authentication devices;
Cloud servers comprising a plurality of virtual machines logically divided to perform the function of the authentication device; And
When a secret key is generated and k is a natural number, the secret key is divided into k secret key pieces, and the k secret key pieces are included among the plurality of devices including the plurality of authentication devices and the plurality of virtual machines. A first user device for distributing and transmitting to k devices, generating a round key using the secret key, encrypting content using the round key and a round function, and transmitting the encrypted content to a second user device. Information security system comprising a.
제1항에 있어서,
n은 k 보다 작은 자연수일 때, 상기 k개의 장치 중 적어도 n개의 장치로부터 비밀키 조각을 수집하고, 라그랑지 보간법을 통해 수집된 비밀키 조각으로부터 상기 비밀키를 복원하고, 상기 비밀키를 이용하여 복호키를 생성하고, 상기 복호키와 라운드 함수를 이용하여 컨텐츠를 복원하는 상기 제2 사용자장치;를 더 포함하는 것을 특징으로 하는 정보 보안 시스템.
The method of claim 1,
When n is a natural number smaller than k, collecting secret key pieces from at least n of the k devices, recovering the secret key from secret key pieces collected through Lagrange interpolation, and using the secret key And a second user device generating a decryption key and restoring contents by using the decryption key and a round function.
정보 보안 시스템의 정보 보안 방법에 있어서,
제1 사용자장치가 문서 파일 형식의 컨텐츠가 입력되면, 이미지 파일 형식으로 컨텐츠를 변환하는 단계;
상기 제1 사용자장치가 비밀키를 생성하는 단계;
k가 자연수일 때,
상기 제1 사용자장치가
수학식
Figure 112019048646530-pat00032
에 따라 상기 비밀키를 k개의 비밀키 조각으로 분할하는 단계; 및
상기 제1 사용자장치가 상기 k개의 비밀키 조각을 물리적으로 구분된 복수의 인증장치 및 논리적으로 구분되어 인증장치의 기능을 수행하는 클라우드서버의 복수의 가상머신을 포함하는 복수의 장치 중 k개의 장치에 분배하여 전송하는 단계;
상기 제1 사용자장치가 상기 비밀키를 이용하여 라운드키를 생성하는 단계;
상기 제1 사용자장치가 상기 라운드키와 라운드 함수를 이용하여 컨텐츠를 암호화하는 단계; 및
상기 제1 사용자장치가 상기 컨텐츠를 제2 사용자장치로 전송하는 단계;를 포함하는 것을 특징으로 하는 정보 보안 방법.
In the information security method of the information security system,
Converting, by the first user device, content in a document file format into content in an image file format;
Generating, by the first user device, a secret key;
when k is a natural number,
The first user device
Equation
Figure 112019048646530-pat00032
Dividing the secret key into k pieces of secret keys; And
K devices among a plurality of devices including a plurality of authentication devices physically divided into the k secret key pieces and a plurality of virtual machines of a cloud server that are logically divided to perform functions of the authentication device Distributing to and transmitting the same;
Generating, by the first user device, a round key using the secret key;
Encrypting, by the first user device, content using the round key and the round function; And
And transmitting, by the first user device, the content to a second user device.
삭제delete 제3항에 있어서,
상기 컨텐츠를 제2 사용자장치로 전송하는 단계 후,
n이 k 보다 작은 자연수일 때,
상기 제2 사용자장치가 상기 k개의 장치 중 적어도 n개의 장치로부터 비밀키 조각을 수집하는 단계;
라그랑지 보간법을 통해 수집된 비밀키 조각으로부터 상기 비밀키를 복원하는 단계;
상기 비밀키를 이용하여 복호키를 생성하는 단계; 및
상기 복호키와 라운드 함수를 이용하여 컨텐츠를 복원하는 단계;를 더 포함하는 것을 특징으로 하는 정보 보안 방법.
The method of claim 3,
After transmitting the content to a second user device,
when n is a natural number less than k,
Collecting, by the second user device, a secret key fragment from at least n of the k devices;
Restoring the secret key from the secret key pieces collected through Lagrangian interpolation;
Generating a decryption key using the secret key; And
And restoring content using the decryption key and the round function.
제3항 및 제5항 중 어느 한 항에 따른 정보 보안 방법을 수행하기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체. A computer-readable recording medium having recorded thereon a program for performing the information security method according to any one of claims 3 and 5.
KR1020180001886A 2017-01-06 2018-01-05 Information security system through encrypting and decrypting personal data and contents in smart device based on Lightweight Encryption Algorithm, method thereof and computer recordable medium storing program to perform the method KR102038217B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20170002187 2017-01-06
KR1020170002187 2017-01-06

Publications (2)

Publication Number Publication Date
KR20180081469A KR20180081469A (en) 2018-07-16
KR102038217B1 true KR102038217B1 (en) 2019-10-29

Family

ID=63048189

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180001886A KR102038217B1 (en) 2017-01-06 2018-01-05 Information security system through encrypting and decrypting personal data and contents in smart device based on Lightweight Encryption Algorithm, method thereof and computer recordable medium storing program to perform the method

Country Status (1)

Country Link
KR (1) KR102038217B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102050882B1 (en) * 2018-11-30 2019-12-02 주식회사우경정보기술 Method, server and computer-readable recording media for video security using zero-watermarking based on stream cipher
WO2020186125A1 (en) 2019-03-13 2020-09-17 The Research Foundation For The State University Of New York Ultra low power core for lightweight encryption

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101363290B1 (en) * 2012-08-30 2014-02-18 고려대학교 산학협력단 Lightweight authentication key agreement method between terminals
KR101615137B1 (en) 2015-03-27 2016-05-12 순천향대학교 산학협력단 Data access method based on attributed

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100362170B1 (en) * 2000-05-04 2002-11-23 한국전자통신연구원 Apparatus of encryption for round key generating and encryption processing
KR20150124087A (en) * 2014-04-28 2015-11-05 주식회사 나눔기술 Mobile document conversion system and method of encryption applied

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101363290B1 (en) * 2012-08-30 2014-02-18 고려대학교 산학협력단 Lightweight authentication key agreement method between terminals
KR101615137B1 (en) 2015-03-27 2016-05-12 순천향대학교 산학협력단 Data access method based on attributed

Also Published As

Publication number Publication date
KR20180081469A (en) 2018-07-16

Similar Documents

Publication Publication Date Title
KR102079626B1 (en) System for hiding information using lightweight mutual authentication based on biometric in mobile environment, method thereof and computer recordable medium storing program to perform the method
CN109150499B (en) Method and device for dynamically encrypting data, computer equipment and storage medium
US10979221B2 (en) Generation of keys of variable length from cryptographic tables
US20120063597A1 (en) Apparatus and associated methodology for managing content control keys
KR20190031989A (en) System and method for processing electronic contracts based on blockchain
Ke et al. Generative steganography with Kerckhoffs’ principle
EP3289723A1 (en) Encryption system, encryption key wallet and method
US9621521B2 (en) Rapid data encryption and decryption for secure communication over open channels with plausible deniability
CN110690956B (en) Bidirectional authentication method and system, server and terminal
CN110708291B (en) Data authorization access method, device, medium and electronic equipment in distributed network
WO2021173569A1 (en) Method and apparatus for creating and using quantum resistant keys
CN111970114A (en) File encryption method, system, server and storage medium
CN113987584A (en) Method and system for hiding query
KR102038217B1 (en) Information security system through encrypting and decrypting personal data and contents in smart device based on Lightweight Encryption Algorithm, method thereof and computer recordable medium storing program to perform the method
Yahaya et al. Cryptosystem for secure data transmission using Advance Encryption Standard (AES) and Steganography
KR20080099631A (en) Method for using contents with a mobile card, host device, and mobile card
KR20170038542A (en) Security certification apparatus using biometric information and security certification method
Debnath et al. An advanced image encryption standard providing dual security: Encryption using hill cipher & RGB image steganography
CN111177748A (en) Fingerprint storage encryption method, device and system
CN116455572B (en) Data encryption method, device and equipment
CN111277605A (en) Data sharing method and device, computer equipment and storage medium
KR102038218B1 (en) Security system for protecting personal data and contents based on low power and low computation in mobile environment, method thereof and computer recordable medium storing program to perform the method
CN111541652B (en) System for improving security of secret information keeping and transmission
Erondu et al. An encryption and decryption model for data security using vigenere with advanced encryption standard
Dixit et al. Multilevel network security combining cryptography and steganography on ARM platform

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant