KR20180109487A - Broadcast encryption and decryption method based on subset difference - Google Patents

Broadcast encryption and decryption method based on subset difference Download PDF

Info

Publication number
KR20180109487A
KR20180109487A KR1020170039279A KR20170039279A KR20180109487A KR 20180109487 A KR20180109487 A KR 20180109487A KR 1020170039279 A KR1020170039279 A KR 1020170039279A KR 20170039279 A KR20170039279 A KR 20170039279A KR 20180109487 A KR20180109487 A KR 20180109487A
Authority
KR
South Korea
Prior art keywords
key
public key
identifier
based encryption
device group
Prior art date
Application number
KR1020170039279A
Other languages
Korean (ko)
Other versions
KR101967521B1 (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 KR1020170039279A priority Critical patent/KR101967521B1/en
Publication of KR20180109487A publication Critical patent/KR20180109487A/en
Application granted granted Critical
Publication of KR101967521B1 publication Critical patent/KR101967521B1/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/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
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

Disclosed is a broadcast encryption and decryption method based on a subset difference. The broadcast encryption method comprises: a step of generating a public key and a secrete key with respect to each of a plurality of second devices; a step of generating an encrypted key based on a subset difference by using the public key; and a step of encrypting a message by using the generated encrypted key based on the subset difference for broadcasting the message, wherein the encrypted key based on the subset difference is produced by a public key corresponding to an identifier of a device group included in a message reception target among the second devices, and a public key corresponding to an identifier of the device group excluded from the included device group, thereby reducing the size of the secret key.

Description

부분집합 차 기반 브로드캐스트 암호화 및 복호화 방법{Broadcast encryption and decryption method based on subset difference}[0001] Broadcast encryption and decryption method based on subset difference [

본 발명은 부분집합 차 기반 브로드캐스트 암호화 및 복호화 방법에 관한 것이다.The present invention relates to a subset-aggregation-based broadcast encryption and decryption method.

브로드캐스트 암호화는 수신자 그룹으로 메시지를 보안 전송하기 위한 암호화 방법으로, 특정 사용자들만이 수신한 메시지를 복호화할 수 있다. 응용 사례에는 유료 TV, DRM(digital rights management)이 있다.Broadcast encryption is an encryption method for securely transferring a message to a group of recipients. It can decrypt received messages only by specific users. Examples of applications include pay TV and digital rights management (DRM).

다른 특징을 가진 수많은 브로드캐스트 암호화 방법들이 소개되어 왔다. 브로드캐스트 암호화 방법에는 대칭키 기반 방식(symmetric key setting) 및 공개키 기반 방식(public key setting)이 있다.Numerous broadcast encryption methods with different characteristics have been introduced. Broadcast encryption methods include symmetric key setting and public key setting.

공개키 기반 브로드캐스트 암호화 방법은 누구나 공개키를 이용하여 허가된 사용자들의 변화하는 세트로 메시지를 브로드캐스트할 수 있다. 반면에, 비밀키 브로드캐스트 암호화 방법은 비밀키를 알고 있는 특정 센터만이 메시지를 브로드캐스트할 수 있다. 브로드캐스트 암호화 방법은 상태 기반(stateful) 또는 무상태(stateless) 기반일 수 있다. 상태 기반 브로드캐스트 암호화 방법은 사용자의 비밀키가 때때로 업데이트될 수 있는 반면, 무상태 기반 브로드캐스트 암호화 방법은 사용자의 비밀키가 시스템의 수명 동안 동일하다. 보안은 전체적으로 또는 부분적으로 공모하는 적들에 대항하여 정의될 수 있다. 브로드캐스트 암호화 방법은 제외 및 불법 복제 추적(revocation and traitor-tracing) 알고리즘으로 집약될 수 있다. 이 알고리즘은 아이디 기반 공개키 방식 및/또는 전방 보안성(forward security)을 지원할 수 있다. The public key based broadcast encryption method allows anyone to broadcast a message to a changing set of authorized users using a public key. On the other hand, the private key broadcast encryption method can only broadcast a message to a specific center that knows the secret key. The broadcast encryption method may be stateful or stateless. The state-based broadcast encryption method allows the user's secret key to be updated from time to time, while the stateless broadcast encryption method ensures that the user's secret key is the same for the lifetime of the system. Security can be defined against enemies that compete in whole or in part. Broadcast encryption methods can be aggregated with exclusion and revocation and traitor-tracing algorithms. The algorithm may support an identity-based public key scheme and / or forward security.

브로드캐스트 암호화 방법에서, 일반적으로 메시지 형식은 (S, Hdr, CM)으로 나타내어진다. 여기서, S는 사용자 그룹을 나타내고, Hdr은 헤더이고, CM 은 원본 메시지의 암호문(ciphertext)이다. 송신자는 세션키 Ks로 메시지 M의 암호문 CM을 생성하고, S와 Ks로 Hdr를 계산하여, (S, Hdr, CM)을 전송한다. 복호화를 위하여, 특정 사용자는 비밀키와 헤더로부터 Ks를 계산하여 암호문을 복호화한다. 그러나, 제외된 사용자는 자신의 개인 정보로 Ks를 추론할 수 없다. 더욱이, 제외된 모든 사용자들이 공모하더라도 Ks는 계산될 수 없다.In the broadcast encryption method, the message format is generally expressed as (S, Hdr, C M ). Here, S denotes a user group, Hdr denotes a header, and CM denotes a ciphertext of the original message. The sender generates the cipher text C M of the message M with the session key K s , calculates Hdr by S and K s , and transmits (S, Hdr, C M ). For decryption, a particular user decrypts the ciphertext by computing K s from the private key and header. However, excluded users can not infer K s with their personal information. Furthermore, K s can not be calculated even if all excluded users compete.

브로드캐스트 암호화 방법에서, 헤더의 길이, 비밀키/공개키의 크기 및 암호화/복호화 시간이 중요한 요소이다. 이 요소들은 가능한 작을수록 이상적이나, 대부분의 브로드캐스트 암호화 방법에서는 하나의 요소를 줄이면 다른 요소가 증가하는 것으로 나타났다. 메시지가 아주 많은 수신자에게 전송되는 브로드캐스트 암호화에서는, 실제 계산 비용 및 저장매체 사이즈와 함께 헤더 길이를 최소화하는 하는 것이 중요하다.In the broadcast encryption method, the length of the header, the size of the secret key / public key, and the encryption / decryption time are important factors. These elements are ideal as small as possible, but in most broadcast encryption methods, one element decreases and the other increases. In broadcast encryption where messages are sent to a very large number of recipients, it is important to minimize the header length along with the actual computational cost and storage medium size.

이와 관련하여 선행문헌으로서, "Revocation and tracing schemes for stateless receivers, Dalit Naor, Moni Naor, and Jeffery Lotspiech."(이하, 선행문헌1이라 함), "Public Key Broadcast Encryption for Stateless Receivers, Y. Dodis and N. Fazio." (이하, 선행문헌2라 함), "Hierarchical identity based encryption with constant size ciphertext, Dan Boneh, Xavier Boyen, and Eu-Jin Goh." (이하, 선행문헌3이라 함), "Collusion resistant broadcast encryption with short ciphertexts and private keys, Dan Boneh, Craig Gentry, and Brent Waters." (이하, 선행문헌4라 함) 및 "Public-Key Revocation and Tracing Schemes with Subset Difference Methods Revisited, Kwangsu Lee, Woo Kwon Koo, Dong Hoon Lee, Jong Hwan Park." (이하, 선행문헌5라 함)이 개시되어 있다.In this connection, as a prior art reference, "Revocation and tracing schemes for stateless receivers, Dalit Naor, Moni Naor, and Jeffery Lotspiech." (Hereinafter referred to as Prior Art 1), "Public Key Broadcast Encryption for Stateless Receivers, Y. Dodis N. Fazio. " (Hereinafter referred to as Prior Art 2), "Hierarchical identity based encryption with constant size ciphertext, Dan Boneh, Xavier Boyen, and Eu-Jin Goh. (Hereinafter referred to as Prior Art 3), " Collusion resistant broadcast encryption with short ciphertexts and private keys, Dan Boneh, Craig Gentry, and Brent Waters. (Hereinafter referred to as Prior Art 4) and "Public-Key Revocation and Tracing Schemes with Subset Difference Methods Revisited, Kwangsu Lee, Woo Kwon Koo, Dong Hoon Lee and Jong Hwan Park. (Hereinafter, referred to as prior art document 5) is disclosed.

총 N개의 디바이스가 있고, r개의 디바이스가 브로드캐스트 복호화에서 제외된다고 가정하면, 선행문헌1은 대칭키 기반의 브로드캐스트 암호화 기법으로, 공유키는 O(1)개이고, 디바이스에 저장되는 비밀키는 O((log N)2)개이다. 그리고, 복호화 시간은 O(log N)이고, 암호문의 크기는 O(r)이다.Assuming that there are a total of N devices and r devices are excluded from the broadcast decryption, the prior art 1 is a symmetric key-based broadcast encryption scheme, in which the shared key is O (1) O ((log N) 2 ). The decryption time is O (log N), and the size of the ciphertext is O (r).

선행문헌2와 선행문헌3의 조합은 공개키 기반 브로드캐스트 암호화 기법이 된다. 이 기법은, 공개키의 크기가 O(log N)이고, 비밀키의 크기가 O((log N)3)이다. 그리고, 복호화 시간은 O(log N)이고, 암호문의 크기는 O(r)이다.The combination of the prior art 2 and the prior art 3 is a public key based broadcast encryption scheme. In this scheme, the size of the public key is O (log N) and the size of the secret key is O ((log N) 3 ). The decryption time is O (log N), and the size of the ciphertext is O (r).

선행문헌4는 공개키 기반 브로드캐스트 암호화 기법으로, 공개키의 크기가 O(N)이고, 비밀키의 크기가 O((log N)2)이다. 그리고, 복호화 시간은 O(1)이고, 암호문의 크기는 O(r)이다.Prior art 4 is a public key based broadcast encryption scheme in which the size of the public key is O (N) and the size of the secret key is O ((log N) 2 ). The decryption time is O (1), and the size of the cipher text is O (r).

선행문헌5는, 공개키의 크기가 O(1)이고, 비밀키의 크기가 O((log N)2)이다. 그리고, 복호화 시간은 O(1)이고, 암호문의 크기는 O(r)이다.In the prior art 5, the size of the public key is O (1) and the size of the secret key is O ((log N) 2 ). The decryption time is O (1), and the size of the cipher text is O (r).

이러한 종래의 브로드캐스트 암호화 방법보다, 암호문의 크기, 비밀키/공개키의 크기 또는 암호화/복호화 시간 중 한 요소를 줄이면서도 다른 요소의 증가가 없는 브로드캐스트 암호화 방법이 요구된다.Broadcast encryption methods are needed that reduce one of the size of the ciphertext, the size of the secret key / public key, or the encryption / decryption time compared to the conventional broadcast encryption method.

본 발명은 암호문의 크기를 종래와 같이 O(r)로 유지하면서, 비밀키의 크기를 종래보다 작은 O(log N)으로 줄일 수 있는 부분집합 차 기반 브로드캐스트 암호화 및 복호화 방법에 관한 것이다.The present invention relates to a partial set difference-based broadcast encryption and decryption method capable of reducing the size of a secret key to O (log N) which is smaller than a conventional one while maintaining the size of a cipher text as O (r).

본 발명의 일 측면에 따르면, 제1 디바이스가 다수의 제2 디바이스 중 적어도 하나의 특정 디바이스로 메시지를 송신하기 위하여 수행하는 브로드캐스트 암호화 방법이 개시된다.According to an aspect of the present invention, a broadcast encryption method is disclosed in which a first device performs a message transmission to at least one of a plurality of second devices.

본 발명의 실시예에 따른 브로드캐스트 암호화 방법은, 공개키 및 상기 다수의 제2 디바이스 각각에 대한 비밀키를 생성하는 단계, 상기 공개키를 이용하여 부분집합 차(subset difference) 기반 암호화키를 생성하는 단계 및 상기 생성된 부분집합 차 기반 암호화키를 이용하여 메시지를 암호화하여 브로드캐스팅하는 단계를 포함하되, 상기 부분집합 차 기반 암호화키는, 상기 다수의 제2 디바이스 중 메시지 송신 대상에 포함되는 디바이스 그룹의 식별자에 대응하는 공개키와 상기 포함되는 디바이스 그룹에서 제외되는 디바이스 그룹의 식별자에 대응하는 공개키로 생성된다.A broadcast encryption method according to an exemplary embodiment of the present invention includes generating a public key and a secret key for each of the plurality of second devices, generating a subset difference based encryption key using the public key, And encrypting and broadcasting a message using the generated subset difference-based encryption key, wherein the subset-difference-based encryption key is a key for encrypting a message included in a device A public key corresponding to the identifier of the group, and a public key corresponding to the identifier of the device group excluded from the included device group.

상기 식별자는 블린 표현(Boolean representation)을 이용하여 표현된다.The identifier is represented using a Boolean representation.

상기 비밀키는 상기 제2 디바이스의 식별자에 대응하는 포함되는 공개키와 제외되는 공개키로 구성되며, 해당 디바이스에 대하여 선택된 랜덤값(R)을 상기 포함되는 공개키에 곱하고, 상기 제외되는 공개키에 랜덤값의 역원(R-1)을 곱하여 생성된다.Wherein the secret key is composed of an included public key corresponding to the identifier of the second device and a public key that is excluded, wherein the random value R selected for the device is multiplied by the included public key, Is multiplied by the inverse (R- 1 ) of the random value.

상기 특정 디바이스로 구성되는 디바이스 그룹은 제1 비트값 및 제2 비트값을 포함하는 식별자 쌍으로 표현되고, 상기 제1 비트값은 상기 포함되는 디바이스 그룹의 식별자이고, 상기 제2 비트값은 상기 제외되는 디바이스 그룹의 식별자이다.Wherein the device group consisting of the specific device is represented by an identifier pair including a first bit value and a second bit value, the first bit value is an identifier of the included device group, Lt; / RTI >

본 발명의 다른 측면에 따르면, 제1 디바이스가 다수의 제2 디바이스 중 적어도 하나의 특정 디바이스로 메시지를 송신하기 위하여 브로드캐스팅한 암호화 메시지를 수신한 상기 제2 디바이스가 수행하는 브로드캐스트 복호화 방법이 개시된다.According to another aspect of the present invention, there is provided a broadcast decryption method performed by the second device, the first device having received an encrypted message broadcast to transmit a message to at least one of the plurality of second devices, do.

본 발명의 실시예에 따른 브로드캐스트 복호화 방법은, 상기 제1 디바이스가 생성한 비밀키 및 공개키를 저장하는 단계, 상기 수신된 암호화 메시지 및 상기 저장된 비밀키와 공개키를 이용하여 상기 제1 디바이스가 생성한 제1 부분집합 차 기반 암호화키와 동일한 제2 부분집합 차 기반 암호화키를 생성하는 단계 및 상기 생성된 제2 부분집합 차 기반 암호화키를 이용하여 상기 암호화 메시지를 복호화하는 단계를 포함하되, 상기 제2 부분집합 차 기반 암호화키는, 상기 제1 부분집합 차 기반 암호화키를 구성하는 공개키를 상기 저장된 비밀키와 공개키로부터 산출하여 생성된다.A broadcast decryption method according to an exemplary embodiment of the present invention includes: storing a secret key and a public key generated by the first device; generating a secret key and a public key by using the received encrypted message and the stored secret key and a public key, Generating a second subset aggregation-based encryption key that is the same as the first subset aggregation-based encryption key generated by the second subset aggregation-based encryption key, and decrypting the encrypted message using the generated second subset aggregation-based encryption key , And the second partial set difference-based encryption key is generated by calculating a public key constituting the first partial set difference-based encryption key from the stored secret key and the public key.

상기 제1 부분집합 차 기반 암호화키는, 상기 다수의 제2 디바이스 중 메시지 송신 대상에 포함되는 디바이스 그룹의 식별자에 대응하는 제1 공개키와 상기 포함되는 디바이스 그룹에서 제외되는 디바이스 그룹의 식별자에 대응하는 제2 공개키로 구성된다.Wherein the first partial set key based encryption key corresponds to a first public key corresponding to an identifier of a device group included in a message transmission target of the plurality of second devices and an identifier of a device group excluded from the included device group The second public key.

상기 비밀키는 상기 제2 디바이스의 식별자에 대응하는 포함되는 공개키와 제외되는 공개키로 구성되며, 해당 디바이스에 대하여 선택된 랜덤값(R)을 상기 포함되는 공개키에 곱하고, 상기 제외되는 공개키에 랜덤값의 역원(R-1)을 곱하여 생성된다.Wherein the secret key is composed of an included public key corresponding to the identifier of the second device and a public key that is excluded, wherein the random value R selected for the device is multiplied by the included public key, Is multiplied by the inverse (R- 1 ) of the random value.

상기 제2 부분집합 차 기반 암호화키를 생성하는 단계는, 상기 랜덤값(R)을 상기 포함되는 공개키에 곱한 값과 상기 제외되는 공개키에 랜덤값의 역원(R-1)을 곱한 값을 곱셈 연산하여 상기 랜덤값(R)과 상기 랜덤값의 역원(R-1)을 소거함으로써, 상기 제1 공개키 및 상기 제2 공개키를 상기 비밀키로부터 산출한다.The step of generating the second partial set key-based encryption key comprises: multiplying the random value (R) by the included public key and multiplying the excluded public key by the inverse (R- 1 ) of the random value And calculates the first public key and the second public key from the secret key by performing the multiplication operation to erase the random value (R) and the inverse (R- 1 ) of the random value.

본 발명의 실시예에 따른 부분집합 차 기반 브로드캐스트 암호화 및 복호화 방법은, 암호문의 크기를 종래와 같이 O(r)로 유지하면서, 비밀키의 크기를 종래보다 작은 O(log N)으로 줄일 수 있다.The method of encrypting and decrypting a partial set difference based broadcast according to an embodiment of the present invention reduces the size of a secret key to O (log N), which is smaller than a conventional one, while maintaining the size of a cipher text as O (r) have.

도 1은 본 발명의 실시예에 따른 브로드캐스트 시스템의 구성을 개략적으로 예시한 도면.
도 2는 본 발명의 실시예에 따른 부분집합 차 기반 브로드캐스트 암호화 방법을 나타낸 흐름도.
도 3은 본 발명의 실시예에 따른 부분집합 차 기반 브로드캐스트 복호화 방법을 나타낸 흐름도.
1 schematically illustrates a configuration of a broadcast system according to an embodiment of the present invention;
FIG. 2 is a flowchart illustrating a partial set difference-based broadcast encryption method according to an embodiment of the present invention; FIG.
3 is a flowchart illustrating a method of decoding a partial set difference based broadcast according to an embodiment of the present invention.

본 명세서에서 사용되는 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "구성된다" 또는 "포함한다" 등의 용어는 명세서상에 기재된 여러 구성 요소들, 또는 여러 단계들을 반드시 모두 포함하는 것으로 해석되지 않아야 하며, 그 중 일부 구성 요소들 또는 일부 단계들은 포함되지 않을 수도 있고, 또는 추가적인 구성 요소 또는 단계들을 더 포함할 수 있는 것으로 해석되어야 한다. 또한, 명세서에 기재된 "...부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.As used herein, the singular forms "a", "an" and "the" include plural referents unless the context clearly dictates otherwise. In this specification, the terms "comprising ", or" comprising "and the like should not be construed as necessarily including the various elements or steps described in the specification, Or may be further comprised of additional components or steps. Also, the terms "part," " module, "and the like described in the specification mean units for processing at least one function or operation, which may be implemented in hardware or software or a combination of hardware and software .

이하, 본 발명의 다양한 실시예들을 첨부된 도면을 참조하여 상술하겠다. Hereinafter, various embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 실시예에 따른 브로드캐스트 시스템의 구성을 개략적으로 예시한 도면이다.1 is a diagram schematically illustrating a configuration of a broadcast system according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 실시예에 따른 브로드캐스트 시스템(100)은 브로드캐스팅을 통해 메시지를 송신하는 제1 디바이스(110) 및 제1 디바이스(110)로부터 브로드캐스팅된 메시지를 수신하는 다수의 제2 디바이스(120)를 포함한다.1, a broadcast system 100 according to an exemplary embodiment of the present invention includes a first device 110 that transmits a message through broadcasting, a second device 110 that receives a message broadcast from the first device 110, The second device 120 of FIG.

즉, 본 발명의 실시예에 따른 브로드캐스트 시스템(100)은 공개키 기반 방식의 브로드캐스트 암호화 및 복호화 기법을 사용하므로, 브로드캐스트 시스템(100)을 구성하는 디바이스들은 모두 브로드캐스트 방식으로 메시지를 송수신할 수 있다. 다만, 이해와 설명의 편의를 위하여, 전술한 바와 같이, 송신 노드로 동작하는 디바이스를 제1 디바이스(110)로, 수신 노드로 동작하는 디바이스를 제2 디바이스(120)로 칭하기로 한다.That is, since the broadcast system 100 according to the embodiment of the present invention uses a public key-based broadcast encryption and decryption technique, all the devices constituting the broadcast system 100 transmit and receive messages in a broadcast manner can do. However, for the convenience of understanding and explanation, as described above, a device that operates as a transmitting node is referred to as a first device 110, and a device that operates as a receiving node is referred to as a second device 120. [

다시 도 1을 참조하면, 제1 디바이스(110)는 다수의 제2 디바이스(120) 중 특정 디바이스(130)로 메시지를 송신하기 위하여, 본 발명의 실시예에 따른 부분집합 차 기반 브로드캐스트 암호화 방법을 수행하여 암호화된 메시지를 브로드캐스팅한다.Referring again to FIG. 1, a first device 110 may be configured to transmit a message to a specific one of a plurality of second devices 120 by using a subset-aggregation-based broadcast encryption method according to an embodiment of the present invention To broadcast the encrypted message.

그리고, 제1 디바이스(110)가 브로드캐스팅한 암호화된 메시지를 수신한 특정 디바이스(130)는 본 발명의 실시예에 따른 부분집합 차 기반 브로드캐스트 복호화 방법을 수행하여 암호화된 메시지를 복호화할 수 있다.The specific device 130 receiving the encrypted message broadcasted by the first device 110 may decrypt the encrypted message by performing the partial set difference based broadcast decryption method according to the embodiment of the present invention .

제1 디바이스(110)가 수행하는 브로드캐스트 암호화 방법 및 제2 디바이스(120)가 수행하는 브로드캐스트 복호화 방법에 대해서는 이후, 도 2 및 도 3을 참조하여 설명하기로 한다.The broadcast encryption method performed by the first device 110 and the broadcast decryption method performed by the second device 120 will be described below with reference to FIGS. 2 and 3. FIG.

도 2는 본 발명의 실시예에 따른 부분집합 차 기반 브로드캐스트 암호화 방법을 나타낸 흐름도이다.FIG. 2 is a flowchart illustrating a subset-aggregation-based broadcast encryption method according to an embodiment of the present invention.

S210 단계에서, 제1 디바이스(110)는 공개키(PK) 및 다수의 제2 디바이스(120) 각각에 대한 비밀키(SKID)를 생성한다.In step S210, the first device 110 generates a public key PK and a secret key (SK ID ) for each of the plurality of second devices 120, respectively.

우선, 바이리니어 그룹(bilinear group)

Figure pat00001
가 생성된다. 여기서,
Figure pat00002
는 비트 사이즈 θ(λ)의 프라임 오더(prime order) p에 대한 바이리니어 그룹이다. 그리고, 랜덤 엘리먼트(random element) g ∈
Figure pat00003
가 선택되고, 랜덤 지수(random exponent)
Figure pat00004
(
Figure pat00005
는 랜덤값인 p에 대한 잉여계)가 선택된다. 그리고, O(l)개의 랜덤 그룹 엘리먼트(random group elements) h1,0, h1,1, …, hl,0, hl,1, k1,0, k1,1, …, kl,0, kl,1
Figure pat00006
가 선택된다. 그래서, 마스터키 MK = gα와 하기 수학식 1의 공개키가 산출된다.First, a bilinear group
Figure pat00001
Is generated. here,
Figure pat00002
Is a bilinear group for the prime order p of the bit size [theta] ([lambda]). Then, a random element g?
Figure pat00003
Is selected, a random exponent is selected,
Figure pat00004
(
Figure pat00005
A surplus system for p, which is a random value) is selected. Then, O (l) random group elements h 1,0 , h 1,1 , ... , h1, 0 , h1, 1 , k1,0 , k1,1 , ... , k l, 0 , k l, 1
Figure pat00006
Is selected. Thus, the master key MK = g alpha and the public key of the following equation (1) are calculated.

Figure pat00007
Figure pat00007

비밀키는 식별자(ID), 마스터키(MK) 및 공개키(PK)를 이용하여 생성된다. 즉, 랜덤 지수 αω 및 r ∈

Figure pat00008
가 선택되고, 비밀키(SKID)가 하기 수학식 2와 같이 산출된다.The secret key is generated using an identifier (ID), a master key (MK), and a public key (PK). That is, the random exponent ?? And r?
Figure pat00008
Is selected, and the secret key (SK ID ) is calculated according to the following equation (2).

Figure pat00009
Figure pat00009

여기서,

Figure pat00010
이다.here,
Figure pat00010
to be.

예를 들어, 제1 디바이스(110)는 하기 수학식 3과 같이 정의되는 공개키(PK)를 생성할 수 있다.For example, the first device 110 may generate a public key PK defined as: < EMI ID = 3.0 >

Figure pat00011
Figure pat00011

여기서, d는 공개키의 개수를 나타낸다. 다수의 제2 디바이스(120)의 개수가 N이라고 가정하면, 공개키의 개수 d=log N이 된다.Here, d represents the number of public keys. Assuming that the number of the second devices 120 is N, the number of public keys d = log N.

그리고, 비밀키(SKID)는 제2 디바이스(120) 각각의 식별자(ID)에 대응하는 공개키를 이용하여 생성된다.The secret key (SK ID ) is generated using the public key corresponding to the identifier (ID) of each second device 120.

여기서, 각각의 식별자(ID)는 블린 표현(Boolean representation)을 이용하여 표현될 수 있다. 즉, 식별자는 ID=(b1…bd)와 같이, d개의 비트를 포함하는 비트값으로 표현될 수 있다.Here, each identifier (ID) can be expressed using a Boolean representation. That is, the identifier may be represented by a bit value including d bits, such as ID = (b 1 ... b d ).

예를 들어, 제2 디바이스(120)가 8개라 가정하면, 공개키 개수 d는 3이 된다. 이와 같은 경우, 8개의 제2 디바이스(120) 각각의 식별자는 000, 001, 010, 011, 100, 101, 110, 111이 될 수 있다.For example, assuming that the number of the second devices 120 is eight, the number of public keys d is three. In this case, the identifiers of the eight second devices 120 may be 000, 001, 010, 011, 100, 101, 110, and 111, respectively.

이하에서는, 본 발명의 이해와 설명의 편의를 위하여, 다수의 제2 디바이스(120)의 개수가 8이라고 가정하여 설명하기로 한다.Hereinafter, for convenience of understanding and explanation of the present invention, it is assumed that the number of the plurality of second devices 120 is eight.

다수의 제2 디바이스(120)의 개수가 8인 경우, 공개키는 하기 수학식 4와 같이 나타낼 수 있다.If the number of the plurality of second devices 120 is 8, the public key can be expressed by Equation (4).

Figure pat00012
Figure pat00012

식별자(ID)에 대응하는 공개키는 하기 수학식 5로 표현될 수 있다.The public key corresponding to the identifier (ID) can be expressed by the following equation (5).

Figure pat00013
Figure pat00013

비밀키(SKID)는 이와 같은 식별자(ID)에 대응하는 포함되는 공개키와 제외되는 공개키로 구성되며, 해당 디바이스에 대하여 선택된 랜덤값(R)을 포함되는 공개키에 곱하고, 제외되는 공개키에 랜덤값의 역원(R-1)을 곱하여 생성된다.The secret key (SK ID ) is composed of an embedded public key corresponding to the identifier (ID) and a public key that is excluded. The public key including the random value R selected for the device is multiplied by the public key, (R- 1 ) of the random value.

예를 들어, 8개의 제2 디바이스(120) 중 ID=001의 식별자를 가지는 제2 디바이스(120)의 비밀키(SK001)는 하기 수학식 6과 같이 나타낼 수 있다.For example, the secret key (SK 001 ) of the second device 120 having the identifier of ID = 001 among the eight second devices 120 can be expressed by Equation (6).

Figure pat00014
Figure pat00014

S220 단계에서, 제1 디바이스(110)는 공개키(PK)를 이용하여 부분집합 차(subset difference) 기반 암호화키를 생성한다.In step S220, the first device 110 generates a subset difference-based encryption key using the public key PK.

예를 들어, 부분집합 차 기반 암호화키는, 다수의 제2 디바이스(120) 중에서 메시지 송신 대상에 포함되는 디바이스 그룹의 식별자에 대응하는 공개키와 포함되는 디바이스 그룹에서 제외되는 디바이스 그룹의 식별자에 대응하는 공개키로 생성될 수 있다.For example, the partial set difference-based encryption key corresponds to the public key corresponding to the identifier of the device group included in the message transmission destination among the plurality of second devices 120 and the identifier of the device group excluded from the included device group Lt; / RTI >

특정 디바이스(130)로 구성되는 디바이스 그룹은 식별자 쌍으로 표현되고, 식별자 쌍은 제1 비트값 및 제2 비트값을 포함할 수 있다. 여기서, 제1 비트값은 제2 디바이스(120) 중 일부 디바이스의 식별자를 표현하는 비트값이고, 제2 비트값은 제1 비트값으로 표현된 일부 디바이스에서 제외되는 디바이스의 식별자를 표현하는 비트값일 수 있다.A device group composed of a specific device 130 is represented by an identifier pair, and the identifier pair may include a first bit value and a second bit value. Here, the first bit value is a bit value representing an identifier of some of the devices of the second device 120, and the second bit value is a bit value representing an identifier of a device that is excluded from some devices represented by the first bit value .

보다 상세하게, 제1 비트값 및 제2 비트값은 각각 제2 디바이스(120)의 식별자와 대응되는 비트값과 유사하게 d개의 비트를 포함하며, 비트값을 구성하는 d개의 비트 각각은 0, 1 및 * 중 하나의 값을 가질 수 있다. 이때, *는 0 및 1을 모두 포함하는 값일 수 있다.More specifically, the first bit value and the second bit value each include d bits similar to the bit value corresponding to the identifier of the second device 120, and each of the d bits constituting the bit value is 0, 1 and *. ≪ / RTI > At this time, * may be a value including both 0 and 1.

예를 들어, 8개의 제2 디바이스(120) 각각의 식별자를 3개의 비트를 포함하는 비트값으로 표현하면, 순서대로 000(노드 1), 001(노드 2), 010(노드 3), 011(노드 4), 100(노드 5), 101(노드 6), 110(노드 7), 111(노드 8)가 되는데, 브로드캐스트된 암호화 메시지를 수신하여 복호화할 수 있는 특정 디바이스(130)가 노드 2, 노드 4 및 노드 6이라고 가정한다. 이 경우, 특정 디바이스(130)로 구성되는 디바이스 그룹은 식별자 쌍은 (**1, 111)로 표현될 수 있다. 여기서, **1은 제1 비트값으로서, 포함되는 디바이스 그룹의 식별자를 나타내고, 111은 제2 비트값으로서, 제외되는 디바이스 그룹의 식별자를 나타낸다. 즉, **1은 001(노드 2), 011(노드 4), 101(노드 6) 및 111(노드 8)을 나타내며, **1에서 111(노드 8)을 제외하면, 특정 디바이스(130)로 구성되는 디바이스 그룹은 001(노드 2), 011(노드 4) 및 101(노드 6)이 될 수 있다.For example, if the identifier of each of the eight second devices 120 is represented by a bit value that includes three bits, then 000 (node 1), 001 (node 2), 010 (node 3) A specific device 130 capable of receiving and decrypting the broadcasted encrypted message is a node 2 (node 2), node 100 (node 5), node 101 (node 6) , Node 4 and node 6, respectively. In this case, the identifier pair of the device group constituted by the specific device 130 can be represented by (** 1, 111). Here, ** 1 is a first bit value indicating the identifier of the included device group, and 111 is a second bit value indicating the identifier of the excluded device group. ** 1 indicates 001 (node 2), 011 (node 4), 101 (node 6), and 111 (node 8) May be 001 (node 2), 011 (node 4), and 101 (node 6).

특정 디바이스(130)로 구성되는 디바이스 그룹은 식별자 쌍 (**1, 111)에 대응하는 공개키는, 포함되는 공개키인 (h1,0 h1,1 h2,0 h2,1 h3,1)와 제외되는 공개키인 (k1,1 k2,1 k3,1)가 될 수 있다.The device group composed of the specific device 130 is configured so that the public key corresponding to the identifier pair (** 1, 111) is a public key (h 1,0 h 1,1 h 2,0 h 2,1 h 3,1 ) and the excluded public keys (k 1,1 k 2,1 k 3,1 ).

따라서, 부분집합 차 기반 암호화키는, 포함되는 디바이스 그룹의 식별자와 제외되는 디바이스 그룹의 식별자로 구성되는 식별자 쌍 (**1, 111)에 대응하는 공개키인, 포함되는 디바이스 그룹의 식별자에 대응하는 공개키 (h1,0 h1,1 h2,0 h2,1 h3,1)와 제외되는 디바이스 그룹의 식별자에 대응하는 공개키(k1,1 k2,1 k3,1)로 생성될 수 있다. 즉, 부분집합 차 기반 암호화키는 포함되는 디바이스 그룹의 식별자에 대응하는 공개키와 제외되는 디바이스 그룹의 식별자에 대응하는 공개키로 구성될 수있다.Therefore, the partial set difference-based encryption key corresponds to the identifier of the included device group, which is a public key corresponding to the identifier pair (** 1, 111) composed of the identifier of the included device group and the identifier of the excluded device group the public key (h 1,0 h 1,1 h 2,0 h 2,1 h 3,1) and a public key (k k 1,1 2,1 3,1 k corresponding to the group identifier of the device are excluded ). ≪ / RTI > That is, the subset-aggregation-based encryption key may be composed of a public key corresponding to the identifier of the device group included and a public key corresponding to the identifier of the excluded device group.

S230 단계에서, 제1 디바이스(110)는 생성된 부분집합 차 기반 암호화키를 이용하여 메시지를 암호화하여 브로드캐스팅한다.In step S230, the first device 110 encrypts and broadcasts the message using the generated partial set difference-based encryption key.

즉, 부분집합 차 기반 암호화키를 이용한 메시지 암호화는, 레이블(lables) (GL, ML), 메시지(M ∈

Figure pat00015
T) 및 공개키(PK)를 이용하여 수행된다. 랜덤 지수 t ∈
Figure pat00016
가 선택되고, 암시적으로 (GL, ML)이 포함된 암호문(ciphertext)이 하기 수학식 7과 같이 산출된다.That is, message encryption using a subset-difference-based cryptographic key is performed using labels (GL, ML), messages (M ∈
Figure pat00015
T ) and a public key (PK). Random exponent t ∈
Figure pat00016
Is selected, and a ciphertext including implicitly (GL, ML) is calculated as shown in Equation (7).

Figure pat00017
Figure pat00017

여기서,

Figure pat00018
이다.here,
Figure pat00018
to be.

도 3은 본 발명의 실시예에 따른 부분집합 차 기반 브로드캐스트 복호화 방법을 나타낸 흐름도이다.3 is a flowchart illustrating a method of decoding a partial set difference based broadcast according to an embodiment of the present invention.

S310 단계에서, 다수의 제2 디바이스(120)는 제1 디바이스(110)가 브로드캐스팅한 암호화 메시지를 수신한다.In step S310, the plurality of second devices 120 receive the encrypted message broadcast by the first device 110. [

S320 단계에서, 다수의 제2 디바이스(120)는 암호화 메시지를 수신함에 따라 수신된 암호화 메시지 및 미리 저장된 비밀키와 공개키를 이용하여 부분집합 차 기반 암호화키를 생성한다. 여기서, 비밀키과 공개키는 전술한 바와 같이, 제1 디바이스(110)가 생성하며, 다수의 제2 디바이스(120) 각각은 제1 디바이스(110)로부터 공개키와 비밀키를 전달받아 미리 저장할 수 있다.In step S320, the plurality of second devices 120 generate a partial set difference-based encryption key using the received encryption message and the previously stored secret key and the public key upon receiving the encryption message. Here, as described above, the secret key and the public key are generated by the first device 110, and each of the plurality of second devices 120 receives the public key and the secret key from the first device 110, have.

즉, 다수의 제2 디바이스(120)는 암호화 메시지의 암호화에 사용된 부분집합 차 기반 암호화키를 구성하는 공개키를 산출하여, 제1 디바이스(110)가 생성한 부분집합 차 기반 암호화키를 동일하게 생성할 수 있다.That is, the plurality of second devices 120 may calculate the public key that constitutes the partial set difference-based encryption key used for encrypting the encrypted message, and use the partial set difference-based encryption key generated by the first device 110 as the same Can be generated.

물론, 다수의 제2 디바이스(120) 중 특정 디바이스(130)만이 제1 디바이스(110)가 생성한 부분집합 차 기반 암호화키를 동일하게 생성할 수 있다.Of course, only the specific device 130 among the plurality of second devices 120 can generate the partial set difference-based encryption key generated by the first device 110 in the same manner.

예를 들어, 제1 디바이스(110)가 생성한 부분집합 차 기반 암호화키가, 식별자 쌍 (**1, 111)에 대응하는 공개키인, 포함되는 디바이스 그룹의 식별자에 대응하는 공개키 (h1,0 h1,1 h2,0 h2,1 h3,1)와 제외되는 디바이스 그룹의 식별자에 대응하는 공개키(k1,1 k2,1 k3,1)로 생성되었다고 가정하면, 8개의 제2 디바이스(120) 중 ID=001의 식별자를 가지는 제2 디바이스(120)는 특정 디바이스(130)가 된다. 이러한 ID=001의 식별자를 가지는 특정 디바이스(130)는 수학식 4와 같은 비밀키를 가지고 있다. ID=001의 식별자를 가지는 특정 디바이스(130)는 수학식 4의 비밀키와 공개키를 이용하여 하기 수학식 5와 같이, 제1 디바이스(110)가 생성한 부분집합 차 기반 암호화키를 동일하게 생성할 수 있다.For example, if the partial set difference-based cryptographic key generated by the first device 110 is a public key corresponding to the identifier of the included device group, which is a public key corresponding to the identifier pair (** 1, 111) 1, 0, 1, 1 h 2,0 h 2,1 h 3,1 ) and the public key (k 1,1 k 2,1 k 3,1 ) corresponding to the identifier of the excluded device group , The second device 120 having the identifier of ID = 001 among the eight second devices 120 becomes the specific device 130. The specific device 130 having the identifier of ID = 001 has the secret key as shown in Equation (4). The specific device 130 having the identifier ID = 001 uses the secret key and the public key of Equation 4 to calculate the partial set difference-based encryption key generated by the first device 110 as Equation (5) Can be generated.

Figure pat00019
Figure pat00019

즉, ID=001의 식별자를 가지는 특정 디바이스(130)는, 포함되는 공개키에 곱해진 랜덤값(R)과 제외되는 공개키에 곱해진 랜덤값의 역원(R-1)을 곱셈 연산에 의하여 소거함으로써, 제1 디바이스(110)가 생성한 부분집합 차 기반 암호화키를 구성하는 디바이스 그룹의 식별자에 대응하는 공개키와 제외되는 디바이스 그룹의 식별자에 대응하는 공개키를 자신의 비밀키로부터 산출할 수 있다.That is, the specific device 130 having ID = 001 identifies the random value R multiplied by the included public key and the inverse (R- 1 ) random value multiplied by the excluded public key by a multiplication operation The public key corresponding to the identifier of the device group constituting the partial set difference-based encryption key generated by the first device 110 and the public key corresponding to the identifier of the excluded device group are calculated from the secret key of the device .

한편, ID=111의 식별자를 가지는 특정 디바이스(130)가 아닌 제2 디바이스(120)는 하기 수학식 6과 같은 비밀키를 가진다.On the other hand, the second device 120, which is not the specific device 130 having the identifier of ID = 111, has the secret key as shown in Equation (6).

Figure pat00020
Figure pat00020

ID=111의 식별자를 가지는 제2 디바이스(120)는, 포함되는 공개키에 곱해진 랜덤값(R)과 제외되는 공개키에 곱해진 랜덤값의 역원(R-1)을 곱셈 연산에 의하여 소거하기 위하여, 제1 디바이스(110)가 생성한 부분집합 차 기반 암호화키의 제외되는 공개키 k1,1 k2,1 k3,1 중 적어도 하나를 비밀키로 가지고 있어야 한다. 그런데, ID=111의 식별자를 가지는 제2 디바이스(120)의 비밀키를 나타내는 수학식 6에서 보여지듯이, ID=111의 식별자를 가지는 제2 디바이스(120)는 R-1 · k1, 1 , R-1 · k2,1 , R-1 · k3, 1 중 적어도 하나의 비밀키를 가지고 있지 않다. 따라서, 특정 디바이스(130)가 아닌 제2 디바이스(120)는, 포함되는 공개키에 곱해진 랜덤값(R)과 제외되는 공개키에 곱해진 랜덤값의 역원(R-1)을 소거하여 제1 디바이스(110)가 생성한 부분집합 차 기반 암호화키를 구성하는 공개키를 자신의 비밀키로부터 산출할 수 없으므로, 제1 디바이스(110)가 생성한 부분집합 차 기반 암호화키를 생성할 수 없다.The second device 120 having the identifier of ID = 111 cancels the inverse (R- 1 ) of the random value multiplied by the random value R multiplied by the included public key and the excluded public key by the multiplication operation , It is necessary to have at least one of the public keys k 1,1 k 2,1 k 3,1 of the partial set difference-based encryption key generated by the first device 110 as a secret key. However, ID = as shown in Equation (6) represents the private key of the second device 120 with the identifier 111 of the second device 120 having an identifier of ID = 111 is R -1 · k 1, 1, R -1 · k 2,1, R -1 · k 3, does not have at least one secret key of the first. Accordingly, the second device 120, which is not the specific device 130, erases the inverse (R -1 ) of the random value multiplied by the random value R multiplied by the included public key and the excluded public key, It is not possible to generate the partial set difference based encryption key generated by the first device 110 because the public key constituting the partial set difference based encryption key generated by the first device 110 can not be calculated from its own secret key .

S230 단계에서, 제1 디바이스(110)는 생성된 부분집합 차 기반 암호화키를 이용하여 암호화된 메시지를 복호화한다.In step S230, the first device 110 decrypts the encrypted message using the generated subset difference-based encryption key.

즉, 암호화된 메시지의 복호화는, 암호문(CT(GL, ML)), 비밀키(SKID) 및 공개키(PK)를 이용하여 수행된다. d를 ML과는 다른 ID에서의 비트수라고 가정한다. 만약, d > 0이면,

Figure pat00021
Figure pat00022
이 계산되고, 복화화된 메시지는 하기 수학식 10과 같이 산출된다.That is, the decryption of the encrypted message is performed using ciphertexts (CT (GL, ML) ), secret key (SK ID ) and public key (PK). Let d be the number of bits in an ID different from ML. If d > 0,
Figure pat00021
and
Figure pat00022
Is calculated, and the decoded message is calculated according to the following equation (10).

Figure pat00023
Figure pat00023

정확성은 하기 수학식 11에 의하여 검증될 수 있다.The accuracy can be verified by the following equation (11).

Figure pat00024
Figure pat00024

여기서,

Figure pat00025
이고,here,
Figure pat00025
ego,

Figure pat00026
이고,
Figure pat00026
ego,

Figure pat00027
이다.
Figure pat00027
to be.

한편, 전술된 실시예의 구성 요소는 프로세스적인 관점에서 용이하게 파악될 수 있다. 즉, 각각의 구성 요소는 각각의 프로세스로 파악될 수 있다. 또한 전술된 실시예의 프로세스는 장치의 구성 요소 관점에서 용이하게 파악될 수 있다.On the other hand, the components of the above-described embodiment can be easily grasped from a process viewpoint. That is, each component can be identified as a respective process. Further, the process of the above-described embodiment can be easily grasped from the viewpoint of the components of the apparatus.

또한 앞서 설명한 기술적 내용들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예들을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 하드웨어 장치는 실시예들의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.In addition, the above-described technical features may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions recorded on the medium may be those specially designed and constructed for the embodiments or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy 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 include machine language code such as those produced by a compiler, as well as 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 operations of the embodiments, and vice versa.

상기한 본 발명의 실시예는 예시의 목적을 위해 개시된 것이고, 본 발명에 대한 통상의 지식을 가지는 당업자라면 본 발명의 사상과 범위 안에서 다양한 수정, 변경, 부가가 가능할 것이며, 이러한 수정, 변경 및 부가는 하기의 특허청구범위에 속하는 것으로 보아야 할 것이다.It will be apparent to those skilled in the art that various modifications, additions and substitutions are possible, without departing from the spirit and scope of the invention as defined by the appended claims. Should be regarded as belonging to the following claims.

100: 브로드캐스트 시스템
110: 제1 디바이스
120: 제2 디바이스
130: 특정 디바이스
100: Broadcast system
110: first device
120: second device
130: Specific device

Claims (9)

제1 디바이스가 다수의 제2 디바이스 중 적어도 하나의 특정 디바이스로 메시지를 송신하기 위하여 수행하는 브로드캐스트 암호화 방법에 있어서,
공개키 및 상기 다수의 제2 디바이스 각각에 대한 비밀키를 생성하는 단계;
상기 공개키를 이용하여 부분집합 차(subset difference) 기반 암호화키를 생성하는 단계; 및
상기 생성된 부분집합 차 기반 암호화키를 이용하여 메시지를 암호화하여 브로드캐스팅하는 단계를 포함하되,
상기 부분집합 차 기반 암호화키는, 상기 다수의 제2 디바이스 중 메시지 송신 대상에 포함되는 디바이스 그룹의 식별자에 대응하는 공개키와 상기 포함되는 디바이스 그룹에서 제외되는 디바이스 그룹의 식별자에 대응하는 공개키로 생성되는 것을 특징으로 하는 브로드캐스트 암호화 방법.
A broadcast encryption method performed by a first device to transmit a message to at least one of a plurality of second devices,
Generating a public key and a secret key for each of the plurality of second devices;
Generating a subset difference based encryption key using the public key; And
And encrypting and broadcasting the message using the generated subset difference-based encryption key,
Wherein the partial set difference-based encryption key is generated by generating a public key corresponding to an identifier of a device group included in a message transmission target among the plurality of second devices and a public key corresponding to an identifier of a device group excluded from the included device group Gt; a < / RTI > broadcast encryption method.
제1항에 있어서,
상기 식별자는 블린 표현(Boolean representation)을 이용하여 표현되는 것을 특징으로 하는 브로드캐스트 암호화 방법.
The method according to claim 1,
Wherein the identifier is represented using a Boolean representation.
제1항에 있어서,
상기 비밀키는 상기 제2 디바이스의 식별자에 대응하는 포함되는 공개키와 제외되는 공개키로 구성되며, 해당 디바이스에 대하여 선택된 랜덤값(R)을 상기 포함되는 공개키에 곱하고, 상기 제외되는 공개키에 랜덤값의 역원(R-1)을 곱하여 생성되는 것을 특징으로 하는 브로드캐스트 암호화 방법.
The method according to claim 1,
Wherein the secret key is composed of an included public key corresponding to the identifier of the second device and a public key that is excluded, wherein the random value R selected for the device is multiplied by the included public key, (R < -1 >) of the random value.
제1항에 있어서,
상기 특정 디바이스로 구성되는 디바이스 그룹은 제1 비트값 및 제2 비트값을 포함하는 식별자 쌍으로 표현되고,
상기 제1 비트값은 상기 포함되는 디바이스 그룹의 식별자이고, 상기 제2 비트값은 상기 제외되는 디바이스 그룹의 식별자인 것을 특징으로 하는 브로드캐스트 암호화 방법.
The method according to claim 1,
Wherein the device group composed of the specific device is represented by a pair of identifiers including a first bit value and a second bit value,
Wherein the first bit value is an identifier of the included device group and the second bit value is an identifier of the excluded device group.
제1 디바이스가 다수의 제2 디바이스 중 적어도 하나의 특정 디바이스로 메시지를 송신하기 위하여 브로드캐스팅한 암호화 메시지를 수신한 상기 제2 디바이스가 수행하는 브로드캐스트 복호화 방법에 있어서,
상기 제1 디바이스가 생성한 비밀키 및 공개키를 저장하는 단계;
상기 수신된 암호화 메시지 및 상기 저장된 비밀키와 공개키를 이용하여 상기 제1 디바이스가 생성한 제1 부분집합 차 기반 암호화키와 동일한 제2 부분집합 차 기반 암호화키를 생성하는 단계; 및
상기 생성된 제2 부분집합 차 기반 암호화키를 이용하여 상기 암호화 메시지를 복호화하는 단계를 포함하되,
상기 제2 부분집합 차 기반 암호화키는, 상기 제1 부분집합 차 기반 암호화키를 구성하는 공개키를 상기 저장된 비밀키와 공개키로부터 산출하여 생성되는 것을 특징으로 하는 브로드캐스트 복호화 방법.
A broadcast decryption method performed by a second device, the first device receiving an encrypted message broadcast to transmit a message to at least one of a plurality of second devices, the method comprising:
Storing a secret key and a public key generated by the first device;
Generating a second partial set key based encryption key identical to the first partial set key based encryption key generated by the first device using the received encrypted message and the stored private key and public key; And
And decrypting the encrypted message using the generated second subset aggregation-based encryption key,
Wherein the second partial set key difference based encryption key is generated by calculating a public key constituting the first partial set difference based encryption key from the stored secret key and the public key.
제5항에 있어서,
상기 제1 부분집합 차 기반 암호화키는, 상기 다수의 제2 디바이스 중 메시지 송신 대상에 포함되는 디바이스 그룹의 식별자에 대응하는 제1 공개키와 상기 포함되는 디바이스 그룹에서 제외되는 디바이스 그룹의 식별자에 대응하는 제2 공개키로 구성되는 것을 특징으로 하는 브로드캐스트 복호화 방법.
6. The method of claim 5,
Wherein the first partial set key based encryption key corresponds to a first public key corresponding to an identifier of a device group included in a message transmission target of the plurality of second devices and an identifier of a device group excluded from the included device group And a second public key for decrypting the public key.
제6항에 있어서,
상기 비밀키는 상기 제2 디바이스의 식별자에 대응하는 포함되는 공개키와 제외되는 공개키로 구성되며, 해당 디바이스에 대하여 선택된 랜덤값(R)을 상기 포함되는 공개키에 곱하고, 상기 제외되는 공개키에 랜덤값의 역원(R-1)을 곱하여 생성되는 것을 특징으로 하는 브로드캐스트 복호화 방법.
The method according to claim 6,
Wherein the secret key is composed of an included public key corresponding to the identifier of the second device and a public key that is excluded, wherein the random value R selected for the device is multiplied by the included public key, (R- 1 ) of the random value.
제7항에 있어서,
상기 제2 부분집합 차 기반 암호화키를 생성하는 단계는,
상기 랜덤값(R)을 상기 포함되는 공개키에 곱한 값과 상기 제외되는 공개키에 랜덤값의 역원(R-1)을 곱한 값을 곱셈 연산하여 상기 랜덤값(R)과 상기 랜덤값의 역원(R-1)을 소거함으로써, 상기 제1 공개키 및 상기 제2 공개키를 상기 비밀키로부터 산출하는 것을 특징으로 하는 브로드캐스트 복호화 방법.
8. The method of claim 7,
Wherein the generating the second subset set-based encryption key comprises:
(R) multiplied by a value obtained by multiplying the random value (R) by the included public key and a value obtained by multiplying the excluded public key by the inverse (R- 1 ) of a random value to calculate the inverse of the random value (R- 1 ) from the secret key by deleting the first public key and the second public key from the secret key.
제1항 내지 제8항 중 어느 한 항의 방법을 수행하는 프로그램을 기록한 컴퓨터 판독 가능 기록 매체.


9. A computer-readable recording medium recording a program for performing the method of any one of claims 1 to 8.


KR1020170039279A 2017-03-28 2017-03-28 Broadcast encryption and decryption method based on subset difference KR101967521B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170039279A KR101967521B1 (en) 2017-03-28 2017-03-28 Broadcast encryption and decryption method based on subset difference

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170039279A KR101967521B1 (en) 2017-03-28 2017-03-28 Broadcast encryption and decryption method based on subset difference

Publications (2)

Publication Number Publication Date
KR20180109487A true KR20180109487A (en) 2018-10-08
KR101967521B1 KR101967521B1 (en) 2019-08-13

Family

ID=63864460

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170039279A KR101967521B1 (en) 2017-03-28 2017-03-28 Broadcast encryption and decryption method based on subset difference

Country Status (1)

Country Link
KR (1) KR101967521B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130042388A (en) * 2011-10-18 2013-04-26 국방과학연구소 Method for broadcast encryption based on identification number
KR20140148295A (en) * 2013-06-21 2014-12-31 고려대학교 산학협력단 Broadcast encryption method and system
WO2016156045A1 (en) * 2015-03-27 2016-10-06 International Business Machines Corporation Media key block based broadcast encryption

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130042388A (en) * 2011-10-18 2013-04-26 국방과학연구소 Method for broadcast encryption based on identification number
KR20140148295A (en) * 2013-06-21 2014-12-31 고려대학교 산학협력단 Broadcast encryption method and system
WO2016156045A1 (en) * 2015-03-27 2016-10-06 International Business Machines Corporation Media key block based broadcast encryption

Also Published As

Publication number Publication date
KR101967521B1 (en) 2019-08-13

Similar Documents

Publication Publication Date Title
KR100737876B1 (en) The hierarchial threshold tree-based broadcast encryption method
JP5365072B2 (en) KEY GENERATION DEVICE, ENCRYPTION DEVICE, RECEPTION DEVICE, KEY GENERATION METHOD, ENCRYPTION METHOD, KEY PROCESSING METHOD, AND PROGRAM
US10411885B2 (en) Method and system for group-oriented encryption and decryption with selection and exclusion functions
CN108183791B (en) Intelligent terminal data security processing method and system applied to cloud environment
CN109543439B (en) Service request method and device for Internet of vehicles
CN110120871B (en) Broadcast encryption method and system with fixed private key and ciphertext length
JP2016158189A (en) Change direction with key control system and change direction with key control method
JP5093513B2 (en) Unauthorized person revocation system, encryption device, encryption method and program
Vijayakumar et al. An effective key distribution for secure internet pay‐TV using access key hierarchies
US8625784B2 (en) Broadcast encryption method and broadcast decryption method thereof
JP2014530554A (en) Group secret management by group members
KR101308023B1 (en) Broadcast encryption method for securing recipient privacy
KR20090127716A (en) Method of tracing device keys for broadcast encryption
Xu et al. An identity-based (IDB) broadcast encryption scheme with personalized messages (BEPM)
KR101533950B1 (en) Broadcast encryption method and system
KR101494510B1 (en) Apparatus and method for managing group key, recording medium thereof
KR101967521B1 (en) Broadcast encryption and decryption method based on subset difference
JP5457979B2 (en) Conditional reception system, message distribution device, message reception device, message distribution program, and message reception program
JP2007189597A (en) Encryption device, encryption method, decoding device, and decoding method
KR101812311B1 (en) User terminal and data sharing method of user terminal based on attributed re-encryption
KR101530107B1 (en) Method of generate a private key in a boneh-franklin scheme
KR101865703B1 (en) Apparatus and method for generating key, apparatus and method for encryption
KR101507340B1 (en) Aparatus for broadcast encryption and broadcast decryption and method for the same
KR101306211B1 (en) Method for broadcast encryption based on identification number
KR101856349B1 (en) Broadcast encryption method and Broadcast decoding method for generating simplified header

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