1 |
1
개인키 발급기관이 공개변수들 및 사용자 단말기로부터 수신한 신원정보(Identity, ID)를 이용하여 비밀키(SID)를 생성하고 생성된 비밀키(SID)를 상기 사용자 단말기로 전송하는 단계;상기 사용자 단말기가 상기 공개변수들 및 상기 비밀키(SID)를 이용하여 메시지(M)에 대한 제1전자 서명값(U)과 제2전자 서명값(V)을 포함하는 전자서명(σ = (U,V))을 생성하는 단계; 및인증서버가 상기 사용자 단말기로부터 상기 신원 정보(ID), 상기 메시지(M) 및 상기 전자서명(σ)을 수신하고 상기 공개변수들을 이용하여 수신한 전자서명(σ)의 유효성을 검증하는 단계를 포함하며,상기 공개변수들은 소수(q)를 위수(order)로 하는 타원곡선군(G1)과 유한체의 곱의 부분군(multiplicative subgroup, G2), 상기 타원곡선군(G1)의 생성원(P), 마스터 비밀키(s)와 상기 생성원(P)의 스칼라 곱인 공개키(Ppub), 겹선형 함수(e), 제1해쉬 함수(H1) 및 제2해쉬 함수(H2)를 포함하는 신원기반(ID-based)의 전자서명 인증 방법
|
2 |
2
제1항에 있어서, 상기 비밀키(SID)를 생성하는 단계는,상기 신원정보(ID)를 입력값으로 하는 상기 제1해쉬 함수의 출력값(QID)과 상기 마스터 비밀키(s)를 이용하여 상기 비밀키(SID)를 생성하는 신원기반의 전자서명 인증 방법
|
3 |
3
제1항에 있어서, 상기 제1해쉬 함수는 타원곡선 알고리즘 표준에 따라 임의의 비트열을 타원곡선상의 한점에 대응시키는 함수이고, 상기 마스터 비밀키(s)는 상기 개인키 발급기관에 의해 선택되는 난수(random number)인 신원기반의 전자서명 인증 방법
|
4 |
4
제1항에 있어서, 상기 신원정보(ID)는 상기 사용자 단말기를 사용하는 사용자를 식별할 수 있는 고유 정보를 포함하는 신원기반의 전자서명 인증 방법
|
5 |
5
제1항에 있어서, 상기 비밀키(SID)를 상기 사용자 단말기로 전송하는 단계는,SSL(Secure Socket Layer)/TLS(Transport Layer Security) 표준 프로토콜을 이용하여 전송하는 신원기반의 전자서명 인증 방법
|
6 |
6
제1항에 있어서, 상기 전자서명(σ)을 생성하는 단계는,상기 사용자 단말기에 의해 선택되는 난수(r) 및 상기 생성원(P)을 이용하여 상기 제1전자 서명값(U)을 생성하는 단계;상기 신원정보(ID), 상기 메시지(M) 및 상기 제1전자 서명값(U)을 입력값으로 하는 상기 제2해쉬 함수의 출력값(h)을 계산하는 단계;상기 비밀키(SID), 상기 제2해쉬 함수의 출력값(h), 상기 난수(r) 및 상기 공개키(Ppub)을 이용하여 상기 제2전자 서명값(V)을 생성하는 단계; 및상기 제1전자 서명값(U)과 상기 제2전자 서명값(V)을 이용하여 상기 전자서명을 생성하는 단계를 포함하는 신원기반의 전자서명 인증 방법
|
7 |
7
제6항에 있어서, 상기 제1전자 서명값(U)을 생성하는 단계는,상기 난수(r)와 상기 생성원(P)의 스칼라 곱으로 상기 제1전자 서명값(U)을 생성하는 신원기반의 전자서명 인증 방법
|
8 |
8
제6항에 있어서, 상기 제2해쉬 함수는 상기 신원정보(ID)
|
9 |
9
제6항에 있어서, 상기 제2전자 서명값(V)을 생성하는 단계는,수식 V = SID + hㆍrㆍPpub을 만족하는 신원기반의 전자서명 인증 방법
|
10 |
10
제1항에 있어서, 상기 전자서명의 유효성을 검증하는 단계는,상기 제2전자 서명값(V) 및 상기 생성원(P)을 입력값으로 하는 상기 겹선형 함수의 제1출력값을 계산하는 단계;상기 제2해쉬 함수의 출력값(h), 상기 제1전자 서명값(U), 상기 신원정보(ID)을 입력값으로 하는 상기 제1해쉬 함수의 출력값(QID) 및 상기 공개키(Ppub)를 이용하여 상기 겹선형 함수의 제2출력값을 계산하는 단계; 및상기 제1출력값과 상기 제2출력값을 비교하는 단계를 포함하는 신원기반의 전자서명 인증 방법
|
11 |
11
제10항에 있어서, 상기 제2출력값을 계산하는 단계는,수식 (QID + hㆍU) 및 상기 공개키(Ppub)를 입력값으로 상기 겹선형 함수의 출력값(e(QID + hㆍU, Ppub))을 계산하는 신원기반의 전자서명 인증 방법
|
12 |
12
제10항에 있어서, 상기 제1출력값과 상기 제2출력값을 비교하는 단계는,상기 제1출력값과 상기 제2출력값이 동일한 경우 상기 전자서명이 유효하다고 판단하는 신원기반의 전자서명 인증 방법
|
13 |
13
인증서버가 복수의 사용자 단말기들 각각으로부터 신원정보(IDi), 메시지(Mi) 및 상기 제1항 내지 제12항 중 어느 하나의 방법으로 생성된 전자서명(σi = (Ui,Vi))을 수신하는 단계;상기 인증서버가 상기 복수의 사용자 단말기들 각각으로부터 수신한 복수의 전자서명들에 기초하여 집합서명(σagg)을 생성하는 단계; 및상기 인증서버가 상기 집합서명(σagg)의 유효성을 검증하는 단계를 포함하는 신원기반의 집합서명 인증 방법
|
14 |
14
제13항에 있어서, 상기 집합서명을 생성하는 단계는,상기 수신한 복수의 전자서명들 각각의 제2전자 서명값들의 합(Vagg)을 계산하는 단계 ; 및상기 제2전자 서명값들의 합(Vagg)과 상기 복수의 전자서명들 각각의 제1전자 서명값(Ui)을 이용하여 상기 집합서명(σagg = (U1,U2,
|
15 |
15
제13항에 있어서, 상기 집합서명을 생성하는 단계는,상기 수신한 복수의 전자서명들의 총 개수가 시스템 설정 개수에 이르는 경우 상기 집합서명을 생성하는 신원기반의 집합서명 인증 방법
|
16 |
16
제13항에 있어서, 상기 집합서명을 생성하는 단계는,상기 복수의 전자서명들 중 최초의 전자서명을 수신하는 시점으로부터 시스템 설정 시간이 경과한 후에 상기 집합서명을 생성하는 신원기반의 집합서명 인증 방법
|
17 |
17
제13항에 있어서, 상기 집합서명을 검증하는 단계는,상기 수신한 복수의 전자서명들 각각의 제2전자 서명값들의 합(Vagg) 및 생성원(P)을 입력값으로 하는 겹선형 함수의 제1출력값을 계산하는 단계; (Qi + hiㆍ Ui) 및 공개키(Ppub)를 입력값으로 하는 상기 겹선형 함수의 제2출력값을 계산하는 단계; 및상기 제1출력값과 상기 제2출력값을 비교하는 단계를 포함하며,상기 Qi는 상기 IDi를 입력값으로 하는 제1해쉬함수의 출력값이고,상기 hi는 상기 IDi, Mi 및 Ui를 입력값으로 하는 제2해쉬함수의 출력값인 신원기반의 집합서명 인증 방법
|
18 |
18
제17항에 있어서, 상기 제1출력값과 상기 제2출력값을 비교하는 단계는,상기 제1출력값과 상기 제2출력값이 동일한 경우 상기 집합서명이 유효하다고 판단하는 신원기반의 집합서명 인증 방법
|
19 |
19
제13항에 기재된 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체
|
20 |
20
복수의 사용자 단말기들 각각으로부터 전자 서명을 수신하는 송수신모듈; 상기 수신한 복수의 전자서명들에 기초하여 집합서명을 생성하는 집합서명 생성모듈; 및공개변수들을 이용하여 상기 집합서명의 유효성을 검증하는 검증모듈을 포함하며,상기 복수의 사용자 단말기들 각각으로부터 수신하는 전자서명 각각은, 상기 제1항 내지 제9항 중 어느 하나의 방법으로 생성된 전자서명이고,상기 공개변수들은 소수를 위수로 하는 타원곡선군과 유한체의 곱의 부분군, 상기 타원곡선군의 생성원, 마스터 비밀키와 상기 생성원의 스칼라 곱인 공개키, 겹선형 함수, 제1해쉬 함수 및 제2해쉬 함수를 포함하는 신원기반의 집합서명 인증 시스템
|