KR101732130B1 - 폐기 기능을 갖는 무한한 계층적 id 기반 서명 방법 - Google Patents

폐기 기능을 갖는 무한한 계층적 id 기반 서명 방법 Download PDF

Info

Publication number
KR101732130B1
KR101732130B1 KR1020150155080A KR20150155080A KR101732130B1 KR 101732130 B1 KR101732130 B1 KR 101732130B1 KR 1020150155080 A KR1020150155080 A KR 1020150155080A KR 20150155080 A KR20150155080 A KR 20150155080A KR 101732130 B1 KR101732130 B1 KR 101732130B1
Authority
KR
South Korea
Prior art keywords
terminal
key
signature
server
generating
Prior art date
Application number
KR1020150155080A
Other languages
English (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 KR1020150155080A priority Critical patent/KR101732130B1/ko
Application granted granted Critical
Publication of KR101732130B1 publication Critical patent/KR101732130B1/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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • 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/0891Revocation or update of secret information, e.g. encryption key update or rekeying

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

본 발명의 실시예에 따른 폐기 기능을 갖는 무한한 계층적 ID 기반 서명 방법은 서버와 복수의 단말기들로 이루어진 계층적 ID(Identity) 기반 서명 방법으로서, 상기 서버는 셋업(Setup)알고리즘을 이용하여 보안상수를 입력받아, 폐기목록, 상태정보, 공개상수 및 마스터키를 생성하는 단계, 상기 서버는 상기 복수의 단말기들 중 상기 서버의 하위레벨 단말기 중 제1단말기의 ID를 수신하여 상기 제1단말의 개인키를 생성하고, 상기 제1단말로 전송하는 단계, 상기 서버는 상기 폐기목록, 시간정보 및 마스터키를 이용하여 업데이트키를 생성하는 단계, 상기 제1단말은 상기 서버에서 전송받은 개인키와 상기 업데이트키를 이용하여 서명키를 생성하는 단계 및 상기 제1단말은 메시지와 상기 서명키, 시간정보 및 공개상수를 이용하여 서명(sign)알고리즘을 통해 서명을 생성하는 단계를 포함한다.

Description

폐기 기능을 갖는 무한한 계층적 ID 기반 서명 방법{METHOD FOR UNBOUNDED HIERARCHICAL IDENTITY-BASED SIGNATURE WITHEFFEICIENT REVOCATION}
본 발명은 계층적 ID 기반 서명 방법에 관한 것으로, 특히 계층적 ID 기반 서명 방법이 가지고 있던 계층의 한계를 없애 무한한 계층에 대한 키 발급이 가능하며, 시간에 따른 키 업데이트 기능을 이용하여 사용자의 키 폐기 여부 확인이 가능한 무한한 계층적 ID 기반 서명 방법에 관한 것이다.
공개키 기반 구조(Public Key Infrastructure, PKI)에 기반한 공개키 암호(Public Key Encryption) 시스템에서는 암호화키와 복호화키가 임의의 값(Random string or Random value)으로 존재하기 때문에 암호화키와 사용자의 관계를 인증할 수 있는 인증서(Certificate)가 필요하며, 인증서는 인증서 발급 기관(Central Authority)에 의해 발급된다. 데이터를 암호화하기 위해, 송신자는 수신자의 공개키와 공개키에 대한 인증서를 수신자로부터 미리 수신받아 키에 대한 검증을 수행한 후에 데이터를 암호화한다. 이와 같은 인증서 사용의 불편함을 해결하기 위하여 ID 기반 암호 시스템(Identity Based Encryption, IBE)이 개발되었다.
ID 기반 서명은 ID 기반 암호기법의 하나로서, 이메일 주소, IP 주소, 전화번호와 같이 사용자의 ID를 서명에 대한 검증키로 사용하는 서명기법이다. 서명자는 PKG(Private Key Generator)라는 비밀키 분배기관으로부터 자신의 ID와 대응되는 서명키를 발급받고 이를 이용해 서명을 생성한다. PKI 구조의 서명기법과 달리 ID 기반 서명은 메시지에 대한 서명을 검증하기 위해 인증서가 따로 필요하지 않다.
기존 ID 기반 서명 기법의 경우 하나의 PKG가 모든 사용자 각각에 대한 서명키를 생성하고, 사용자에게 안전하게 전달하기 위한 통신채널을 생성해야 하므로 과도한 부담이 발생했다. 계층적 ID 기반 서명은 이러한 문제를 해결하기 위해서 사용자간에 계층구조를 두고 각각의 사용자가 자신의 서명키를 이용하여 자신의 하위 사용자에 대해 서명키를 발급하는 PKG 역할을 하는 기법이다.
ID 기반 서명에서는 계약 기간이 만료되거나 개인키가 노출된 사용자의 키에 대한 효율적인 폐기 메커니즘을 제공해야 한다. 폐기 가능한 ID 기반 서명기법은 사용자가 등록과정에서 PKG로부터 개인키를 발급받고, 이후 주기적으로 PKG가 폐기되지 않은 키를 가진 사용자들에 대한 업데이트키를 발급하여 키가 폐기되지 않은 사용자들만 서명키를 생성할 수 있는 기법이다.
계층적 ID 기반 서명에서도 폐기 가능한 ID 기반 서명과 같이 계약 기간이 만료되거나 개인키가 노출된 사용자에 대한 효율적인 키 폐기메커니즘을 제공해야 한다. 계층적 ID 기반 서명에서도 폐기 기능을 제공하기 위해서는 사용자가 등록 과정에서 PKG나 상위 레벨의 사용자에게 개인키를 발급받고, 이후 주기적으로 PKG나 상위레벨의 사용자가 폐기되지 않은 키를 가진 사용자들에 대한 업데이트키를 발급하여 폐기되지 않은 정당한 사용자들만 서명키를 생성할 수 있다. 이러한 기법을 폐기 기능을 제공하는 계층적 ID기반 서명기법이라 한다.
대한민국 등록특허 제10-1233925호
본 발명이 이루고자 하는 기술적 과제는 무한한 계층에 대한 키 발급이 가능하며, 시간에 따른 업데이트 기능을 제공하여 사용자의 키를 효율적으로 폐기할 수 있는 폐기 기능을 갖는 무한한 계층적 ID 기반 서명 방법을 제공하는 것이다.
본 발명의 실시예에 따른 폐기 기능을 갖는 무한한 계층적 ID 기반 서명 방법은 서버와 복수의 단말기들로 이루어진 계층적 ID(Identity) 기반 서명 방법으로서, 상기 서버는 셋업(Setup)알고리즘을 이용하여 보안상수를 입력받아, 폐기목록, 상태정보, 공개상수 및 마스터키를 생성하는 단계, 상기 서버는 상기 복수의 단말기들 중 상기 서버의 하위레벨 단말기 중 제1단말기의 ID를 수신하여 상기 제1단말의 개인키를 생성하고, 상기 제1단말로 전송하는 단계, 상기 서버는 상기 폐기목록, 시간정보 및 마스터키를 이용하여 업데이트키를 생성하는 단계, 상기 제1단말은 상기 서버에서 전송받은 개인키와 상기 업데이트키를 이용하여 서명키를 생성하는 단계 및 상기 제1단말은 메시지와 상기 서명키, 시간정보 및 공개상수를 이용하여 서명(sign)알고리즘을 통해 서명을 생성하는 단계를 포함한다.
본 발명의 또 다른 실시예에 따른 폐기 기능을 갖는 무한한 계층적 ID 기반 서명 방법은 서버와 복수의 단말기들로 이루어진 계층적 ID(Identity) 기반 서명 방법으로서, 상기 서버는 셋업(Setup)알고리즘을 이용하여 보안상수를 입력받아, 폐기목록, 상태정보, 공개상수 및 마스터키를 생성하는 단계, 상기 서버는 상기 복수의 단말기들 중 상기 서버의 하위레벨 단말기 중 제1단말기의 ID를 수신하여 상기 제1단말의 개인키를 생성하고, 상기 제1단말로 전송하는 단계, 상기 서버는 서버가 관리하는 폐기목록, 시간정보 및 마스터키를 이용하여 제1업데이트키를 생성하는 단계, 상기 제1단말은 상기 서버에서 전송받은 제1단말의 개인키와 상기 제1업데이트키를 이용하여 제1서명키를 생성하는 단계, 상기 제1단말은 제1단말이 관리하는 폐기목록을 업데이트하는 단계, 상기 제1단말은 상기 제1단말이 관리하는 폐기목록과 시간정보 및 제1서명키를 이용하여 제2업데이트키를 생성하는 단계 및 상기 제1단말은 상기 제1단말의 하위레벨 단말기 중 제2단말기의 ID를 수신하여 상기 제2단말의 개인키를 생성하고, 상기 제2단말로 전송하는 단계를 포함한다.
본 발명의 실시예에 따른 폐기 기능을 갖는 무한한 계층적 ID 기반 서명 방법에 의할 경우, 공개상수의 개수가 설정되는 레벨에 관계없이 일정하므로, 일정한 공개 상수를 이용한 무한한 키 위임이 가능하다.
또한, 계층적 구조를 이용하여 키를 발급하기 때문에 하위 레벨을 효율적으로 관리, 폐기할 수 있다.
또한, 사용자의 서명키에 사용자의 ID와 함께 시간 정보가 포함되므로 서명을 검증함과 동시에 사용자의 키 폐기 여부도 검증이 가능하다.
도 1은 본 발명의 실시예에 따른 계층적 ID 기반 서명 방법의 순서도이다.
도 2는 본 발명의 또 다른 실시예에 따른 계층적 ID 기반 서명 방법의 순서도이다.
도 3은 본 발명의 또 다른 실시예에 따른 계층적 ID 기반 서명 방법의 개념도이다.
본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시 예들에 대해서 특정한 구조적 또는 기능적 설명은 단지 본 발명의 개념에 따른 실시 예들을 설명하기 위한 목적으로 예시된 것으로서, 본 발명의 개념에 따른 실시 예들은 다양한 형태들로 실시될 수 있으며 본 명세서에 설명된 실시 예들에 한정되지 않는다.
본 발명의 개념에 따른 실시 예들은 다양한 변경들을 가할 수 있고 여러 가지 형태들을 가질 수 있으므로 실시 예들을 도면에 예시하고 본 명세서에서 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 개념에 따른 실시 예들을 특정한 개시 형태들에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만, 예컨대 본 발명의 개념에 따른 권리 범위로부터 벗어나지 않은 채, 제1 구성 요소는 제2 구성 요소로 명명될 수 있고 유사하게 제2 구성 요소는 제1 구성 요소로도 명명될 수 있다.
어떤 구성 요소가 다른 구성 요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성 요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성 요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성 요소가 다른 구성 요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는 중간에 다른 구성 요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성 요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로서, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 본 명세서에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
본 발명에서는 폐기 기능을 제공하는 무한한 계층적 ID 기반 서명을 설계하기 위해 기존에 설계된 폐기 기능을 제공하는 무한한 계층적 ID 기반 암호기법인 [RLPL15] (G.Ryu, K.Lee, S.Park and D. H. Lee, Unbounded Hierarchical Identity-Based Encryption with Efficient Revocation, Cryptology ePrint Archieve, Report 2015/827, 2015. http://eprint.iacr.org/2015/827)을 이용하여 무한한 계층적 ID 기반 서명을 설계할 수 있다.
기존의 폐기 기능을 제공하는 무한한 계층적 ID 기반 암호 기법과 동일한 키 발급 메커니즘을 사용하여 키의 무한한 위임 및 폐기 기능을 제공할 수 있도록 하였다. 또한, 하위 사용자의 키를 생성하는 것과 비슷한 형태로 서명을 생성하도록 설계하여 암호 기법과는 다르게 서명을 생성할 수 있고, 암호 기법에서 암호문을 생성하던 것과 유사한 형태의 검증문을 만들어 서명을 검증할 수 있도록 기법을 설계하였다.
본 발명에 따른 폐기 가능한 계층적 ID 기반 서명기법은 셋업 알고리즘(Setup), 개인키 생성 알고리즘(PriKeyGen), 업데이트 키 생성 알고리즘(UpKeyGen), 복호화키 생성 알고리즘(DeriveKeyGen), 복호화키 재랜덤화 알고리즘(RandDK), 서명 알고리즘(Sign), 검증 알고리즘(Verify), 폐기 알고리즘(Revoke)을 이용하며, 이용되는 각 알고리즘은 다음과 같이 구성된다.
1.
Figure 112015107777436-pat00001
셋업 알고리즘은 보안 상수(
Figure 112015107777436-pat00002
)를 입력으로 받고, (비어있는) 폐기 목록(revocation list ;
Figure 112015107777436-pat00003
), 상태 정보(
Figure 112015107777436-pat00004
), 공개 상수(public parameter ;
Figure 112015107777436-pat00005
), 및 마스터키(
Figure 112015107777436-pat00006
)를 출력한다.
2.
Figure 112015107777436-pat00007
개인키 생성 알고리즘은 마스터키 사용자의 ID인
Figure 112015107777436-pat00008
, 상태 정보인
Figure 112015107777436-pat00009
, 및 공개 상수(
Figure 112015107777436-pat00010
)를 입력으로 받고,
Figure 112015107777436-pat00011
에 대한 개인키(
Figure 112015107777436-pat00012
)를 출력한다.
3.
Figure 112015107777436-pat00013
업데이트키 생성 알고리즘은 시간(
Figure 112015107777436-pat00014
),
Figure 112015107777436-pat00015
이 관리하는 폐기 목록(
Figure 112015107777436-pat00016
),
Figure 112015107777436-pat00017
과 시간(
Figure 112015107777436-pat00018
)에 대한 복화화키(
Figure 112015107777436-pat00019
),
Figure 112015107777436-pat00020
이 관리하는 상태 정보(
Figure 112015107777436-pat00021
), 및 공개 상수(
Figure 112015107777436-pat00022
)를 입력으로 받고,
Figure 112015107777436-pat00023
의 시간(
Figure 112015107777436-pat00024
)에서의 업데이트키(
Figure 112015107777436-pat00025
)를 출력한다.
4.
Figure 112015107777436-pat00026
복호화키 생성 알고리즘은
Figure 112015107777436-pat00027
의 개인키(
Figure 112015107777436-pat00028
),
Figure 112015107777436-pat00029
의 시간(
Figure 112015107777436-pat00030
)에서의 업데이트키(
Figure 112015107777436-pat00031
), 공개 상수(
Figure 112015107777436-pat00032
)를 입력으로 받고,
Figure 112015107777436-pat00033
의 시간(
Figure 112015107777436-pat00034
)에서의 서명키(
Figure 112015107777436-pat00035
)를 출력한다.
5.
Figure 112015107777436-pat00036
복호화키 재랜덤화 알고리즘은
Figure 112015107777436-pat00037
의 시간(
Figure 112015107777436-pat00038
)에서의 서명키(
Figure 112015107777436-pat00039
)와 공개 상수(
Figure 112015107777436-pat00040
)를 입력으로 받고, 재랜덤화된 복호화키(
Figure 112015107777436-pat00041
)를 출력한다.
6.
Figure 112015107777436-pat00042
서명 알고리즘은 사용자의 서명키(
Figure 112015107777436-pat00043
), 시간(
Figure 112015107777436-pat00044
), 메시지(
Figure 112015107777436-pat00045
), 및 공개 상수(
Figure 112015107777436-pat00046
)를 입력으로 받고,
Figure 112015107777436-pat00047
, 시간(
Figure 112015107777436-pat00048
), 및 메시지(
Figure 112015107777436-pat00049
)에 대한 서명(
Figure 112015107777436-pat00050
)을 출력한다.
7.
Figure 112015107777436-pat00051
검증 알고리즘은
Figure 112015107777436-pat00052
과 시간(
Figure 112015107777436-pat00053
)에 대한 메시지(
Figure 112015107777436-pat00054
)에 대한 서명(
Figure 112015107777436-pat00055
),
Figure 112015107777436-pat00056
와 시간(
Figure 112015107777436-pat00057
), 메시지(
Figure 112015107777436-pat00058
)과 공개 상수(
Figure 112015107777436-pat00059
)를 입력으로 받고, 서명이 검증되면 1을, 아닌 경우 0을 출력한다.
8.
Figure 112015107777436-pat00060
폐기 알고리즘은 폐기될 ID인
Figure 112015107777436-pat00061
, 시간(
Figure 112015107777436-pat00062
),
Figure 112015107777436-pat00063
이 관리하는 기존의 폐기 목록(
Figure 112015107777436-pat00064
),
Figure 112015107777436-pat00065
의 상태 정보(
Figure 112015107777436-pat00066
)를 입력으로 받고,
Figure 112015107777436-pat00067
의 새로운(갱신된) 폐기 목록(
Figure 112015107777436-pat00068
)을 출력한다.
또한, 본 발명에서 이용되는 노드 생성 알고리즘(
Figure 112015107777436-pat00069
)의 구체적인 내용은 다음과 같다. 노드 생성 알고리즘을 통하여 이진트리(
Figure 112015107777436-pat00070
) 상에서, 대응되는 업데이트키가 생성될 노드들의 집합(
Figure 112015107777436-pat00071
)을 구할 수 있다.
상기 노드들의 집합(
Figure 112015107777436-pat00072
)은 이진트리(
Figure 112015107777436-pat00073
), 폐기 목록(
Figure 112015107777436-pat00074
), 및 시간(
Figure 112015107777436-pat00075
)을 입력으로 하는 노드 생성 알고리즘(
Figure 112015107777436-pat00076
)을 이용하여 구할 수 있다. 알고리즘에 관한 구체적인 내용은 다음과 같다.
Figure 112015107777436-pat00077
상기 알고리즘 상에서
Figure 112015107777436-pat00078
는 노드(
Figure 112015107777436-pat00079
)의 폐기 시간을 의미하고, 노드(
Figure 112015107777436-pat00080
)는 노드(
Figure 112015107777436-pat00081
)의 왼쪽 자식 노드를 의미하고, 노드(
Figure 112015107777436-pat00082
)는 노드(
Figure 112015107777436-pat00083
)의 오른쪽 자식 노드를 의미한다. 이진트리(
Figure 112015107777436-pat00084
) 상에서 각각의 사용자는 말단 노드(leaf node)에 할당된다.
Figure 112015107777436-pat00085
는 노드(
Figure 112015107777436-pat00086
)에서부터 루트 노드, 즉 최상위 노드까지 경로 상에 위치한 노드들의 집합을 의미한다.
따라서, 시간(
Figure 112015107777436-pat00087
)에 집합(
Figure 112015107777436-pat00088
)에 포함된 노드들에 대응되는 업데이트키만이 생성되고, 폐기되지 않은 사용자들은, 자신의 노드로부터 루트 노드까지의 경로 상에 포함된 노드들 중 어느 하나의 노드가 집합(
Figure 112015107777436-pat00089
)에 포함되어 있으므로 시간(
Figure 112015107777436-pat00090
)에 복호화키를 생성할 수 있다.
이하 도면을 참고하여 본 발명의 실시예에 따른 계층적 ID 기반 서명 방법을 상세히 설명한다.
도 1은 본 발명의 실시예에 따른 계층적 ID 기반 서명 방법의 순서도이다.
도 1에 도시된 바와 같이 본 발명의 실시예에 따른 계층적 ID 기반 서명 방법은 서버와 복수의 단말기들로 이루어진 계층적 ID(Identity) 기반 서명 방법으로서, 상기 서버는 셋업(Setup)알고리즘을 이용하여 보안상수를 입력받아, 폐기목록, 상태정보, 공개상수 및 마스터키를 생성하는 단계(S10), 상기 서버는 상기 복수의 단말기들 중 상기 서버의 하위레벨 단말기 중 제1단말기의 ID를 수신하여 상기 제1단말의 개인키를 생성하고, 상기 제1단말로 전송하는 단계(S20), 상기 서버는 상기 폐기목록, 시간정보 및 마스터키를 이용하여 업데이트키를 생성하는 단계(S30), 상기 제1단말은 상기 서버에서 전송받은 개인키와 상기 업데이트키를 이용하여 서명키를 생성하는 단계(S40) 및 상기 제1단말은 메시지와 상기 서명키, 시간정보 및 공개상수를 이용하여 서명(sign)알고리즘을 통해 서명을 생성하는 단계(S50)를 포함한다.
셋업(Setup)알고리즘을 이용하여 보안상수를 입력받아, 폐기목록, 상태정보, 공개상수 및 마스터키를 생성하는 단계(S10)는 서버가 셋업 알고리즘을 수행하여 겹선형 함수
Figure 112015107777436-pat00091
Figure 112015107777436-pat00092
를 생성한다. 여기서,
Figure 112015107777436-pat00093
Figure 112015107777436-pat00094
의 생성원(generator)이고,
Figure 112015107777436-pat00095
Figure 112015107777436-pat00096
의 임의의 원소이다. 또한, 서버는
Figure 112015107777436-pat00097
에서 임의의
Figure 112015107777436-pat00098
를 선택하고, 선택된
Figure 112015107777436-pat00099
를 이용하여
Figure 112015107777436-pat00100
로 설정한다. 서버는 생성된 변수를 이용하여
Figure 112015107777436-pat00101
를 공개 상수로 공개하고,
Figure 112015107777436-pat00102
는 마스터키로 관리자가 관리하며, 사용자의 개인키를 생성할 때 사용된다.
기존의 폐기 기능을 제공하는 계층적 ID 기반 서명은 시스템 설정 단계에서 공개 상수에 레벨의 개수인 n 개의 원소가 설정되므로 처음 시스템 설정 단계에서 최대 계층의 개수가 정해진다. 이는 최대 계층만큼의 키 위임이 이루어진 이후에는 더 이상 키 위임을 할 수 없다는 제한을 의미하므로 이를 없애는 것은 매우 중요하다. 따라서 본 발명에서는 설정 단계에서 공개 상수를 일정하게 정해두지만 최대 계층은 정해지지 않는, 즉 무한한 키 위임이 가능하면서도 폐기 기능을 제공하는 계층적 ID 기반 서명을 제안한다.
상기 복수의 단말기들 중 상기 서버의 하위레벨 단말기 중 제1단말기의 ID를 수신하여 상기 제1단말의 개인키를 생성하고, 상기 제1단말로 전송하는 단계(S20)는 사용자인 제1단말을 등록하는 단계이다.
사용자 등록 단계에 관한 구체적인 설명은 다음과 같다. 이하에서, k는 계층적 구조의 계층을 식별하기 위한 인덱스일 수 있다.
ID가
Figure 112015107777436-pat00103
인 단말기는 ID가
Figure 112015107777436-pat00104
인 단말기(또는 사용자)를 등록하기 위하여 개인키 생성 알고리즘(
Figure 112015107777436-pat00105
)을 수행한다. 일 예로, k=1 일 때,
Figure 112015107777436-pat00106
는 관리자, 즉 서버의 ID를 의미하고,
Figure 112015107777436-pat00107
은 서버가 관리하는 상태 정보(
Figure 112015107777436-pat00108
)를 의미한다. 상태 정보(
Figure 112015107777436-pat00109
)는 ID가
Figure 112015107777436-pat00110
인 단말기가 관리하는 이진트리(
Figure 112015107777436-pat00111
)를 포함할 수 있다.
ID가
Figure 112015107777436-pat00112
인 단말기는 먼저 이진트리(
Figure 112015107777436-pat00113
)의 임의의 잎 노드(
Figure 112015107777436-pat00114
)에
Figure 112015107777436-pat00115
를 할당하고,
Figure 112015107777436-pat00116
집합을 계산한다. 또한,
Figure 112015107777436-pat00117
에 포함된 각각의 노드(
Figure 112015107777436-pat00118
)에 대해 다음과 같은 과정을 실행한다. 노드(
Figure 112015107777436-pat00119
)에 저장(할당)되어 있는 임의의 난수(
Figure 112015107777436-pat00120
)가 존재하면
Figure 112015107777436-pat00121
를 이용하고, 저장되어 있지 않다면
Figure 112015107777436-pat00122
에서 새로운
Figure 112015107777436-pat00123
를 선택하고, 이를 노드(
Figure 112015107777436-pat00124
)에 저장(할당)한다. 또한,
Figure 112015107777436-pat00125
에서 임의의 지수들
Figure 112015107777436-pat00126
를 선택하고,
Figure 112015107777436-pat00127
를 생성한다. 결국, ID가
Figure 112015107777436-pat00128
인 단말기는
Figure 112015107777436-pat00129
에 대한 ID가
Figure 112015107777436-pat00130
인 단말기의 개인키(
Figure 112015107777436-pat00131
)를 생성하고, 생성된 개인키(
Figure 112015107777436-pat00132
)를 ID가
Figure 112015107777436-pat00133
인 단말기로 송신할 수 있다.
다음으로 본 발명의 실시예에 따른 계층적 ID 기반 서명 방법은 상기 폐기목록, 시간정보 및 마스터키를 이용하여 업데이트키를 생성하는 단계(S30)를 수행한다.
업데이트키를 생성하는 단계에 관한 구체적인 설명은 다음과 같다.
ID가
Figure 112015107777436-pat00134
인 단말기는 폐기되지 않은 사용자(단말기)에 대한 업데이트키를 생성하기 위해 업데이트키 생성 알고리즘(
Figure 112015107777436-pat00135
)을 수행한다. 일 예로, k=1일 때,
Figure 112015107777436-pat00136
은 서버의 ID를 의미하고,
Figure 112015107777436-pat00137
은 서버가 관리하는 폐기 목록,
Figure 112015107777436-pat00138
은 서버가 관리하는 상태 정보를 의미할 수 있다. 또한,
Figure 112015107777436-pat00139
은 서버가 생성하는 업데이트키
Figure 112015107777436-pat00140
로 마스터키(
Figure 112015107777436-pat00141
)를 이용하여 용이하게 생성할 수 있다.
ID가
Figure 112015107777436-pat00142
인 단말기가 업데이트키(
Figure 112015107777436-pat00143
)를 생성하는 과정은 다음과 같다. 우선,
Figure 112015107777436-pat00144
를 통해 집합
Figure 112015107777436-pat00145
를 생성한다. 집합
Figure 112015107777436-pat00146
에 포함되어 있는 각각의 노드(
Figure 112015107777436-pat00147
)에 대해
Figure 112015107777436-pat00148
가 저장되어 있다면 저장되어 있는
Figure 112015107777436-pat00149
를 이용하고, 저장되어 있지 않다면
Figure 112015107777436-pat00150
에서 새로운
Figure 112015107777436-pat00151
를 선택하고 노드(
Figure 112015107777436-pat00152
)에 저장한다. ID가
Figure 112015107777436-pat00153
인 단말기는 서명키 재랜덤화 알고리즘을 수행하여 자신의 서명키(
Figure 112015107777436-pat00154
)를 재랜덤화하여 재랜덤화된 서명키
Figure 112015107777436-pat00155
를 얻고, 이를 이용하여 시간(
Figure 112015107777436-pat00156
)에 따른
Figure 112015107777436-pat00157
를 생성한다. 결국, ID가
Figure 112015107777436-pat00158
인 단말기는
Figure 112015107777436-pat00159
에 대한
Figure 112015107777436-pat00160
의 시간(
Figure 112015107777436-pat00161
)에 대한 업데이트키(
Figure 112015107777436-pat00162
)를 생성하고, 생성된 업데이트키를 공개하거나 하위 계층에 포함된 단말기들에게 전송할 수 있다.
상기 제1단말이 서버에서 전송받은 개인키와 업데이트키를 이용하여 서명키를 생성하는 단계(S40)는 실제 서명을 생성하기 위해 메시지와 결합하는 서명키를 생성하는 단계이다.
서명키 생성 단계에 관한 구체적인 설명은 다음과 같다.
ID가
Figure 112015107777436-pat00163
인 단말기는 서명키를 생성하기 위해 사용자 등록 단계에서 수신한 개인키(
Figure 112015107777436-pat00164
)와 업데이트키 생성 단계에서 생성된 업데이트키(
Figure 112015107777436-pat00165
)를 이용하여 서명키 생성 알고리즘(
Figure 112015107777436-pat00166
)을 수행한다.
Figure 112015107777436-pat00167
가 폐기 목록(
Figure 112015107777436-pat00168
)에 포함되어 있는 경우, 단말기는 서명키를 생성하지 못한다.
Figure 112015107777436-pat00169
가 폐기 목록(
Figure 112015107777436-pat00170
)에 포함되어 있지 않은 경우, 교집합(
Figure 112015107777436-pat00171
)에 포함되어 있는 노드(
Figure 112015107777436-pat00172
)를 찾는다. 노드(
Figure 112015107777436-pat00173
)에 대해
Figure 112015107777436-pat00174
에 포함되어 있는
Figure 112015107777436-pat00175
Figure 112015107777436-pat00176
에 포함되어 있는
Figure 112015107777436-pat00177
를 이용하여 다음과 같이 서명키(
Figure 112015107777436-pat00178
)를 생성한다.
Figure 112015107777436-pat00179
또한, ID가
Figure 112015107777436-pat00180
인 단말기는 서명키 재랜덤화 단계를 통해 새로운 서명키를 생성할 수 있다.
각 단말기는 자신의 서명키를 재랜덤화하기 위해
Figure 112015107777436-pat00181
와 시간(
Figure 112015107777436-pat00182
)에 대한 서명키(
Figure 112015107777436-pat00183
)를 이용하여 서명키 재랜덤화 알고리즘(
Figure 112015107777436-pat00184
)을 수행한다. 먼저,
Figure 112015107777436-pat00185
에서 임의의 난수
Figure 112015107777436-pat00186
를 선택하고, 재랜덤화된 서명키 (
Figure 112015107777436-pat00187
)를 생성할 수 있다.
제1단말은 메시지와 서명키, 시간정보 및 공개상수를 이용하여 서명알고리즘을 통해 서명을 생성하는 단계(S50)를 거친다.
각 단말은 서명하고자 하는 메시지 M과 서명자의 서명키
Figure 112015107777436-pat00188
, 시간 T, 공개상수 PP를 이용하여
Figure 112015107777436-pat00189
알고리즘을 수행한다. 먼저 서명키
Figure 112015107777436-pat00190
를 이용하여
Figure 112015107777436-pat00191
알고리즘을 수행하여
Figure 112015107777436-pat00192
를 얻는다. 그 후,
Figure 112015107777436-pat00193
에서 임의의 지수
Figure 112015107777436-pat00194
을 선택하고, 서명
Figure 112015107777436-pat00195
을 출력한다.
서명을 생성하는 단계 이후, 제1단말의 ID와 시간정보, 메시지 및 공개상수를 이용하여 검증 알고리즘을 통해 검증문을 생성하는 단계(S60)와 검증문과 서명을 이용하여 검증하는 단계(S70)가 진행된다.
메시지 M과
Figure 112015107777436-pat00196
, 시간 T에 대한 서명
Figure 112015107777436-pat00197
를 검증하기 위해
Figure 112015107777436-pat00198
와 시간 T, 메시지 M, 공개상수 PP를 이용하여
Figure 112015107777436-pat00199
알고리즘을 수행한다. 먼저
Figure 112015107777436-pat00200
에서
Figure 112015107777436-pat00201
를 선택하여 검증문
Figure 112015107777436-pat00202
을 생성한다. 검증문 VT와 서명
Figure 112015107777436-pat00203
를 이용하여
Figure 112015107777436-pat00204
를 확인한다. 검증되면 1을 출력하고, 그렇지 않으면 0을 출력한다.
본 발명의 또 다른 실시예에 따른 계층적 ID 기반 서명 방법은 제1단말의 하위레벨의 단말기인 제2단말에서의 계층적 ID 기반 서명방법에 관한 것이다.
앞선 실시예와 중복되는 구성에 대한 설명은 생략한다.
도 2는 본 발명의 또 다른 실시예에 따른 계층적 ID 기반 서명 방법의 순서도이다.
도 3은 본 발명의 또 다른 실시예에 따른 계층적 ID 기반 서명 방법의 개념도이다.
본 발명의 또 다른 실시예에 따른 계층적 ID기반 서명방법은 서버와 복수의 단말기들로 이루어진 계층적 ID(Identity) 기반 서명 방법으로서, 상기 서버는 셋업(Setup)알고리즘을 이용하여 보안상수를 입력받아, 폐기목록, 상태정보, 공개상수 및 마스터키를 생성하는 단계(S100), 상기 서버는 상기 복수의 단말기들 중 상기 서버의 하위레벨 단말기 중 제1단말기의 ID를 수신하여 상기 제1단말의 개인키를 생성하고, 상기 제1단말로 전송하는 단계(S200), 상기 서버는 서버가 관리하는 폐기목록, 시간정보 및 마스터키를 이용하여 제1업데이트키를 생성하는 단계(S300), 상기 제1단말은 상기 서버에서 전송받은 제1단말의 개인키와 상기 제1업데이트키를 이용하여 제1서명키를 생성하는 단계(S400), 상기 제1단말은 제1단말이 관리하는 폐기목록을 업데이트하는 단계(S500), 상기 제1단말은 상기 제1단말이 관리하는 폐기목록과 시간정보 및 서명키를 이용하여 제2업데이트키를 생성하는 단계(S600) 및 상기 제1단말은 상기 제1단말의 하위레벨 단말기 중 제2단말기의 ID를 수신하여 상기 제2단말의 개인키를 생성하고, 상기 제2단말로 전송하는 단계(S700)를 포함한다.
도 2와 도 3에 도시된 바와 같이 제1서명키를 생성하는 단계(S400) 이후, 제1단말이 관리하는 폐기목록을 업데이트 하는 단계(S500)를 거치게 된다.
제1단말이 도 3의 User A라 가정하면, User A는 서버(PKG)에 의해서 제1서명키 DKA,T 를 생성한다. 나아가 제1단말이 관리하는 폐기목록(RLA)를 업데이트하되, User A의 하위레벨 단말인 User B는 폐기되지 않은 유효한 ID를 갖고 있으므로 User A가 관리하는 폐기목록에는 포함되지 않는다.
제1단말인 User A는 업데이트된 제1단말이 관리하는 폐기목록과 시간정보 및 제1서명키를 이용하여 제2업데이트키를 생성한다.(S600)
또한, 상기 제1단말인 User A는 하위레벨 단말기 중 제2단말, 즉 User B의 ID를 수신하여 User B 의 개인키를 생성하고, 이를 User B에 전송한다.(S700)
앞서 언급한 바와 같이 User B의 ID가 유효하므로, User B는 User A에서 전송받은 자신의 개인키와 제2업데이트키를 이용하여 제2서명키를 생성하고(S800), User B는 메시지와 제2서명키, 시간정보 및 공개상수를 이용하여 서명(sign)알고리즘을 통해 서명을 생성한다(S900).
이와 달리 제1단말의 하위레벨 단말기 중 제2단말의 ID가 폐기된 경우를 살펴보면, 도 3에서 User C가 제1단말이 되고, User D가 제2단말이 된다.
User C가 관리하는 폐기목록을 업데이트하는 단계는 특정시간(T)에 User D의 ID가 폐기된다면, User C가 관리하는 폐기목록에 User D의 ID를 추가하게되고, User C가 관리하는 폐기목록을 업데이트하는 단계 이후, 제2업데이트키와 상기 User D의 개인키를 이용하여 제2서명키가 생성되지 않는다. 즉 폐기된 ID를 이용해서 서명이 생성되지 않게된다.
본 발명은 도면에 도시된 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.

Claims (7)

  1. 서버와 복수의 단말기들로 이루어진 계층적 ID(Identity) 기반 서명 방법으로서,
    상기 서버는 셋업(Setup)알고리즘을 이용하여 보안상수를 입력받아, 폐기목록, 상태정보, 공개상수 및 마스터키를 생성하는 단계;
    상기 서버는 상기 복수의 단말기들 중 상기 서버의 하위레벨 단말기 중 제1단말기의 ID를 수신하여 상기 제1단말의 개인키를 생성하고, 상기 제1단말로 전송하는 단계;
    상기 서버는 상기 폐기목록, 시간정보 및 마스터키를 이용하여 업데이트키를 생성하는 단계;
    상기 제1단말은 상기 서버에서 전송받은 개인키와 상기 업데이트키를 이용하여 서명키를 생성하는 단계; 및
    상기 제1단말은 메시지와 상기 서명키, 시간정보 및 공개상수를 이용하여 서명(sign)알고리즘을 통해 서명을 생성하는 단계를 포함하고,
    상기 서명키를 생성하는 단계는 생성된 서명키를 재랜덤화 알고리즘을 수행하여 재랜덤화된 서명키를 생성하는 단계를 포함하는 것을 특징으로 하는 계층적 ID 기반 서명 방법.
  2. 삭제
  3. 제1항에 있어서,
    상기 서명을 생성하는 단계 이후, 상기 서버가 제1단말의 ID와 시간정보, 메시지 및 공개상수를 이용하여 검증알고리즘을 통해 검증문을 생성하는 단계; 및
    상기 서버가 상기 검증문과 서명을 이용하여 검증하는 단계를 더 포함하는 것을 특징으로 하는 계층적 ID기반 서명방법.
  4. 서버와 복수의 단말기들로 이루어진 계층적 ID(Identity) 기반 서명 방법으로서,
    상기 서버는 셋업(Setup)알고리즘을 이용하여 보안상수를 입력받아, 폐기목록, 상태정보, 공개상수 및 마스터키를 생성하는 단계;
    상기 서버는 상기 복수의 단말기들 중 상기 서버의 하위레벨 단말기 중 제1단말기의 ID를 수신하여 상기 제1단말의 개인키를 생성하고, 상기 제1단말로 전송하는 단계;
    상기 서버는 서버가 관리하는 폐기목록, 시간정보 및 마스터키를 이용하여 제1업데이트키를 생성하는 단계;
    상기 제1단말은 상기 서버에서 전송받은 제1단말의 개인키와 상기 제1업데이트키를 이용하여 제1서명키를 생성하는 단계;
    상기 제1단말은 제1단말이 관리하는 폐기목록을 업데이트하는 단계;
    상기 제1단말은 상기 제1단말이 관리하는 폐기목록과 시간정보 및 제1서명키를 이용하여 제2업데이트키를 생성하는 단계; 및
    상기 제1단말은 상기 제1단말의 하위레벨 단말기 중 제2단말기의 ID를 수신하여 상기 제2단말의 개인키를 생성하고, 상기 제2단말로 전송하는 단계를 포함하고,
    특정시간(T)에 제2단말의 ID가 유효하다면, 상기 제2단말의 개인키를 생성하고, 상기 제2단말로 전송하는 단계 이후,
    상기 제2단말은 상기 제1단말에서 전송받은 제2단말의 개인키와 상기 제2업데이트키를 이용하여 제2서명키를 생성하는 단계; 및
    상기 제2단말은 메시지와 상기 제2서명키, 시간정보 및 공개상수를 이용하여 서명(sign)알고리즘을 통해 서명을 생성하는 단계를 포함하는 것을 특징으로 하는 계층적 ID 기반 서명 방법.
  5. 삭제
  6. 제4항에 있어서,
    상기 제1단말이 관리하는 폐기목록을 업데이트하는 단계는 특정시간(T)에 제2단말의 ID가 폐기된다면, 제1단말이 관리하는 폐기목록에 상기 제2단말의 ID를 추가하는 것을 특징으로 하는 계층적 ID 기반 서명 방법.
  7. 삭제
KR1020150155080A 2015-11-05 2015-11-05 폐기 기능을 갖는 무한한 계층적 id 기반 서명 방법 KR101732130B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150155080A KR101732130B1 (ko) 2015-11-05 2015-11-05 폐기 기능을 갖는 무한한 계층적 id 기반 서명 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150155080A KR101732130B1 (ko) 2015-11-05 2015-11-05 폐기 기능을 갖는 무한한 계층적 id 기반 서명 방법

Publications (1)

Publication Number Publication Date
KR101732130B1 true KR101732130B1 (ko) 2017-05-04

Family

ID=58743051

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150155080A KR101732130B1 (ko) 2015-11-05 2015-11-05 폐기 기능을 갖는 무한한 계층적 id 기반 서명 방법

Country Status (1)

Country Link
KR (1) KR101732130B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005198189A (ja) 2004-01-09 2005-07-21 Ntt Docomo Inc 鍵更新方法、暗号システム、暗号サーバ、端末装置及び外部装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005198189A (ja) 2004-01-09 2005-07-21 Ntt Docomo Inc 鍵更新方法、暗号システム、暗号サーバ、端末装置及び外部装置

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Boldyreva, Alexandra 외 2명, "Identity-based encryption with efficient revocation." Proceedings of the 15th ACM conference on Computer and communications security. ACM, 2008. (2008.)
Li, Jiguo 외 4명, "Provably secure certificate-based key-insulated signature scheme." Concurrency and Computation: Practice and Experience 26.8 (2014): 1546-1560. (2014.)
Seo, Jae Hong 외 1명, "Revocable hierarchical identity-based encryption: History-free update, security against insiders, and short ciphertexts." Cryptographers’ Track at the RSA Conf. (2015.03.)

Similar Documents

Publication Publication Date Title
KR101594056B1 (ko) 소셜 네트워크 기반의 pki 인증
Narasimha et al. On the utility of distributed cryptography in P2P and MANETs: the case of membership control
KR100568233B1 (ko) 인증서를 이용한 기기 인증 방법 및 상기 방법을 이용하여기기 인증을 수행하는 디지털 컨텐츠 처리 기기
CN107332858B (zh) 云数据存储方法
CN107465681B (zh) 云计算大数据隐私保护方法
KR20120035069A (ko) 제어가능 연결성을 제공하는 그룹서명 시스템 및 방법
Harchol et al. Distributed SSH key management with proactive RSA threshold signatures
JP2023539432A (ja) しきい値署名
JP7444378B2 (ja) 鍵交換システム、通信端末、情報処理装置、鍵交換方法、及びプログラム
KR20180057468A (ko) 하이브리드 pki 기반 드론 인증 시스템 및 드론 관리 서버
Zhang et al. Identity-based data storage scheme with anonymous key generation in fog computing
JP2014023036A (ja) 鍵管理装置、アプリケーション署名付加装置および受信端末、ならびに、それらのプログラム
Gómez et al. New security services based on PKI
KR101732130B1 (ko) 폐기 기능을 갖는 무한한 계층적 id 기반 서명 방법
Pulls Privacy-Friendly cloud storage for the data track: an educational transparency tool
Lin et al. RIKE+: Using revocable identities to support key escrow in public key infrastructures with flexibility
Braghin et al. Secure and policy-private resource sharing in an online social network
KR100654933B1 (ko) 사용자의 패스워드 입력에 따라서 동적 생성되는 인증서를인증하는 인증시스템 및 인증방법
KR101674643B1 (ko) 폐기 기능을 갖는 무한한 계층적 id 기반 암호화 시스템
Bai Comparative research on two kinds of certification systems of the public key infrastructure (PKI) and the identity based encryption (IBE)
US10469267B2 (en) Method of managing implicit certificates using a distributed public keys infrastructure
Hassouna et al. An integrated public key infrastructure model based on certificateless cryptography
KR102348065B1 (ko) Sd 방식을 이용한 폐기 가능한 id 기반 암호 설계 방법
Yap et al. On the security of a lightweight authentication and encryption scheme for mobile ad hoc network
Philipp et al. DAXiot: A Decentralized Authentication and Authorization Scheme for Dynamic IoT Networks

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant