KR101951545B1 - 와일드 카드를 포함하는 키 발급, 암호화 및 복호화 방법 - Google Patents

와일드 카드를 포함하는 키 발급, 암호화 및 복호화 방법 Download PDF

Info

Publication number
KR101951545B1
KR101951545B1 KR1020170044716A KR20170044716A KR101951545B1 KR 101951545 B1 KR101951545 B1 KR 101951545B1 KR 1020170044716 A KR1020170044716 A KR 1020170044716A KR 20170044716 A KR20170044716 A KR 20170044716A KR 101951545 B1 KR101951545 B1 KR 101951545B1
Authority
KR
South Korea
Prior art keywords
key
secret
pattern
secret key
wildcard
Prior art date
Application number
KR1020170044716A
Other languages
English (en)
Other versions
KR20180113323A (ko
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 KR1020170044716A priority Critical patent/KR101951545B1/ko
Publication of KR20180113323A publication Critical patent/KR20180113323A/ko
Application granted granted Critical
Publication of KR101951545B1 publication Critical patent/KR101951545B1/ko

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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

와일드 카드를 포함하는 키 발급, 암호화 및 복호화 방법이 개시된다. 특정 계층에 대한 와일드 카드를 포함하는 키 발급 방법은 적어도 하나의 그룹 엘리먼트를 선택하는 단계; 복수의 랜덤값을 선택하는 단계; 상기 선택된 그룹 엘리먼트에 대한 키 패턴을 구성하는 단계; 및 상기 복수의 랜덤값 및 공개키를 이용하여 상기 키 패턴에 대한 비밀키 리스트를 생성하는 단계를 포함하되, 상기 비밀키 리스트는 상기 키 패턴에 포함된 복수의 키 중 적어도 하나가 와일드카드로 각각 대체하여 조합 가능한 모든 매칭 패턴 구성이 가능한 비밀키와 보완키를 포함한다.

Description

와일드 카드를 포함하는 키 발급, 암호화 및 복호화 방법{Wildcard identity-based key derivation, encryption and decryption method}
본 발명은 와일드 카드를 포함하는 키 발급, 암호화 및 복호화 방법에 관한 것이다.
종래 기술로는, D. Boneh, X. Boyen, and E.-J. Goh. Hierarchical identity based encryption with constant size ciphertext. In Annual International Conference on the Theory and Applications of Cryptographic Techniques, pages 440-456, Springer, 2005가 있다.
상술한 종래 기술은 유저가 자신의 하위 계층에게 키를 발급해줄 수 있는 암호화 기법이다. 하지만 이 기법에서는 각각의 유저에 대한 아이디가 정해져 있기 때문에 이를 포괄하는 표현법(와일드카드: *)은 사용할 수 없어 키 발급이 항상 지정된 유저에게만 수행되는 단점이 있다.
본 발명은 특정 계층에 대해 와일드카드를 포함하는 키를 발급할 수 있는 와일드 카드를 포함하는 키 발급, 암호화 및 복호화 방법을 제공하기 위한 것이다.
또한, 본 발명은 암호화할 대 특정 계층들을 대상으로 와일드 카드를 포함하여 암호화할 수 있는 와일드 카드를 포함하는 키 발급, 암호화 및 복호화 방법을 제공하기 위한 것이다.
또한, 본 발명은 비밀키 크기를 O(L)로 유지하면서도 키 발급 및 암호문 생성에 모두 와일드카드가 포함되도록 할 수 있는 와일드 카드를 포함하는 키 발급, 암호화 및 복호화 방법을 제공하기 위한 것이다.
본 발명의 일 측면에 따르면, 와일드 카드를 포함하는 키 발급, 암호화 및 복호화 방법이 제공된다.
본 발명의 일 실시예에 따르면, 적어도 하나의 그룹 엘리먼트를 선택하는 단계; 복수의 랜덤값을 선택하는 단계; 상기 선택된 그룹 엘리먼트에 대한 키 패턴을 구성하는 단계; 및 상기 복수의 랜덤값 및 공개키를 이용하여 상기 키 패턴에 대한 비밀키 리스트를 생성하는 단계를 포함하되, 상기 비밀키 리스트는 상기 키 패턴에 포함된 복수의 키 중 적어도 하나가 와일드카드로 각각 대체하여 조합 가능한 모든 매칭 패턴 구성이 가능한 비밀키와 보완키를 포함하는 것을 특징으로 하는 것을 특징으로 하는 키 발급 방법이 제공될 수 있다.
상기 비밀키 리스트는 상기 대체키를 동적으로 변경하여 감추기 위한 은닉키를 포함할 수 있다.
상기 은닉키는 공개키를 지정된 소수의 위수에 대한 바이너리 그룹 중 랜덤하게 선택된 랜덤키로 승수 연산한 값일 수 있다.
상기 비밀키는 상기 키 패턴에 포함된 각 키에 대한 대체키에 대한 비밀키이고, 상기 보완키는 상기 각 키 위치에 대한 와일드카드에 대한 대체키에 대한 보완키일 수 있다.
상기 보완키는 상기 키 패턴의 각 키의 비밀키와 페어로 구성되되, 상기 각 키에 대한 보완키는 페어로 구성된 비밀키와의 곱 연산을 통해 해당 키의 비밀키를 소거하여 페어를 구성하는 키에 대한 와일드카드 구성이 가능케 할 수 있는 키일 수 있다.
본 발명의 다른 실시예에 따르면, 랜덤값을 선택하는 단계; 키 패턴 중 제1 키에 대응하는 비밀키와 공개키를 이용하여 제1 암호키를 생성하는 단계; 상기 키 패턴 중 와일드카드 위치에 해당하는 제2 키에 상응하는 대체키와 상기 공개키를 이용하여 제2 암호키를 생성하는 단계; 상기 공개키를 이용하여 메시지를 암호화하여 제3 암호키를 생성하는 단계; 및 상기 제1 암호키, 상기 제2 암호키 및 제3 암호키를 포함하는 암호문 패턴을 생성하는 단계를 포함하는 암호화 방법이 제공될 수 있다.
상기 제1 키 및 상기 제2 키는 복수일 수 있다.
상기 랜덤값은 복수의 위수(prime order) 중 어느 하나로 선택될 수 있다.
본 발명의 또 다른 실시예에 따르면, 적어도 하나의 특정 키 위치에 대한 와일드카드에 상응하는 암호키를 포함하는 암호문 패턴을 수신하는 단계; 비밀키 리스트에서 키 패턴 중 각 키의 비밀키와 상기 비밀키와 페어인 보완키를 이용하여 상기 각 키에 대응하는 와일드카드에 상응하는 매칭키를 구성하는 단계; 및 상기 매칭키와 상기 암호키가 일치하는 경우, 상기 비밀키 리스트를 이용하여 암호문 패턴을 해독하는 단계를 포함하는 복호화 방법이 제공될 수 있다.
상기 매칭키를 구성하는 단계는, 상기 비밀키 리스트에서 상기 키 패턴 중 각 키의 비밀키 및 상기 비밀키와 페어로 구성된 보완키의 곱 연산을 통해 페어를 구성하는 비밀키를 제거함으로 해당 키의 위치의 와일드카드에 상응하는 매칭키를 계산할 수 있다.
상기 암호키 및 상기 매칭키는, 상기 각 키의 와일드카드를 대체한 대체키를 지정된 소수의 위수에 대한 바이너리 그룹 중 랜덤하게 선택된 랜덤키로 승수한 값이다.
본 발명의 일 실시예에 따른 와일드 카드를 포함하는 키 발급, 암호화 및 복호화 방법을 제공함으로써, 특정 계층에 대해 와일드카드를 포함하는 키를 발급할 수 있는 와일드 카드를 포함하도록 할 수 있다.
또한, 본 발명은 암호화할 대 특정 계층들을 대상으로 와일드 카드를 포함하여 암호화할 수 있는 와일드 카드를 포함하도록 할 수 있다.
또한, 본 발명은 비밀키 크기를 O(L)로 유지하면서도 키 발급 및 암호문 생성에 모두 와일드카드가 포함되도록 할 수 있으며, 이를 통해 다른 계층에 속한 유저들에게 더욱 편하게 암호문을 전달하고 키를 전달할 수 있다.
도 1은 본 발명의 일 실시예에 따른 암호화 시스템의 개략적인 구성을 도시한 도면.
도 2는 본 발명의 일 실시예에 따른 키 발급 방법을 나타낸 순서도.
도 3은 본 발명의 일 실시예에 따른 특정 계층에 대한 와일드카드를 포함하여 암호화하는 방법을 나타낸 순서도.
도 4는 본 발명의 일 실시예에 따른 특정 계층에 대한 와일드카드를 포함하는 암호문 패턴을 복호하는 방법을 나타낸 순서도.
본 명세서에서 사용되는 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "구성된다" 또는 "포함한다" 등의 용어는 명세서상에 기재된 여러 구성 요소들, 또는 여러 단계들을 반드시 모두 포함하는 것으로 해석되지 않아야 하며, 그 중 일부 구성 요소들 또는 일부 단계들은 포함되지 않을 수도 있고, 또는 추가적인 구성 요소 또는 단계들을 더 포함할 수 있는 것으로 해석되어야 한다. 또한, 명세서에 기재된 "...부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
본 발명은 계층적 구조적 아이디 기반 암호화에 관한 것으로, 상위 계층의 유저가 하위 계층의 유저에게 키를 발급시 와일드카드를 허용하여 키를 발급하고, 암호화하도록 할 수 있다. 즉, 본 발명은 상위 계층의 유저가 하위 계층의 유저에게 키를 발급시 (한국대학교, *, *)와 같이 특정 계층에 대해 와일드카드를 포함하여 키를 발급하도록 할 수 있다. 또한, 본 발명은 암호화시 (*, 컴퓨터공학부, *)와 같이 특정 계층들을 대상으로 와일드카드를 포함하여 암호화를 수행하도록 할 수 있다. 여기서, 와일드카드는 특정 값으로 제한되는 것이 아니라 모든 값을 포함하는 값을 의미한다. 이는 이하의 설명에 의해 보다 명확하게 이해될 것이다.
이하, 첨부된 도면들을 참조하여 본 발명의 실시예를 상세히 설명한다.
도 1은 본 발명의 일 실시예에 따른 암호화 시스템의 개략적인 구성을 도시한 도면이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 암호화 시스템(100)은 하나의 전송 장치인 제1 사용자 디바이스(110) 및 복수의 수신 장치인 제2 사용자 디바이스(120)를 포함한다.
본 발명의 일 실시예에 따른 암호화 시스템(100)은 공개키 기반 방식의 브로드캐스트 암호화/복호화 기법을 사용하므로 시스템(100)을 구성하는 각 사용자 디바이스는 모든 브로드캐스트 신호를 전송 및 수신할 수 있다. 이하에서는 이해와 설명의 편의를 도모하기 위해 전송 장치로 동작하는 사용자 디바이스를 제1 사용자 디바이스로 통칭하며 수신 장치로 동작하는 사용자 디바이스를 제2 사용자 디바이스로 통칭하여 설명하기로 한다.
또한, 제1 사용자 디바이스(110)는 특정 계층에 대해 와일드카드를 포함하는 키를 발급할 수 있으며, 암호화할 대 특정 계층들을 대상으로 와일드 카드를 포함하여 암호화할 수 있다.
또한, 제1 사용자 디바이스(110)는 키 발급과 암호문 생성시 와일드카드가 포함된 위치들을 모두 곱으로 연산할 수 있다. 이에 대해서는 하기에서 관련 도면을 참조하여 보다 상세히 설명하기로 한다.
또한, 제2 사용자 디바이스(120)는 와일드카드가 요구하는 계층에 포함된 유저인 경우 비밀키 리스트를 이용하여 상술한 곱 연산을 통해 매칭키를 그대로 만들어 낸 후 암호문을 복호할 수 있다.
이에 대해서도 하기에서 보다 상세히 설명하기로 한다.
이해와 설명의 편의를 도모하기 위해 본 발명의 기본 아이디어에 대해 우선 설명하기로 한다.
예를 들어, 본 발명은 *@cs.univ.edu, chair@*.univ.edu, chair@cs.*.edu, chair@*.*.edu 등과 같이 특정 계층에 와일드카드를 포함하여 키를 발급하고 암호화할 수 있다. 이때 본 발명은 비밀키 크기를 O(L)로 유지하면서 비밀키를 발급하고 암호문을 생성할 수 있는 것에 주요 특징이 있다.
이를 위한 예를 간단하게 설명하기로 한다.
이해와 설명의 편의를 도모하기 위해 본 발명의 일 실시예에 따른 사용자 디바이스가 (ID1, ID2)와 같이 키 패턴을 가지고 있다고 가정하자. 사용자 디바이스가 상술한 키 패턴을 가지고 있는 경우, 가능한 매칭 패턴은 (ID1, ID2), (ID1, *), (*,ID2), (*, *)와 같이 구성될 수 있다. 즉, 키 패턴의 특정 키 계층에 와일드카드를 포함하는 경우 조합 가능한 모든 경우의 수에 따른 매칭 패턴은 상술한 바와 같이 구성될 수 있다.
와일드카드(*)를 유일한 식별자(x)로 취급하는 경우, 4개의 비밀키가 생성될 수 있으며, 사용자는 비밀키 리스트로부터 적정한 비밀키를 선택하여 암호문을 해독할 수 있다. 그러나 이와 같은 경우, 암호화 알고리즘은 수정될 필요가 없으나, 그 크기를 유지하는 것은 복잡하다. 또한, 이는 비밀키 크기를 2L까지 증가시키므로, 사용되기에는 비실용적이다.
이러한 비밀키 크기 이슈를 해결하기 위해, 본 발명은 ID 문자열과 와일드카드를 각각 대체할 수 있도록 패턴 표현을 다시 작성하여 이용할 수 있다.
본 발명의 일 실시예에 따르면 각각의 레벨을 위한 보완-페어(이하에서는 보완키라 칭하기로 함)가 주어지고 원래의 ID 문자열은 다른 대체키로 변경한다.
예를 들어, (ID1, ID2)의 키 패턴은 (
Figure 112017033818319-pat00001
,
Figure 112017033818319-pat00002
)와 같이 대체키를 이용하여 대체될 수 있다. 각 키의 와일드카드는 순차적인 순서가 없으므로 유일한 엘리먼트로써 표현되어야 한다. 이를 위해, 각 레벨의 와일드카드를 해독하기 위해, 각 키(엘리먼트)를 h1, h2로 대체하였다고 가정하자.
이와 같은 경우, (ID1, ID2) 키 패턴의 각 키(엘리먼트)들의 조합 가능한 매칭 패턴은 (
Figure 112017033818319-pat00003
,
Figure 112017033818319-pat00004
), (
Figure 112017033818319-pat00005
, h2), (h1,
Figure 112017033818319-pat00006
),(h1, h2)와 같이 묘사될 수 있다.
이와 같이 ID 문자열 및 와일드카드를 별도의 대체키로 표현하는 경우, 어떤 레벨의 특정 ID 엘리먼트의 와일드카드는 곱 연산을 통해 대체될 수 있다. 이와 같은 경우, 파라미터의 수는 최대 깊이에 선형적으로 종속되므로, 키의 다항식 개수를 포함하는 스킴을 가지는 것을 가능하다.
그러나, 와일드카드에 의한 특정 IDi에 의해 주어지는 보완키는 매칭 패턴을 넘어 다른 키를 생성하는데 악용될 수 있다.
예를들어, 비밀키 리스트가 다음과 같이 주어진다고 가정하자.
Figure 112017033818319-pat00007
Figure 112017033818319-pat00008
여기서,
Figure 112017033818319-pat00009
,
Figure 112017033818319-pat00010
은 패턴(ID1, ID2), (x, ID2), (ID1, x), (x, x)을 위한 비밀키일 수 있다.
이때, 보완키는
Figure 112017033818319-pat00011
,
Figure 112017033818319-pat00012
과 같이 계산될 수 있다.
이로 인해, 사용자는 모든 비밀키 리스트를 가지고 있지 않더라도 매칭 패턴 내의 모든 가능한 키를 생성할 수 있게 된다.
예를 들어,
Figure 112017033818319-pat00013
를 위한 비밀키가 다음과 같이 추출될 수 있다.
Figure 112017033818319-pat00014
이러한 문제를 극복하기 위해, 본 발명의 일 실시예에서는 와일드카드의 대체키를 동적으로 변경할 수 있도록 다른 랜덤 파라미터를 이용한다.
예를 들어, 와일드카드 대체키가 x라고 가정하자. x=
Figure 112017033818319-pat00015
이라고 가정하기로 한다. 여기서, r 및 t는 랜덤값이다. 따라서, 본 발명의 일 실시예에서는 t는 직접 노출하는 대신에 단지
Figure 112017033818319-pat00016
(이하에서는 편의상 이를 은닉키라 칭하기로 함)를 알린다. 여기서, g는 공개키이고, r, t는 소수의 위수에 대한 바이너리 그룹에서 선택된 랜덤값이므로 정당한 권한을 가진 사용자는
Figure 112017033818319-pat00017
를 계산할 수 있다.
따라서,
Figure 112017033818319-pat00018
,
Figure 112017033818319-pat00019
이다.
예를 들어, 제1 사용자 디바이스가 chair@*.*.edu와 같이 특정 계층을 와일드카드를 포함하도록 암호문 패턴을 암호화하여 브로드캐스트하였다고 가정하다. 이와 같은 경우, 암호문 패턴은 상술한 바에 따라 h2 s, h3 s를 포함할 수 있다.
이와 같은 경우, alice라는 ID를 사용하는 사용자가 (chair, cs, univ, edu)와 같이 키 패턴을 가지고 있다고 가정하기로 한다. 이때, alice는 다음과 같은 비밀키 리스트를 가지게 된다.
Figure 112017033818319-pat00020
따라서, alice는 각 키 패턴에 포함되는 각 키의 비밀키와 각 키에 대한 보완키의 곱 연산을 통해 각 키에 대한 와일드카드에 대한 대체키를 구성할 수 있게 된다.
이하에서는 특정 계층에 대해 와일드카드를 포함하는 키 발급, 암호화 및 복호화 방법에 대해 설명하기로 한다.
도 2는 본 발명의 일 실시예에 따른 키 발급 방법을 나타낸 순서도이다.
이하에서는 L 계층으로 아이디 또는 패턴이 구성되는 것을 가정하기로 한다. 상위 계층은 하위 계층을 포괄할 수 있음은 당연하다.
또한, 각 계층의 각 아이디 또는 각 패턴은 l(자연수) 비트 길이를 가지는 것을 가정하기로 한다.
또한, 본 명세서에서는 이해와 설명의 편의를 도모하기 위해 제1 사용자 디바이스가 제2 사용자 디바이스보다 상위 계층인 것을 가정하기로 한다. 따라서, 제1 사용자 디바이스가 복수의 제2 사용자 디바이스에 상응하여 특정 계층(ID 계층)에 대한 와일드카드를 포함하여 키를 발급하는 것을 가정하여 이를 중심으로 설명하기로 한다.
단계 210에서, 제1 사용자 디바이스(110)는 랜덤 값(
Figure 112017033818319-pat00021
)과 O(L) 랜덤 그룹 엘리먼트(
Figure 112017033818319-pat00022
)를 선택한다.
여기서,
Figure 112017033818319-pat00023
는 랜덤값인 소수 p에 대한 잉여계를 나타내며,
Figure 112017033818319-pat00024
는 소수(prime) p의 위수(order)에 대한 바이너리 그룹을 나타낸다. 또한,
Figure 112017033818319-pat00025
Figure 112017033818319-pat00026
에 대한 생성자를 나타낸다.
단계 215에서, 제1 사용자 디바이스(110)는
Figure 112017033818319-pat00027
를 계산한다.
그리고, 단계 220에서 제1 사용자 디바이스(110)는 수학식 1과 같이 표현되는 마스터 공개키(mpk)를 선택한다.
Figure 112017033818319-pat00028
단계 225에서 제1 사용자 디바이스(110)는 수학식 2와 같이 정의되는 마스터 비밀키(msk)를 생성한다.
Figure 112017033818319-pat00029
단계 230에서, 제1 사용자 디바이스(110)는 마스터 공개키, 마스터 비밀키 중 적어도 하나를 이용하여 패턴에 대한 비밀키 리스트를 계산하기 위해 두개의 랜덤값(
Figure 112017033818319-pat00030
)을 선택하고, 수학식 3과 같이 비밀키 리스트를 구성한다.
이해와 설명의 편의를 도모하기 위해,
Figure 112017033818319-pat00031
를 신규 타겟 패턴이라 칭하기로 하며,
Figure 112017033818319-pat00032
를 타겟 비밀키 리스트라 칭하기로 한다.
제1 사용자 디바이스(110)는 새로운 타겟 패턴(
Figure 112017033818319-pat00033
)에 대한 타겟 비밀키 리스트(
Figure 112017033818319-pat00034
) 생성을 위해, 패턴(P)에 대한 비밀키 리스트(
Figure 112017033818319-pat00035
)를 가지고 있는 것을 가정하기로 한다.
제1 사용자 디바이스(110)는 비밀키 리스트(
Figure 112017033818319-pat00036
)를 이용하여 타겟 패킷(
Figure 112017033818319-pat00037
)에 대한 타겟 비밀키 리스트를 파생할 수 있다. 루트 ID의 비밀키는 마스터 비밀키(
Figure 112017033818319-pat00038
)와 같다.
여기서, 패턴(P)는 길이가
Figure 112017033818319-pat00039
이며
Figure 112017033818319-pat00040
인 벡터이며, *는 와일드 카드 심볼을 나타내고, L은 이미 전술한 바와 같이, 최대 뎁스를 나타낸다.
또한, 타겟 패턴(
Figure 112017033818319-pat00041
)는 패턴(P)에 포함되는 하위 계층의 패턴이며,
Figure 112017033818319-pat00042
과 같이 나타내기로 한다.
Figure 112017033818319-pat00043
,
Figure 112017033818319-pat00044
Figure 112017033818319-pat00045
인 경우에만
Figure 112017033818319-pat00046
일 수 있다.
또한, 하기에서, 타겟 패턴(
Figure 112017033818319-pat00047
)가 패턴 P에 매치되는 경우,
Figure 112017033818319-pat00048
와 같이 나타낼 수 있다. 또한,
Figure 112017033818319-pat00049
인 경우,
Figure 112017033818319-pat00050
Figure 112017033818319-pat00051
일 수 있다.
타겟 패턴(
Figure 112017033818319-pat00052
)의 타겟 비밀키 리스트(
Figure 112017033818319-pat00053
)는 수학식 3과 같이 구성될 수 있다.
Figure 112017033818319-pat00054
이어, 패턴(P)에 대한 비밀키 리스트(
Figure 112017033818319-pat00055
)로부터 신규 타겟 패턴(
Figure 112017033818319-pat00056
)에 대한 비밀키 리스트(
Figure 112017033818319-pat00057
)를 생성하기 위해, 제1 사용자 디바이스(110)는 두개의 랜덤값(
Figure 112017033818319-pat00058
)을 선택한 후 수학식 4와 같이 비밀키 리스트(
Figure 112017033818319-pat00059
)를 출력한다(235).
Figure 112017033818319-pat00060
도 3은 본 발명의 일 실시예에 따른 특정 계층에 대한 와일드카드를 포함하여 암호화하는 방법을 나타낸 순서도이다.
단계 310에서 제1 사용자 디바이스(110)는 랜덤값(
Figure 112017033818319-pat00061
)을 선택한다.
단계 315에서 제1 사용자 디바이스(110)는 랜덤값을 이용하여 키 패턴 중 특정 계층에 대한 와일드카드를 포함하여 암호문 패턴(
Figure 112017033818319-pat00062
)을 계산한다.
이를 수학식으로 나타내면 수학식 5와 같다.
Figure 112017033818319-pat00063
여기서,
Figure 112017033818319-pat00064
는 키 패턴(P)에서 모든 비-와일드카드 인덱스를 포함하는 집합을 나타내고,
Figure 112017033818319-pat00065
는 키 패턴(P)에서 모든 와일드카드 인덱스를 포함하는 집합을 나타내며, m은 암호화할 메시지를 나타낸다.
도 4는 본 발명의 일 실시예에 따른 특정 계층에 대한 와일드카드를 포함하는 암호문 패턴을 복호하는 방법을 나타낸 순서도이다.
이하에서는 제2 사용자 디바이스(120)가 특정 계층에 대한 와일드카드를 포함하는 암호문 패턴을 수신한 후 이를 복호하는 방법에 대해 설명하기로 한다. 제2 사용자 디바이스(120)는 자신의 키 패턴에 상응하는 비밀키 리스트 및 공개키를 가지고 있는 것을 가정하기로 한다.
단계 410에서 제2 사용자 디바이스(120)는 적어도 하나의 특정 키 위치에 대한 와일드카드를 포함하는 암호키를 포함하는 암호문 패턴을 수신한다.
단계 415에서 제2 사용자 디바이스(120)는 비밀키 리스트를 이용하여 암호문 패턴을 복호하기 위해
Figure 112017033818319-pat00066
Figure 112017033818319-pat00067
을 계산한다.
즉, 제2 사용자 디바이스(120)는 비밀키 리스트를 이용하여 키 패턴 중 일부 키 위치에 대한 와일드카드를 포함하는 매칭키를 구성할 수 있다.
단계 420에서 제2 사용자 디바이스(120)는 매칭키가 구성되면, 비밀키 리스트를 이용하여 수학식 5와 같이 암호문 패턴을 해독하여 메시지를 출력한다.
Figure 112017033818319-pat00068
보다 상세히 설명하면, 암호문 패턴의 복호화를 위해, 를 확인한다.
Figure 112017033818319-pat00070
에 대해
Figure 112017033818319-pat00071
이고,
Figure 112017033818319-pat00072
Figure 112017033818319-pat00073
이다.
Figure 112017033818319-pat00074
이면,
Figure 112017033818319-pat00075
이다.
만일
Figure 112017033818319-pat00076
이면,
Figure 112017033818319-pat00077
이고,
Figure 112017033818319-pat00078
Figure 112017033818319-pat00079
이다.
또한, 만일
Figure 112017033818319-pat00080
이면,
Figure 112017033818319-pat00081
이고,
Figure 112017033818319-pat00082
Figure 112017033818319-pat00083
이다.
Figure 112017033818319-pat00084
이므로,
Figure 112017033818319-pat00085
이다.
상술한 본 발명에 따른 특정 계층에 와일드카드를 포함하는 키 발급, 암호화 및 복호화 방법은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로서 구현되는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체로는 컴퓨터 시스템에 의하여 해독될 수 있는 데이터가 저장된 모든 종류의 기록 매체를 포함한다. 예를 들어, ROM(Read Only Memory), RAM(Random Access Memory), 자기 테이프, 자기 디스크, 플래쉬 메모리, 광 데이터 저장장치 등이 있을 수 있다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 통신망으로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 읽을 수 있는 코드로서 저장되고 실행될 수 있다.
상기한 본 발명의 실시예는 예시의 목적을 위해 개시된 것이고, 본 발명에 대한 통상의 지식을 가지는 당업자라면 본 발명의 사상과 범위 안에서 다양한 수정, 변경, 부가가 가능할 것이며, 이러한 수정, 변경 및 부가는 하기의 특허청구범위에 속하는 것으로 보아야 할 것이다.
110: 제1 사용자 디바이스
120: 제2 사용자 디바이스

Claims (12)

  1. 적어도 하나의 그룹 엘리먼트를 선택하는 단계;
    복수의 랜덤값을 선택하는 단계;
    상기 선택된 그룹 엘리먼트에 대한 키 패턴을 구성하는 단계; 및
    상기 복수의 랜덤값 및 공개키를 이용하여 상기 키 패턴에 대한 비밀키 리스트를 생성하는 단계를 포함하되,
    상기 비밀키 리스트는 상기 키 패턴에 포함된 복수의 키 중 적어도 하나가 와일드카드로 각각 대체하여 조합 가능한 모든 매칭 패턴 구성이 가능한 비밀키와 보완키를 포함하되,
    상기 보완키는 상기 키 패턴의 각 키의 비밀키와 페어로 구성되되,
    상기 각 키에 대한 보완키는 페어로 구성된 비밀키와의 곱 연산을 통해 해당 키의 비밀키를 소거하여 페어를 구성하는 키에 대한 와일드카드 구성이 가능케 할 수 있는 키인 것을 특징으로 하는 키 발급 방법.
  2. 제1 항에 있어서,
    상기 비밀키 리스트는 대체키를 동적으로 변경하여 감추기 위한 은닉키를 포함하는 것을 특징으로 하는 키 발급 방법.
  3. 제2 항에 있어서,
    상기 은닉키는 공개키를 지정된 소수의 위수에 대한 바이너리 그룹 중 랜덤하게 선택된 랜덤키로 승수 연산한 값인 것을 특징으로 하는 키 발급 방법.
  4. 제1 항에 있어서,
    상기 비밀키는 상기 키 패턴에 포함된 각 키에 대한 대체키에 대한 비밀키이고, 상기 보완키는 상기 각 키 위치에 대한 와일드카드에 대한 대체키에 대한 보완키인 것을 특징으로 하는 키 발급 방법.
  5. 삭제
  6. 랜덤값을 선택하는 단계;
    키 패턴 중 제1 키에 대응하는 비밀키와 공개키를 이용하여 제1 암호키를 생성하는 단계;
    상기 키 패턴 중 특정 키 계층의 와일드카드 위치에 해당하는 제2 키에 상응하는 대체키와 상기 공개키를 이용하여 제2 암호키를 생성하는 단계;
    상기 공개키를 이용하여 메시지를 암호화하여 제3 암호키를 생성하는 단계; 및
    상기 제1 암호키, 상기 제2 암호키 및 제3 암호키를 포함하는 암호문 패턴을 생성하는 단계를 포함하는 암호화 방법
  7. 제6 항에 있어서,
    상기 제1 키 및 상기 제2 키는 복수인 것을 특징으로 하는 암호화 방법.
  8. 제6 항에 있어서,
    상기 랜덤값은 복수의 위수(prime order) 중 어느 하나로 선택되는 것을 특징으로 하는 암호화 방법.
  9. 적어도 하나의 특정 키 위치에 대한 와일드카드에 상응하는 암호키를 포함하는 암호문 패턴을 수신하는 단계;
    비밀키 리스트에서 키 패턴 중 각 키의 비밀키와 상기 비밀키와 페어인 보완키를 이용하여 상기 각 키에 대응하는 와일드카드에 상응하는 매칭키를 구성하는 단계; 및
    상기 매칭키와 상기 암호키가 일치하는 경우, 상기 비밀키 리스트를 이용하여 암호문 패턴을 해독하는 단계를 포함하되,
    상기 매칭키를 구성하는 단계는,
    상기 비밀키 리스트에서 상기 키 패턴 중 각 키의 비밀키 및 상기 비밀키와 페어로 구성된 보완키의 곱 연산을 통해 페어를 구성하는 비밀키를 제거함으로 해당 키의 위치의 와일드카드에 상응하는 매칭키를 계산하는 것을 특징으로 하는 복호화 방법.
  10. 삭제
  11. 제9 항에 있어서,
    상기 암호키 및 상기 매칭키는,
    상기 각 키의 와일드카드를 대체한 대체키를 지정된 소수의 위수에 대한 바이너리 그룹 중 랜덤하게 선택된 랜덤키로 승수한 값인 것을 특징으로 하는 복호화 방법.
  12. 제1 항 또는 제9 항에 따른 방법을 수행하기 위한 프로그램 코드를 기록한 기록매체 제품.

KR1020170044716A 2017-04-06 2017-04-06 와일드 카드를 포함하는 키 발급, 암호화 및 복호화 방법 KR101951545B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170044716A KR101951545B1 (ko) 2017-04-06 2017-04-06 와일드 카드를 포함하는 키 발급, 암호화 및 복호화 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170044716A KR101951545B1 (ko) 2017-04-06 2017-04-06 와일드 카드를 포함하는 키 발급, 암호화 및 복호화 방법

Publications (2)

Publication Number Publication Date
KR20180113323A KR20180113323A (ko) 2018-10-16
KR101951545B1 true KR101951545B1 (ko) 2019-02-22

Family

ID=64132581

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170044716A KR101951545B1 (ko) 2017-04-06 2017-04-06 와일드 카드를 포함하는 키 발급, 암호화 및 복호화 방법

Country Status (1)

Country Link
KR (1) KR101951545B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109495250A (zh) * 2018-12-03 2019-03-19 如般量子科技有限公司 基于密钥卡的抗量子计算智能家庭通信方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7295818B2 (ja) * 2020-02-06 2023-06-21 Kddi株式会社 暗号化装置、復号装置、暗号化方法及び暗号化プログラム

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Identity-Based Encryption Gone Wild(Abdalla, Michel, et al. International Cloooquim on Automata, Languages, and Programming Springer, Berlin, Heidelberg, 2006)*
Identity-Based Trace and Revoke Schemes(2011년)
Wildcarded Identity-Based Encryption(2011년)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109495250A (zh) * 2018-12-03 2019-03-19 如般量子科技有限公司 基于密钥卡的抗量子计算智能家庭通信方法
CN109495250B (zh) * 2018-12-03 2021-08-10 如般量子科技有限公司 基于密钥卡的抗量子计算智能家庭通信方法及系统

Also Published As

Publication number Publication date
KR20180113323A (ko) 2018-10-16

Similar Documents

Publication Publication Date Title
TWI374650B (en) Exponential data transform to enhance security
US10050777B2 (en) Method of updating a file tree stored on a storage server
WO2017097344A1 (en) Method for re-keying an encrypted data file
KR20060129934A (ko) 정보 처리 방법, 복호 처리 방법 및 정보 처리 장치와컴퓨터 프로그램
JP4162237B2 (ja) 複数の復号化装置に対し選択的にメッセージを配信する暗号化通信システム、暗号化装置、復号化装置、暗号化方法、復号化方法、暗号化プログラム、及び復号化プログラム
JP2016158189A (ja) 鍵付替え方向制御システムおよび鍵付替え方向制御方法
JP2006086568A (ja) 情報処理方法、復号処理方法、および情報処理装置、並びにコンピュータ・プログラム
JP4632413B2 (ja) 情報暗号化装置及び情報配信装置並びにそれらの制御方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
KR20090090308A (ko) 정보처리장치
CN106936820A (zh) 数据变长修改方法及其在大数据加密中的应用
KR101951545B1 (ko) 와일드 카드를 포함하는 키 발급, 암호화 및 복호화 방법
CN107070900B (zh) 基于混淆的可搜索重加密方法
JP2006115464A (ja) 情報処理方法、復号処理方法、および情報処理装置、並びにコンピュータ・プログラム
WO2016082857A1 (en) Method for encrypting data for distributed storage
CN109495478B (zh) 一种基于区块链的分布式安全通信方法及系统
JP2004120008A (ja) 鍵管理システム
JP2010160235A (ja) 検索システム、端末装置、データベース装置、検索方法及びプログラム
KR100561845B1 (ko) 애드 혹 망에서 멀티 레벨 접근 제어를 위한 데이터암호화 및 복호화 방법
KR101133988B1 (ko) 해쉬 트리 기반의 스트림 암호화 및 복호화 방법과 암호 파일 시스템
JP2005123678A (ja) 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム
Chang A flexible hierarchical access control mechanism enforcing extension policies
Zhou et al. Security and efficiency analysis of progressive audio scrambling in compressed domain
Ma et al. Secure media sharing in the cloud: Two-dimensional-scalable access control and comprehensive key management
KR20170103321A (ko) 보안성이 강화된 순서보존 암호화 방법 및 장치
KR101727691B1 (ko) Id 기반 수신자 제한 암호 서버 및 시스템

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