DOI QR코드

DOI QR Code

Proxy Signatures based on XTR Cryptosystem

XTR 암호 시스템 기반의 대리 서명

  • 이재욱 (경북대학교 전자전기 공학부) ;
  • 전동호 (경북대학교 전자전기 공학부) ;
  • 최영근 (경북대학교 전자전기 공학부) ;
  • 김순자 (경북대학교 전자전기 공학부)
  • Published : 2003.06.01

Abstract

The XTR public key system has advantage of short key length and fast computing speed. So, the XTR is used usefully in complicated operation. In this paper, we propose a new algorithm of double exponentiation operation and a proxy signature protocol based on the XTR. The double exponentiation operation should be executed to apply XTR for the proxy signature protocol. But this algorithm is inappropriate, because two secret key has to be blown in existent operation algorithm. New algorithm enable double exponentiation operation with proxy signer's secret key and public information. And the XTR is used to generation and verification of proxy at proxy signature protocol. Therefore proxy signature based on the XTR has basic advantage of the XTR. These advantage can be used in internet as well as mobile.

Lenstra와 Verheul에 의해 제시된 XTR은 짧은 키 길이와 빠른 연산 속도의 장점을 가지고 있기 때문에 복잡한 연산에 유용하게 사용될 수 있다. 본 논문에서는 XTR에서 T${\gamma}$( $g^{a}$ $g^{bR}$ )를 연산하는 새로운 알고리즘과 이 알고리즘을 이용한 XIR 기반의 대리 서명 프로토콜을 제시하였다. T${\gamma}$( $g^{a}$ $g^{bR}$)를 연산하는 기존의 알고리즘은 두 개의 비밀 정보가 공개되어야만 한다. 따라서 대리 서명 프로토콜의 생성 및 검증에 이용할 수 없다. 제안하는 새로운 알고리즘은 대리서명자의 비밀키와 공개 정보로 proxy의 생성과 검증이 가능하므로 대리 서명 프로토콜을 XTR에 적용 가능하게 한다. 따라서 XTR 기반의 대리 서명 프로토콜은 XTR의 기본적인 장점을 가진다. 이러한 장점은 유선 뿐 아니라 무선에서도 이용될 수 있다.

Keywords

Ⅰ. 서론

유무선 인터넷의 발달에 따라 전자 서명의 중요성은 점차 커지고 있다. 전자 서명은 서명 권한이 있는서명자에 의해서만 이루어지고, 제 3자에 의해 그 서명의 유용성을 검증할 수 있어야 한다. 이러한 전자서명에는 여러 가지 상황에 맞는 다양한 서명 기법이 존재한다. 특히 서명의 권한을 가진 사람(original signer)이 부득이한 사정으로 인해 서명할 수 없는 상황에 서명자가 인정하는 대리 서명자(proxy signer) 를 두어 본 서명자를 대신하여 서명할 수 있다면 유용하게 사용될 수 있다. 이러한 서명 기법이 대리 서명(proxy signature)이다. 대리 서명에서는 본 서명자가 대리 서명자에게 대리 서명시 사용할 비밀 정보를 넘겨주고, 대리 서명자는 이 비밀 정보에 대한 유용성을 판별하게 된다田 이 과정에서 생기는 연산의속도를 향상시키고 또한 키 길이를 줄일 수 있다면유선뿐만 아니라 무선에서도 효율적이다.

본 논문에서는 XTR을 기반으로 하는 대리 서명 프로토콜을 제안하여 비밀 정보 생성 및 검증에 필요한 연산의 속도 향상과 키 길이를 축소 시켰다. 대리 서명 프로토콜을 XTR에 적용하기 위해서는 pro- xy의 생성 및 검증 과정에서 7Xg〃g싸)를 구하는 연산이 필요하다. 기존의 연산 알고리즘은 a와 3를 모두 알고 있어야 하므로 대리 서명 프로토콜 적용 시비밀키를 공개해야 하는 문제점이 발생한다. 이 문제점을 보완하기 위해 새로운 연산 알고리즘을 만들어 XTR을 기반으로 하는 대리 서명 프로토콜에 적용하였다.

본 논문의 2장에서는 XTR 공개키 시스템에 대하여 알아본다. 3장에서 대리 서명 기법 중 부분 위임을 이용한 proxy protect를 만족하는 Mambo의 대리 서명 프로토콜과 증명서 기반의 부분 위임을 사용한 Kim등이 제안한 프로토콜을 살펴본다'州. 4장에서는 3장에서 제시한 대리 서명 기법을 XTR 공개키 시스템에 맞는 프로토콜로 변환하기 위한 새로운 알고리즘과 이 알고리즘을 이용하여 XTR에 기반을 둔 대리 서명 프로토콜을 제시하였다. 5장에서는 제시한 프로토콜에 대한 안정성과 효율성을 살펴보고, 끝으로 6장에서 결론을 맺는다.

Ⅱ. XTR 공개키 시스템 분석

X—2 mod3)을 만족하는 소수》와 疚-奸1을나누는 위수 g(>6)의 원소를 g라고 한다. /

은 GFb)의 위수 秒 — ]을 나눌 수 있기 때문에 g 는 GF3。)*의 위수 를 가지는 부분군을 생성한다. 또한 q는 ^—l(s=l, 2, 3)를 나눌 수 없으므로 g에의해 생성된 부분군은 GF。13)의 부분체의 곱셈군에포함되지 않는다. 또한 g의 임의의 멱승은 부분체 筱寥)의 한 원소를 사용하여 표현될 수 있다. 이러한 멱승은 GF(06)에서의 연산을 피하고 GF奇) 의 원소로 연산하여 효율적으로 계산된다. 따라서 GF(》2)의 원소들로 연산하여 GF(/>6)의 안정성을보장한다'】.

2.1. Trace 7r(g)와 다항식 F(c, X)

GF(/)6)의 원소 g에 대하여 GF(/>2)상에서의 con- jugate는 g, gp\ /이고, 이 값들의 합을 Trace라 한다. 즉 Trace 7Xg) = g+/' + g"'이다. 여기서 g의 위수가 疣 —0+1 을 나눌 수 있기 때문에 p2 = p-l, 胪 = 一1이다. 따라서 실제 conjugate는 g, 厂, g"으로 나타난다.

또한 다항식 F(c, X) = x3-cX2+c"X-l에 대한 세 근을 九"1, 徊라 하면 C"= 以+状+玻 이다. 즉 다항식 F(c, X)의 각 근의 初제곱의 합이 c”이다. 여기서 나타나는 세 근은 g, g"T, g"이므로 이성 질을 이용하면 c“에 대한 여러 가지 연산을 찾을 수 있다. 이러한 연산의 특성을 통해 &(c) = (c”t, C”, C”+1)을 구하는 알고리즘을 제시하였다가.

2.2. Traces의 연산

[1]과 ⑵에서는 mg), S»(7Xg)), aM가 주어진경우 이 값을 통해 T代gQgbk)를 연산하는 알고리즘을 제시하였다. 卩]에서는 행렬을 사용하여 T代g«g&) 를 구하는 알고리즘을 제시하였고 이는 GF3)에서 81og2( al b modg) +8log 2。)+ 34 번의 곱셈 연산이 필요하다. 또한 [2]에서는 행렬을 사용하지 않는방법을 제시하였고 연산시 161og河번의 곱셈 연산이필요하다.

Ⅲ. 대리 서명

대리 서명은 본 서명자의 부재 등의 사유로 본 서명자가 직접 서명할 수 없을 경우 대리 서명자가 대신하여 서명할 수 있는 서명 기법이다.

대리 서명 기법에는 본 서명자의 비밀키를 대리서명자에게 넘겨주는 기법(full delegation)과, 본 서명자의 비밀키로부터 대리 서명자가 사용할 비밀 서명 정보를 별도로 만들어서 위임 서명자에게 넘겨주는 부분 위임 (partial delegation), 본 서명자가 위임 서명자로 지정한 사실을 증명서로 만들어서 넘겨주는 증명서 위임(delegation of wamanO이 있다. 이러한 기법 중 부분 위임은 대리 서명시 사용할 비밀 정보를 본 서명자 또한 알고 있는 방.법(proxy unprotect)과 위임서명자만이 알고 있는 방법 (proxy protect)이 있다이. 이 중 부분 위임을 이용한 proxy protect를 만족하는 Mambo의 대리 서명 프로토콜과 Kim등이 주장한 증명서 기반의 부분 위임 (partial delegation with wa- rrant) 대리 서명 프로토콜에 대해서 살펴본다。, 勺.

3.1. Proxy protect를 만족하는 부분 위임 대리 서명

본 서명자(A) 의 비밀키와 대리 서명자(B) 의 임시비밀키가 대리 서명에 사용될 비밀 정보 (°) 생성시사용된다. B는 A의 비밀키를 알 수 없으므로 부분위임 방식이며, 또한 A는。를 알 수 없으므로 proxy protect를 만족한다.

본 서명자와 대리 서명자간의 비밀 정보의 생성과 검증 프로토콜은 다음과 같다.

A는 2泌<力<戏2인 소수 와 곱셈군 4의 생성자 g를 선택한 후 공표한다. 또한 snVRZqi인 A의 비밀키 난수 臨를 생성하고, 그에 상응하는 공개키 叫 = gSA mod力를 계산한다. B는 자신의 임시 비밀키로 사용할 炉인 난수 X를 선택한 후 r=gxKmoAp 를 계산하여 作임을 확인하여 만족하면 r을 A에게 보낸다. A는 <7= 冷4十在 modg를 계산하여 B에게 보낸다. 여기서 q는 2-1 을 나누는 임의의 큰 소수이다.

B는 A에게서 받은 咯와 자신의 임시 비밀키 *를이용하여 c, = u+x modg를 계산한 후 이 값의 유용성을 g°= 〃糸mod0로 확인한다. 대리 서명자의서명과 검증은 [4]와 동일하다闵.

(그림 1] Proxy protect를 만족하는 부분 위임 대리 서명

3.2. 증명서 위임 대리 서명

서명 생성시 본 서명자가 대리 서명자를 인정하는 증명서(warrant) "知를 사용하였고 프로토콜은 다음과 같다.

proxy생성시 e= h(、竹를 계산하고 B에게 넘겨줄 비밀 정보 o= esA + k mod/>—1 를 계산한다. A는 B에게 를 넘겨준다. 또한 proxy verification 시 B는 A에게 받은 와 K를 이용하여 e= h{mw, /。를 생성한 후 Kmod/>를 확인하여 <7의 유용성을 판별한다. 대리 서명자는。를 사용하여 서명을 생성한다. 생성된 서명은

이다. 즉 Mambo의 프로토콜에 m^} 추가된다俱

Ⅳ. XTR 기반의 대리 서명

3장에서 살펴본 두 개의 대리 서명 프로토콜을 연산 속도 향상과 키 길이 단축을 위해 XTR에 맞는 프로토콜을 제시한다.

4.1. Tr(gagm)를 구하는 알고리즘 제안

Tv<g"g也)를 구하는 알고리즘인 [1, Algorithm 2. 4. 8]과 [2, 2.3]는 표1에서와 같이 a, b, T^g), Sk (TXg)) 의 값을 모두 알고 있어야만 가능하다. a.b 값을 모두 안다는 것은 상대방의 비밀키 또는 임시비밀키를 알고 있어야 하므로, 기존의 알고리즘을 대리 서명 프로토콜에 직접 사용하는 것은 불가능하다. 따라서 대리 서명에 사용될 수 있는 새로운 알고리즘이 필요하다. 제안하는 알고리즘은 0<b<q, Tr(g), S*(7Xg)), S«(7Xg))가 주어질 경우 싸)을구할 수 있다.

표 1. 각 알고리즘에 필요한 파라미터 비교.

연산 알고리즘제안하는

#

알고리즘에서 사용된 notation은 다음과 같다

#

i 에서 方(g)는 7次梦)가 Ci이다. 또한 C2는 7r (扌) 一2 方(g), 이므로 [1, Lemma 2. 3.5 i ]에 의해 S(B(g))=(3, 许(g), 斉(妒)一2 方(g)“)이다. 와 7次g)는 알려진 값이므로 [1, Algorithm 2. 3. 기에 의해 ii 를 구한다.

iv. S*( 7Xg)) = (M* g I), 7Kg써), 次g써‘*')) 을 구하기 위해 次/1)과 次g*+i) 을 계산해야한다. [1, Algorithm 2.4.8]에 a=l을 대입하여 Tr (g 쏘+1)을 구한다. J次 g 싸 T) 을 구하기 위해서 [1, Algorithm 2.4.8]에 a=2를 대입하여 TXg"”의 값을 구한다. TKgf TKgf, TXg"")으로 Tr (g*+2 )一 丁* 心 "点如》+ Trig)" * T代g&) [1, CoroUary2.3.5 ii]를 통해 T*') K을 찾을 수 있다. i 에서 iv의 과정을 통해 얻은 TXg)와, ( 次g))로 、, 에서 C(A(B(g)°))을 구한다. vi에서 3(矿质) = S冰(7次g*C*)) )()A(7Xg) 을 연산하여 T代g*) "를구한다’丄

기존의 알고리즘에서는 iv 의 연산을 하지 않기 때문에 S认 7Xg))값으로 만 vi의 연산을 실행하여 노출된 a값을 사용하여 T* Kg 政、)를 구한다. 그러나 제안하는 알고리즘에서는 iv 의 연산을 함으로써, a 값과 관계없이 공개 정보 &(7Xg))로 T代g* 써)를구할 수 있다.

4.2. XTR 기반의 proxy protect를 만족하는 부분위임 대리 서명

炒2 mod3를 만족하는 2啲</><2%인 소수》와 — 力+1을 나누는 위수 q(>6)의 원소 g를 선택하여 7Xg)를 계산한 후 공개한다. SaVrZlz인 A 의 비 밀키 난수以를 생성하고, 그에 상응하는 공개키 叫 = 妒"를 계산한다.

본 서명자 A가 임시 비밀키로 사용할 k(0<x<q 一 2)를 선택한 후, (7Xg))를 계산하고 대리 서명자 B에게 보낸다. 대리 서명자 B는 자신의 임시 비밀키로 사용될 x(0<次g —2)를 선택한 후 £(7Xg)) 를 계산하고 7X妒)을 해쉬한 후, 받은 . &( 7次切) 중 를 해쉬한 값을 곱하여 T=h(、T*)*h Kg) ( Tr(g)x) mod0을 만들어 A에게 보낸다.

A는 이 값과 자신의 비밀키 (臨)와 左를 사용하여 °= 從4+为 modg를 B에게 보낸다. B는 받은 °와 *를 이용하여 O— o+x modq를 생성한다.。의 유용성을 판별하기 위해 먼저 TXg17)를 계산한다. 또한 A의 공개키 5%(B(g)), 자신이 생성한 r, A에게서 받은 S*(7Xg)), 공개정보 TXg)를 이용하여 제안하는 알고리즘에 의해 7次g*) "*"를 계산한다. 이값과 대리서명자가 서명 생성시 계산한 S*(7Xg)) 값을 제안하는 알고리즘의 vi을 이용하여 7*+*) XgH+ 를 계산한다. 이 값과 T代g°) 로 얻은 값과 비교하여 。의 유용성을 판별한다. B는 문서 에。를 이용하여 대리 서명을 생성한다. 대리 서명자에 의해 생성 된 서 명 값은 幻(m°), S认 TXg))이 다. 대리 서명의 검증을 위해 검증자는 공개키 以와 비밀리에 받은 SAM#)、)를 이용하여 proxy 검증과 동일한 방법으로 0’를 생성하여 검증한다. 이 과정은 그림 2와 같다.

(그림 2) XTR 기반의 proxy protect를 만족하는 부분위임 대리 서명

4.3. XTR 기반의 증명서 위임 대리 서명

본 서명자 A는 k를 선택한 후 S认 Tr(g))를 계산한다. 初”와 K= 7* Xg )을 해쉬하여 e =

를 만든 후 비밀 정보 <7를 생성한다. o=esA + k mod/>—l를 계산한 후 %” a, K를 대리 서명자 B 에게 보낸다. B는 A에게서 받은 皿와 TT/을 해 쉬하여 e=/z(所“, K)를 얻는다. 비밀 정보。의 유용성을 확인하기 위해 7Xg°)= TXg 찌+* )를 계산한다. 또한 SAT代g)\ e, TKG, S&rKg))를 사용하여 알고리즘 4丄1에 의해 를 계산한다. 이 값과 BCg17) 를 비교하여 유용성을 판별한다.

Ⅴ. 안전성 및 효율성 분석

5.1. 안전성 분석

XTR의 안전성은 S“( 77(g))의 값으로부터 71을찾을 수 없어야 한다는 것에 기반을 둔다. 이것은 이산 대수 문제에 기반을 두는 것과 동일한 안전성을가진다 U

3장에서 제시된 대리 서명 프로토콜은 이산 대수 문제(DLP)를 기반으로 한다. 이러한 이산 대수 문제를 기반으로 하는 프로토콜에 대한 XTR 적용은 프로토콜 자체의 안정성을 그대로 유지하게 된다.

대리 서명의 요구사항 중 위조 방지는 비밀 정보 <7를 비밀 채널을 이용하여 전송하므로 만족할 수있다. 또한 제 3자가 서명 값에 있는 &(7Xg)), 공개 정보 7Xg)와 〃喝를 이용하여 공개키 i/를 생성하여 서명을 검증한다. 4장에서 제시된 2개의 프로토콜중 XTR 기반의 증명서 위임 대리 프로토콜은 DLP기반 프로토콜과 동일하게 proxy unprotect이므로신원 확인과 부인 방지를 만족하지 못한다. 그러나 XTR 기반의 proxy protect를 만족하는 부분위임 서명프로토콜에서는 비밀 정보(7에 대리 서명자의 개인키 %가 포함되어 있으므로 검증 시 대리 서명을 작성한 사람의 신원 확인이 가능하고 또한 부인 방지를 만족한다.

즉 XTR기반의 대리 서명 프로토콜은 그 자체로서 DLP 기반의 프로토콜 안전성을 그대로 유지하게 되고, 따라서 대리 서명의 기본적인 요구사항 또한 만족한다.

5.2. 효율성 분석

본 논문에서는 Mambo와 Kim 등이 제안한 대리 서명 기법에 XTR 암호 시스템을 적용함으로써 프로토콜 진행 시 키길이의 감소와 연산량의 효율성을 높일 수 있다.

XTR은 160 비트의 키 길이로 1024 비트의 키 길이를 갖는 이산대수 문제에 기반한 암호 시스템과 동일한 안전성을 갖고 빠른 연산속도를 가진다”切. 표2는 XTR 기반과 DLP 기반에 대한 proxy protect 를 만족하는 부분 위임 대리 서명 프로토콜의 효율성을 비교 분석하였다. DLP 기반의 프로토콜에서는 본 서명자가 proxy 생성시 X값을 생성하기 위해 pow mod 연산을 1번 하게된다. 또한 대리 서명자가 proxy 생성시 r을 생성하기 위해, 또한 서명의 검증을 위해 각각 pow mod 연산 1번과 곱셈 연산 1번이 필요하다.

(표 2) XTR기반의 대리서명 프로토콜의 효율성 비교

XTR 기반의 프로토콜에서는 본 서명자의 proxy 생성 시 필요한 S»(7Xg))연산에는 81og源번의 곱셈 연산이 필요하다田. 대리 서명자 역시 proxy 생성시 z■을 생성하기 위해 81og2芬H번의 곱셈 연산이 필요하다. 또한 proxy 검증시 대리 서명자는 제안하는알고리즘을 사용하게 된다. 제안하는 알고리즘은 ii 에서 81og沥번의 곱셈 연산, iv의 과정에서 321og沥 + 68번의 곱셈 연산, vi의 과정에서 81og;汐+34번의 곱셈 연산이 필요하다. 즉 proxy검증시 총 48 log 沙 + 136번의 곱셈 연산이 필요하다.

Ⅵ. 결론

본 논문에서는 XTR 암호 시스템을 기반으로 하는 대리 서명 프로토콜을 제시하였다. 대리 서명 프로토콜을 XTR에 적용하기 위해서는 卩(怎七琳)의 연산을 반드시 해야한다. 기존의 XTR에서는 대리 서명의 생성 및 검증에 사용될 TXMg勺의 연산을 구하기 위해서는 Q와 의 값을 알고 있어야 한다.의 값을 알게 된다는 것은 본 서명자의 비밀키 또는 임시 비밀키 중 한 개가 대리 서명자가 알아야 한다는 것이다. 따라서 7Xg〃g싸)의 연산을 3와 공개 정보를 이용하여 구할수 있는 알고리즘을 제시하였다.

이 알고리즘을 사용하여 XTR을 대리 서명에 적용하여 대리 서명의 비밀 정보 생성 및 검증 속도를향상 시켰다. 또한 키 길이의 단축과 연산량 감소의효율을 가져왔다. 이러한 연산 속도 향상과 키 길이단축은 유선뿐만 아니라 무선인터넷에서도 효율적으로 사용될 수 있다.

향후 과제로서 기존의 대리 서명 프로토콜을 XTR 에 적용하는 과정에서 새롭게 제안된 알고리즘의 연산량 축소가 필요하다. 또한 프로토콜 진행시 전송되는 전송량을 줄이기 위한 새로운 프로토콜 연구가 필요하다.

References

  1. Proceedings of Crypto, LNCS 1880 The XTR public key system Arjen K. Lenstra;Eric R.Verheul
  2. Proceedings of Asiacrypt Speeding up XTR Martijn Stam;Arjen K.Lenstra
  3. Proceedings of International Conference on Information and Communications Security Proxy signatures, revisited S.Kim;S.Park;D.Won
  4. IEICE Trans. Fundamentals v.E79-A no.9 Proxy signature : Delegation of the power to sign messages M.Mambo;K.Usuda;E.Okamoto
  5. Proceedings of ACISP'98-Australasian Conference on Information Security and Privacy, Lecture Notes in Computer Science v.1438 On Zhang's Nonrepudiable Proxy Signature Scheme N.Lee;T.Hwang;C.Wang
  6. Advances in Cryptology-Eurocrypt Evidence that XTR is more secure than supersingular elliptic curve cryptosystems Eric R.Verheul
  7. Proceedings Asiacrypt, LNCS 1716 Doing more with fewer bits A.E.Brouwer;R.Pellikaan;E.R.Verheul