KR102025989B1 - DATA MANAGEMENT SCHEME BASED ON PROXY RE-ENCRYPTION IN IoT LIGHTWEIGHT DEVICES AND SYSTEM - Google Patents

DATA MANAGEMENT SCHEME BASED ON PROXY RE-ENCRYPTION IN IoT LIGHTWEIGHT DEVICES AND SYSTEM Download PDF

Info

Publication number
KR102025989B1
KR102025989B1 KR1020170155354A KR20170155354A KR102025989B1 KR 102025989 B1 KR102025989 B1 KR 102025989B1 KR 1020170155354 A KR1020170155354 A KR 1020170155354A KR 20170155354 A KR20170155354 A KR 20170155354A KR 102025989 B1 KR102025989 B1 KR 102025989B1
Authority
KR
South Korea
Prior art keywords
terminal
encryption
key
proxy
data
Prior art date
Application number
KR1020170155354A
Other languages
Korean (ko)
Other versions
KR20190057889A (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 KR1020170155354A priority Critical patent/KR102025989B1/en
Priority to CN201880018460.3A priority patent/CN110419195A/en
Priority to PCT/KR2018/013434 priority patent/WO2019103360A1/en
Publication of KR20190057889A publication Critical patent/KR20190057889A/en
Application granted granted Critical
Publication of KR102025989B1 publication Critical patent/KR102025989B1/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/40Network security protocols
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0281Proxies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry
    • H04L2209/122Hardware reduction or efficient architectures

Abstract

본 발명은 IoT 경량단말 환경에서 프록시 재암호화 기반의 데이터 관리 방법 및 시스템을 개시한다. 본 발명의 일 측면에 따른 IoT 경량단말 환경에서 프록시 재암호화 기반의 데이터 관리 방법은, 프록시 재암호화 방법을 기반으로 단말기 관리 방법을 제공하여, 재암호화키를 관리하는 단계에서 신뢰되는 사용자에게만 자신의 개인키를 이용하여 수신된 데이터를 복호화할 수 있다. 또한, 기존 단말 간 암호화 통신 방법과 비교하여 데이터 암호화 전송 과정에서 증가하는 통신 횟수를 재암호화를 사용함으로써 낮출 수 있다.The present invention discloses a data management method and system based on proxy re-encryption in IoT lightweight terminal environment. Proxy re-encryption based data management method in the IoT lightweight terminal environment according to an aspect of the present invention, by providing a terminal management method based on the proxy re-encryption method, only the user trusted in the step of managing the re-encryption key The received data can be decrypted using the private key. In addition, the number of communication increases in the data encryption transmission process can be lowered by using re-encryption, as compared with the existing terminal-to-device encryption communication method.

Description

IoT 경량단말 환경에서 프록시 재암호화 기반의 데이터 관리 방법 및 시스템{DATA MANAGEMENT SCHEME BASED ON PROXY RE-ENCRYPTION IN IoT LIGHTWEIGHT DEVICES AND SYSTEM}TECHNICAL MANAGEMENT SCHEME BASED ON PROXY RE-ENCRYPTION IN IoT LIGHTWEIGHT DEVICES AND SYSTEM}

본 발명은 IoT 경량단말 환경에서 프록시 재암호화 기반의 데이터 관리 방법 및 시스템에 관한 것으로, 더욱 상세하게는 IoT 경량단말 환경에서 프록시 재암호화를 기반으로 데이터를 관리하는 IoT 경량단말 환경에서 프록시 재암호화 기반의 데이터 관리 방법 및 시스템에 관한 것이다.The present invention relates to a data management method and system based on proxy re-encryption in IoT lightweight terminal environment, and more particularly, based on proxy re-encryption in IoT lightweight terminal environment for managing data based on proxy re-encryption in IoT lightweight terminal environment. Relates to a data management method and system.

사물인터넷(Internet of Things, 이하 IoT)이란 모든 사물이 인터넷에 연결되어 그 정보를 수집, 처리, 가공하여 새로운 서버시를 제공하는 등 다양한 형태로 활용 가능하다. 사물 간의 데이터 통신이 이루어질 때 전송되는 데이터는, 개인정보 뿐만 아니라 각종 주변 상황에서 수집된 센싱 정보 등 다양한 종류의 데이터가 될 수 있다. 이러한 데이터가 공격자에 의해 수집되어 악의적으로 활용된다면 기존의 네트워크 환경보다 발생할 수 있는 보안위협이 더 증가할 것이다. 예컨대, 소극적 공격으로 냉장고나 스마트TV를 통한 스팸메일 발송과 같은 피해를 입힐 수 있고, 보다 적극적인 공격으로 차량 통신, 의료 단말기기에 대한 해킹으로 사용자의 생명에 의협적인 공격까지 발생가능하다. 또한, IoT 플랫폼 상에서 수집되는 사용자 개인정보는 사생활 침해 문제까지 유발 가능할 수 있다. 예를 들어, 스마트 미터의 전력 소비량 패턴을 분석한다면 사용자의 생활패턴까지 분석할 수 있으며, 개인화된 서비스 제공을 목적으로 수집된 데이터는 보다 편리한 서비스를 제공할 수 있지만, 사용자들은 자신의 개인정보가 서비스 제공업체에 노출되는 것을 꺼려할 수 있다. 이처럼 다양한 개인정보관리 및 보안위협에 의한 피해를 방지하기 위해서는 IoT 환경에서 전송되는 데이터에 대한 보안이 필수적이라 할 수 있다.The Internet of Things (IoT) can be used in various forms, including all things connected to the Internet, collecting, processing, and processing the information to provide a new server city. When data is communicated between things, the data transmitted may be not only personal information but also various kinds of data such as sensing information collected in various surrounding situations. If such data is collected and exploited by an attacker, malicious threats will increase more than existing network environments. For example, a passive attack may cause damage such as sending spam mail through a refrigerator or a smart TV, and a more aggressive attack may cause an attack that is negotiable to a user's life by hacking a vehicle communication device or a medical terminal device. In addition, user personal information collected on the IoT platform may cause privacy invasion. For example, if you analyze the power consumption pattern of the smart meter, you can analyze the user's life pattern, and the data collected for the purpose of providing personalized service can provide more convenient service, but users can You may be reluctant to be exposed to your service provider. In order to prevent damages caused by various personal information management and security threats, security of data transmitted in the IoT environment is essential.

하지만, IoT 환경에서 사용되는 단말기를 기존의 보안시스템에 그대로 적용시키기에는 역부족이라할 수 있다. 소형화, 경량화된 단말기에서는 기존의 암호알고리즘을 적용한 보안 솔루션을 도입하기 어렵고, 수많은 노드로 구성되어 복잡해진 네트워크 구조로 인해 침투 경로는 더욱 다양해질 수 있기 때문이다. However, it is not enough to apply the terminal used in IoT environment to the existing security system as it is. This is because it is difficult to introduce a security solution using a conventional encryption algorithm in a small and light weight terminal, and the penetration path may be diversified due to the complicated network structure composed of numerous nodes.

한국등록특허 제10-1620271호(2016.05.23 공고)Korean Patent Registration No. 10-1620271 (2016.05.23 notice)

본 발명은 상기와 같은 문제점을 해결하기 위해 제안된 것으로서, 수많은 경량 단말기가 있는 환경을 대상으로 기존의 암호알고리즘을 사용하여 데이터를 공유 및 관리 할 수 있는 방법으로 프록시 재암호화를 사용하여 각 단말기의 암복호화 횟수를 줄여 데이터를 관리하고, 저용량 단말 네트워크 상에서 부족한 용량을 보완할 수 있는 데이터 공유 기능을 제공하는 IoT 경량단말 환경에서 프록시 재암호화 기반의 데이터 관리 방법 및 시스템을 제공하는데 그 목적이 있다. The present invention has been proposed to solve the above problems, using a proxy re-encryption method to share and manage data using an existing encryption algorithm for an environment with a number of lightweight terminals of each terminal It is an object of the present invention to provide a data management method and system based on proxy re-encryption in an IoT lightweight terminal environment that provides data sharing function to manage data by reducing the number of times of encryption and decryption, and to compensate for insufficient capacity in a low-capacity terminal network.

본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있으며, 본 발명의 일 실시예에 의해 보다 분명하게 알게 될 것이다. 또한, 본 발명의 목적 및 장점들은 특허청구범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.Other objects and advantages of the present invention can be understood by the following description, and will be more clearly understood by one embodiment of the present invention. It will also be appreciated that the objects and advantages of the present invention may be realized by the means and combinations thereof indicated in the claims.

상기와 같은 목적을 달성하기 위한 본 발명의 일 측면에 따른 IoT 경량단말 환경에서 프록시 재암호화 기반의 데이터 관리 방법은, 제 1 단말기가, 키 쌍 생성을 실행하는 단계; 상기 제 1 단말기가, 공유하고자 하는 데이터를 암호화하여 생성하는 단계; 상기 제 1 단말기가, 재암호화키를 생성하고, 암호문과 함께 전송하는 단계; 프록시 서버가, 상기 제 1 단말기로부터 재암호화키 및 암호문을 수신하여 제 2 단말기가 복호화할 수 있는 재암호문을 생성하여 전송하는 단계; 및 제 2 단말기가, 상기 프록시 서버로부터 수신한 재암호문을 자신의 개인키를 이용하여 복호화하는 단계;를 포함한다. According to an aspect of the present invention, there is provided a method for managing data based on proxy re-encryption in an IoT lightweight terminal environment, the method including: generating, by a first terminal, key pair generation; Encrypting, by the first terminal, data to be shared; Generating, by the first terminal, a re-encryption key and transmitting it together with a cipher text; Receiving, by the proxy server, the re-encryption key and the cipher text from the first terminal, generating and transmitting a re-encryption text that the second terminal can decrypt; And decrypting, by the second terminal, the re-password received from the proxy server using its private key.

상기 제 1 단말기가, 키 쌍 생성을 실행하는 단계는, 아래의 수학식 1과 같이, 보안 파라미터를 입력하여 그 값에 대응하는 공개키와 개인키를 출력하는 단계;를 포함하는 것을 특징으로 한다.The step of generating the key pair by the first terminal may include: inputting a security parameter and outputting a public key and a private key corresponding to the value as shown in Equation 1 below. .

[수학식 1][Equation 1]

Figure 112017115727825-pat00001
Figure 112017115727825-pat00001

상기 제 1 단말기가, 공유하고자 하는 데이터를 암호화하여 생성하는 단계는, 아래의 수학식 2와 같이, 상기 생성된 개인키로 데이터를 암호화하는 것을 특징으로 한다.The generating and encrypting the data to be shared by the first terminal is characterized in that the data is encrypted with the generated private key as shown in Equation 2 below.

[수학식 2][Equation 2]

Figure 112017115727825-pat00002
Figure 112017115727825-pat00002

상기 제 1 단말기가, 재암호화키를 생성하고, 암호문과 함께 전송하는 단계는, 아래의 수학식 3과 같이, 재암호화키를 생성하여 암호문과 함께 전송하는 것을 특징으로 한다.The step of generating, by the first terminal, the re-encryption key and transmitting it together with the ciphertext, generates a re-encryption key and transmits it together with the ciphertext, as shown in Equation 3 below.

[수학식 3][Equation 3]

Figure 112017115727825-pat00003
Figure 112017115727825-pat00003

상기 프록시 서버가, 상기 제 1 단말기로부터 재암호화키 및 암호문을 수신하여 제 2 단말기가 복호화할 수 있는 재암호문을 생성하여 전송하는 단계는, 아래의 수학식 4와 같이, 재암호화를 수행하여 제 2 단말기가 복호화할 수 있는 재암호문을 생성하는 것을 특징으로 한다.The proxy server may receive the re-encryption key and the cipher text from the first terminal and generate and transmit the re-encryption text that the second terminal can decrypt, as shown in Equation 4 below. The terminal may generate a re-password that can be decrypted by the terminal.

[수학식 4][Equation 4]

Figure 112017115727825-pat00004
Figure 112017115727825-pat00004

상기 제 2 단말기가, 상기 프록시 서버로부터 수신한 재암호문을 자신의 개인키를 이용하여 복호화하는 단계는, 아래의 수학식 5와 같이, 자신의 개인키를 이용하여 수신된 암호문을 복호화하는 것을 특징으로 한다.When the second terminal decrypts the re-encryption text received from the proxy server using its private key, as shown in Equation 5 below, the second terminal decrypts the received encrypted text using its private key. It is done.

[수학식 5][Equation 5]

Figure 112017115727825-pat00005
Figure 112017115727825-pat00005

상기 제 1 단말기가, 관리자 그룹의 멤버인지 여부를 확인하고, 재암호화키 훼손 여부를 체크하는 단계;를 더 포함하고, 상기 제 1 단말기가, 관리자 그룹에 속한 멤버이고, 재암호화키 훼손 여부 체크 결과 재암호화키가 정상이면 데이터 재암호화를 실행하고, 재암호화키가 비정상이면 데이터 암호화를 중단하고 재암호화키 생성을 실행하는 것을 특징으로 한다.Checking whether the first terminal is a member of the administrator group and checking whether the re-encryption key is compromised; wherein the first terminal is a member of the administrator group and checks whether the re-encryption key is compromised As a result, if the re-encryption key is normal, data re-encryption is executed. If the re-encryption key is abnormal, data encryption is stopped and the re-encryption key is generated.

상기와 같은 목적을 달성하기 위한 본 발명의 다른 측면에 따른 IoT 경량단말 환경에서 프록시 재암호화 기반의 데이터 관리 시스템은, 관리자 그룹에 의한 프록시 재암호화 기반의 재암호화키를 생성하고, 생성된 재암호화키를 암호문과 함께 전송하는 제 1 단말기; 상기 제 1 단말기로부터 재암호화키 및 암호문을 수신하여, 상기 재암호화키를 이용해 암호화된 데이터를 재암호화하고, 재암호화된 암호데이터를 전송하는 프록시 서버; 및 상기 프록시 서버로부터 재암호화된 암호데이터를 수신하고, 자신의 개인키로 복호화하여 암호문에 대응하는 평문을 출력하는 제 2 단말기;를 포함한다.Proxy re-encryption based data management system in the IoT lightweight terminal environment according to another aspect of the present invention for achieving the above object, generates a re-encryption key based on proxy re-encryption by a group of administrators, the generated re-encryption A first terminal for transmitting the key together with the cipher text; A proxy server for receiving a re-encryption key and an encrypted text from the first terminal, re-encrypting data encrypted using the re-encryption key, and transmitting re-encrypted encrypted data; And a second terminal that receives the re-encrypted encrypted data from the proxy server, decrypts it with its own private key, and outputs a plain text corresponding to the encrypted text.

상기와 같은 목적을 달성하기 위한 본 발명의 다른 측면에 따른 IoT 경량단말 환경에서 프록시 재암호화 기반의 데이터 관리 시스템은, 관리자 그룹에 의한 프록시 재암호화 기반의 재암호화키를 생성하고, 생성된 재암호화키를 암호문과 함께 전송하는 제 1 단말기; 상기 제 1 단말기로부터 재암호화키 및 암호문을 수신하여, 상기 재암호화키를 이용해 암호화된 데이터를 재암호화하고, 재암호화된 암호데이터를 전송하는 프록시 서버; 및 상기 프록시 서버로부터 재암호화된 암호데이터를 수신하고, 자신의 개인키로 복호화하여 암호문에 대응하는 평문을 출력하는 제 2 단말기;를 포함한다.Proxy re-encryption based data management system in the IoT lightweight terminal environment according to another aspect of the present invention for achieving the above object, generates a re-encryption key based on proxy re-encryption by a group of administrators, the generated re-encryption A first terminal for transmitting the key together with the cipher text; A proxy server for receiving a re-encryption key and an encrypted text from the first terminal, re-encrypting data encrypted using the re-encryption key, and transmitting re-encrypted encrypted data; And a second terminal that receives the re-encrypted encrypted data from the proxy server, decrypts it with its own private key, and outputs a plain text corresponding to the encrypted text.

본 발명의 일 측면에 따르면, 프록시 재암호화 기반의 데이터 관리 방법을 이용할 경우에는 프록시 재암호화 방법을 기반으로 단말기 관리 방법을 제공할 수 있다.According to an aspect of the present invention, when using a proxy re-encryption based data management method, it is possible to provide a terminal management method based on the proxy re-encryption method.

또한, 재암호화키를 관리하는 단계에서 신뢰되는 사용자에게만 자신의 개인키를 이용하여 수신된 데이터를 복호화할 수 있다.Also, in the step of managing the re-encryption key, only the trusted user can decrypt the received data using his private key.

또한, 기존 단말 간 암호화 통신 방법과 비교하여 데이터 암호화 전송 과정에서 증가하는 통신 횟수를 재암호화를 사용함으로써 낮출 수 있다.In addition, the number of communication increases in the data encryption transmission process can be lowered by using re-encryption, as compared with the existing terminal-to-device encryption communication method.

또한, 본 발명에서는 사용자의 암호키를 재암호화하는 과정에서 재암호화키 (A', pkb - skLa)는 데이터 공유시 일회성을 제공하는 키로써 생성되었기 때문에 후방향 안전성을 제공할 수 있다. In addition, in the present invention, in the process of re-encrypting the encryption key of the user, the re-encryption key (A ', pk b - skLa ) is generated as a key providing a one-time when sharing data can provide backward security.

본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The effect obtained in the present invention is not limited to the above-mentioned effects, and other effects not mentioned will be clearly understood by those skilled in the art from the following description. .

본 명세서에 첨부되는 다음의 도면들은 본 발명의 바람직한 실시예를 예시하는 것이며, 발명을 실시하기 위한 구체적인 내용들과 함께 본 발명의 기술사상을 더욱 이해시키는 역할을 하는 것이므로, 본 발명은 그러한 도면에 기재된 사항에만 한정되어 해석되어서는 아니 된다.
도 1은 본 발명의 일 실시예에 따른 단말기의 개략적인 블록도,
도 2는 본 발명의 일 실시예에 따른 암호화 동작을 보인 흐름도,
도 3은 본 발명의 일 실시예에 따른 복호화 동작을 보인 흐름도이다.
The following drawings attached to this specification are illustrative of the preferred embodiments of the present invention, and together with the specific details for carrying out the invention serve to further understand the technical spirit of the present invention, the present invention in such drawings It should not be construed as limited to the matters described.
1 is a schematic block diagram of a terminal according to an embodiment of the present invention;
2 is a flowchart illustrating an encryption operation according to an embodiment of the present invention;
3 is a flowchart illustrating a decoding operation according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.As the invention allows for various changes and numerous embodiments, particular embodiments will be illustrated in the drawings and described in detail in the written description. However, this is not intended to limit the present invention to specific embodiments, it should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention. In describing the drawings, similar reference numerals are used for similar elements.

제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.Terms such as first, second, A, and B may be used to describe various components, but the components 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 the second component, and similarly, the second component may also be referred to as the first component. The term and / or includes a combination of a plurality of related items or any item of a plurality of related items.

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

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting of the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this application, the terms "comprise" or "have" are intended to indicate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, and one or more other features. It is to be understood that the present invention does not exclude the possibility of the presence or the addition of numbers, steps, operations, components, components, or a combination 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. Terms such as those defined in the commonly used dictionaries should be construed as having meanings consistent with the meanings in the context of the related art and shall not be construed in ideal or excessively formal meanings unless expressly defined in this application. Do not.

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

도 1은 본 발명의 일 실시예에 따른 단말기의 개략적인 블록도이다.1 is a schematic block diagram of a terminal according to an embodiment of the present invention.

본 실시예를 설명함에 있어서, 단말기 a, 단말기 b는 동일한 구성요소를 포함하고 있으며, 데이터를 공유하는 주체 및 수신하는 주체에 따라 서로 다른 단말로 명명할 수 있다.In the present embodiment, the terminal a and the terminal b include the same components, and may be named different terminals according to a subject sharing data and a subject receiving the data.

도 1을 참조하면, 단말기(100)의 장치 구성은, 프로세서(110), 메모리(120), 엘씨디(130), 통신 포트(140)를 가지며 메모리(120)는 운영체제와 프로그램을 저장한다. 운영체제는 프로그램을 실현하기 위한 동작 환경을 제공한다. 프로그램은 프로세서(110)에 의해 실행되어 단말기(100)가 프록시 재암호화 기반으로 데이터에 접근할 수 있도록 동작하게 한다.Referring to FIG. 1, the device configuration of the terminal 100 includes a processor 110, a memory 120, an LCD 130, and a communication port 140. The memory 120 stores an operating system and a program. The operating system provides an operating environment for realizing the program. The program is executed by the processor 110 to operate the terminal 100 to access data on the basis of proxy re-encryption.

프로세서(110)는 메모리(120)의 실행 코드를 실행하고, 메모리(120)는 실행 코드와 데이터를 저장하고, 엘씨디(130)는 텍스트와 이미지를 표시하고, 통신 포트(140)는 외부 모듈과 직렬 통신한다. 장치 구성을 기초로 구성된 단말기(100)의 일 실시예는 다음과 같다.The processor 110 executes the executable code of the memory 120, the memory 120 stores the executable code and data, the LCD 130 displays text and images, and the communication port 140 is connected to an external module. Serial communication. An embodiment of the terminal 100 configured based on the device configuration is as follows.

단말기 a가 관리자 그룹에 의한 프록시 재암호화 기반의 재암호화키를 생성하고, 생성된 재암호화키를 단말기 a가 생성한 암호문과 함께 프록시 서버에 전송하고, 프록시 서버는 수신된 재암호화키를 이용하여 암호화된 데이터를 재암호화하고, 단말기 b에게 재암호화된 암호데이터를 송신하고, 단말기 b는 수신된 암호데이터를 자신의 개인키로 복호화하여 암호문에 대응하는 평문을 출력한다. 이러한 단말기가 데이터에 접근하는 동작을 가능하게 하는 구성을 설명한다. Terminal a generates a re-encryption key based on proxy re-encryption by the administrator group, and sends the generated re-encryption key to the proxy server along with the cipher text generated by terminal a, and the proxy server uses the received re-encryption key. Re-encrypt the encrypted data, and transmits the re-encrypted encrypted data to the terminal b, the terminal b decrypts the received encrypted data with its private key and outputs the plain text corresponding to the cipher text. A configuration that enables the operation of such a terminal to access data will be described.

단말기의 데이터 접근은 키 쌍 생성(KeyGen), 암호화(Encrypt), 재암호화키생성(ReKey Generation), 재암호화(Re-encryption), 복호화(Decrypt)를 포함한다.Data access of the terminal includes key pair generation (KeyGen), encryption (Encrypt), re-encryption key generation (ReKey Generation), re-encryption (Decrypt).

전체적인 시스템 환경은 저용량, 경량화된 IoT 단말기로 구성된 환경을 바탕으로 설계되었다. 본 발명의 기본적인 개념은 프록시 재암호화를 기반으로 하고 있다. 프록시 재암호화 방법은 단말기 a의 개인키로 복호화할 수 있는 암호화된 데이터를 프록시 서버가 단말기 b의 개인키로 복호화할 수 있도록 변환하여 주는 것을 말한다. 프록시 서버는 단말기 a의 암호화된 데이터를 복호화하여 단말기 b의 공개키로 암호화하는 것이 아니라, 단말기 a의 공개키로 암호화된 암호문을 단말기 b의 공개키로 암호화된 암호문으로 바꾸는 역할을 한다. 이때 사용되는 재암호화키(Re-encryption key)는 단말기 a가 생성하여 프록시 서버에게 전달한다.The overall system environment was designed based on an environment consisting of low-capacity, lightweight IoT terminals. The basic concept of the present invention is based on proxy re-encryption. The proxy re-encryption method converts encrypted data that can be decrypted with the private key of the terminal a so that the proxy server can decrypt the private key of the terminal b. The proxy server decrypts the encrypted data of the terminal a and encrypts the encrypted text with the public key of the terminal b, instead of encrypting the encrypted data with the public key of the terminal b. The re-encryption key used at this time is generated by the terminal a and transmitted to the proxy server.

하나의 그룹에 속한 단말기는 단말기 간 암호화 통신을 기반으로 데이터를 주고 받는다. 이때, 기존의 통신 환경에서 대칭키암호를 사용하는 경우, 암호키를 단말기에 탑재하여 주기적으로 관리해야 한다는 문제점이 발생하고, 공개키암호를 사용하는 경우, 경량 단말기에 적합하지 않은 암호알고리즘의 사용으로 단말기의 높은 연상량과 저장공간 및 효율성에 악영향을 끼치게 된다. 하지만, 프록시 재암호화 기반의 암호 통신의 경우 단말기는 그룹 내의 모든 단말기에게 암호데이터를 전송하는 과정에서 한 번의 암호화 과정만을 거쳐 프록시 서버에게 전달해주면, 프록시 서버가 다른 단말기가 복호화할 수 있도록 암호데이터를 재암호화하는 역할을 하게 된다. 따라서, 본 발명은 종래 경량 IoT 단말 간의 암호데이터 통신 과정에서 발생하는 문제점인 연산 효율성 및 연산량에 대한 불필요한 과정을 줄임으로써 효율성을 제공하고, 보다 안전하게 데이터를 공유 및 관리할 수 있다.The terminals belonging to one group exchange data based on the encryption communication between the terminals. In this case, when symmetric key encryption is used in the existing communication environment, a problem arises in that the encryption key is periodically installed by the terminal, and when the public key password is used, an encryption algorithm that is not suitable for the lightweight terminal is used. This will adversely affect the high association, storage space and efficiency of the terminal. However, in the case of proxy re-encryption-based encryption communication, the terminal transmits the encryption data to the proxy server through only one encryption process in the process of transmitting the encryption data to all the terminals in the group, so that the proxy server decrypts the encryption data so that the other terminal can decrypt it. It will play a role of re-encryption. Therefore, the present invention provides efficiency by reducing unnecessary processes for computation efficiency and computation amount, which are problems occurring in the encryption data communication process between the conventional lightweight IoT terminals, and can share and manage data more safely.

본 발명의 실시예에 대한 설명에 앞서, 이하 내용에서 사용되는 기호들에 대하여 다음과 같이 정의한다.Prior to the description of the embodiments of the present invention, the symbols used in the following description are defined as follows.

● * : 참여 객체(a : 단말기 a, b : 단말기 b)● *: Participation object (a: terminal a, b: terminal b)

● p : 소수 ● p: decimal

● G : p를 법으로 하는 덧셈군● G: Addition group using p as the law

● q : G의 생성자Q: constructor of G

● e : 겹선형 사상, G X G -> GT ● e: Double line mapping, GXG-> G T

● sk* : *의 개인키● sk * : * private key

● pk* : *의 공개키● pk * : * public key

● m : 평문● m: plain text

단말기가 키 쌍 생성(KeyGen)을 실행한다. The terminal executes key pair generation (KeyGen).

본 발명을 실시하기 위한 키 쌍 생성(KeyGen)을 설명한다.A key pair generation (KeyGen) for implementing the present invention will be described.

보안 파라미터 x를 입력하여 그 값에 대응하는 공개키 pk와 개인키 sk를 출력한다.Input the security parameter x and output the public key pk and the private key sk corresponding to the value.

각 단말기들은 자신들의 키 쌍을 아래의 수학식 1과 같이 생성하여 소지한다.Each terminal generates and possesses their key pair as shown in Equation 1 below.

[수학식 1][Equation 1]

Figure 112017115727825-pat00006
Figure 112017115727825-pat00006

각 단말기는 보내고자 하는 데이터를 아래의 수학식 2와 같이 암호화하여 생성한다.Each terminal encrypts the data to be sent as shown in Equation 2 below.

[수학식 2][Equation 2]

Figure 112017115727825-pat00007
Figure 112017115727825-pat00007

각 단말기는 재암호화키를 생성한다.Each terminal generates a re-encryption key.

각 단말기는 자신의 데이터를 다른 단말기와 공유하고자 할 때, 재암호화를 위한 키를 생성한다. 단말기 a가 단말기 b에게 데이터를 공유하고자 할 경우, 단말기 a의 개인키와 단말기 b의 공개키로 재암호화키를 아래의 수학식 3과 같이 생성하여 프록시 서버에 암호문과 같이 보낸다.Each terminal generates a key for re-encryption when it wants to share its data with other terminals. When the terminal a wants to share data with the terminal b, the re-encryption key is generated as the private key of the terminal a and the public key of the terminal b as shown in Equation 3 below, and sent to the proxy server as an encryption text.

[수학식 3][Equation 3]

Figure 112017115727825-pat00008
Figure 112017115727825-pat00008

본 발명의 시나리오 상에서는 각 단말기는 자신을 제외한 모든 단말기를 위한 재암호화키를 생성한다.In the scenario of the present invention, each terminal generates a re-encryption key for all terminals except itself.

프록시 서버는 단말기 a로부터 받은 A'으로 A를 대체하고, 재암호화키와 재암호화하려는 목표 암호문 그리고, 공개키를 가지고 재암호화를 아래의 수학식 4와 같이 수행하여 단말기 b가 복호화할 수 있는 재암호문을 생성한다.The proxy server replaces A with A 'received from the terminal a, performs a re-encryption with the re-encryption key, the target ciphertext to be re-encrypted, and the public key as shown in Equation 4 below. Generate a ciphertext.

[수학식 4][Equation 4]

Figure 112017115727825-pat00009
Figure 112017115727825-pat00009

프록시 서버는 단말기 b에게 재암호문을 송신한다. 단말기 b는 자신의 개인키를 이용하여 수신된 암호문을 아래의 수학식 5와 같이 복호화한다.The proxy server sends a re-password to the terminal b. Terminal b decrypts the received cipher text using its private key as shown in Equation 5 below.

[수학식 5][Equation 5]

Figure 112017115727825-pat00010
Figure 112017115727825-pat00010

도 2는 본 발명의 일 실시예에 따른 암호화 동작을 보인 흐름도, 도 3은 본 발명의 일 실시예에 따른 복호화 동작을 보인 흐름도이다.2 is a flowchart illustrating an encryption operation according to an embodiment of the present invention, and FIG. 3 is a flowchart illustrating a decryption operation according to an embodiment of the present invention.

도 2 및 도 3을 참조하여, 단말기가 데이터에 접근하는 방법에 대해 설명한다.A method of accessing data by a terminal will be described with reference to FIGS. 2 and 3.

단말기는 프로그램을 저장하는 프로그램 메모리, 데이터를 저장하는 데이터 메모리, 프로그램을 실행하는 프로세서를 포함한다.The terminal includes a program memory for storing a program, a data memory for storing data, and a processor for executing the program.

프로그램 메모리에 저장된 데이터를 살펴보면, 프로그램 메모리는 단말기가 키 쌍을 생성하는 단계(210), 생성된 개인키로 데이터를 암호화하는 단계(220), 재암호화키를 생성하는 단계(230), 프록시 서버에서 데이터를 전송하고자 하는 단말기에게 재암호화문을 전송하는 단계(310), 데이터 소유자가 자신의 개인키로 데이터를 복호화하는 단계(320), 암호문에 대응하는 평문을 출력하는 단계(330)를 포함한다.Looking at the data stored in the program memory, the program memory, the terminal generates a key pair (210), encrypting the data with the generated private key (220), generating a re-encryption key (230), in the proxy server Transmitting a re-encryption text to a terminal to transmit data (310); decrypting the data by the owner of the data with his private key (320); outputting a plain text corresponding to the cipher text (330).

단말기는 프로세서에 의해 프로그램 메모리에 저장된 프로그램을 실행하며 이러한 단말기에서 실행되는 절차를 시계열 순으로 설명한다. 본 실시예를 설명함에 있어서, 단말기 a는 데이터를 공유하는 단말기, 단말기 b는 데이터를 공유받는 단말기일 수 있다.The terminal executes the program stored in the program memory by the processor and describes the procedure executed in the terminal in chronological order. In the present embodiment, the terminal a may be a terminal sharing data, and the terminal b may be a terminal sharing data.

먼저, 단말기 a는 키 쌍을 생성한다(210). 단말기 a는 전송하고자 하는 데이터를 자신의 개인키로 암호화한다(220).First, terminal a generates a key pair (210). Terminal a encrypts the data to be transmitted with its private key (220).

단말기 a는 개인키를 저장하고, 재암호화키를 생성한다(230). 단말기 a는 프록시 서버에게 암호문과 재암호화키를 송신한다(310).Terminal a stores the private key and generates a re-encryption key (230). Terminal a transmits the cipher text and re-encryption key to the proxy server (310).

프록시 서버는 단말기 b에게 재암호화문을 송신한다.The proxy server sends the re-encryption text to the terminal b.

단말기 b는 수신받은 재암호화문을 자신의 개인키를 이용하여 복호화한다(320). 단말기 b는 암호문에 대응하는 평문을 출력한다(330).The terminal b decrypts the received re-encryption text using its private key (320). The terminal b outputs plain text corresponding to the cipher text (330).

다른 실시예로, 프록시 서버에 저장된 비밀키가 훼손되면 단말기 a는 재암호화키 생성 과정을 다시 실행한다. 이때, 비밀키로 생성된 암호문은 폐기된다. 프록시 서버는 새로 생성된 재암호화키로 데이터 재암호화를 실행한다. 멤버에 저장된 재암호화키의 훼손 여부 체크는 해시 코드를 이용한다. 재암호화키가 훼손되면 관리자 그룹의 재암호화키는 폐기된다.In another embodiment, if the private key stored in the proxy server is compromised, the terminal a executes the re-encryption key generation process again. At this time, the cipher text generated by the secret key is discarded. The proxy server re-encrypts the data with the newly generated re-encryption key. The hash code is used to check whether the re-encryption key stored in the member is damaged. If the re-encryption key is compromised, the re-encryption key of the administrator group is discarded.

멤버 단말기는 재암호화키로 데이터 암호화를 실행하거나, 데이터 복호화를 실행할 때 재암호화키 훼손 여부를 체크한다. 멤버 단말기는 재암호화키 훼손 여부를 체크함에 앞서 관리자 그룹에 속한 멤버인지를 확인할 수 있다. 관리자 그룹에 속한 멤버이면 멤버 단말기는 재암호화키 훼손 여부를 체크한다. 멤버 단말기는 재암호화키 훼손 여부를 체크하여 재암호화키가 정상이면 데이터 재암호화를 실행한다. 반면, 멤버 단말기는 재암호화키가 비정상이면 데이터 암호화 또는 데이터 복호화를 중단하고 재암호화키 생성을 실행한다.The member terminal performs data encryption with the re-encryption key, or checks whether the re-encryption key is damaged when performing data decryption. The member terminal may check whether the member belongs to the administrator group before checking whether the re-encryption key is damaged. If the member belongs to the administrator group, the member terminal checks whether the re-encryption key is damaged. The member terminal checks whether the re-encryption key is damaged and executes data re-encryption if the re-encryption key is normal. On the other hand, if the re-encryption key is abnormal, the member terminal stops encrypting or decrypting data and generates a re-encryption key.

프록시 서버는 생성된 재암호화키로 암호문을 생성하고, 단말기는 자신의 개인키로 암호문을 복호화한다. 재암호화 동작이 데이터 센터(프록시 서버)에서 실행되고, 복호화 동작이 단말기에서 실행된다. 단말기는 복호화를 마치고 암호문이 복호화된 평문을 사용자에게 제공한다.The proxy server generates a cipher text with the generated re-encryption key, and the terminal decrypts the cipher text with its private key. The re-encryption operation is executed at the data center (proxy server), and the decryption operation is executed at the terminal. The terminal finishes decryption and provides the user with the plaintext decrypted with the cipher text.

본 발명의 실시예에 따른 방법들은 애플리케이션으로 구현되거나 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는, 본 발명을 위한 특별히 설계되고 구성된 것들이거니와 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media) 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Methods according to an embodiment of the present invention may be implemented in the form of program instructions that may be implemented as an application or executed through various computer components, and may be recorded on a computer-readable recording medium. The computer-readable recording medium may include program instructions, data files, data structures, etc. alone or in combination. Program instructions recorded on the computer-readable recording medium may be those specially designed and constructed for the present invention, and may be known and available to those skilled in the computer software arts. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks and magnetic tape, optical recording media such as CD-ROMs, DVDs, and magneto-optical media such as floptical disks. 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 include not only machine code generated by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like. The hardware device may be configured to operate as one or more software modules to perform the process according to the invention, and vice versa.

본 명세서는 많은 특징을 포함하는 반면, 그러한 특징은 본 발명의 범위 또는 특허청구범위를 제한하는 것으로 해석되어서는 아니 된다. 또한, 본 명세서의 개별적인 실시예에서 설명된 특징들은 단일 실시예에서 결합되어 구현될 수 있다. 반대로, 본 명세서의 단일 실시예에서 설명된 다양한 특징들은 개별적으로 다양한 실시예에서 구현되거나, 적절히 결합되어 구현될 수 있다.While this specification includes many features, such features should not be construed as limiting the scope of the invention or the claims. In addition, the features described in the individual embodiments herein can be implemented in combination in a single embodiment. Conversely, various features described in a single embodiment of the present specification can be implemented individually in various embodiments or in combination as appropriate.

도면에서 동작들이 특정한 순서로 설명되었으나, 그러한 동작들이 도시된 바와 같은 특정한 순서로 수행되는 것으로 또는 일련의 연속된 순서, 또는 원하는 결과를 얻기 위해 모든 설명된 동작이 수행되는 것으로 이해되어서는 안 된다. 특정 환경에서 멀티태스킹 및 병렬 프로세싱이 유리할 수 있다. 아울러, 상술한 실시예에서 다양한 시스템 구성요소의 구분은 모든 실시예에서 그러한 구분을 요구하지 않는 것으로 이해되어야 한다. 상술한 앱 구성요소 및 시스템은 일반적으로 단일 소프트웨어 제품 또는 멀티플 소프트웨어 제품에 패키지로 구현될 수 있다.Although the operations have been described in a particular order in the drawings, they should not be understood as being performed in a particular order as shown or in a sequence of successive orders, or all of the described actions being performed to obtain a desired result. Multitasking and parallel processing may be advantageous in certain circumstances. In addition, it should be understood that the division of various system components in the above-described embodiments does not require such division in all embodiments. The app components and systems described above may generally be packaged in a single software product or multiple software products.

이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것은 아니다.The present invention described above is capable of various substitutions, modifications, and changes without departing from the technical spirit of the present invention for those skilled in the art to which the present invention pertains. It is not limited by the drawing.

100 : 단말기
110 : 프로세서
120 : 메모리
130 : 엘씨디
140 : 통신 포트
100: terminal
110: processor
120: memory
130: LCD
140: communication port

Claims (8)

삭제delete 삭제delete 제 1 단말기가, 키 쌍 생성을 실행하는 단계;
상기 제 1 단말기가, 공유하고자 하는 데이터를 암호화하여 생성하는 단계;
상기 제 1 단말기가, 재암호화키를 생성하고, 암호문과 함께 전송하는 단계;
프록시 서버가, 상기 제 1 단말기로부터 재암호화키 및 암호문을 수신하여 제 2 단말기가 복호화할 수 있는 재암호문을 생성하여 전송하는 단계; 및
제 2 단말기가, 상기 프록시 서버로부터 수신한 재암호문을 자신의 개인키를 이용하여 복호화하는 단계;를 포함하고,
상기 제 1 단말기가, 키 쌍 생성을 실행하는 단계는,
아래의 수학식 1과 같이, 보안 파라미터를 입력하여 그 값에 대응하는 공개키와 개인키를 출력하는 단계;를 포함하며,
상기 제 1 단말기가, 공유하고자 하는 데이터를 암호화하여 생성하는 단계는,
아래의 수학식 2와 같이, 상기 생성된 개인키로 데이터를 암호화하는 것을 특징으로 하는 IoT 경량단말 환경에서 프록시 재암호화 기반의 데이터 관리 방법.
[수학식 1]
Figure 112019061423808-pat00019

[수학식 2]
Figure 112019061423808-pat00012
Executing, by the first terminal, key pair generation;
Encrypting, by the first terminal, data to be shared;
Generating, by the first terminal, a re-encryption key and transmitting it together with a cipher text;
Receiving, by the proxy server, the re-encryption key and the cipher text from the first terminal, generating and transmitting a re-encryption text that the second terminal can decrypt; And
And decrypting, by a second terminal, a re-password received from the proxy server using its private key.
The step of performing the key pair generation by the first terminal,
As shown in Equation 1 below, inputting a security parameter and outputting a public key and a private key corresponding to the value;
The step of encrypting and generating data to be shared by the first terminal,
As shown in Equation 2 below, proxy re-encryption based data management method in the IoT lightweight terminal environment, characterized in that for encrypting data with the generated private key.
[Equation 1]
Figure 112019061423808-pat00019

[Equation 2]
Figure 112019061423808-pat00012
제 3 항에 있어서,
상기 제 1 단말기가, 재암호화키를 생성하고, 암호문과 함께 전송하는 단계는,
아래의 수학식 3과 같이, 재암호화키를 생성하여 암호문과 함께 전송하는 것을 특징으로 하는 IoT 경량단말 환경에서 프록시 재암호화 기반의 데이터 관리 방법.
[수학식 3]
Figure 112017115727825-pat00013
The method of claim 3, wherein
The first terminal generates a re-encryption key and transmits the re-encryption key along with an encrypted text.
As shown in Equation 3 below, a proxy re-encryption based data management method in an IoT lightweight terminal environment, characterized in that the re-encryption key is generated and transmitted along with the cipher text.
[Equation 3]
Figure 112017115727825-pat00013
제 4 항에 있어서,
상기 프록시 서버가, 상기 제 1 단말기로부터 재암호화키 및 암호문을 수신하여 제 2 단말기가 복호화할 수 있는 재암호문을 생성하여 전송하는 단계는,
아래의 수학식 4와 같이, 재암호화를 수행하여 제 2 단말기가 복호화할 수 있는 재암호문을 생성하는 것을 특징으로 하는 IoT 경량단말 환경에서 프록시 재암호화 기반의 데이터 관리 방법.
[수학식 4]
Figure 112017115727825-pat00014
The method of claim 4, wherein
In the proxy server, receiving the re-encryption key and the cipher text from the first terminal to generate and transmit a re-encryption text that can be decrypted by the second terminal,
As shown in Equation 4 below, proxy re-encryption based data management method in an IoT lightweight terminal environment, characterized in that to perform re-encryption to generate a re-encryption text that can be decrypted by the second terminal.
[Equation 4]
Figure 112017115727825-pat00014
제 5 항에 있어서,
상기 제 2 단말기가, 상기 프록시 서버로부터 수신한 재암호문을 자신의 개인키를 이용하여 복호화하는 단계는,
아래의 수학식 5와 같이, 자신의 개인키를 이용하여 수신된 암호문을 복호화하는 것을 특징으로 하는 IoT 경량단말 환경에서 프록시 재암호화 기반의 데이터 관리 방법.
[수학식 5]
Figure 112017115727825-pat00015
The method of claim 5,
The second terminal, the step of decrypting the re-password received from the proxy server using its private key,
As shown in Equation 5 below, a proxy re-encryption based data management method in an IoT lightweight terminal environment, characterized in that the decryption of the received cipher text using its private key.
[Equation 5]
Figure 112017115727825-pat00015
제 3 항에 있어서,
상기 제 1 단말기가, 관리자 그룹의 멤버인지 여부를 확인하고, 재암호화키 훼손 여부를 체크하는 단계;를 더 포함하고,
상기 제 1 단말기가, 관리자 그룹에 속한 멤버이고, 재암호화키 훼손 여부 체크 결과 재암호화키가 정상이면 데이터 재암호화를 실행하고, 재암호화키가 비정상이면 데이터 암호화를 중단하고 재암호화키 생성을 실행하는 것을 특징으로 하는 IoT 경량단말 환경에서 프록시 재암호화 기반의 데이터 관리 방법.


The method of claim 3, wherein
Checking whether the first terminal is a member of an administrator group and checking whether a re-encryption key is compromised;
If the first terminal is a member of the administrator group and the re-encryption key is damaged, the re-encryption key is normal. If the re-encryption key is normal, the data is re-encrypted. If the re-encryption key is abnormal, data encryption is stopped and the re-encryption key is generated. Proxy re-encryption based data management method in the IoT lightweight terminal environment, characterized in that.


삭제delete
KR1020170155354A 2017-11-21 2017-11-21 DATA MANAGEMENT SCHEME BASED ON PROXY RE-ENCRYPTION IN IoT LIGHTWEIGHT DEVICES AND SYSTEM KR102025989B1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020170155354A KR102025989B1 (en) 2017-11-21 2017-11-21 DATA MANAGEMENT SCHEME BASED ON PROXY RE-ENCRYPTION IN IoT LIGHTWEIGHT DEVICES AND SYSTEM
CN201880018460.3A CN110419195A (en) 2017-11-21 2018-11-07 Data managing method and system in IOT lightweight terminal environments based on proxy re-encryption
PCT/KR2018/013434 WO2019103360A1 (en) 2017-11-21 2018-11-07 Data management method and system based on proxy re-encryption in iot lightweight terminal environment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170155354A KR102025989B1 (en) 2017-11-21 2017-11-21 DATA MANAGEMENT SCHEME BASED ON PROXY RE-ENCRYPTION IN IoT LIGHTWEIGHT DEVICES AND SYSTEM

Publications (2)

Publication Number Publication Date
KR20190057889A KR20190057889A (en) 2019-05-29
KR102025989B1 true KR102025989B1 (en) 2019-09-26

Family

ID=66631980

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170155354A KR102025989B1 (en) 2017-11-21 2017-11-21 DATA MANAGEMENT SCHEME BASED ON PROXY RE-ENCRYPTION IN IoT LIGHTWEIGHT DEVICES AND SYSTEM

Country Status (3)

Country Link
KR (1) KR102025989B1 (en)
CN (1) CN110419195A (en)
WO (1) WO2019103360A1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111355707B (en) * 2020-02-12 2022-06-17 深圳市晨北科技有限公司 Data processing method and related equipment
CN113360886B (en) * 2021-04-23 2023-02-28 山东英信计算机技术有限公司 Method, device and equipment for sharing encrypted data and readable medium

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070109124A1 (en) 2003-04-01 2007-05-17 Mi Kyoung Park Contactless type communication tag, portable tag reader for verifying a genuine article, and method for providing information of whether an article is genuine or not
KR101516114B1 (en) * 2014-02-13 2015-05-04 부경대학교 산학협력단 Certificate-based proxy re-encryption method and its system

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100512064B1 (en) * 2003-04-01 2005-09-26 (주)브랜드인칩 contactless type communication tag and portable tag reader for verifying a genuine article
KR20110070633A (en) * 2009-12-18 2011-06-24 한국전자통신연구원 Message transmission method usign proxy re-encryption in sensor network
US8769705B2 (en) * 2011-06-10 2014-07-01 Futurewei Technologies, Inc. Method for flexible data protection with dynamically authorized data receivers in a content network or in cloud storage and content delivery services
US8874769B2 (en) * 2011-06-30 2014-10-28 Qualcomm Incorporated Facilitating group access control to data objects in peer-to-peer overlay networks
KR20150034591A (en) * 2013-09-26 2015-04-03 서울대학교산학협력단 Cloud server for re-encrypting the encrypted data and re-encrypting method thereof
KR101620271B1 (en) 2015-07-14 2016-05-12 주식회사 하이로닉 High intensity focused ultrasound apparatus
EP3387809B1 (en) * 2015-12-10 2021-04-21 Nokia Technologies Oy Schemes of homomorphic re-encryption
CN105915338B (en) * 2016-05-27 2018-12-28 北京中油瑞飞信息技术有限责任公司 Generate the method and system of key
CN106230856A (en) * 2016-08-30 2016-12-14 孟玲 A kind of System of Industrial Device Controls based on Internet of Things
CN106973069A (en) * 2017-05-16 2017-07-21 武汉优信众网科技有限公司 A kind of data distributing method based on relevance key

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070109124A1 (en) 2003-04-01 2007-05-17 Mi Kyoung Park Contactless type communication tag, portable tag reader for verifying a genuine article, and method for providing information of whether an article is genuine or not
KR101516114B1 (en) * 2014-02-13 2015-05-04 부경대학교 산학협력단 Certificate-based proxy re-encryption method and its system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
김보승 외 3명, 멀티캐스트 전송을 위한 키 체인 기반의 안전한 그룹 키 관리방안 연구, 한국산학기술학회논문지 (2010.)*

Also Published As

Publication number Publication date
KR20190057889A (en) 2019-05-29
WO2019103360A1 (en) 2019-05-31
CN110419195A (en) 2019-11-05

Similar Documents

Publication Publication Date Title
Sharma et al. A novel scheme for data security in cloud computing using quantum cryptography
US9852300B2 (en) Secure audit logging
CN102571329B (en) Password key management
Das Secure cloud computing algorithm using homomorphic encryption and multi-party computation
JP6363032B2 (en) Key change direction control system and key change direction control method
CN107453880B (en) Cloud data secure storage method and system
Sasi et al. A general comparison of symmetric and asymmetric cryptosystems for WSNs and an overview of location based encryption technique for improving security
EP3879750B1 (en) Communication terminals and programs
Huang et al. Secure and privacy-preserving DRM scheme using homomorphic encryption in cloud computing
Bhargav et al. A review on cryptography in cloud computing
Soomro et al. Review and open issues of cryptographic algorithms in cyber security
KR102025989B1 (en) DATA MANAGEMENT SCHEME BASED ON PROXY RE-ENCRYPTION IN IoT LIGHTWEIGHT DEVICES AND SYSTEM
Junghanns et al. Engineering of secure multi-cloud storage
Krishnamoorthy et al. Implementation and management of cloud security for industry 4. O-data using hybrid elliptical curve cryptography
Michalas et al. Secgod google docs: Now i feel safer!
Hussien et al. Scheme for ensuring data security on cloud data storage in a semi-trusted third party auditor
JP6840685B2 (en) Data sharing method, data sharing system, communication terminal, data sharing server, program
KR101812311B1 (en) User terminal and data sharing method of user terminal based on attributed re-encryption
KR101240247B1 (en) Proxy re-encryption Method using two secret key, Method for decrypting of Proxy re-encryption message
Malik et al. Cloud computing security improvement using Diffie Hellman and AES
Varghese et al. A varied approach to attribute based access model for secure storage in cloud
KR20170001633A (en) Tokenization-based encryption key managemnent sytem and method
KR100760044B1 (en) System for reading tag with self re-encryption protocol and method thereof
Wang et al. Privacy preserving protocol for service aggregation in cloud computing
Srivastava et al. Enhanced Hybrid Symmetric Cryptography for IoT Devices

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