DOI QR코드

DOI QR Code

A Practical Approach Defeating Blackmailing XTR-version Identification protocol

XTR 버전의 개인식별 프로토콜을 이용해 블랙메일링을 막는 실질적인 방법

  • 한동국 (고려대학교 정보보호기술연구센터) ;
  • 박혜영 (고려대학교 정보보호기술연구센터) ;
  • 박영호 (고려대학교 정보보호기술연구센터) ;
  • 김창한 (세명대학교) ;
  • 임종인 (고려대학교 정보보호기술연구센터)
  • Published : 2002.02.01

Abstract

Electronic cash system based on anonymous coins have been invented by David Chaum. However, von Solms and Naccache discovered that such anonymous coins also very well suited to support criminals in Blacoailing. In this paper, we suggest a method that a client informs a bank of the information about blackmailing attack by using Schnorr identification protocol of XTR version at the stage of identification, whenever he is blackmailed. In general, blackmailing is the most serious among the various drawbacks of electronic cash system. Especially, blackmiling to be done when the client is kidnapped brings a fatal result to electronic cash system. But if the Schnorr identification protocol of XTR version is used, we can efficiently defeat blackmailing without assumption required in the existing method to defeat blackmailing.

블라인드 서명을 기반으로 만든 전자화폐 시스템이 David clam에 의하여 처음으로 제안되었다. 그러나 vain Solms과 Naccache는 블라인딩된 화폐는 블랙메일링 공격을 쉽게 허용한다는 것을 발견했다. 본 논문에서는 XTR을 이용해 Schnorr 개인식별 프로토콜을 구성하여 블랙메일링 공격이 있을 경우에 은행에게 블랙메일링 공격에 대한 정보를 개인식별 과정에서 알려주는 방법을 제안한다. 일반적으로 전자화폐가 가지는 여러 가지 문제점 중에서 블랙메일링이 가장 심각하다. 특히 고객을 납치한 상태에서의 블랙메일링은 전자화폐 시스템에 치명적인 결과를 가져오게 된다. 그러나 본 논문에서 제안한 XTR 버전의 Schnorr 개인식별 프로토콜을 사용하면 기존의 방법들이 블랙메일링 공격을 막기 위해 필요로 하는 가정들을 사용하지 않고도 효과적으로 블랙메일링 공격을 막을 수 있는 실질적인 방법이 된다.

Keywords

Ⅰ. 서론

인터넷과 전자상거래의 중요성이 부각되면서, 전자화폐는 활발한 연구분야가 되었다. David Chaum에 의하여 전자화폐의 확고한 틀을 형성하는 기본적인 암호학적 개념들이 소개되었다. 초기 전자화폐 시스템(electronic cash system)에서는 은행 또는 상점에 대한 안전성과 사용자에 대한 익명성(anonymity)을 동시에 부여할 수 없다고 생각되어 겼다. 그러나 공개키 암호 기술의 개발로 말미암아 정직한 구매자의 익명성이 보장되는 새로운 전자화폐 시스템이 제안되기 시작했다. 여기서 -정직한 구매자의 익명성이 보장된다는 것은 전자화폐의 지불장소, 지불과정에서의 물품 구입 내용, 구매자 식별정보가 어느 누구에 의해서도 추적될 수 없다는 것을 의미한다. 이런 목적으로 1983년에 David Chaum에 의하여 처음으로 통신상의 지불시스템에서 개인의 프라이버시를 보호하기 위해 블라인드 서명blind signature)을 기반으로 한 익명지불 시스템 (anonymous payment systems)0] 제안되었다.'"* 그러나 1992년 von Solms와 Naccache에 의하여 이러한 무조건적인 익명 (unconditional anonymity)은 화폐의 이중사용, 돈세탁, 돈약탈 등과 같은 범죄에 악용될 수 있음이 증명되었다.(1)) 예를 들어 블랙메일러(blackmailer)가 피해자로부터 블라인드 서명을 이용하여 인출한 돈을 강제로 갈취하였을 경우에 블라인드 서명의 특성상 사후에 강제로 갈취된 돈에 대하여 은행이나 피해자는 확인이 불가능하게 된다. 더욱이 블랙메일러에 의하여 블랙메일된 돈이 관찰할 수 없는 통신 채널(anonymous channel)을 통하여 익명으로 전달될 경우에는 블랙메일러의 신분을 확인하거나 추적하는 것은 불가능하게 된다. 즉 완벽한 범죄(perfect crime)가 되는 것이다.

위에서 언급한 익명성을 보장함으로써 생기는 문제들을 개선한 여러 대안들이 제안되었다. 특별히 Kugler와 Vogt는 사용자의 익명성을 보장하면서 블랙메일링을 막는 방법을 제안하였다.⑻ 그러나 〔8〕에서 블랙메일링 공격을 막기 위해서는 블랙 메일링 공격이 있을 경우에 은행과 고객사이에 이루어지는 통신 내용-블랙메일링 공격을 받고 있다는 정보-을 블랙메일러가 알 수 없어야 한다는 가정이 필요하다.⑻ 만약에 블랙메일러가 피해자를 납치(kidnapping)하여 블랙메일링 공격을 할 경우에는 피해자가 은행에게 블랙메일링 공격에 대한 정보를 줄 수 없게 된다. 따라서 피해자가 납치된 경우에는 위장된 채널(covert channel)의 존재를 가정하여 블랙 메일링 공격에 대한 정보를 은행에게 전달하게 된다.⑻ 〔8〕에서 제안한 블랙메일링 공격을 막는 방법이 적용되려면 위에서 언급한 가정이 반드시 필요하다. 그러나 이런 가정이 필요하다는 것은 그 만큼 공격을 막는 것이 쉽지 않음을 의미한다.

본 논문에서는 현실적으로 쉽지 않은 가정을 바탕으로 제안된 블랙메일링 공격을 막는 방법 대신에 Schnorr 개인식별(identification) 프로토콜을 변형하여 만든 새로운 XTR 버전의 Schnorr 개인식별 프로토콜을 이용함으로써 인출과정 전에 필요한 개인식별 과정에서 블랙메일링 공격에 대한 정보를 은행에게 알려주는 방법을 제안한다. 특텰히 납치나 신분 위장(impersonation)과 같은 공격에서는 은행과 피해자가 통신을 하는 것이 아니라 블랙메일러가 은행과 직접 통신을 하기 때문에〔8〕에서 하는 가정이 없으면 블랙메일링 공격에 대한 정보를 은행에게 전달하기는 쉽지 않다.⑻ 그러나 본 논문에서는 완벽한 범죄의 경우 개인식별 과정에서 100% 범죄사실을 은행에게 알려 줄 수 있고, 신분 위장이나 납치와 같은 공격에 대해서도 2/3 확률로 개인식별과정에서 블랙메일링 공격에 대한 정보를 은행에게 줄 수 있다. 즉 신분 위장이나 납치와 같은 공격에서 블랙메일러가 개인식별 과정을 정당한 사용자처럼 통과할 확률은 1/3이다. 따라서 블랙데일러는 신분 위장이나 납치와 같은 방법을 이용해 블랙메일링 공격을 할 경우 생기는 위험 부담이 크기 때문에 기존의 방법을 이용한 범죄는 급격히 감소할 것이다.

본 논문의 구성은 다음과 같다. 2절에서는 전자화폐 시스템에서 생기는 블랙메일링 공격을 막는 기존의 방법들을 살펴보고, 3절에서는 2절에서 살펴본 방법들을 개선하기 위하여 사용되는 XTR 공개키 시스템의 구성을 살펴본다.⑼ 그리고 4절에서는 개선된 XTR-Schnorr 개인식별 프로토콜을 제안한다. 5절에서는 블랙메일링을 막는 실질적인 방법을 소개하고 마지막으로 6절에서는 결론을 살펴보도록 하겠다.

Ⅱ. 기존의 블랙메일링 공격을 막는 방법들

전자화폐의 요구조건 중 특별히 익명성(anonymity 에 대한 중요성을 많이 강조한다. 초기에는 무조건적인 익명성을 제공함으로써 소비자의 익명성을 보장하였는데, 이것은 또한 공격의 빌미가 되기도 하였다. 따라서 블랙메일링. 돈세탁, 불법적 구매 등과 같은 전자화폐에서 생기는 문제도 해결하고, 또한 소비자의 익명성도 보장하기 위하여 나타난 새로운 방법이 취소 가능한 익명성(revokable anonymity)을 가진 전자화폐 시스템이다「L57)이와 같은 전자화폐 시스템에서는 언제든지 사용자의 익명성을 취소할 능력을 가진 신뢰할 수 있는 제3의 기관(trusted third party)의 존재를 가정한다. 따라서 블랙 메일링과 같은 불법적인 행동이 적발되었을 때에 신뢰할 수 있는 저】3의 기관이 개입하여 돈의 추적과 사용자의 추적을 가능하게 함으로 전자화폐에서 생기는 여러 공격을 막을 수 있게 하였다. 그러나 만약에 신뢰할 수 있는 제3의 기관이 자신의 능력을 남용한다면, 정직한 사용자의 프라이버시, 즉 사용자의 익명성이 침해받을 수 있다는 문제를 갖게 된다. 이러한 문제를 해결하기 위하여 Kugler와 Vogt는 신뢰할 수 있는 제3의 기관의 존재를 배제하고. 사용자의 익명성은 제한하지 않으며, 취소 가능한 익명성을 가지는 온라인 전자화폐 시스템을 제안하였다.⑻

블랙메일링이 이루어지는 시나리오를 3가지 정도로 요약해 볼 수 있다.⑻

1) 완벽한 범죄 (Perfect crime)

이것은 블랙메일러(blackmailer)가 피해자에게 익명 채널(anonymous channel)을 통해 접근하여 자신에 의하여 선택되어지고 블라인딩된 화폐를 인출하도록 협박하는 것이다. 여기서 블랙메일러는 피해자와만 통신을 한다.

2) 신분 위장(Impersonation)

이것은 블랙메일러가 피해자의 은행 계좌에 대한정보-신분 확인에 쓰이는 개인키-를 얻어서 그 자신이 인출을 하는 것이다. 여기서는 블랙메일러가 자신이 은행 계좌의 주인인 것처럼 직접 은행과 통신을 한다.

3) 피해자를 납치任kidnapping)

이것은 블랙메일러가 피해자를 육체적으로 제압하여 신분 위장과 유사한 방법으로 화폐를 인출하는 방법이다. 신분 위장과 마찬가지로 블랙메일러가 직접 은행과 통신을 한다.

〔8〕에서는 위 3가지 시나리오에 대한 공격을 막을 수 있는 방법을 제안했다.⑻ 그것은 블라인드 부인방지 서명(blind undeniable signature)을 이용하여 만든 새로운 온라인 전자화폐 시스템이다. 〔8〕에서 제안한 전자화폐 시스템은 블랙메일링 공격이 있을 경우에 소비자의 요청에 의해 발급되어지는 화폐에 적당한 표시(marking)를 하는 것이다. 블랙메일러가 정당한 화폐와 표시가 이루어진 화폐를 구별하는 것은 불가능하게 되어 있다.

이 시스템이 가지는 몇 가지 장점이 있다.

첫째. 사용되지 않은 표시된 화폐에 대하여는 그 화폐 자체를 무효화시킬 수 있고, 소비자에게 그 만큼의 돈은 반환되어진다. 그러나 이미 사용된 표시된 돈(marked coins)에 대하여는 손실을 볼 수밖에 없다.

둘째. 모든 표시된 돈은 입금과정에서 효과적으로 찾아낼 수 있다. 이것은 블랙메일러 추적을 가능하게 한다.

셋째. 블랙메일링과 같은 범죄를 막기 위하여 화폐에 표시(marking)하는 방법은 정직한 사용자에 대해서 불법적으로 추적하는 것을 허용하지 않는다.

그러나〔8〕에서 제시한 방법이 가능하기 위해서는 블랙메일링 공격이 있을 때에 소비자가 은행에게 블랙메일링 공격에 대한 정보를 주어야 한다는 것이다.⑻ 〔8〕에서는 이것을 해결하기 위하여 완벽한 범죄와 신분 위장과 같은 범죄에서는 피해자가 블랙메일링 공격을 당하고 있다는 정보를 블랙메일러가 알 수 없게 은행에게 줄 수 있다는 가정을 한斗.⑻ 그리고 납치 공격에서는 당연히 블랙메일러가 피해자와 은행사이의 연락을 하지 못하도록 강제적인 행동을 취하겠지만, 위장된 채널(covert channel)의 존재를 가정하고, 〔6〕에서 언급한 distress 화폐 시스템의 아이디어를 적용함으로써 은행과 피해자 사이에 블랙메일링 공격에 대한 정보를 주어야 하는 문제를 해결했다. ⑹

우리는〔8〕에서 3가지 블랙메일링 공격을 막는 시나리오에 대한 가정들이 대단히 강력함을 알 수 있다. 그리고 만약에 이런 가정이 성립하지 않을 경우에는 블랙메일링을 막을 수 있는 다른 방법이 없게 되므로 Kugler와 Vogt에 의하여 제안된 전자화폐 시스템에 치명적인 결함이 생기게 된다.

Ⅲ. XTR

이번 장에서는 XTR의 특성과 XTR-Schnorr 개인식별 프로토콜을 살펴보도록 하겠다. XTR 공개키시스템을 살펴보기에 앞서, 유한체. G®. GH/>6)에서 몇 가지 용어에 대한 정의를 알아보도록 한다.

- conjugate : /z v GF(/)6)의 GF(、们 위에서의 conjugatese h, ht, ', ht, ' 이다.

trace : h e 効(疣)의 GF(疣) 위에서의 trace 773)는 /z의 GF(/)2) 위에서의 coreuates의 합이다. 즉.

#

XTR 유한체의 부분집합의 원소를 표현하고 그것의 지수승을 계산하는 데에 trace를 이용하는 방법이다. XTRe 素(疥)의 명확한 구성없이 GF(甘')의 안전성을 가지면서 GF。?)의 연산을 사용하는 최초의 방법이다. XTR의 시스템 파라메터에 대해 살펴보자. p=2 (mod 3)을 만족하는 170비트 정도의 소수이며, q는 160비트 정도의 소수로 sixth cyclotomic polynomial <爲3)= 疣-力+1의 인수가 되게 잡는다. gv GF3*5)는 위수가 g인 원소이다. 여기서 XTR 부분군의 생성원으로서 77(g)를 사용한다. GF(》2)의 원소들의 연산의 효율성을 위해, GF3)상에서 GF(/>2)에 대한 최적정규기저를 사용하여 GF(z>2)의 원소들을 표현한다. 也, <円를 GF(p)상에서 愛(疣)에 대한 최적정규기저라고 흐}.자. 여기서 a와 /은 (X3-1)/(X-1)=X2+X+1의 근이 된다. 또한 a'=a‘3M 3)이므로 GF3)는 다g과 같다.

#

XTRe 다음과 같은 몇 가지 특징을 갖는다.

[정리 1]

위수가 g인 원소 gw 6瓦疥)에 대해. 77(g') = Tr(g*는 g'와 g"가 <护(疣)에서 conjugate이라는 것과 동치이다.

[증명]

(=>) 위수가 <7인 원소 gvGF36)에 대해 F[X) = X3- TrigeX2 + 7Xg')"X— 1 u GF(/>2)[XI는 GF(/>2)에서 기약 다항식이며 그것의 근들은 GF\p2)에서 g'의 conjugate이다. 즉, g', g, t?, g, t, a] F(X)의 근이 된다. Tr(g')= 次/)이기 때문에,

#

가 된다. 따라서 K는 尸(X)의 근이 된다. 그러므로 g'와 g;가 GF(z>2)에서 conjugate이다. (<=) g'와가 GF(z>2)에서 conjugate이므로, 4 = 甘, g'=g步 또는 g' = g"'이 된다. h e GF(/)6)에 대해,이므로 7Xg')= 2>3)를 만족하게 된다. □

[정리 2]

力와 q는 <7 I (/-/>+1)을 만족하는 소스라고 하자. 만약 g e GF(胪)의 위수가 q 이면 부-분군<g>는 GF。。)의 부분체 GF(p) GF/) GF(/>3) 에 속하지 않는다. ⑼

암호 프로토콜에서 XTR의 응용은 안전성을 감소시키지 않으면서 통신량과 계산량 둘 다에 있어서 실질적인 감소를 가져다 준다. XTRe 부분군의 이산대수문제에 의존하는 암호시스템에 적용될 수 있다.

3.1 XTR-Schnorr 개인식별 프로토콜

이번 절에서는 XTR을 Schnorr 개인식별 프로토콜에 적용한 것을 살펴보겠다. 이 프로토콜을 XTR-Schnorr 개인식별 프로토콜이라고 부르도록 하자. 먼저[그림 1〕에서 보여주는 Schnorr 개인식별 프로토콜 대해 알아보자.

[그림 1) Schnorr 개인식별 프로토콜

■ System Setup

1. 적당한 소수 2를 잡고 P~ 1 을 나누는 q를 택한다. 2. 위수가 q인 원소 g를 선택한다.

단, 1 M gM 0- 1

3. 변수 £를 2'< q가 되게 선택한다. 예를 tN 40이면 된다.

■ 사용자의 변수 선택

Alice의 개인키 : s s [0, « — 1] Alice의 공개키 : v=g ~s mod p

■ 프로토콜

1. Alice는 난수 k 0M 为 Mq-l) 를 선택하고 x = gk mod》를 계산한 후 x를 Bob에게 보낸다.

2. Bobe Alice에게 난수 e를 보낸다. 여기서 e는 1 M e M 2’을 만족하는 값이다.

3. Alice는 1 M eM 2'를 확인하고 se+k mod q를 계산하여 y를 Bob에게 보낸다.

4. Bobe z = g/ve mod fr를 계산하여, z = x 이면 Alice임을 확인하게 된다.

이제[그림 2〕에서 보여주는 XTR-Schnorr 개인식별 프로토콜을 살펴보자. 이 프로토콜은[그림 1〕에서 보였던 Schnorr 개인식별 프로토콜을 XTR 버전으로 전환한 것이다.

[그림 2] XTR-Schnorr 개인식별 프로토콜

■ System Setup

XTR-S산morr 개인식별 프로토콜에서 시스템 파라메터는 q \ (疣 — 力+1)를 만족하는 소수 P, q, t 그리 이다.

1. />=2(mod 3)는 170비트 정도의 소수이며 q는 160비트 정도의 소수이다.

2. 위수가 g인 원소 gu GF(力6)에 대해 B(g)를 찾는다.

3. 2’< g인 변수 f>40를 선택한다.

■ 사용자의 변수 선택

Alice의 개인키 : s w [0, g —1]

Alice의 공개키 : v= TAeg~s)

■ XTR-Schnorr 개인식별 프로토콜

1. Alice는 난수 U m k m q—1)를 선택하고 X— 를 계산한 후 尤를 Bob에게 보낸다.

2. Bobe Alice에게 난수 e를 보낸다. 여기서 e는 1 M。M 2, 을 만족하는 값이다.

3. Alice 는 1 M 2’를 확인하고 y=se-¥ k mod q를 계산하여 >를 Bob에게 보낸다.

4. Bobe z= 를 계산하여, z = x이면 Alice임을 확인하게 된다.

Remark. Tr(gyg~se) Tr(g), v= Tr(ges) 그리고 y, e에 기반 하여 알고리즘 2.4.8에 의해 계산된다.⑼ 이때 Bobe Alice의 비밀키 s를 모른다는 사실에 주목하자.

Ⅳ. 개선된 XTR-Schnorr 개인식별 프로토콜

이번 장에서는 은행에게 블랙메일링에 대한 정보를 주기 위한 개선된 XTR-Schnorr 개인식별 프로토콜을 구성하고. 그 특징들에 대해 살펴보도록 한다. 다음의 시나리오에서 Alice는 자신의 신원을은행에게 증명하기를 원한다. 전체적인 프로토콜은 [그림 3] 에 나타나 있다.

■ Advance Preparations

1. 은행의 비밀키 : 3 (< g )

은행의 공개키 : 万(史)

2. 사전에 사용자와 은행사이에 약속된 대칭키 알고리즘 E

3. Alice는 일반적인 과정에서 사용하는 응답의 크기를 은행과 약속해 놓는다.

■ System setup

개인식별 프로토콜에서 시스템 파라메터는 q I (疣 —/>+1)를 만족하는 소수 p, q. Trig) 그티고 f이다.

1. 力三2(mod 3)는 170비트 정도의 소수이며 q는 160 비트 정도의 소수이다.

2. 위수가 g인 원소 gMGF(》6)에 대해 적당한 TK点를 찾는다.

3. 2'< q인 변수 f>40를 선택한다.

■ 사용자의 변수 선택

Alice의 개인키 : s V [0, g —1]

Alice의 공개키 : v= Tr(g~s~)

■ 개선된 XTR-Schnorr 개인식별 프로토콜

1. Alice는 난수 k 0 M 为M g-l)를 선택하고 %= Tr{貯를 계산한 후 *를 Bob에게 보낸다. Alice는 TKg**)를 계산하고 7Xg施)에 기반하여 대칭키 알고리즘의 K를 결정한다.

여기서 대칭키 알고리즘의 키 K를 결정방법은 사전에 은행과 고객사이에 약속된 방법을 이용한다. 예를 들어 K가 I 비트라고 하면, 340비트 길이를 갖는 TXg")로부터 최상위 Z 비트를 X로 사용할 수 있다.

2. 은행 Tr(g初)를 계산하고 마찬가 7Xg粤에 기반하여 대칭키 알고리즘의 키 K를 한다. 은행은 Alice에게 1 M e M 2’인 난수 e를 보낸다.

3. Alice는 1 M e M 2'를확인하고 % = (se+ H) mod q y2 = y1 - p2 mod q 그리고 y3 = yj ■ pi mod q을개산한다. 이때, 만약 % = 0이면 이 프로토콜을 끝내고 1.부터 다시 프로토콜을 시작한다(그러나 % = 0일 확률은 1/g로써 무시할 정도로 작다). 만약 叫女。이면 im /M3에 대해, 일반적인 과정에서 사용하기로 은행과 약속 된 크기 乂를 선택한다. 이 값을 공유된 비밀 K를 사용하여 사전에 약속된 대칭키 알고리즘 E로 암호화하여 丘心)을 은행에 전달한다.

4. 은행은 E«(%)를 공유된 비밀키 K를 사용하여 복호화한 후 y, 를 구한다. 에 대해 x =以厂厂“""'")인지를 확인한다. 만약 이 값이 같지 않다면 개인식별과정을 통과하지 못한다. 은행은 H가 일반적인 과정에서 사용하 Alice와 약속했던 크기인지 확인한다. 만약 y, 가 일반적인 과정에서 사용되는 크기의 값이 아니면 은행은 Alice가 블랙메일링 공격을 받고있다는 것을 의심하게 된다.

(그림 3) 개선된 XTR-Schnorr 개인식별 프로토콜

개선된 XTR-Schnorr 개인식별 프로토콜은 다음과 같은 특징을 가진다.

[정리 3]

yt = (se+ k) mod q, y2 = yi . />2mod q, % 三 H . Pimodq 일 때, 1GM3에 대한 세 개의 y, 는 개선된 XTR-Schnorr 개인식별 프로토콜의 확인과정 4를 통과한다.

[증명

만약 M = (se+^) mod a이 은행에 보내진다면. /=1인 경우에 다음을 만족한다. TXgMgF'mM。) = 7Xg 3 . * mod %_樂 mod。)= 曰 (g*) = %이 므로 x= B(g"gF)이 된다. 만약 y2= (se+&) . />2mod q가 은행에 보내진다면, /=2인 경우에 다음을 만족한다.

g—s어? mod q)

= 7、K(g (駝十 저* mod q- sep~ mod <7)

= 万篋")이고尤=次疽厂妍)이 된다. 왜냐하면 〔정리 1〕에 의해, Tr(g同*) = 7尸(£*) = 尤이기 때문이다. 만약 y3 = (se+ k) - p4 mod q이 은행에 보내질 경우, , = 3인 경우 다음을 만족한다. mg"gF' "心。)= Tr(g{se+k}pi mod Qg ~sepi mod 9) = T/(g 허*)이므로 x= T, (g"g「湖')이 돈1 다. 왜냐하면〔정리 1〕에 의해, T, 《g")= 7Xg*) =x이기 때문이다. □

[보조정리 1]

만약 乂莉이면 %, %는 모두 다른 값이다 즉 서로 다른 크기의 값이다.

[증명]

다음과 같은 세 가지 경우를 고려해 보자.

경우 1)

만약 % = %이면,

se+ k=(se+ k) . p2 mod q이고

(.se+k) . (z>2 —1) 三o mod q가 된다. 따라서

se+ keO mod q 또는 胪― 1=0 mod g가 성립한다.

가정 에 의해 y件=0이므로 力2 _ i=o mod q이다. 그러면 geGF(疣)이 되어 〔정리 2〕에 모순이 된다.

따라서 ^1*^2 이다.

경우2)

만약 s = %이면,

se+ k={se+ H) - />4 mod g이고 (se+ k) . (/>4 — 1)= (se+») . (/>2-1) . (疣 +1)=0 mod q가 된다. 따라서 se+ 在三0 mod q, />2 — 1 =0 mod q 또는 p2 + 1=0 mod g가 성립한다. 경우1 어】 의해 q는 疣- 1을 나누지 않고 가정에 의해 疗尚이므로 疣+ 1=0 mod q이다. 그러나 />2-力+1 =o mod g 이므로 (力2-/>+1) - (.P2+ 1) = -/>= 0 mod a가된다. 따라서 q I p가 되어 4< P와 P, a가 소수라는 것에 모순이 된다. 따라서 >i 丰%이다.

경우3)

만약 % = %이면,

(se+ k) . p2=(se+ k) . pi mod g이고

(se+ k~) .(力4 —》2) = (se+») , (Z>2 —1) . p2=0 mod q가 된다.

따라서 se+ ke0 mod q, — mod q 또는 胪=。mod a가 성립한다. 경우 1에 의해 q는 疣-1을 나누지 않고 가정에 의해 s 丰0이므로 p2=0 mod q이다. 그러나 p, g가 소수이므로 이것은 불가능하다. 따라서 y2ey3 이다. 口

개선된 XTR-Schnorr 개인식별 프로토콜이 가지는 특징을 살펴보자.

1. 개선된 XTR-Schnorr 개인식별 프로토콜에서는 Alice가 전달하는 x= 와 은행의 공개키 TXg')를 이용하여 임시적으로 사용하는 공유키를 생성한다.

2. 개선된 XTR-Schnorr 개인식별 프로토콜에서는 은행이 전달하는 하나의 시도값。에 대하여 서로 다른 값을 가지는 세개의 응답값 {%}가 존재하고, 세개 모두는 Alice의 신분을 은행에게 확인시키는 과정을 통과한다.

3. 개선된 XTR-Schnorr 개인식별 프로토콜에서는 응답 값 y, .을 전달할 경우에 대칭키 알고리즘을 사용하여 암호화하여 은행에게 전달한다.

개선된 XTR-Schnorr 개인식별 프로토콜에서 같은 시도값。에 대해 서로 다른 세 개의 응답 {刃을 생성하는 특성을 사용해서, 피해자는 돈이 인출되기 전에 은행에게 블랙메일링을 알려줄 수 있어야 한다는 〔8〕에서의 특별한 가정 없이도 피해자가 블랙메일링에 대해 은행에게 알려줄 수 있는 방법을 제안한다.

Ⅴ. 블랙메일링을 막는 실질적인 방법

〔8〕에서 블라인드 부인방지 서명에 기반 하여 사용자의 프라이버시를 보호하면서 블랙메일링을 막을 수 있는 지불시스템을 제안하였다.⑻ 이 전자화폐 시스템은 전자화폐 시스템에서 일어나는 세 가지 블랙메일링 시나리오에 대하여 다음과 같은 특별한 가정을 필요로 한다.

- 가정: 완벽한 범죄, 신분 위장의 경우

블랙메일러는 완벽한 범죄나 신분 위장의 경우에 은행과 피해자 사이의 블랙메일링에 대한 통신을 알아챌 수 없어야한다.

- 가정 : 납치의 경우

은행에게 납치되었다는 것을 알려줄 수 있는 비밀채널이 존재한다.

만약 피해자가 블랙메일링에 관한 정보를 항상 줄 수 있다면 〔8〕에서 제안한 전자화폐 지불 시스템은 실질적인 것이 된다. 그러나 정보를 줄 수 없다면 비현실적인 것이 된다. 이번 장에서는 개선된 XTR-Schnorr 개인식별 프로토콜을 사용하여 피해자가 다른 방법으로 은행과 통신을 할 수 없는 경우에도 블랙메일링을 막을 수 있는 실질적인 방법을 소개한다.

전자화폐시스템에서 구매자는 화폐의 인출 전에 개인식별과정을 거쳐야 한다. 이 과정에서 블랙메일링 공격에 처한 구매자의 상태를 은행과 통신을 할 수 있는 다른 방법이 없어도 은행에게 알려줄 수 있는 기법을 첨가한다. 이 방법은 개인식별 프로토콜이 전자화폐시스템의 기본적인 과정이기 때문에 어떠한 부가적이 가정도 필요로 하지 않는다. 이러한 제안에 대해 정리3에서 보였듯이 개인식별과정을 만족하는 세 개의 다른 응답 {北 I 1 M M 3}이 존재하는 특성을 가진 개선된 XTR-Schnorr 개인식별 프로토콜을 사용한다. 이 특성을 이용하기 위해서 사용자는 새로운 계좌를 열 때에 은행과 다음과 같은 약속을 하게된다. 개선된 XTR-Schnorr 개인식별프로토콜에서는 정리3에서 살펴본 것과 같이 자신의 신분을 확인시키는데 필요한 응답이 서로 다른 크기를 가지는 세 개가 항상 존재함을 알 수 있다. 그러면 사용자는 이 세 개의 크기 중에서 일반적인 과정-평상시-에서 사용하는 크기를 결정한다. 그러면 나머지 두 크기의 값은 블랙메일링의 경우에 사용하기로 한다. 예를 들어 한 사용자가 정당한 경우에 사용하는 크기를 서로 다른 세 개의 응납 {”.} 중에서 가장 큰 값이라고 은행과 사전에 정하였다고 화자. 그러면 만약에 사용자가 블랙메일링 공격을 당하고 있다는 정보를 은행에게 알려주고 싶다면 사용자는 세 개의 응답 중에서 중간 크기의 값이나 가장 작은 값을 사용하여 은행에게 보내게 되면 자신의 .분을 확인시키면서 또한 자신의 상태를 은행에게 알려줄 수 있게 된다. 은행으로부터 받은 시도값 e에 대한 선택된 응답값 %는 키 X로 사전에 약속된 대칭키 알고리즘 E를 이용하여 암호화한 Eg%)를 은행에 보낸다. 그러면 위의 세 가지 블랙메일링 시匸리오에 대해 특별한 가정 없이. 화폐가 인출되기 전에 블랙메일링에 대해 은행에 알려줄 수 있게 된다.

위에서 살펴보았듯이. 반드시 암호화된 y;가 은행에 보내져야 한다. 왜냐하면 암호화되지 많은 叫가 보내질 경우 다음과 같은 문제가 발생하기 때문이다. 만약 叫가 암호화되지 않고 보내진다면, 블랙메일러는 먼저 은행과 사용자사이의 일반적인 과정에서 전송되는 乂를 관찰한 후 y/ y; . 疣 mod g y, - . pi mod q을 계산하여 이 값들의 크기를 비교할 수 있다. 따라서 블랙메일러는 일반적인 경우에서 사용되는 y,의 크기를 알아낼 수 있다. 이것은 다음과 같이 증명된다.

1. y1이 은행에 보내질 경우

이 경우 >i, >2 = ^1 - ■胪 mod q, x, = >! . />4 mod q의 크기를 비교하여 일반적인 과정에서 사용되는 %의 정확한 크기를 알 수 있다.

2. y2 = >1 ' 护 mod g가 은행에 보내질 경우이 경우

>i . />2 mod q - £>' mod q mod q를 계산한다. 疥-z>+i=0 mod g이기 때문 秒-1=0 mod a이고 y\ . ps mod q= 力이 된다. 다라서

{叫.p2 mod q、yi .甘 mod q, . p6 mod q}

= {yi .胪 mod q, yi . p* mod q, yj

= {%, , 1"3}이다. 그러므로

(y] . 护 mod q, . pi mod q, y】 ■ ps mod q}의 크기를 비교해 봄으로써 일반적인 과정에서 사용되는 %의 정확한 크기를 알 수 있다.

3. >3 — >i ' Pi mod g가 은행에 보내질 경우

이 경우 >1 - 砕 mod q y\ ■ mod q y\ . mod q를 계산한다.

力『I이고 />8=/>2 mod g이므로h . p6 mod q = ylt 그리고 yx . ps mod g = y[-p2 mod g이다. 따라서 {yi . p4 mod q, yx . p6 mod q, yx .疥 mod q\ =(>i . pi mod q, %, yi - p2 mod «}二&丄队, %}이다. 그러므로

{_Vi . pi mod g, 力 ■ />6 mod q, yx . />8 mod q}의 크기를 비교해 봄으로써 일반적인 과정에서 사용되는 外의 정확한 크기를 알 수 있다.

5.1 블랙메일링에 관한 정보를 주는 방법

여기서는 개선된 XTR-Schnorr 개인식별 프로토콜을 사용하여 세 가지 블랙메일링 시나리오의 경우에 은행에게 블랙메일링에 대한 정보를 주는 방법을 살펴보도록 한다.

예를 들어 본 논문에서는 개선된 XTR-Schnorr 개인식별 프로토콜을 사용할 때에 자신의 신분을 확인시키는 과정에 필요한 응답값의 크기를 일반적인 경우에 가장 작은 값을 사용하도록 하고, 중간 크기의 값과 가장 큰 값은 블랙메일링의 경우에 사용하도록 약속되었다고 가정한다.

5.1.1 완벽한 범죄를 막는 방법

완벽한 범죄의 경우 블랙메일러는 피해자와만 통신을 한다. 블랙메일러가 익명채널을 통해 피해자와 접촉하여 화폐를 인출하도록 협박할 때, 피해자는 돈을 인출하기 위해 개선된 XTR-Schnorr 개인식별 프로토콜을 통하여 은행에게 자신의 신분을 증명해야만 한다. 이때 사용되어지는 서로 다른 크기를 가지는 세 개의 응답 중에서 중간 값이나 가장 큰 값을 사용함으로써 범죄의 정보를 은행에 줄 수 있다. 따라서 피해자는 화폐인출 전에 항상 은행에게 블랙메일링을 알려 줄 수 있다.

5.1.2 신분 위장이나 납치를 막는 방법

신분 위장이나 납치의 경우 블랙메일러는 그의 신분을 위장하여 화폐인출과정 뿐만 아니라 개인식별프로토콜에도 은행과 직접 통신하게 된다. 납치의 경우 피해자의 비밀키 s는 블랙메일러에게 쉽게 드러나게 된다. 왜냐하면 만약 피해자가 블랙메일러에게 잘못된 개인키를 알려준다면 블랙메일러는 개인식별 프로토콜과정에서 즉시 그 결과를 알게된다. 이것은 피해자에게 치명적인 결과를 초래할 수 있으므로 잘못된 키를 알려주는 것은 쉽지 않다. 그러나 정확한 피해자의 비밀키 s를 알아도 응답으로 보내어지는 값의 크기를 알지 못하게 되면 서로 다른 크기를 가지는 叫중에서 임의로 선택할 수밖에 없다. 응답의 크기는 비밀키와는 달라서 피해자가 블랙메일러의 협박을 받고 잘못된 정보를 주어도 블랙메일러는 그것을 확인할 방법이 없게 된다. 따라서 블랙메일러는 세 개의 응답 중 한 값을 선택하지 않을 수 없다. 그러나 세 값들 중에서 가장 작은 값을 택할 확률은 1/3이 되므로 블랙메일러가 은행에게 블랙메일링의 정보를 알려주는 위험이 비교적 높다. 결과적으로 사용자의 비밀키 s가 드러난다 할지라도 공격은 2/3의 확률로 은행에 알려지게 된다. 여기서 2/3의 확률이 의미하는 것은 블랙메일러가 은행으로부터 인출 받은 전자화폐가 표시된 돈(marked coins)일 확률이다. 즉 사후에 표시된 돈을 사용함으로 인해 추적되어 검거될 확률이 2/3이라는 것이다. 따라서 성공적인 공격을 하는 것이 어렵게 되고 블랙메일러는 이와 같은 공격을 피하게 된다.

5.2 개선된 XTR-Schnorr 개인식별프로토콜의 안전성

이번 절에서는 개선된 XTR-Schnorr 개인식별프로토콜의 안전성을 세 가지 관점에서 분석한다.

- 위조의 확률 : 이 프로토콜에서는 Schnorr 개인식별 프로토콜에서처럼 시도값 e를 정확하게 추측할 확률인 2 '이 무시할 만하게 작게 하기 위해서 t값은 충분히 커야한다. 시도값 e을 정확하게 추측하는 것은 공격자가 Alice로 가장하는 것을 가능하게 한다. 왜냐하면 공격자는 임의로 선택한 y로 睥)을 은행에게 보내고, 다시 시도값 e에 대한 응답값으로 y을 보냄으로 Alice의 정확한 개인키 s를 모르고도 신분위장이 가능하다. 그러나 기존의 Schnorr 개인식별 프로토콜에서는 시도값 e의 추측이 신분위장을 가능하게 하지만 본 논문에서 제안한 개선된 XTR-Schnorr 개인식별 프로토콜에서는 시도값 e을 정확하게 추즉하는 것이 Alice의 신분 위장을 가능하게 하지 않는다. 왜냐하면 Alice의 개인키 s에 대한 정보 없이도 신분확인 과정을 통과하는 乂는 생성할 수 있지만 일반적인 과정에서 사용하는 乂의 크기는 알 수 없기 때문이다. 따라서 기존의 Schnorr 개인식별 프로토콜보다 좀 더 안전하다.

- Soundness : 이 프로토콜은 일반적인 과정에서 사용되는 응답값 乂의 크기와 s를 안다는 것을 증명하는 것으로 볼 수 있다. 즉, Alice처럼 프로토콜을 제대로 수행하고자하는 공격자는 s와 일반적인 과정에서 사용하는 乂의 크기를 알아야 계산을 할 수 있다. 그러나 대칭키 알고리즘을 사용하여 乂가 암호화되어 보내지므로 대칭키 알고리즘의 키 K를 모르고는 叫.와 그것의 크기를 알 수가 없게 된다. 또한 공격자가 비밀키 s를 알게 되어도 각 개인식별 프로토콜에서 사용된 난수 为를 알 수가 없기 때문에 공유된 비밀키 K를 찾아낼 수 없다. 그러므로 이 프로토콜에서 乂의 크기의 안전성은 대칭키 암호 알고리즘에 의존한다. K=D")를 알기 위해 공격자는 또는 左를 알아야 한다. 그러나 TKg、7次史)로부터 3 또 启를 찾는 것은 이산대수문제를 푸는 것만큼 어렵다. 그러므로 일반적인 경우에 사용되는 叫의 크기를 계산하는 것은 이산대수문제를 푸는 것만큼 어렵다.

- Forward secrecy : 이 프로토콜에서 Alice의 개인키는 s이고 Alice와 은행 사이에 만들어진 세션키 TXg顧)이다. 세션키는 Alice의 개인키 s와는 독립이기 때문에 세션키 7Xg汕)는 사후에 Alice의 개인키가 노출이 된다고 할지라도 노출되지 않게 된다. 그러나 세션키 次g")는 사후에 은행의 개인키 步牛 노출이 된다면 드러나게 된다. 공격자가 $와 T«)를 안다 TKg&)를 쉽게 계산을 할 수 있기 때문이다.

Ⅵ. 결론

지금까지 본 논문에서는 개선된 XTR-Schnorr 개인식별 프로토콜을 이용하여 PKC'01에서 Kugler 와 Vogt에 의해 제안된 블랙메일링을 막는 온라인전자화폐시스템을 보완한 실질적인 방법을 살펴보았다. 제안된 프로토콜은 사용자의 프라이버시를 보장하면서 블랙메일링을 막을 수 있는 Kugler와 Vogt에 의하여 제안된 지불시스템을 실질적이지 않은 가정 없이도 사용할 수 있게 해 준다. 그러므로 지불시스템에서 개선된 XTR-Schnorr 개인식별 프로토콜을 사용하면 비현실적인 가정 없이도 Kugler와 Vogt이 제안한 지불시스템에서 발생하는 블랙메일링 범죄를 현저하게 감소시킬 수 있다. 논 논문에서는 신분 위장이나 납치와 같은 공격이서는 2/3의 확률로 블랙메일링에 대한 정보를 피해자가 은행에게 전달할 수 있었다. 앞으로의 연구 방향은 이 확률을 좀 더 높여 블랙메일링 공격에 대하여 좀더 효율적인 알고리즘을 개발하는 것이다.

References

  1. Computer Security-ESORICS '96 v.1146 Digital payment systems with passive anonymity-revoking trustees J. Camenisch;U. Mauer;M. Stadler
  2. Advances in Cryptology-CRYPTO'82 Blind signature for untraceable payments D. Chaum
  3. Communications of the ACM v.28 no.10 Without identification: Transaction Systems to Make Big Brother Obsolete D. Chaum
  4. Smartcard 2000 Privacy Protected Payments: Unconditional Payer And/Or Payee Untraceability D. Chaum
  5. Proceedings of Financial Cryptography Workshop Anonymity Control in E-Cash Systems G. Davida;Y. Frankel;Y. Tsiounis;M. Yung
  6. Financial Cryptography '97 v.1318 Anonymity Control in e-cash systems G. Davide;Y. Frankel;Y. Tsiounis;M. Young https://doi.org/10.1007/3-540-63594-7_63
  7. Financial Cryptography: Third International Conference. FC'98 Improved magic ink signatures using hints M. Jakobsson;J. Muller
  8. Prceedings PKC 2001. Marking: A Privacy Protecting Approach Against Blackmailing D. Kugler;H. Vogt
  9. Proceedings of Crypto 2000. The XTR public key system A. K. Lenstra;E. R. Verheul
  10. Proceedings of Asiacrypt 2000. Key improvements to XTR A. K. Lenstra;E. R. Verheul
  11. Computers and Security v.11 no.6 On blind signatures and perfect crimes B. Von Solmes;D. Naccache https://doi.org/10.1016/0167-4048(92)90193-U