RSA 기반 CEMBS와 오프라인 반신뢰 제3자 활용 공정 서명 교환
** 본 논문은 RSA 서명과 ElGamal 암호를 결합한 CEMBS(Certified Encrypted Message Being Signature) 방식을 제안하고, 오프라인 반신뢰 제3자(STTP)를 이용해 서명 교환의 공정성을 보장한다. 동일 메시지, 서로 다른 메시지, 기밀 데이터와 서명 교환의 세 가지 시나리오에 대해 구체적인 프로토콜을 설계하고, 블라인드 복호화를 통해 제3자가 서명을 열람하지 못하도록 설계하였다. **
저자: Jamal A. Hussein, Mumtaz A. AlMukhtar
**
본 논문은 전자 상거래와 같은 분산 환경에서 두 당사자가 서로의 디지털 서명을 공정하게 교환하기 위한 프로토콜을 제안한다. 공정 교환이란 어느 한쪽이 서명을 얻고 다른 쪽은 얻지 못하는 상황을 방지하고, 양측이 동시에 서명을 획득하거나 전혀 얻지 못하도록 보장하는 것을 의미한다. 이를 위해 저자는 ‘Certified Encrypted Message Being Signature(CEMBS)’라는 개념을 활용한다. CEMBS는 서명 자체를 암호화한 뒤, 해당 암호문이 진정한 서명임을 증명하는 인증서( r , c )를 함께 제공한다.
기존 연구에서는 GQ, DSA, RSA 기반 CEMBS가 제안되었지만 각각 온라인 TTP 의존, 연산량 과다, 부분 암호화 등 여러 한계가 있었다. 특히 GQ 기반은 암호화된 서명의 일부만 보호해 복호화 공격에 취약하고, DSA 기반은 RSA에 비해 서명·검증 속도가 느리며, 기존 RSA 기반은 온라인 TTP에 의존해 실용성이 떨어졌다.
이에 저자는 RSA 서명과 ElGamal 암호를 결합한 새로운 RSA‑based CEMBS를 설계한다. RSA 서명 s = m^d mod n 을 먼저 생성하고, 이를 ElGamal 공개키 PK_T (오프라인 STTP의 공개키)로 암호화한다. 암호문은 (W, V) 형태이며, 여기서 W = g^w mod P, V = s·PK_T^w mod P 이다. 이후 CEMBS 인증서 (r, c) 를 생성한다. 여기서 c = H(g‖W‖C‖a‖A) 이며, r = u – c·w 와 같은 관계를 이용한다. 인증서 검증은 수신자가 블라인드 암호문 C = g^V 을 만든 뒤, 해시값을 재계산해 일치 여부를 확인함으로써 수행된다.
핵심 보안 메커니즘은 ‘블라인드 복호화’이다. 수신자는 W 만을 STTP에 전달하고, STTP는 자신의 비밀키 SK_T 로 W^SK_T 를 계산해 반환한다. 수신자는 이를 이용해 전체 서명 s 을 복원한다. 이 과정에서 STTP는 실제 서명 s 에 접근할 수 없으며, 오직 복호화에 필요한 부분만을 제공한다. 따라서 STTP는 ‘반신뢰(Semi‑Trusted)’ 역할을 수행한다.
논문은 세 가지 교환 시나리오에 대해 구체적인 프로토콜을 제시한다.
1. **프로토콜 1 – 동일 메시지에 대한 서명 교환**
- A는 서명 s_A 을 RSA로 생성하고, STTP 공개키로 암호화해 (W_A, V_A)와 CEMBS (r_A, c_A) 를 B에게 전송한다.
- B는 CEMBS 검증 후 자신의 서명 s_B 을 A에게 전송한다.
- A가 s_B 를 검증하면 자신의 서명 s_A 을 B에게 전송한다.
- B가 s_A 를 검증하고 정상 종료한다.
- 검증 실패 시 B는 블라인드 복호화 요청을 통해 STTP에게 W_A 의 복호화 결과를 받아 s_A 을 복구한다.
2. **프로토콜 2 – 서로 다른 파일에 대한 서명 교환**
- A와 B는 각각 파일 M_A, M_B 에 대해 m_A = M_A‖H(M_B), m_B = M_B‖H(M_A) 를 만든 뒤 동일 절차로 서명을 교환한다.
- CEMBS와 블라인드 복호화 메커니즘은 동일하게 적용된다.
3. **프로토콜 3 – 기밀 데이터와 서명 교환**
- B는 기밀 데이터 M 을 A에게 전송하고, A는 H(M) 에 대한 서명 s_A 을 생성한다.
- A는 s_A 을 암호화·CEMBS와 함께 B에게 전송한다.
- B는 CEMBS 검증 후 M 을 전송하고, A는 M 의 해시와 서명을 비교해 정상 여부를 판단한다.
- 검증 실패 시 B는 블라인드 복호화 절차를 통해 STTP에게 W_A 복호화를 요청한다.
**보안 분석**에서는 두 당사자가 각각 악의적으로 행동할 경우를 모두 검토한다. B가 잘못된 s_B 를 보내면 A가 검증 단계에서 즉시 탐지하고 서명을 제공하지 않는다. 반대로 A가 잘못된 암호문을 보내면 B는 STTP에게 복호화 요청을 할 수 있지만, STTP는 B가 올바른 W_B, V_B 를 제공해야만 복호화 결과를 전달한다. 따라서 어느 한쪽이 부정 행위를 하더라도 상대방은 서명을 얻지 못하고, STTP는 서명을 열람하지 못한다는 ‘반신뢰’ 특성이 유지된다.
**성능 평가**에서는 RSA 서명·검증이 DSA보다 빠르고, ElGamal 블라인드 복호화는 단일 지수 연산만 필요하므로 전체 통신·연산 비용이 기존 GQ/DSA 기반 CEMBS보다 현저히 낮다. 또한 STTP는 오프라인으로 동작해 정상 교환 시에는 전혀 개입하지 않으므로 시스템 병목 현상을 최소화한다.
결론적으로, 이 논문은 RSA 기반 CEMBS와 블라인드 복호화를 결합해 공정 교환 프로토콜을 설계·분석함으로써, 기존 연구가 안고 있던 보안·효율성 문제를 동시에 해결하였다. 제안된 프로토콜은 실용적인 전자 상거래, 전자 계약, 기밀 데이터 교환 등 다양한 응용 분야에 적용 가능하며, 오프라인 반신뢰 제3자를 활용함으로써 신뢰 기반 인프라 구축 비용을 크게 절감한다.
**
원본 논문
고화질 논문을 불러오는 중입니다...
댓글 및 학술 토론
Loading comments...
의견 남기기