KR100438257B1 - 메시지 복원형 서명장치 - Google Patents

메시지 복원형 서명장치 Download PDF

Info

Publication number
KR100438257B1
KR100438257B1 KR10-1999-7006737A KR19997006737A KR100438257B1 KR 100438257 B1 KR100438257 B1 KR 100438257B1 KR 19997006737 A KR19997006737 A KR 19997006737A KR 100438257 B1 KR100438257 B1 KR 100438257B1
Authority
KR
South Korea
Prior art keywords
message
function
generating
signature
commitment
Prior art date
Application number
KR10-1999-7006737A
Other languages
English (en)
Other versions
KR20000070493A (ko
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 마츠시타 덴끼 산교 가부시키가이샤
Publication of KR20000070493A publication Critical patent/KR20000070493A/ko
Application granted granted Critical
Publication of KR100438257B1 publication Critical patent/KR100438257B1/ko

Links

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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3006Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
    • H04L9/302Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters involving the integer factorization problem, e.g. RSA or quadratic sieve [QS] schemes
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • H04L9/0656Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
    • H04L9/0662Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher with particular pseudorandom sequence generator
    • 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
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/04Masking or blinding

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Algebra (AREA)
  • Physics & Mathematics (AREA)
  • Storage Device Security (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

관리센터(520)는 사용자 A의 비밀키 xA를 이용하여 사용자 A(510)의 공개키 yA를 구하고, 사용자 B(530)에게 통지해 둔다(S550∼S553).
사용자 A(510)는 난수 k의 생성, r1= gk(mod p), r2= f(r1, m) = r1+ m (mod p)의 연산을, r2< q가 될 때까지 반복한다. r2< q라면 sk = (r2+ s + 1) + r2xA(mod q)로부터 s를 산출하고, 암호문(r2, s)를 사용자 B에게 송신한다(S554∼ 559).
사용자 B(530)는 q ≤ r2라면 서명을 거절하고, r2< q라면 r1= gk= g(r2+s+1)/syA r2/s(mod p) 및 f-1(r1, r2) = m (mod p)를 이용하여 메시지 m을 복원한다(S560∼ S562).
이에 따라 안전성이 높은 메시지 복원형 서명장치가 실현된다.

Description

메시지 복원형 서명장치{MESSAGE REPRODUCING TYPE SIGNATURE DEVICE}
이산대수문제를 안전성의 근거로 하여 공개키 암호방식에 의한 종래의 메시지 복원형 서명방식으로서, 니버그 루펠(Nyberg-Rueppel)에 의해 제안된 것이 있다 (Nyberg and Rueppel, “A new signature scheme based on the DSA giving message recovery”, 1st ACM Conf. on Comp. and Comm. Security, 1993 참조).
여기에서 「이산대수」란 유한체에서의 대수를 말한다.
「이산대수문제」란, p를 소수 또는 소수의 누승으로 하고, g를 유한체 GF (p)의 원시근(primitive root)으로 하고, 영(0)이 아닌 임의의 GF(p)의 요소 y, p, g가 주어졌을 때,
단, 0≤x≤p-1
을 만족하는 정수 x를 구하라는 문제를 말한다.
「이산대수문제를 안전성의 근거로 한다」란, 지수계산은 쉽지만, 큰 유한체 GF(p), 예를 들면 GF(2127)에 대하여 상기 대수계산은 매우 어려운 것, 즉 큰 유한체에서의 대수계산은 말하자면 일방향성 함수의 역함수를 계산하는 것에 상당한다는 것에 암호의 안전성의 근거를 두는 것을 말한다.
「공개키 암호방식」이란 암호화키와 복호화키가 다르고, 복호화키는 비밀로 하지만 암호화키를 공개하는 암호방식을 말한다. 통신상대가 다수일 때, 통신상대마다 다른 암호키를 관리해야 한다는 번잡함을 해소하기 위한 방식이고, 다수의 통신상대와 통신을 행하는 데에 불가결한 기반 기술이다.
「메시지 복원형 서명」이란 자기의 정당성을 증명하기 위한 서명문 중에 메시지를 끼워 넣는 것이 가능한 서명을 말한다. 이것에 의하면 서명문과 메시지를 별개로 송신할 필요가 없고, 송신을 위한 통신량을 삭감할 수 있다.
도 11은 상기 종래 기술의 순서를 도시한 시퀀스도이다.
사용자 A(610), 센터(620) 및 사용자 B(630)는 네트워크로 접속되고, 센터 (620)의 관리하에 지금 사용자 A(610)가 메시지 m에 서명을 하여 사용자 B(630)로 송신하는 경우의 통신 시퀀스도이다.
( 공개키의 생성 )
시스템 조건으로서, p를 소수, GF(p)의 요소를 g로 하고, 그 차수(order)를 q로 한다. 즉 q는,
를 만족하는 최소의 자연수이다.
우선 센터(620)는 미리 통지되어 있는 사용자 A의 비밀키 xA를 이용하여 이하의 수학식 1.3에 따라 사용자 A의 공개키 yA를 생성한다(S640∼S641).
그 후 센터(620)는 상기 시스템 파라미터 p, q, g와 함께 사용자 A의 공개키 yA를 다른 사용자 B(630)에게 공개한다.
( 서명과 송신 )
사용자 A(610)는,
난수 k를 생성하고(S644),
를 순차로 계산하고(S645∼S648), 얻어진 s 및 r2를 암호문(r2, s)으로 하여 사용자 B에 송신한다(S649).
여기에서 상기 r1은 커미트먼트(commitment)라고 불리고, 상기 수학식 1.5는 메시지 마스크식, 상기 수학식 1.7은 서명식이라고 불린다. 또한 서명식(수학식 1.7)은 이하와 같이 6종류의 식으로 일반화된다.
단, (a, b, c) = (1, r2', s)의 치환이다. 즉,
a = 1, b = r2', c = s 또는
a = 1, b = s, c = r2' 또는
a = r2', b = l, c = s 또는
a = r2', b = s, c = 1 또는
a = s, b = r2', c = 1 또는
a = s, b = 1, c = r2'이다.
또한, (mod p) 및 (mod q)는 각각 p 및 q를 제수(除數)로 하는 연산인 것을 나타낸다.
( 메시지의 복원 )
상기 암호문 (r2, s)을 수신한 사용자 B(630)는 이미 통지되어 있는 공개키 yA및 시스템 파라미터(p, q, g, a, b, c)를 이용하여,
을 계산함으로써, 메시지 m을 복원한다(S650). 이것은,
이 되는 것으로부터 분명하다.
이와 같이, 상기 종래 기술은 이제까지 불가능하였던 이산대수문제를 안전성의 근거로 하는 공개키 암호방식에 의한 메시지 복원형 서명을 가능하게 한 점에서 획기적인 것이다.
그러나 상기 종래 기술에는 약점이 존재한다. 즉, 이하의 4가지 형태의 공격을 받기 쉽다.
( 서명식 공격 )
첫째로, 서명식 공격(signature-equation attack)이라 불리는 공격이 존재한다.
이것은 만일 위조자가 메시지 m과 그 서명(r2, s)의 조를 입수하였다고 하면, 새로운 메시지 mgd(d는 GF(p)의 임의의 요소)를 위조하고, 그것에 대하여 서명을 하여 사용자 B에게 송신할 수 있게 된다는 공격이다.
구체적으로는 위조자가 암호문(r2, s + d)을 사용자 B에게 송신하면 된다. 그러면 사용자 B는,
로부터 메시지 mgd가 의미를 이루는 문장이면 사용자 A로부터 송신되었다고 생각한다. 즉 위조자는 비밀키 xA를 알지 못해도 새로운 메시지 mgd의 서명에 성공한다.
( 호모모피즘 공격 )
둘째로, 호모모피즘 공격(homomorphism attack : 준동형(準同型) 공격 또는 선택평문 공격)이라 불리는 공격이 존재한다.
이것은 만약 위조자가 선택한 메시지 mm을 사용자 A에 서명시키고, 그 mm에 대응한 서명을 입수할 수 있는 경우에, 그 위조자는 사용자 A의 행세를 하여 원하는 메시지 mmgd의 서명에 성공한다는 공격이다.
이것이 가능하게 되는 것은 상기 서명식 공격의 경우와 같은 이유에 의한다. 단, 위조자가 원하는 메시지 mmgd에 대하여 서명할 수 있는 점에서 다르다.
( 리던던시 공격 )
셋째로, 리던던시 공격(redundancy attack)이라 불리는 공격이 존재한다.
이것은 만일 위조자가 메시지 m과 그 서명(r2, s)의 조를 입수하였다고 하면, 이하의 식을 만족하는 새로운 메시지 mm의 서명에 성공한다는 공격이다.
구체적으로는 위조자가 암호문(rr2, s)을 사용자 B에게 송신하면 된다. 그러면 사용자 B는,
로부터 메시지 mm이 의미를 이루는 문장이면 사용자 A로부터 송신되었다고 생각한다.
이 리던던시 공격은 서명식(수학식 1.7)에서 이용되는 r2'와 수학식 1.6에서 산출되는 r2사이에 리던던시가 있는 것에 착안한 것이다.
( 재생식 공격 )
넷째로, 재생식 공격(recovery-equation attack)이라 불리는 공격이 존재한다.
이것은 위조자는 미리 통신하지 않고, 새로운 임의의 M(M은 GF(p)의 요소)을 이용하여 메시지 MyA e(e는 GF(p)의 요소)의 서명에 성공한다는 공격이다.
구체적으로는 위조자가 이하의 식을 만족하는 rr2와 ss를 결정하여, 암호문 (rr2, ss)을 사용자 B에 송신하면 된다.
단, u, v는 GF(p)의 요소
로 하면 사용자 B는,
로부터 메시지 MyA e가 의미를 이루는 문장이면 사용자 A로부터 송신되었다고 생각한다.
이 공격은 GF(p)의 요소 u, v에 대하여, 이하의 수학식 1.19 및 수학식 1.20을 만족하는 해가 존재하는 것에 착안한 것이다.
단, a, b는 {1, r2', s}의 요소.
또, 이상 4가지 공격에 대한 상세한 것은, 궁지 충자(宮地 充子)「메시지 복원형 서명의 약점 1」 전자정보통신학회, 정보 시큐리티 연구회, 1995. 7월 및Nyberg and Rueppel, “A new signature scheme based on the DSA giving message recovery”, 1st ACM Conf. on Comp. and Comm. Security, 1993 및 Nyberg and Rueppel,“Message recovery for signature schemes based on the discrete logarithm problem”, Advances in cryptology-Proceedings of Eurocrypt' 94, Lecture Notes in Computer Science, 950(1995), Springer-Varlag, 182-193에 기술되어 있다.
이상과 같이, 종래의 메시지 복원형 서명방식에는 4가지 공격이 존재하고, 일정한 조건을 만족하는 메시지 서명의 위조가 가능하므로 종래 방식은 이미 안전한 방식이라고는 할 수 없다.
본 발명은 공개키 암호방식에 의한 비밀통신 및 디지털서명을 행하는 장치에 관한 것으로, 특히 이산대수문제를 안전성의 근거로 하는 메시지 복원형 서명장치에 관한 것이다.
도 1은 본 발명에 관한 메시지 복원형 서명장치를 채용 포함하는 상품거래 시스템의 제 1 실시예의 구성도이다.
도 2는 본 발명에 관한 메시지 복원형 서명장치(사용자 A)(510)의 상세한 하드웨어 구성도이다.
도 3은 관리센터(520)의 상세한 하드웨어 구성도이다.
도 4는 메시지 복원장치(사용자 B)(530)의 상세한 하드웨어 구성도이다.
도 5는 제 1 실시예에 있어서의 메시지 복원형 서명의 알고리즘 및 통신 교환을 도시한 시퀀스도이다.
도 6은 제 2 실시예에 있어서의 메시지 복원형 서명의 알고리즘 및 통신 교환을 도시한 시퀀스도이다.
도 7은 제 3 실시예에 있어서의 관리센터(1)의 구성을 도시한 블록도이다.
도 8은 제 3 실시예에 있어서의 메시지 복원형 서명장치(사용자 A)의 구성을 도시한 블록도이다.
도 9는 도 8에 있어서의 SK부(38)의 상세한 구성을 도시한 블록도이다.
도 10은 제 3 실시예에 있어서의 메시지 복원장치(사용자 B)의 구성을 도시한 블록도이다.
도 11은 종래의 메시지 복원형 서명의 순서를 도시한 시퀀스도이다.
따라서 본 발명은 상기 종래 기술의 문제점을 감안하여 이루어진 것이며, 상기 4종류의 공격에 대하여 안전성을 확보할 수 있는 메시지 복원형 서명장치를 제공하는 것을 목적으로 한다.
상기 목적을 달성하기 위해 본 발명에 관한 메시지 복원형 서명장치는 p를 소수, g를 요소, 그 차수를 q로 하는 유한체 GF(p) 상에서의 연산에 기초하여 이산대수문제를 안전성의 근거로 하고, 메시지 m에 대하여 비밀키 xA를 이용하여 메시지 복원이 가능한 서명을 실행하는 장치에 있어서, 난수 k를 생성하는 난수생성수단과, 함수 f11(k) = gk에 따라 상기 난수 k로부터 커미트먼트 r1을 생성하는 커미트먼트 생성수단과, GF(p)×GF(p)로부터 GF(p)로의 사상을 행하는 함수 f12(r1, m)에 따라 상기 커미트먼트 r1및 상기 메시지 m으로부터 마스크된 메시지 r2를 생성하는 메시지 마스크수단과, 함수 f13(r2, xA)에 따라 상기 마스크된 메시지 r2및 비밀키 xA로부터 서명 s를 생성하는 서명생성수단을 구비하며, 상기 함수 f12(r1, m)은 공개키 yA를 gXA로 하고, t, j, e를 유한링(finite ring) Zq = {0, 1,..., q-1}의 요소로 할 때 f12(gtyA j, myA e) 및 f12(gtyA j, mge)에 있어서, 3변수 t, j, e가 2개의 대수식으로 치환되지 않는다는 성질을 갖는 것을 특징으로 한다.
이에 따라 메시지 m 대신에 Mge또는 MyA e를 두어도 r2= f12()를 만족하는 3변수 t, j, e를 결정할 수 없다. 또 사상 f의 역사상 f-1은 임의의 2변수함수 ø, ψ에 대하여,
f-1(r1/g, r2)≠ø(m, g) 및
f-1(r1/yA, r2) ≠ψ(m, yA)
가 된다. 따라서, 재생공격과 준동형공격이 회피된다.
또한, 상기 서명생성수단은 유한링 Zq를 {O, 1, ···, q-1}로 하고, 함수 ha, hb, hc를 Zq×Zq×Zq로부터 Zq로의 사상을 행하는 함수로 할 때, 수학식
ha(r2', S, 1) k = hb(r2', s, 1) + hc(r2', s, 1) xA(mod q)
를 만족하는 서명 s를 산출하고, 함수 ha, hb, hc는 미리 고정된 소수값을 제외하는 유한링 Zq의 임의의 요소 rr2', ss에 대하여, 다음 2가지 조건
1. ha(r2', s, 1) = ha(rr2', ss, 1) , hc(r2', s, 1) = hc(rr2', ss, 1)일 때,
hb(r2', s, 1) - ha(r2', s, 1) ≠ hb(rr2', ss, 1)
2. ha(r2', s, 1) = ha(rr2', ss, 1), hb(r2', s, 1) = hb(rr2', ss, 1)일 때,
hc(r2', s, 1) - ha(r2', s, 1) ≠ hc(rr2', ss, 1)을 만족한다고 할 수 있다.
이에 따라 메시지 mgd에 대한 서명을 시도한 경우이더라도, 그 서명식을 만족하는 rr2및 ss는 존재하지 않는다(O으로 된다). 따라서, 서명식 공격이 회피된다.
또 상기 메시지 마스크수단에 의해 생성된 마스크된 메시지 r2
0 < r2< q
를 만족하는지의 여부를 판단하는 판단수단과, 상기 조건을 만족하지 않는다고 판단된 경우에는 상기 난수생성수단에 의한 새로운 난수 k의 생성과 상기 커미트먼트 생성수단에 의한 커미트먼트 r1의 생성과 상기 메시지 마스크수단에 의한 마스크된메시지 r2의 생성을 반복시키는 반복수단을 부가할 수도 있다.
이에 따라 r2와 r2'의 값 사이에 존재한 리던던시가 배제된다. 따라서, 리던던시 공격이 회피된다.
또한 상기 GF(p) 대신에 GF(pr) 상에서 정의되는 메시지 복원형 서명장치로 할 수도 있다.
또 상기 GF(p) 대신에 타원곡선 E(GF(pr)이나 E(gF(pr)) 상에서 정의되는 메시지 복원형 서명장치로 할 수도 있다. 이에 따라 메시지 복원형 서명 및 복원처리의 고속화, 안전성의 강화, 실현회로·소프트웨어 규모의 컴팩트화가 도모된다.
이하, 본 발명에 관한 메시지 복원형 서명장치에 대하여 도면을 이용하여 상세히 설명하기로 한다.
( 제 l 실시예 )
도 1은 본 발명에 관한 메시지 복원형 서명장치를 채용 포함하는 상품거래 시스템의 제 l 실시예의 구성도이다.
본 시스템은 상품거래를 통신으로 행하기 위한 관리를 하는 관리센터(520), 상품의 발주자인 사용자 A(510), 상품의 판매점인 사용자 B(530), 그 밖의 사용자 및 그들을 접속하는 공중망(540)으로 구성된다. 본 시스템에서는 안전한 거래를 확보하기 위해 상품 주문시에 암호를 이용한 메시지 복원형 서명이 행해진다.
사용자 A(510)는 본 발명에 관한 메시지 복원형 서명장치이며, 도 2의 하드웨어 구성도로 나타낸 바와 같이, 내부 버스(516)로 접속된 송수신부(511), 프로세서(512), 입력부(513), 시스템 파라미터 기억부(514) 및 난수발생부(515)로 이루어진다.
송수신부(511)는 모뎀 등의 통신 인터페이스이고, 공중망(540)과 내부 버스(516)를 접속한다.
프로세서(512)는 CPU 등이고, 내부에 연산부(512a) 및 본 장치(510)에 고유한 제어 프로그램이 저장된 제어 ROM(5l2b)을 구비하고, 각 구성부를 제어하는 것과 아울러, 후술하는 순서에 따른 서명을 위한 연산 및 송신제어를 행한다.
입력부(513)는 키보드나 입출력 포트 등이고, 비밀키 xA및 메시지 m을 접수한다.
시스템 파라미터 기억부(514)는 RAM 등이고, 관리센터(520)로부터 다운로드한 시스템 파라미터를 일시적으로 기억한다. 또 시스템 파라미터란 이 시스템에서 채용되고 있는 메시지 복원형 서명에 필요한 파라미터를 말하고, 일반적으로 공개되어 있는 값이다.
난수발생부(515)는 프로세서(512)로부터 지정된 범위의 양의 정수의 난수를
발생한다.
관리센터(520)는 시스템 파라미터를 관리하는 장치이며, 도 3의 하드웨어구성도에 도시된 바와 같이, 내부 버스(524)로 접속된 송수신부(521), 프로세서(522) 및 시스템 파라미터 기억부(523)로 이루어진다.
송수신부(521)는 모뎀 등의 통신 인터페이스이고, 공중망(540)과 내부버스(524)를 접속한다.
프로세서(522)는 CPU 등이고, 내부에 연산부(522a) 및 본 장치(520)에 고유한 제어 프로그램이 저장된 제어 ROM(522b)을 구비하고, 각 구성부를 제어하는 것과 아울러, 후술하는 순서에 따른 각 사용자마다의 공개키의 작성 및 시스템 파라미터의 배송을 실행한다.
시스템 파라미터 기억부(523)는 ROM 등이고, 본 시스템에 관한 메시지 복원형 서명의 시스템 파라미터를 미리 기억하고 있다.
사용자 B(530)는 사용자 A(510)로부터 송신된 메시지를 복원하는 장치이며, 도 4의 하드웨어 구성도에 도시된 바와 같이, 송수신부(531), 프로세서(532), 시스템 파라미터 기억부(533) 및 표시부(534)로 이루어진다.
송수신부(531)는 모뎀 등의 통신 인터페이스이고, 공중망(540)과 내부 버스(535)를 접속한다.
프로세서(532)는 CPU 등이고, 내부에 연산부(532a) 및 본 장치(530)에 고유의 제어 프로그램이 저장된 제어 ROM(532b)을 구비하고, 각 구성부를 제어하는 것과 아울러, 후술하는 순서에 따른 메시지의 복원을 행한다.
시스템 파라미터 기억부(533)는 RAM 등이고, 관리센터(520)로부터 다운로드한 시스템 파라미터를 일시적으로 기억한다.
표시부(534)는 CRT 등이고, 복원된 메시지를 표시한다. 사용자 B(530)는 표시부(534)에 표시된 복원 메시지를 보아, 그것이 의미있는 문장이라면 실제 사용자 A(510)로부터의 메시지(주문서)라고 인증한다.
공중망(540)은 공중전화망이나 ISDN 등이고, 본 시스템에서의 통신에는 이 공중망(540)을 물리층으로 하여 TCP/IP를 중간 프로토콜층으로 하는 인터넷이 이용되고 있다.
다음으로, 이상과 같이 구성된 본 시스템에 있어서의 동작에 대하여 설명하기로 한다.
도 5는 이 시스템에 있어서의 메시지 복원형 서명의 알고리즘 및 3자(사용자 A(510), 관리센터(520) 및 사용자 B(530))사이에서의 통신 교환을 도시한 도면이고, 종래 방식의 도 11에 대응한다.
( 시스템 조건 )
이 시스템에 있어서의 메시지 복원형 서명의 시스템 조건은 이하와 같다.
이 시스템의 메시지 복원형 서명은 이산대수문제를 안전성의 근거로 하는 공개키 암호방식의 하나이며, p(512비트길이)를 소수, g를 요소, 그 차수를 q(256비트길이)로 하는 유한체 GF(p) 상에서의 연산에 기초하는 것이다. 단, 소수 p와 차수 q의 크기가 거의 같아지도록, 즉 p∼q가 되도록 결정해 둔다.
GF(p) × GF(p)로부터 GF(p)로의 사상 f()를,
로 정의하고, 그 f의 역사상 f-1을,
으로 정의한다.
또 메시지 m이란 예를 들면 「상품 ABC을 주문합니다. 나의 식별 코드는 1234입니다. 」를 Shift-JIS 등의 문자코드로 표현한 경우의 2진수를 연결한 하나의 값이다.
또 발주자가 이용하는 서명식을,
로 정의한다. 여기에서, ha, hb, hc는 Zq={O, 1,··q-1}로 할 때, Zq×Zq× Zq로부터 Zq로의 사상이고, 본 실시예에서는,
로 한다.
또 이상의 시스템 조건을 규정하는 시스템 파라미터(p, q, g, f, ha, hb, hc)는 관리센터(520)의 시스템 파라미터 기억부(523)에 미리 기억되어 있다.
( 공개키의 생성 )
우선 관리센터(520)는 사용자 A(510)로부터 통신 또는 친전서신 등으로 미리 통지되어 있는(S550) 사용자 A의 비밀키 xA및 GF(p)의 요소 g를 이용하여 이하의 식에 따라 사용자 A의 공개키 yA를 생성한다(S551).
구체적으로 프로세서(522)는 제어 ROM(522b)에 저장된 프로그램에 따라 송수신부(521) 등을 통해 수취한 사용자 A(510)의 비밀키 xA와 시스템 파라미터 기억부(514)로부터 판독한 g를 이용하여 연산부(522a)에서 상기 누승 연산을 행한다.
그 후, 관리센터(520)는 상기 시스템 파라미터(p, q, g, f, ha, hb, hc)를 사용자 A(510)에게 공개하고, 시스템 파라미터(p, q, g, f, ha, hb, hc)와 사용자 A의 공개키 yA를 사용자 B(530)에게 공개한다(S552, S553).
( 서명과 송신 )
다음으로, 사용자 A(510)는 이하의 순서(단계 S554∼S559)에 따라서 메시지 m의 서명과 송신을 행한다.
( 단계 S554 )
우선, 시스템 파라미터를 수취한 사용자 A(510)는 그것을 시스템 파라미터 기억부(514)에 저장한 후, 사용자 B(530)에게 상품을 주문하기 위해 우선 난수 k (512비트길이)를 생성한다.
구체적으로 프로세서(512)는 제어 ROM(512b)의 프로그램에 따라서 송수신부 (511)를 통해 수취한 시스템 파라미터를 시스템 파라미터 기억부(514)에 저장하고, 계속해서 난수발생부(515)에 GF(p) 상의 난수 k를 1개 발생시켜 수취한다.
( 단계 S555 )
그리고 사용자 A(510)는 이하의 식으로부터 커미트먼트 r1를 산출한다.
구체적으로 프로세서(512)는 제어 ROM(512b)의 프로그램에 따라서 시스템 파라미터 기억부(514)로부터 g를 판독하고, 상기 단계에서 수취한 난수 k를 이용하여 연산부(512a)에서 p를 제수로 하는 상기 누승계산을 행한다.
( 단계 S556 )
계속해서 사용자 A(510)는 이하의 식으로부터 r2를 산출한다.
구체적으로 프로세서(512)는 입력부(513)로부터 메시지 m을 수취하고, 상기 단계 S555에서 산출된 r1을 이용하여 연산부(512a)에서 p를 제수로 하는 가산을 행한다.
( 단계 S557 )
프로세서(512)는 제어 ROM(512b)의 프로그램에 따라서, r2와 q를 비교하여 q≤r2이면, 상기 단계 S554∼S556를 반복한다.
( 단계 S558 )
한편 r2<q이면 사용자 A(510)는 이하의 서명식,
즉,
로부터 s를 산출한다.
구체적으로 프로세서(512)는 입력부(513)를 통해 비밀키 xA를 수취하고, 연산부(512a)에서, q를 제수로 하여 상기 s를 산출한다.
( 단계 S558 )
마지막으로 사용자 A(510)는 암호문(r2, s)을 사용자 B에 송신한다.
구체적으로 프로세서(512)는 송수신부(511)를 통해 암호문(r2, s)을 사용자 B(530)에게 송신한다.
( 메시지의 복원)
( 단계 S560 )
시스템 파라미터 및 암호문(r2, s)을 수신한 사용자 B(530)는 r2와 q를 비교한다.
구체적으로 프로세서(532)는 제어 ROM(532b)에 저장된 프로그램에 따라서 송수신부(531)를 통해 수취한 암호문(r2, s)을 내부에 일시적으로 보유하고, 연산부(532a)에서 시스템 파라미터 기억부(533)로부터 판독한 q와 r2를 비교한다.
( 단계 S561 )
그 결과, q≤r2이면, 사용자 B(530)는 이 서명을 거절한다.
구체적으로 프로세서(532)는 사용자 A(510)로부터 수취한 암호문(r2, s)의 복원이 실패한 취지를 표시부(534)에 표시한다.
( 단계 S562 )
한편, r2< q이면 사용자 B(530)는 이하의 수학식,
을 이용하여 r1를 산출하고, 그 r1과 이하의 수학식,
을 이용하여 메시지 m을 복원한다. 즉,
로부터 메시지 m을 산출한다.
구체적으로 프로세서(532)는 관리센터(520)로부터 미리 통지되어 있는 시스템 파라미터와 사용자 A(510)의 공개키 yA를 이용하여 연산부(532a)에서 메시지 m을 복원하고, 그 결과를 표시부(534)에 표시한다. 사용자 B는 표시된 메시지가 의미있는 주문서라면 사용자 A(510)로부터의 정식적인 것으로 인증한다.
다음으로, 이상과 같은 본 실시예에 관한 메시지 복원형 서명에 의하면, 종래의 문제점이 해소되는 점에 대하여 설명하기로 한다.
r1과 m으로부터 r2로의 사상에 착안하면 종래 방식에서는, 수학식 1.5로부터,
이므로 m = Mge(또는 MyA e), r2= MgtyA j(단, t, j, e는 Zq의 요소)로 두면,
이 되고, 3변수 t, j, e를 2개의 대수식으로 치환할 수 있다. 즉, r1으로부터 r2로의 사상이 준동형이다.
한편 본 실시예에서는 수학식 2.9로부터 r1에서 r2로의 사상이 준동형(準同型)이 아니라, Zq의 요소 t, j, e에 대하여, f(gtyA j, myA e) 및 f(gtyA j, mge)에 있어서, 3변수 t, j, e를 2개의 대수식으로 치환할 수 없다. - - - 조건 1
즉, 메시지 m 대신에 Mge또는 MyA e로 두어도 r2= f()를 만족하는 3변수 t, j, e를 결정할 수 없다.
또 사상 f의 역사상 f-1은, 수학식 2.2로 정의되므로 임의의 2변수함수ø, ψ에 대하여,
이 된다.
따라서, 재생공격과 준동형 공격이 회피된다.
또한, 서명식에 착안하면 계수(a, b, c)는 종래 방식에서는,수학식 1.8에 나타낸 바와 같이(r2', s, 1)의 치환이지만, 본 실시예에서는, 사상 ha, hb, hc를 이용하여 결정되어 있다. 그리고, 이들 사상 ha, hb, hc는 r2', s를 Zq의 요소로 할 때, 미리 고정된 소수값을 제외하는 모든 rr2', ss에 대하여, 다음의 2가지 조건을 만족한다.
1. ha(r2', s, 1) = ha(rr2', ss, 1), hc(r2', s, 1) = hc(rr2', ss, 1)일 때,
2. ha(r2', s, 1) = ha(rr2', ss, 1), hb(r2', s, 1) = hb(rr2', ss, 1)일 때
따라서, 본 실시예의 서명식(상기 수학식 2.10 및 수학식 2.11)으로부터 알수 있는 바와 같이, 메시지 mgd에 대한 서명을 시도한 경우이더라도, 그 서명식을 만족하는 rr2및 ss는 존재하지 않는다(0으로 된다). 따라서, 서명식 공격이 회피된다.
또 이 본 실시예의 서명식은 종래부터 존재하는 비례관계를 이용한 해독에 대해서도 서명식이 2항으로 분해되지 않으므로 강하다. 또 종래부터 존재하는 비례관계를 이용한 비례공격에 대해서는 L. Harn and Y. Xu, “Design of generalised ElGamal type digital signatures chemes based on discrete logarithm”, Electron. Lett. , Vol. 30 (1994), 2025-2026. 에 상세히 설명되어 있다.
또한 r2의 값에 착안하면 종래 방식에서는 식에 나타낸 바와 같이 r2'와의 사이에 리던던시가 있었지만, 본 실시예에서는 r2의 값은 q미만이 되도록 제한되어 있다.
따라서 상기 수학식 1.12를 만족하는 rr2는 존재하지 않는다. 따라서, 리던던시 공격은 회피된다.
이상과 같이, 본 실시예에 관한 메시지 복원형 서명장치에 의해 종래 방식에 존재한 4가지 공격을 피할 수 있다.
또 본 실시예에 있어서, 함수 f는 r1+ m 이지만, 본 발명은 이것에 한정되는 것은 아니고, 상기 조건 1을 만족하는 사상이면 다른 내용이라도 된다. 단, r1+ m과 같이 계산량이 작은 사상으로 하는 것이 바람직하다.
또한 ha, hb, hc에 관해서도, 본 실시예의 사상에 한정되지 않고, 상기 수학식 2.18 및 수학식 2.19를 만족하는 사상이면 된다. 또 종래부터 존재하는 비례관계를 이용한 해독에 대하여도 강하게 되도록, 역시 계산량이 작은 사상으로 하는 것이 바람직하다.
또 상기 종래 방식과는 다른 메시지 복원형 서명(예를 들면, 엘가말 (ElGamal) 서명)에 대하여도 상기의 사상 ha, hb, hc를 부가하는 것으로, 동일한 효과가 있다.
또한 본 실시예는 유한체 GF(p) 상에서의 연산에 기초하는 메시지 복원형 서명방식이었지만, 이것을 p를 소수, r를 양의 정수, g를 요소, 그 차수를 q로 하는 유한체 GF(pr) 상에서의 연산에 기초하는 메시지 복원형 서명방식으로 일반화할 수도 있다. p가 소수이면 GF(pr)도 유한체를 구성하기 때문이다.
단, 이 경우에는, GF(pr)로부터 유한링 Zpr= {0, 1,···, pr-1}로의 사상을 행하는 함수 π를 도입하고, 상기 단계 S558에서의 서명식의 r2로 바꾸어, 상기단계 S557에서 얻어진 r2에 대하여 함수 π에 의해 변환한 후의 값 π(r2)를 이용하면 된다. 즉, 본 실시예는 유한체 GF(pr) 상에서 정의되는 서명방식 중 r=l이라는 특별한 경우에 상당한다.
또 함수 π의 구체예로서, {α1, α2,···,αr}을 GF(pr)의 GF(p) 상의 기저로 하고, {x1, x2,···, xr}을 GF(p)의 요소로 할 때, GF(pr)의 요소 x = x1α1 + … + xrαr에 대하여,
으로 정의되는 것이 있다.
또 본 실시예의 서명방식은 메시지 m에 서명하는 대신에, m에 해쉬함수(hash function)를 실시한 해쉬값에 대하여 서명하고, 그 서명을 메시지와 함께 송신하여 해쉬값이 바르게 복원되는 것을 체크하는 것으로 서명을 확인하는 서명방식으로서도 이용할 수 있다.
( 제 2 실시예 )
다음으로 본 발명에 관한 메시지 복원형 서명장치를 포함하는 상품거래 시스템의 제 2 실시예에 대하여 설명하기로 한다.
본 시스템의 기본적인 구성은 제 1 실시예와 동일하다.
단 본 시스템에서 채용되고 있는 메시지 복원형 서명방식은 제 1 실시예의 경우와 다르다. 따라서 사용자 A(510)의 제어 ROM(512b) 및 시스템 파라미터 기억부(514), 관리센터(520)의 제어 ROM(522b) 및 시스템 파라미터 기억부(523), 사용자 B(530)의 제어 ROM(532b) 및 시스템 파라미터 기억부(533)의 내용이 제 1 실시예의 경우와 다르다. 이하 제 1 실시예와 다른 점을 중심으로 설명하기로 한다.
도 6은 이 시스템에 있어서의 메시지 복원형 서명의 알고리즘 및 3자(사용자A(510), 관리센터(520) 및 사용자 B(530)) 사이에서의 통신 교환을 도시한 도면이고, 제 1 실시예의 도 5에 대응한다.
( 시스템 조건 )
본 시스템에 있어서의 메시지 복원형 서명의 시스템 조건은 이하와 같다.
본 시스템의 메시지 복원형 서명은 이산대수문제를 안전성의 근거로 하는 공개키 암호방식의 하나이며, p를 소수로 하는 유한체 GF(p) 상에서 정의되는 타원곡선 E(GF(p)) 상의 연산에 기초하는 것이다.
여기에서 타원곡선이란 일반적으로 y2= x3+ ax + b로 나타내는 함수를 말하고, E(GF(p))란 GF(p)의 요소(x, y)로서 타원곡선 상의 점(x좌표, y좌표)의 집합을 말한다. 또한 타원곡선 E(GF(p))에 있어서의 이산대수문제란 Q, G를 E(GF(p))의 요소로 할 때,
을 만족하는 자연수 d를 구하는 문제를 말하고, 예를 들면 G나 p가 30자리수 정도의 10진수라면 매우 어려운 문제이다. 즉, 타원곡선 E(GF(p)) 상에서의 이산대수문제는 같은 자리수의 수치를 취급하는 것이라면, 유한체 GF(p) 상에서의 그것에 비하여 훨씬 곤란하다. 바꾸어 말하면 같은 정도의 안전성을 확보하기 위해 필요로 하는 자리수는 타원곡선의 경우가 적다(예를 들면, GF(p)의 1024비트에 대하여 E(GF(p))의 160비트).
또 본 실시예에서는 정의체 GF(p)의 p와 G의 차수가 같게 되는 타원곡선을 이용한다.
서명식은,
로 정의한다. 여기에서, ha, hb, hc는 GF(p)×GF(p)×GF(p)로부터 GF(p)로의 사상이고, 본 실시예에서는,
로 한다.
( 공개키의 생성 )
우선 관리센터(520)는 미리 통지되어 있는 사용자 A의 비밀키 xA를 이용하여(S640), 이하의 식에 따라 사용자 A의 공개키 YA를 생성한다(S57l).
그 후 관리센터(520)는 상기 시스템 파라미터(p, E, G, ha, hb, hc)를 사용자 A(510)에, 시스템 파라미터(p, E, G, ha, hb, hc)와 사용자 A의 공개키 YA를 사용자 B(530)에게 공개한다(S572, S573).
( 서명과 송신 )
( 단계 S574 )
시스템 파라미터를 수취한 사용자 A(510)는 그것을 시스템 파라미터 기억부 (514)에 저장한 후, 사용자 B(530)에게 상품을 주문하기 위해 우선 난수 k를 생성한다.
( 단계 S575 )
그리고 이하의 식으로부터 커미트먼트 r1을 산출한다.
또 상기 수학식 3.7의 계산은 타원곡선 E(GF(p)) 상에서 이루어지는 것으로 한다.
( 단계 S576 )
계속해서, 이하의 식으로부터 r2를 산출한다.
여기에서, x(Rl)는, 점 R1의 x좌표를 의미한다.
( 단계 S577 )
그리고 이하의 서명식,
즉,
로부터 s를 산출한다.
( 단계 S578 )
마지막으로 암호문(r2, s)을 사용자 B에 송신한다.
( 메시지의 복원 )
시스템 파라미터 및 암호문(r2, s)을 수신한 사용자 B(530)는 이하의 수학식,
를 이용하여 R1를 산출하고, 그 R1과 이하의 수학식,
을 이용하여 메시지 m을 복원한다(S579). 즉,
로부터 메시지 m을 복원한다.
그 결과, 메시지 m이 의미있는 주문서라면, 사용자 A(510)로부터의 정식적인 것으로 인증한다.
또 본 실시예에 관한 메시지 복원형 서명에 의하면, 종래 방식에 있어서의 4개의 공격이 회피되지만, 그 근본적인 이유는 제 1 실시예의 경우와 동일하다. 단, 본 실시예의 메시지 복원형 서명장치는, 유한체 GF(p) 상이 아니라, 타원곡선 E(GF(p)) 상에서 정의되는 점에서, 그 점에 기초하는 차이가 있다. 즉 본 실시예의 메시지 복원형 서명에 의하면, 커미트먼트 R1이 종래 방식의 수학식 1.5와 같이 직접 메시지 m에 관여하는 것이 아니고, 상기 수학식 3.8과 같이 x좌표를 통해서 관여하고 있다. 이 함수 F는 GF(p)의 요소 g, yA, m 및 Zq = {0, 1,···, q-1}의 요소 t, j, e에 대하여 F(tG + jYA, m × x(eYA)) 및 F(tG + jYA, m × x(eG))에 있어서, 3변수 t, j, e가 2개의 대수식으로 치환되지 않는다는 성질을 갖는다. - - - 조건 2
또 E(GF(p))의 요소 Rl, G, YA 및 GF(p)의 요소 r2, m에 대하여 r2= F(R1, m)의 역상을,
로 정의할 때, 임의의 2변수함수 ø, ψ에 대하여,
가 된다. 따라서 재생식공격과 준동형공격이 회피된다.
또 본 실시예의 메시지 복원형 서명에 의하면, 종래 방식의 수학식 1.8과 같이 서명식의 계수(a, b, c)가 (r2, s, 1)의 치환이라는 형태가 아니라, 사상 ha, hb, hc를 이용하여 결정되어 있다. 이 사상 ha, hb, hc가 r2, s를 Zq의 요소로 할 때, 미리 고정된 소수값을 제외하는 모든 rr2', ss에 대하여 다음 두가지 조건을 만족한다.
1. ha(r2', s, 1) = ha(rr2', ss, 1), hc(r2', s, 1) = hc(rr2', ss, 1)일 때,
2. ha(r2', s, 1) = ha(rr2', ss, 1), hb(r2', s, 1) = hb(rr2', ss, 1)일 때,
따라서 서명식공격이 회피된다. 또 이 서명식은 종래부터 존재하는 비례관계를 이용한 해독에 대해서도 서명식이 2항으로 분해되는 일이 없으므로 강하다.
또한 본 실시예와 같은 타원곡선을 이용하면 G의 차수가 정의체 GF(p)의 p와 같게 되므로 제 1 실시예와 같이 r2의 값을 제한하는 단계를 부가하는 일 없이 리던던시 공격을 회피할 수 있다.
또 상술한 실시예는 x좌표를 이용했지만 이것은 물론, 조건 2를 만족하는 그 밖의 사상이면 무엇이든지 좋다. 또한 이 때 x좌표와 같이 계산량이 작은 사상으로 하는 것이 바람직하다.
마찬가지로, ha, hb, hc에 대해서도, 상기 수학식 3.16 및 수학식 3.17을 만족하는 것이면 된다. 이 때 종래부터 존재하는 비례관계를 이용한 해독에 대하여도 강해지도록 더욱 계산량이 작은 사상으로 하는 것이 바람직하다.
또한 본 실시예에서는 정의체 GF(p)의 p와 G의 차수가 같아지는 타원곡선을 이용하였지만, 통상의 타원곡선을 이용해도 구성할 수 있다. 이 때에는 제 1 실시예와 같이 r2를 제한하는 단계를 부가할 필요가 있다.
또한 상기 종래 방식과는 다른 메시지 복원형 서명에 대하여도 상기 사상 ha, hb, hc를 부가하는 것으로, 동일한 효과가 있다.
또한 본 실시예는 E(GF(p)) 상에서의 연산에 기초하는 메시지 복원형 서명방식이었지만, 이것을, p를 소수, r을 양의 정수, G를 요소, 그 위수를 q로 하는 E (GF(pr)) 상에서의 연산에 기초하는 메시지 복원형 서명방식으로 일반화할 수도 있다. p가 소수이면 GF(pr)도 유한체를 구성하기 때문이다.
단 이 경우에는 GF(pr)로부터 유한링 zpr= {0,1,. . . , pr-1}로의 사상을 행하는 함수 π를 도입하고, 상기 단계 S558에서의 서명식의 r2로 바꾸어, 상기단계 S557에서 얻어진 r2에 대하여 함수 π에 의해 변환한 후의 값 π(r2)를 이용하면 된다. 즉, 본 실시예는 E(GF(pr)) 상에서 정의되는 서명방식 중 r = 1이라는 특별한 경우에 상당한다.
또 상기 서명방식은 메시지 m에 서명하는 대신에 m에 해쉬함수를 실시한 해쉬값에 대하여 서명하고, 서명을 메시지와 함께 보내고, 해쉬값이 정확하게 복원되는 것을 체크하는 것으로 서명을 확인하는 서명방식으로서도 이용할 수 있다.
( 제 3 실시예 )
다음으로 본 발명에 관한 메시지 복원형 서명장치를 포함하는 상품거래 시스템의 제 3 실시예에 대하여 설명하기로 한다.
본 시스템은 제 1 실시예의 시스템과 동일한 기능을 갖는다. 단 각 장치 (510, 520, 530)의 실현수단이 다르다.
구체적으로는 제 1 실시예의 메시지 복원형 서명은 각 장치(510, 520, 530)의 제어 ROM(5l2b, 522b, 532b)에 저장된 프로그램에 따라서 프로세서(512, 522, 532)가 연산부(512a, 522a, 532a)에서 각종 연산을 행함으로써 소프트웨어적으로 실현되었지만, 본 실시예의 메시지 복원형 서명은 각 장치(510, 520, 530)에 구비된 전용 하드웨어에 의해 실현된다.
따라서 본 실시예에서는 각 장치(510, 520, 530)의 내부 구성만 설명하기로 한다.
도 7은 제 1 실시예에 있어서의 관리센터(520)를 전용 하드웨어로 구성한 경우, 즉 본 실시예의 관리센터(1)의 구성을 도시한 블록도이다.
이 관리센터(1)는 비밀키 작성요구 접수부(11), 비밀키 발생부(12), 공개키 작성부(13), 공개키 공개부(14), 비밀키 통지형태 작성부(15) 및 비밀키 통지부 (16)로 구성된다.
도 7의 하단에는, 공개키 작성부(13)가 상세히 나타나 있다.
공개키 작성부(13)는 g의 2n의 p를 제수로 하는 잉여를 미리 기억하는 잉여기억부(131), 그 값을 인출하는 인출부(132), 인출한 gi의 곱셈을 행하는 승산부 (133) 및 그 곱셈결과를 p로 나누는 제산부(134)로 이루어진다.
상기 각부의 동작은 이하와 같다.
비밀키 작성요구 접수부(11)는 각 사용자(제 1 실시예에서는 사용자 A)로부터의 고유의 비밀키 작성요구를 사용자의 키보드를 사용한 조작 등으로 접수한다. 비밀키 발생부(12)는 비밀키 작성요구 접수부(11)가 접수한 요구를 바탕으로, 내장한 난수발생 프로그램에 의해 2진수의 난수를 발생시키고, 이것을 당해 사용자의 비밀키로 한다. 또, 본 실시예에서는 난수의 발생에 있어서는, 동일한 난수발생을 방지하기 위해 당해 사용자의 공개 디지털 통신망 상에서의 식별번호까지도 내장한 것으로 하고 있다. 공개키 작성부(13)는 비밀키 발생부(12)가 발생시킨 난수를 바탕으로 공개키를 작성한다.
공개키 공개부(14)는 공개키 작성부(13)가 작성한 공개키를 그 작성요구를 이룬 사용자명과 함께 전체 사용자에게 공개한다. 이것은 통신망이 정당성을 승인한 사용자명과의 공개키를 대응하여 등록해 두고, 각 사용자의 문의에 회답한다. 비밀키 통지형태 작성부(15)는 각 사용자의 비밀키를 그 조작 오류 등으로 외부로 누출되지 않도록 보호한다. 비밀키 통지부(16)는 비밀키를 공유키 작성 등의 필요에 따라 사용할 수 있도록 한다.
다음으로 공개키 작성부(13)에 의한 공개키의 작성에 대하여 설명하기로 한다.
g의 2n의 n을 제수로 하는 잉여기억부(131)는 g, g2, g4, g8···등 g의 2의 누승의 p를 제수로 하는 잉여 g1, g2···, gi를 미리 계산하여 R0M에 기억하고 있다. 이것을 작은 수를 예로 들어 구체적으로 나타내면 p = 11, g = 2이면, i = [log211] = 3이 되고, 23<11이 되기 때문에 g, g2, g4로서 2, 22, 24를 기억하고, 다시 대응하는 g1, g2, g4로서 2, 4, 5를 기억하고 있다.
제수인출부(132)는 비밀키 발생부(12)로부터 2진수로 표현된 비밀키를 통지받으면 그 값으로 1이 설정된 자리수에 대응하는 g1, g2,…, gi를 인출한다. 작은 수를 예로 들어 구체적으로 설명하면, 지금 xa = 101(10진의 5)로 한다. 1자리와 3자리(각, g의 2의 0승과 2의 2승)에 1이 설정되어 있다. 이 때문에 g1와 g4,즉 2과 5를 인출한다.
승산부(133)는 제수인출부(132)가 인출한 제수를 곱한다. 제산부(134)는 승산부(133)의 승산결과를 n으로 나누어 그 나머지를 구한다. 구체적 수치로 나타내면 2a= 25= 2 × 24= 2 × 5 = 10(mod 11)으로 된다. 그리고 이 나머지가 사용자 A의 공개키가 된다. 또 본 실시예에서 g의 누승을 채용하고 있는 것은, g3, g5 등의 제수를 채용하는 것보다도 일반적으로 처리가 빠르고, 연산기 등도 2진으로 작동하는 것에 맞춘 것이다.
도 8은 제 1 실시예에 있어서의 사용자 A(510)를 전용 하드웨어로 구성한 경우, 즉 본 실시예의 사용자 A의 메시지 복원형 서명장치의 구성을 도시한 블록도이다.
사용자 A의 서명장치는 크게, r2제어부(31), 2진난수 발생부(32), r1연산부(33),통신문 (m) 입력부(34), f 함수부(35), q 기억부(36), 배제부(37) 및 SK부(38)로 구성된다.
r1연산부(33)는 다시 잉여기억부(331), 제수인출부(332), 승산부(333) 및 제산부(334)로 이루어지고, f 함수부(35)는 다시 가산부(351) 및 제산부(352)로 이루어지고, 배제부(37)는 q판독부(371), 감산부(372) 및 비교부(373)로 이루어진다.
SK부(38)는 다시 도 9에 그 상세한 구성이 나타나 있는 바와 같이, k-1 연산부(381), r2+ 1 연산부(382), r2xA연산부(383), r2+ 1 + r2xA연산부(384) 및 s계산부(385)로 이루어진다.
상기 각부의 동작은 다음과 같다.
r2제어부(31)는 서명통신발신에 있어서, 2진난수 발생부(32)와 m입력부(34) 의 작용을 조정, 제어하고, 제 1 실시예에 있어서의 단계 S554∼S556에 상당하는 반복처리까지도 행한다.
통신문 입력부(34)는 사용자로부터 입력된 메시지를 수치화한다.
2진난수 발생부(32)는 커미트먼트 작성을 위해 메시지의 발신마다 상이한 난수를 발생시킨다. 이런 이유로 발신일시 등도 난수발생에 사용된다.
r1연산부(33)는 발생된 2진난수 k를 바탕으로 r1= gk(mod p)의 연산에 의해, r1을 구한다. 이런 이유로 관리센터(1)에 있어서의 g의 2n의 p를 제수로 하는 잉여기억부(131), 제수인출부(132), 승산부(133), 제산부(134)와 같은 구성작용을 이루는 잉여기억부(331), 제수인출부(332), 승산부(333), 제산부(334)를 갖고 있다.
f 함수부(35)는 r1연산부(33)에서 작성된 r1과 통신문 입력부(34)에서 수치화된 통신문 m을 기초로 메시지 마스크식 f를 사용하여, r2= f(r1, m) (mod p)의 연산을 행하고 r2를 구한다. 이런 이유로 (mod p) 상에서의 r2= r1+ m의 가산을 행하는 가산부(351)와, 합의 p를 제수로 하는 나머지를 구하기 위한 p에서의 제산을 행하는 제산부(352)를 내장하고 있다.
q 기억부(36)는 관리센터(1)로부터 통지된 g를 메모리에 기억하고 있다.
배제부(37)는 f 함수부(35)로부터 입력된 r2와 q의 대소비교를 행하고, r2가 q 이상이 되면 그 취지를 r2제어부(31)에 통지한다.
이 통지를 받은 r2제어부(31)는 2진난수 발생부(32)에 다시 다른 난수를 발생시켜 앞서의 r1과 다른 r1을 얻고, 이것과 통신문 입력부(34)에 입력되어 있는 통신문 m으로 f 함수부(35)에 f함수를 연산시켜 앞서와 다른 r2를 구하고, 다시 q와의대소비교를 행하게 하는 공정을 g - r2가 양(+)이 될 때까지 반복 실행시킨다. 또한 q - r2가 양이 되면, 이 r2를 SK부(38)로 출력한다. 이 때문에 배제부(37)는 q판독부(371)와 감산부(372) 및 비교부(373)를 내장하고 있다.
즉 q판독부(371)는 r2의 입력이 있으면 q 기억부(36)로부터 q의 값을 판독하고, 감산부(372)에 통지한다. 감산부(372)는 통지된 q로부터 r2의 감산을 행한다. 비교부(373)는 감산부(372)가 구한 차가 0보다 작으면 r2제어부(31)에 이 취지를 통지한다. 이런 이유로 이 값이 양이 될 때까지 상술한 순서를 반복 실행되는 것으로 된다. 또한 r2가 양이면 입력된 r2를 그대로 SK부로 통지한다.
SK부(38)는 서명식 sk = (r2+ s + 1) + r2xa (mod p)의 연산에 의해 송신대상이 되는 메시지를 작성한다.
즉 k-1연산부(381)는 2진난수 발생부(32)에서 발생되고, 그리고 그것을 사용하여 계산한 r2의 값이 q 미만이라는 요건을 충족한 것이 된 난수 k에서 1를 빼고 결과 a를 출력한다. r2+ 1 연산부(382)는 입력된 r2에 1을 더한다. r2xa 연산부 (383)는 배제부(37)로부터 입력된 r2와 사용자로부터 입력된 xA의 곱을 구한다. r2+ 1 + r2xA연산부(384)는 r2+ 1 연산부(382)로부터 입력된 r2+ 1과 r2xA연산부 (383)로부터 입력된 r2xA와의 합 b를 구한다. s 계산부(385)는 k-1 연산부(381)가구한 a와 r2+ 1 + r2xA연산부(384)가 구한 b를 사용하여, s·a = b (mod q)를 충족하는 s를 유클리드의 호제법으로 구한다. 그리고 이 결과를 도시되어 있지 않은 송신부로 보낸다.
도 10은 제 1 실시예에 있어서의 사용자 B(530)를 전용 하드웨어로 구성한 경우, 즉 본 실시예의 사용자 B 메시지 복원장치의 구성을 도시한 블록도이다.
사용자 B의 복원장치는 수신부(41), 거절부(42), q 기억부(43), ya 기억부 (44), r2기억 (45), s 기억부(46), g 기억부(47), r2+ S + 1 연산부(48), yA 1/s(mod p) 49 연산, gs(mod p) 연산부(410), yA r2/s(mod p) 연산부(411), g(r2+1+s)/s(mod p) 연산부(412), r1= g(r2+1+s)/syA r2/s(mod p) 연산부(413) 및 f-1함수부(414)로 구성된다.
이상의 각부의 동작은 다음과 같다.
수신부(41)는 사용자 A로부터의 암호문(r2, s)을 수신한다.
거절부(42)는 상기 수신이 있었던 경우, r2-q를 계산하여 양의 값이면 일단 정당한 것으로 하여 속행하는 처리를 행하기 위해 다른 부분으로 이 수신문을 보내지만, 양이 아니면 이 서명을 거부한다. 이런 이유로 송신측 사용자와 마찬가지로 q 기억부(43)에 미리 q를 기억하고 있다. yA기억부(44)는 관리센터(1)로부터 공개된 yA를 미리 메모리에 기억하고 있다.
g 기억부(47)도 마찬가지로 g를 기억하고 있다.
r2기억부(45)는 거절부(42)가 일단 인증한 r2를 기억하고, s 기억부(46)는 마찬가지로 s를 기억한다. 또 r2와 s의 구분은 별도로 정한 통신규약에 기초하여 이루어진다.
r2+ s + 1 연산부(48)는 r2기억부(45)와 s 기억부(46)로부터 각각 r2와 s를 판독하고, 가산으로 r2+ s + 1을 구한다.
yA 1/s(mod p) 연산부(49)는 yA기억부(44)로부터 yA를 판독하고, s 기억부(46)로부터 s를 판독하여 yA 1/s(mod p)를 연산한다.
gs(mod p) 연산부(410)는 s 기억부(46)로부터 s를, g 기억부(47)로부터 g를 판독하여 g1/s(mod p)를 연산한다.
yA r2/s(mod p) 연산부(411)는 r2기억부(45)로부터 판독한 r2와 yA 1/s(mod p)를 연산부(49)로부터 판독한 yA 1/s(mod p)를 바탕으로, (yA 1/s)를 r2승하고, 다시 그 p를 제수로 하는 나머지를 구한다.
g(r2+1+s)/s(mod p) 연산부(412)는 r2+s+1 연산부(418)로부터 r2+ s + 1을 판독하고, g1/s(mod p) 연산부(410)로부터 판독한 g1/s(mod p)를 r2+ s + 1승하고, 다시 이 p를 제수로 하는 나머지를 구한다.
r1=g(r2+1+s)/syA r2/s(mod p) 연산부(413)는 yA r2/s(mod p) 연산부(411)의 연산결과와 g(r2+1+s)/s(mod p)연산부(412)의 연산결과로부터 r1=g(r2+1+s)/syA r2/s(mod p)의 연산에 의해 r1을 구한다.
f1 함수부(414)는 함수 f-1를 사용하여 연산 r2- r1을 행하고, 메시지 m을 복원한다.
이상과 같이 구성된 이 시스템의 동작은 도 5에 도시된 제 1 실시예의 시퀀스도와 같으며, 설명을 생략하기로 한다.
또 제 1 실시예에 대한 본 실시예와 같은 기능분할은 제 2 실시예에 대해서도 마찬가지로 적용할 수 있는 것은 말할 필요도 없다. 즉, 타원곡선 E(GF(p)) 상에서 정의되는 메시지 복원형 서명에 대해서도, GF(p) 상에서의 메시지 복원형 서명과 마찬가지로 소프트웨어적 및 하드웨어적으로 실현하는 것이 가능하다.
이상의 3가지 실시예 등의 설명으로부터 알 수 있는 바와 같이, 본 발명은 종래 방식에 존재한 4가지 공격을 회피할 수 있는 안정성이 높은 메시지 복원형 서명이고, 또한 그 때문에 부가되는 계산량은 무시할 수 있는 정도로 적다. 따라서 본 발명의 메시지 복원형 서명장치는 인터넷이나 휴대전화 등의 통신기술이 사회의기반이 되고 있는 현재 및 장래에서 그 실용적 가치가 매우 크다.
전자화폐, 전자상품거래 등의 상업용 네트워크 시스템을 구성하는 통신단말에 본 발명을 적용할 수 있다. 이에 따라, 통신에 의한 상거래의 안전성이 확보되어 활발화된다.
또한, 특허출원인이 특허청에 대하여 행하는 온라인 수속과 같이, 내용을 비밀로 하면서 일정자격을 갖는 발신자의 증명(서명이나 날인)이 필요한 통신에 적용할 수 있다. 이에 따라 위조자에 의한 부정은 배제되고, 수속이 원활화된다.
또 휴대전화 등의 디지털 변조식 무선기기 등에 적용할 수 있다. 이에 따라 프라이버시나 정보기밀을 유지하는 권리가 확보된다.
또 인터넷에 있어서의 메일이나 파일전송 등에 적용할 수도 있다. 이에 따라 도청이나 위조자에 의한 부정행위가 배제되고, 고도정보화 사회에서의 정보 기밀성이 확보된다.

Claims (50)

  1. 삭제
  2. 삭제
  3. p를 소수, g를 요소, 그 차수를 q로 하는 유한체 GF(p) 상에서의 연산에 기초하여 이산대수문제를 안전성의 근거로 하고, 메시지 m에 대하여 비밀키 xA를 이용하여 메시지 복원이 가능한 서명을 실행하는 장치에 있어서,
    난수 k를 생성하는 난수생성수단과,
    함수 f11(k) = gk에 따라 상기 난수 k로부터 커미트먼트 r1을 생성하는 커미트먼트 생성수단과,
    GF(p)×GF(p)로부터 GF(p)로의 사상을 행하는 함수 f12(r1, m)에 따라 상기 커미트먼트 r1및 상기 메시지 m으로부터 마스크된 메시지 r2를 생성하는 메시지 마스크수단과,
    함수 f13(r2, xA)에 따라 상기 마스크된 메시지 r2및 비밀키 xA로부터 서명 s를 생성하는 서명생성수단을 구비하며,
    상기 함수 f12(r1, m)은,
    f12(r1, m) = r1+ m
    인 것을 특징으로 하는 메시지 복원형 서명장치.
  4. 삭제
  5. 삭제
  6. p를 소수, r을 양의 정수, g를 요소, 그 차수를 q로 하는 유한체 GF(pr) 상에서의 연산에 기초하여 이산대수문제를 안전성의 근거로 하고, 메시지 m에 대하여 비밀키 xA를 이용하여 메시지 복원이 가능한 서명을 실행하는 장치에 있어서,
    비밀키 xA를 기억하고 있는 비밀키 기억수단과,
    난수 k를 생성하는 난수생성수단과,
    함수 f14(k) = gk에 따라 상기 난수 k로부터 커미트먼트 r1을 생성하는 커미트먼트 생성수단과,
    GF(pr)×GF(pr)로부터 GF(pr)로의 사상을 행하는 함수 f15(r1, m)에 따라 상기 커미트먼트 r1및 상기 메시지 m으로부터 마스크된 메시지 r2를 생성하는 메시지 마스크수단과,
    유한체 GF(pr)로부터 유한링 Zpr= {0, 1,..., pr-1}로의 사상을 행하는 함수 f16(r2)에 따라 상기 마스크된 메시지 r2로부터 변환후 메시지 rc2를 생성하는 변환후 메시지 생성수단과,
    함수 f17(rc2, xA)에 따라 상기 변환후 메시지 rc2및 비밀키 xA로부터 서명 s를 생성하는 서명생성수단을 구비하며,
    상기 함수 f15(r1, m)는,
    f15(r1, m) = r1+ m
    인 것을 특징으로 하는 메시지 복원형 서명장치.
  7. 삭제
  8. 삭제
  9. 삭제
  10. p를 소수, G를 요소, 그 차수를 q로 하는 유한체 GF(p) 상에서 정의되는 타원곡선 E(GF(p)) 상의 연산에 기초하여 이산대수문제를 안전성의 근거로 하고, 메시지 m에 대하여 비밀키 xA를 이용하여 메시지 복원이 가능한 서명을 실행하는 장치에 있어서,
    비밀키 xA를 기억하고 있는 비밀키 기억수단과,
    난수 k를 생성하는 난수생성수단과,
    함수 F11(k) = kG에 따라 상기 난수 k로부터 커미트먼트 R1을 생성하는 커미트먼트 생성수단과,
    E(GF(p))×GF(p)로부터 GF(p)로의 사상을 행하는 함수 F12(R1, m)에 따라 상기 커미트먼트 R1및 상기 메시지 m으로부터 마스크된 메시지 r2를 생성하는 메시지 마스크수단과,
    함수 F13(r2, xA)에 따라 상기 마스크된 메시지 r2및 비밀키 xA로부터 서명 s를 생성하는 서명생성수단을 구비하며,
    상기 함수 F12(R1, m)은,
    F12(R1, m) = (R1의 x좌표) + m
    인 것을 특징으로 하는 메시지 복원형 서명장치.
  11. 삭제
  12. 삭제
  13. p를 소수, r을 양의 정수, G를 요소, 그 차수를 q로 하는 유한체 GF(pr) 상에서 정의되는 타원곡선 E(GF(pr)) 상의 연산에 기초하여 이산대수문제를 안전성의 근거로 하고, 메시지 m에 대하여 비밀키 xA를 이용하여 메시지 복원이 가능한 서명을 실행하는 장치에 있어서,
    비밀키 xA를 기억하고 있는 비밀키 기억수단과,
    난수 k를 생성하는 난수생성수단과,
    함수 F14(k) = kG에 따라 상기 난수 k로부터 커미트먼트 R1을 생성하는 커미트먼트 생성수단과,
    E(GF(pr))×GF(pr)로부터 GF(pr)로의 사상을 행하는 함수 F15(R1, m)에 따라 상기 커미트먼트 R1및 상기 메시지 m으로부터 마스크된 메시지 r2를 생성하는 메시지 마스크수단과,
    GF(pr)로부터 유한링 Zpr= {0, 1,..., pr-1}로의 사상을 행하는 함수 F16(r2)에 따라 상기 마스크된 메시지 r2로부터 변환후 메시지 rc2를 생성하는 변환후 메시지 생성수단과,
    함수 F17(rc2, xA)에 따라 상기 변환후 메시지 rc2및 비밀키 xA로부터 서명 s를 생성하는 서명생성수단을 구비하며,
    상기 함수 F15(R1, m)은,
    F15(R1, m) = (R1의 x좌표) + m
    인 것을 특징으로 하는 메시지 복원형 서명장치.
  14. 삭제
  15. 삭제
  16. p를 소수, g를 요소, 그 차수를 q로 하는 유한체 GF(p) 상에서의 연산에 기초하여 이산대수문제를 안전성의 근거로 하고, 메시지 m에 대하여 비밀키 xA를 이용하여 메시지 복원이 가능한 서명을 실행하는 장치에 있어서,
    비밀키 xA를 기억하고 있는 비밀키 기억수단과,
    난수 k를 생성하는 난수생성수단과,
    함수 f21(k) = gk에 따라 상기 난수 k로부터 커미트먼트 r1을 생성하는 커미트먼트 생성수단과,
    GF(p)×GF(p)로부터 GF(p)로의 사상을 행하는 함수 f22(r1, m)에 따라 상기 커미트먼트 r1및 상기 메시지 m으로부터 마스크된 메시지 r2를 생성하는 메시지 마스크수단과,
    함수 f23(r2) = r2'(mod q)에 따라 상기 마스크된 메시지 r2로부터 서명용 메시지 r2'를 생성하는 서명용 메시지 생성수단과,
    유한링 Zq를 {0, 1,..., q-1}로 하고, 함수 ha, hb, hc를 Zq×Zq×Zq로부터 Zq로의 사상을 행하는 함수로 할 때, 식
    ha(r2', s, 1)k = hb(r2', s, 1) + hc(r2', s, 1)xA(mod q)
    를 만족하는 서명 s를 산출하는 서명생성수단을 구비하고,
    상기 함수 ha는 ha(r2', s, 1) = r2'를 만족하고,
    상기 함수 hb는 hb(r2', s, 1) = r2'+s+1을 만족하고,
    상기 함수 hc는 hc(r2', s, 1) = s를 만족하는 것을 특징으로 하는 메시지 복원형 서명장치.
  17. p를 소수, g를 요소, 그 차수를 q로 하는 유한체 GF(p) 상에서의 연산에 기초하여 이산대수문제를 안전성의 근거로 하고, 메시지 m에 대하여 비밀키 xA를 이용하여 메시지 복원이 가능한 서명을 실행하는 장치에 있어서,
    비밀키 xA를 기억하고 있는 비밀키 기억수단과,
    난수 k를 생성하는 난수생성수단과,
    함수 f21(k) = gk에 따라 상기 난수 k로부터 커미트먼트 r1을 생성하는 커미트먼트 생성수단과,
    GF(p)×GF(p)로부터 GF(p)로의 사상을 행하는 함수 f22(r1, m)에 따라 상기 커미트먼트 r1및 상기 메시지 m으로부터 마스크된 메시지 r2를 생성하는 메시지 마스크수단과,
    함수 f23(r2) = r2'(mod q)에 따라 상기 마스크된 메시지 r2로부터 서명용 메시지 r2'를 생성하는 서명용 메시지 생성수단과,
    유한링 Zq를 {0, 1,..., q-1}로 하고, 함수 ha, hb, hc를 Zq×Zq×Zq로부터 Zq로의 사상을 행하는 함수로 할 때, 식
    ha(r2', s, 1)k = hb(r2', s, 1) + hc(r2', s, 1)xA(mod q)
    를 만족하는 서명 s를 산출하는 서명생성수단을 구비하고,
    상기 함수 ha는 ha(r2', s, 1) = s를 만족하고,
    상기 함수 hb는 hb(r2', s, 1) = r2'+s+1을 만족하고,
    상기 함수 hc는 hc(r2', s, 1) = r2'를 만족하는 것을 특징으로 하는 메시지 복원형 서명장치.
  18. p를 소수, g를 요소, 그 차수를 q로 하는 유한체 GF(p) 상에서의 연산에 기초하여 이산대수문제를 안전성의 근거로 하고, 메시지 m에 대하여 비밀키 xA를 이용하여 메시지 복원이 가능한 서명을 실행하는 장치에 있어서,
    비밀키 xA를 기억하고 있는 비밀키 기억수단과,
    난수 k를 생성하는 난수생성수단과,
    함수 f21(k) = gk에 따라 상기 난수 k로부터 커미트먼트 r1을 생성하는 커미트먼트 생성수단과,
    GF(p)×GF(p)로부터 GF(p)로의 사상을 행하는 함수 f22(r1, m)에 따라 상기 커미트먼트 r1및 상기 메시지 m으로부터 마스크된 메시지 r2를 생성하는 메시지 마스크수단과,
    함수 f23(r2) = r2'(mod q)에 따라 상기 마스크된 메시지 r2로부터 서명용 메시지 r2'를 생성하는 서명용 메시지 생성수단과,
    유한링 Zq를 {0, 1,..., q-1}로 하고, 함수 ha, hb, hc를 Zq×Zq×Zq로부터 Zq로의 사상을 행하는 함수로 할 때, 식
    ha(r2', s, 1)k = hb(r2', s, 1) + hc(r2', s, 1)xA(mod q)
    를 만족하는 서명 s를 산출하는 서명생성수단을 구비하고,
    상기 함수 ha는 ha(r2', s, 1) = s를 만족하고,
    상기 함수 hb는 hb(r2', s, 1) = r2'를 만족하고,
    상기 함수 hc는 hc(r2', s, 1) = r2'+s+1을 만족하는 것을 특징으로 하는 메시지 복원형 서명장치.
  19. p를 소수, g를 요소, 그 차수를 q로 하는 유한체 GF(p) 상에서의 연산에 기초하여 이산대수문제를 안전성의 근거로 하고, 메시지 m에 대하여 비밀키 xA를 이용하여 메시지 복원이 가능한 서명을 실행하는 장치에 있어서,
    비밀키 xA를 기억하고 있는 비밀키 기억수단과,
    난수 k를 생성하는 난수생성수단과,
    함수 f21(k) = gk에 따라 상기 난수 k로부터 커미트먼트 r1을 생성하는 커미트먼트 생성수단과,
    GF(p)×GF(p)로부터 GF(p)로의 사상을 행하는 함수 f22(r1, m)에 따라 상기 커미트먼트 r1및 상기 메시지 m으로부터 마스크된 메시지 r2를 생성하는 메시지 마스크수단과,
    함수 f23(r2) = r2'(mod q)에 따라 상기 마스크된 메시지 r2로부터 서명용 메시지 r2'를 생성하는 서명용 메시지 생성수단과,
    유한링 Zq를 {0, 1,..., q-1}로 하고, 함수 ha, hb, hc를 Zq×Zq×Zq로부터 Zq로의 사상을 행하는 함수로 할 때, 식
    ha(r2', s, 1)k = hb(r2', s, 1) + hc(r2', s, 1)xA(mod q)
    를 만족하는 서명 s를 산출하는 서명생성수단을 구비하고,
    상기 함수 ha는 ha = (r2', s, 1) = r2'를 만족하고,
    상기 함수 hb는 hb(r2', s, 1) = s를 만족하고,
    상기 함수 hc는 hc(r2', s, 1) = r2'+s+1을 만족하는 것을 특징으로 하는 메시지 복원형 서명장치.
  20. p를 소수, g를 요소, 그 차수를 q로 하는 유한체 GF(p) 상에서의 연산에 기초하여 이산대수문제를 안전성의 근거로 하고, 메시지 m에 대하여 비밀키 xA를 이용하여 메시지 복원이 가능한 서명을 실행하는 장치에 있어서,
    비밀키 xA를 기억하고 있는 비밀키 기억수단과,
    난수 k를 생성하는 난수생성수단과,
    함수 f21(k) = gk에 따라 상기 난수 k로부터 커미트먼트 r1을 생성하는 커미트먼트 생성수단과,
    GF(p)×GF(p)로부터 GF(p)로의 사상을 행하는 함수 f22(r1, m)에 따라 상기 커미트먼트 r1및 상기 메시지 m으로부터 마스크된 메시지 r2를 생성하는 메시지 마스크수단과,
    함수 f23(r2) = r2'(mod q)에 따라 상기 마스크된 메시지 r2로부터 서명용 메시지 r2'를 생성하는 서명용 메시지 생성수단과,
    유한링 Zq를 {0, 1,..., q-1}로 하고, 함수 ha, hb, hc를 Zq×Zq×Zq로부터 Zq로의 사상을 행하는 함수로 할 때, 식
    ha(r2', s, 1)k = hb(r2', s, 1) + hc(r2', s, 1)xA(mod q)
    를 만족하는 서명 s를 산출하는 서명생성수단을 구비하고,
    상기 함수 ha는 ha(r2', s, 1) = r2'+s+1을 만족하고,
    상기 함수 hb는 hb(r2', s, 1) = r2'를 만족하고,
    상기 함수 hc는 hc(r2', s, 1) = s를 만족하는 것을 특징으로 하는 메시지 복원형 서명장치.
  21. p를 소수, g를 요소, 그 차수를 q로 하는 유한체 GF(p) 상에서의 연산에 기초하여 이산대수문제를 안전성의 근거로 하고, 메시지 m에 대하여 비밀키 xA를 이용하여 메시지 복원이 가능한 서명을 실행하는 장치에 있어서,
    비밀키 xA를 기억하고 있는 비밀키 기억수단과,
    난수 k를 생성하는 난수생성수단과,
    함수 f21(k) = gk에 따라 상기 난수 k로부터 커미트먼트 r1을 생성하는 커미트먼트 생성수단과,
    GF(p)×GF(p)로부터 GF(p)로의 사상을 행하는 함수 f22(r1, m)에 따라 상기 커미트먼트 r1및 상기 메시지 m으로부터 마스크된 메시지 r2를 생성하는 메시지 마스크수단과,
    함수 f23(r2) = r2'(mod q)에 따라 상기 마스크된 메시지 r2로부터 서명용 메시지 r2'를 생성하는 서명용 메시지 생성수단과,
    유한링 Zq를 {0, 1,..., q-1}로 하고, 함수 ha, hb, hc를 Zq×Zq×Zq로부터 Zq로의 사상을 행하는 함수로 할 때, 식
    ha(r2', s, 1)k = hb(r2', s, 1) + hc(r2', s, 1)xA(mod q)
    를 만족하는 서명 s를 산출하는 서명생성수단을 구비하고,
    상기 함수 ha는 ha(r2', s, 1) = r2'+s+1을 만족하고,
    상기 함수 hb는 hb(r2', s, 1) = s를 만족하고,
    상기 함수 hc는 hc(r2', s, 1) = r2'를 만족하는 것을 특징으로 하는 메시지 복원형 서명장치.
  22. 삭제
  23. p를 소수, r을 양의 정수, g를 요소, 그 차수를 q로 하는 유한체 GF(pr) 상에서의 연산에 기초하여 이산대수문제를 안전성의 근거로 하고, 메시지 m에 대하여 비밀키 xA를 이용하여 메시지 복원이 가능한 서명을 실행하는 장치에 있어서,
    비밀키 xA를 기억하고 있는 비밀키 기억수단과,
    난수 k를 생성하는 난수생성수단과,
    함수 f24(k) = gk에 따라 상기 난수 k로부터 커미트먼트 r1을 생성하는 커미트먼트 생성수단과,
    GF(pr)×GF(pr)로부터 GF(pr)로의 사상을 행하는 함수 f25(r1, m)에 따라 상기 커미트먼트 r1및 상기 메시지 m으로부터 마스크된 메시지 r2를 생성하는 메시지 마스크수단과,
    유한체 GF(pr)로부터 유한링 Zpr= {0, 1,..., pr-1}로의 사상을 행하는 함수 f26(r2)에 따라 상기 마스크된 메시지 r2로부터 변환후 메시지 rc2를 생성하는 변환후 메시지 생성수단과,
    함수 f27(rc2) = rc2'(mod q)에 따라 상기 변환후 메시지 rc2로부터 서명용 메시지 rc2'를 생성하는 서명용 메시지 생성수단과,
    유한링 Zq를 {0, 1,..., q-1}로 하고, 함수 ha, hb, hc를 Zq×Zq×Zq로부터 Zq로의 사상을 행하는 함수로 할 때, 식
    ha(rc2', s, 1)k = hb(rc2', s, 1)+hc(rc2', s, 1)xA(mod q)
    를 만족하는 서명 s를 산출하는 서명생성수단을 구비하고,
    상기 함수 ha는 ha(rc2', s, 1) = rc2'를 만족하고,
    상기 함수 hb는 hb(rc2', s, 1) = rc2'+s+1을 만족하고,
    상기 함수 hc는 hc(rc2', s, 1) = s를 만족하는 것을 특징으로 하는 메시지 복원형 서명장치.
  24. p를 소수, r을 양의 정수, g를 요소, 그 차수를 q로 하는 유한체 GF(pr) 상에서의 연산에 기초하여 이산대수문제를 안전성의 근거로 하고, 메시지 m에 대하여 비밀키 xA를 이용하여 메시지 복원이 가능한 서명을 실행하는 장치에 있어서,
    비밀키 xA를 기억하고 있는 비밀키 기억수단과,
    난수 k를 생성하는 난수생성수단과,
    함수 f24(k) = gk에 따라 상기 난수 k로부터 커미트먼트 r1을 생성하는 커미트먼트 생성수단과,
    GF(pr)×GF(pr)로부터 GF(pr)로의 사상을 행하는 함수 f25(r1, m)에 따라 상기 커미트먼트 r1및 상기 메시지 m으로부터 마스크된 메시지 r2를 생성하는 메시지 마스크수단과,
    유한체 GF(pr)로부터 유한링 Zpr= {0, 1,..., pr-1}로의 사상을 행하는 함수 f26(r2)에 따라 상기 마스크된 메시지 r2로부터 변환후 메시지 rc2를 생성하는 변환후 메시지 생성수단과,
    함수 f27(rc2) = rc2'(mod q)에 따라 상기 변환후 메시지 rc2로부터 서명용 메시지 rc2'를 생성하는 서명용 메시지 생성수단과,
    유한링 Zq를 {0, 1,..., q-1}로 하고, 함수 ha, hb, hc를 Zq×Zq×Zq로부터 Zq로의 사상을 행하는 함수로 할 때, 식
    ha(rc2', s, 1)k = hb(rc2', s, 1)+hc(rc2', s, 1)xA(mod q)
    를 만족하는 서명 s를 산출하는 서명생성수단을 구비하고,
    상기 함수 ha는 ha(rc2', s, 1) = s를 만족하고,
    상기 함수 hb는 hb(rc2', s, 1) = rc2'+s+1을 만족하고,
    상기 함수 hc는 hc(rc2', s, 1) = rc2'를 만족하는 것을 특징으로 하는 메시지 복원형 서명장치.
  25. p를 소수, r을 양의 정수, g를 요소, 그 차수를 q로 하는 유한체 GF(pr) 상에서의 연산에 기초하여 이산대수문제를 안전성의 근거로 하고, 메시지 m에 대하여 비밀키 xA를 이용하여 메시지 복원이 가능한 서명을 실행하는 장치에 있어서,
    비밀키 xA를 기억하고 있는 비밀키 기억수단과,
    난수 k를 생성하는 난수생성수단과,
    함수 f24(k) = gk에 따라 상기 난수 k로부터 커미트먼트 r1을 생성하는 커미트먼트 생성수단과,
    GF(pr)×GF(pr)로부터 GF(pr)로의 사상을 행하는 함수 f25(r1, m)에 따라 상기 커미트먼트 r1및 상기 메시지 m으로부터 마스크된 메시지 r2를 생성하는 메시지 마스크수단과,
    유한체 GF(pr)로부터 유한링 Zpr= {0, 1,..., pr-1}로의 사상을 행하는 함수 f26(r2)에 따라 상기 마스크된 메시지 r2로부터 변환후 메시지 rc2를 생성하는 변환후 메시지 생성수단과,
    함수 f27(rc2) = rc2'(mod q)에 따라 상기 변환후 메시지 rc2로부터 서명용 메시지 rc2'를 생성하는 서명용 메시지 생성수단과,
    유한링 Zq를 {0, 1,..., q-1}로 하고, 함수 ha, hb, hc를 Zq×Zq×Zq로부터 Zq로의 사상을 행하는 함수로 할 때, 식
    ha(rc2', s, 1)k = hb(rc2', s, 1)+hc(rc2', s, 1)xA(mod q)
    를 만족하는 서명 s를 산출하는 서명생성수단을 구비하고,
    상기 함수 ha는 ha(rc2', s, 1) = s를 만족하고,
    상기 함수 hb는 hb(rc2', s, 1) = rc2'를 만족하고,
    상기 함수 hc는 hc(rc2', s, 1) = rc2'+s+1을 만족하는 것을 특징으로 하는 메시지 복원형 서명장치.
  26. p를 소수, r을 양의 정수, g를 요소, 그 차수를 q로 하는 유한체 GF(pr) 상에서의 연산에 기초하여 이산대수문제를 안전성의 근거로 하고, 메시지 m에 대하여 비밀키 xA를 이용하여 메시지 복원이 가능한 서명을 실행하는 장치에 있어서,
    비밀키 xA를 기억하고 있는 비밀키 기억수단과,
    난수 k를 생성하는 난수생성수단과,
    함수 f24(k) = gk에 따라 상기 난수 k로부터 커미트먼트 r1을 생성하는 커미트먼트 생성수단과,
    GF(pr)×GF(pr)로부터 GF(pr)로의 사상을 행하는 함수 f25(r1, m)에 따라 상기 커미트먼트 r1및 상기 메시지 m으로부터 마스크된 메시지 r2를 생성하는 메시지 마스크수단과,
    유한체 GF(pr)로부터 유한링 Zpr= {0, 1,..., pr-1}로의 사상을 행하는 함수 f26(r2)에 따라 상기 마스크된 메시지 r2로부터 변환후 메시지 rc2를 생성하는 변환후 메시지 생성수단과,
    함수 f27(rc2) = rc2'(mod q)에 따라 상기 변환후 메시지 rc2로부터 서명용 메시지 rc2'를 생성하는 서명용 메시지 생성수단과,
    유한링 Zq를 {0, 1,..., q-1}로 하고, 함수 ha, hb, hc를 Zq×Zq×Zq로부터 Zq로의 사상을 행하는 함수로 할 때, 식
    ha(rc2', s, 1)k = hb(rc2', s, 1)+hc(rc2', s, 1)xA(mod q)
    를 만족하는 서명 s를 산출하는 서명생성수단을 구비하고,
    상기 함수 ha는 ha(rc2', s, 1)=rc2'를 만족하고,
    상기 함수 hb는 hb(rc2', s, 1)=s를 만족하고,
    상기 함수 hc는 hc(rc2', s, 1) = hc(rc2', s, 1) = rc2'+s+1을 만족하는 것을 특징으로 하는 메시지 복원형 서명장치.
  27. p를 소수, r을 양의 정수, g를 요소, 그 차수를 q로 하는 유한체 GF(pr) 상에서의 연산에 기초하여 이산대수문제를 안전성의 근거로 하고, 메시지 m에 대하여 비밀키 xA를 이용하여 메시지 복원이 가능한 서명을 실행하는 장치에 있어서,
    비밀키 xA를 기억하고 있는 비밀키 기억수단과,
    난수 k를 생성하는 난수생성수단과,
    함수 f24(k) = gk에 따라 상기 난수 k로부터 커미트먼트 r1을 생성하는 커미트먼트 생성수단과,
    GF(pr)×GF(pr)로부터 GF(pr)로의 사상을 행하는 함수 f25(r1, m)에 따라 상기 커미트먼트 r1및 상기 메시지 m으로부터 마스크된 메시지 r2를 생성하는 메시지 마스크수단과,
    유한체 GF(pr)로부터 유한링 Zpr= {0, 1,..., pr-1}로의 사상을 행하는 함수 f26(r2)에 따라 상기 마스크된 메시지 r2로부터 변환후 메시지 rc2를 생성하는 변환후 메시지 생성수단과,
    함수 f27(rc2) = rc2'(mod q)에 따라 상기 변환후 메시지 rc2로부터 서명용 메시지 rc2'를 생성하는 서명용 메시지 생성수단과,
    유한링 Zq를 {0, 1,..., q-1}로 하고, 함수 ha, hb, hc를 Zq×Zq×Zq로부터 Zq로의 사상을 행하는 함수로 할 때, 식
    ha(rc2', s, 1)k = hb(rc2', s, 1)+hc(rc2', s, 1)xA(mod q)
    를 만족하는 서명 s를 산출하는 서명생성수단을 구비하고,
    상기 함수 ha는 ha(rc2', s, 1) = rc2'+s+1을 만족하고,
    상기 함수 hb는 hb(rc2', s, 1) = rc2'를 만족하고,
    상기 함수 hc는 hc(rc2', s, 1) = s를 만족하는 것을 특징으로 하는 메시지 복원형 서명장치.
  28. p를 소수, r을 양의 정수, g를 요소, 그 차수를 q로 하는 유한체 GF(pr) 상에서의 연산에 기초하여 이산대수문제를 안전성의 근거로 하고, 메시지 m에 대하여 비밀키 xA를 이용하여 메시지 복원이 가능한 서명을 실행하는 장치에 있어서,
    비밀키 xA를 기억하고 있는 비밀키 기억수단과,
    난수 k를 생성하는 난수생성수단과,
    함수 f24(k) = gk에 따라 상기 난수 k로부터 커미트먼트 r1을 생성하는 커미트먼트 생성수단과,
    GF(pr)×GF(pr)로부터 GF(pr)로의 사상을 행하는 함수 f25(r1, m)에 따라 상기 커미트먼트 r1및 상기 메시지 m으로부터 마스크된 메시지 r2를 생성하는 메시지 마스크수단과,
    유한체 GF(pr)로부터 유한링 Zpr= {0, 1,..., pr-1}로의 사상을 행하는 함수 f26(r2)에 따라 상기 마스크된 메시지 r2로부터 변환후 메시지 rc2를 생성하는 변환후 메시지 생성수단과,
    함수 f27(rc2) = rc2'(mod q)에 따라 상기 변환후 메시지 rc2로부터 서명용 메시지 rc2'를 생성하는 서명용 메시지 생성수단과,
    유한링 Zq를 {0, 1,..., q-1}로 하고, 함수 ha, hb, hc를 Zq×Zq×Zq로부터 Zq로의 사상을 행하는 함수로 할 때, 식
    ha(rc2', s, 1)k = hb(rc2', s, 1)+hc(rc2', s, 1)xA(mod q)
    를 만족하는 서명 s를 산출하는 서명생성수단을 구비하고,
    상기 함수 ha는 ha(rc2', s, 1) = rc2'+s+1을 만족하고,
    상기 함수 hb는 hb(rc2', s, 1) = s를 만족하고,
    상기 함수 hc는 hc(rc2', s, 1)=rc2'를 만족하는 것을 특징으로 하는 메시지 복원형 서명장치.
  29. 삭제
  30. p를 소수, G를 요소, 그 차수를 q로 하는 유한체 GF(p) 상에서 정의되는 타원곡선 E(GF(p)) 상의 연산에 기초하여, 이산대수문제를 안전성의 근거로 하고, 메시지 m에 대하여 비밀키 xA를 이용하여 메시지 복원이 가능한 서명을 실행하는 장치에 있어서,
    비밀키 xA를 기억하고 있는 비밀키 기억수단과,
    난수 k를 생성하는 제 1 난수생성수단과,
    함수 F21(k)=kG 에 따라서 상기 난수 k로부터 커미트먼트 R1을 생성하는 커미트먼트 생성수단과,
    E(GF(p))×GF(p)로부터 GF(p)로의 사상을 행하는 함수 F22(R1, m)에 따라서 상기 커미트먼트 R1및 상기 메시지 m으로부터 마스크된 메시지 r2를 생성하는 메시지 마스크수단과,
    함수 F23(r2) = r2'(mod q)에 따라서 상기 마스크된 메시지 r2로부터 서명용 메시지 r2'를 생성하는 서명용 메시지 생성수단과,
    유한링 Zq를 {O, 1,···, q-1}로 하고, 함수 ha, hb, hc를 Zq×Zq×Zq로부터 Zq로의 사상을 행하는 함수로 할 때, 식
    ha(r2', s, 1)k = hb(r2', s, 1) + hc(r2', s, 1)xA(mod q)
    를 만족하는 서명 s를 산출하는 서명생성수단을 구비하고,
    상기 함수 ha는 ha(r2', s, 1) = r2'를 만족하고,
    상기 함수 hb는 hb(r2', s, 1) = r2'+s+1을 만족하고,
    상기 함수 hc는 hc(r2', s, 1) = s를 만족하는 것을 특징으로 하는 메시지 복원형 서명장치.
  31. p를 소수, G를 요소, 그 차수를 q로 하는 유한체 GF(p) 상에서 정의되는 타원곡선 E(GF(p)) 상의 연산에 기초하여, 이산대수문제를 안전성의 근거로 하고, 메시지 m에 대하여 비밀키 xA를 이용하여 메시지 복원이 가능한 서명을 실행하는 장치에 있어서,
    비밀키 xA를 기억하고 있는 비밀키 기억수단과,
    난수 k를 생성하는 제 1 난수생성수단과,
    함수 F21(k)=kG 에 따라서 상기 난수 k로부터 커미트먼트 R1을 생성하는 커미트먼트 생성수단과,
    E(GF(p))×GF(p)로부터 GF(p)로의 사상을 행하는 함수 F22(R1, m)에 따라서 상기 커미트먼트 R1및 상기 메시지 m으로부터 마스크된 메시지 r2를 생성하는 메시지 마스크수단과,
    함수 F23(r2) = r2'(mod q)에 따라서 상기 마스크된 메시지 r2로부터 서명용 메시지 r2'를 생성하는 서명용 메시지 생성수단과,
    유한링 Zq를 {O, 1,···, q-1}로 하고, 함수 ha, hb, hc를 Zq×Zq×Zq로부터 Zq로의 사상을 행하는 함수로 할 때, 식
    ha(r2', s, 1)k = hb(r2', s, 1) + hc(r2', s, 1)xA(mod q)
    를 만족하는 서명 s를 산출하는 서명생성수단을 구비하고,
    상기 함수 ha는 ha(r2', s, 1) = s를 만족하고,
    상기 함수 hb는 hb(r2', s, 1) = r2'+s+1을 만족하고,
    상기 함수 hc는 hc(r2', s, 1) = r2'를 만족하는 것을 특징으로 하는 메시지 복원형 서명장치.
  32. p를 소수, G를 요소, 그 차수를 q로 하는 유한체 GF(p) 상에서 정의되는 타원곡선 E(GF(p)) 상의 연산에 기초하여, 이산대수문제를 안전성의 근거로 하고, 메시지 m에 대하여 비밀키 xA를 이용하여 메시지 복원이 가능한 서명을 실행하는 장치에 있어서,
    비밀키 xA를 기억하고 있는 비밀키 기억수단과,
    난수 k를 생성하는 제 1 난수생성수단과,
    함수 F21(k)=kG 에 따라서 상기 난수 k로부터 커미트먼트 R1을 생성하는 커미트먼트 생성수단과,
    E(GF(p))×GF(p)로부터 GF(p)로의 사상을 행하는 함수 F22(R1, m)에 따라서 상기 커미트먼트 R1및 상기 메시지 m으로부터 마스크된 메시지 r2를 생성하는 메시지 마스크수단과,
    함수 F23(r2) = r2'(mod q)에 따라서 상기 마스크된 메시지 r2로부터 서명용 메시지 r2'를 생성하는 서명용 메시지 생성수단과,
    유한링 Zq를 {O, 1,···, q-1}로 하고, 함수 ha, hb, hc를 Zq×Zq×Zq로부터 Zq로의 사상을 행하는 함수로 할 때, 식
    ha(r2', s, 1)k = hb(r2', s, 1) + hc(r2', s, 1)xA(mod q)
    를 만족하는 서명 s를 산출하는 서명생성수단을 구비하고,
    상기 함수 ha는 ha(r2', s, 1) = s를 만족하고,
    상기 함수 hb는 hb(r2', s, 1) = r2'를 만족하고,
    상기 함수 hc는 hc(r2', s, 1) = r2'+s+1을 만족하는 것을 특징으로 하는 메시지 복원형 서명장치.
  33. p를 소수, G를 요소, 그 차수를 q로 하는 유한체 GF(p) 상에서 정의되는 타원곡선 E(GF(p)) 상의 연산에 기초하여, 이산대수문제를 안전성의 근거로 하고, 메시지 m에 대하여 비밀키 xA를 이용하여 메시지 복원이 가능한 서명을 실행하는 장치에 있어서,
    비밀키 xA를 기억하고 있는 비밀키 기억수단과,
    난수 k를 생성하는 제 1 난수생성수단과,
    함수 F21(k)=kG 에 따라서 상기 난수 k로부터 커미트먼트 R1을 생성하는 커미트먼트 생성수단과,
    E(GF(p))×GF(p)로부터 GF(p)로의 사상을 행하는 함수 F22(R1, m)에 따라서 상기 커미트먼트 R1및 상기 메시지 m으로부터 마스크된 메시지 r2를 생성하는 메시지 마스크수단과,
    함수 F23(r2) = r2'(mod q)에 따라서 상기 마스크된 메시지 r2로부터 서명용 메시지 r2'를 생성하는 서명용 메시지 생성수단과,
    유한링 Zq를 {O, 1,···, q-1}로 하고, 함수 ha, hb, hc를 Zq×Zq×Zq로부터 Zq로의 사상을 행하는 함수로 할 때, 식
    ha(r2', s, 1)k = hb(r2', s, 1) + hc(r2', s, 1)xA(mod q)
    를 만족하는 서명 s를 산출하는 서명생성수단을 구비하고,
    상기 함수 ha는 ha(r2', s, 1) = r2'를 만족하고,
    상기 함수 hb는 hb(r2', s, 1) = s를 만족하고,
    상기 함수 hc는 hc(r2', s, 1) = r2'+s+1을 만족하는 것을 특징으로 하는 메시지 복원형 서명장치.
  34. p를 소수, G를 요소, 그 차수를 q로 하는 유한체 GF(p) 상에서 정의되는 타원곡선 E(GF(p)) 상의 연산에 기초하여, 이산대수문제를 안전성의 근거로 하고, 메시지 m에 대하여 비밀키 xA를 이용하여 메시지 복원이 가능한 서명을 실행하는 장치에 있어서,
    비밀키 xA를 기억하고 있는 비밀키 기억수단과,
    난수 k를 생성하는 제 1 난수생성수단과,
    함수 F21(k)=kG 에 따라서 상기 난수 k로부터 커미트먼트 R1을 생성하는 커미트먼트 생성수단과,
    E(GF(p))×GF(p)로부터 GF(p)로의 사상을 행하는 함수 F22(R1, m)에 따라서 상기 커미트먼트 R1및 상기 메시지 m으로부터 마스크된 메시지 r2를 생성하는 메시지 마스크수단과,
    함수 F23(r2) = r2'(mod q)에 따라서 상기 마스크된 메시지 r2로부터 서명용 메시지 r2'를 생성하는 서명용 메시지 생성수단과,
    유한링 Zq를 {O, 1,···, q-1}로 하고, 함수 ha, hb, hc를 Zq×Zq×Zq로부터 Zq로의 사상을 행하는 함수로 할 때, 식
    ha(r2', s, 1)k = hb(r2', s, 1) + hc(r2', s, 1)xA(mod q)
    를 만족하는 서명 s를 산출하는 서명생성수단을 구비하고,
    상기 함수 ha는 ha(r2', s, 1) = r2'+s+1을 만족하고,
    상기 함수 hb는 hb(r2', s, 1) = r2'를 만족하고,
    상기 함수 hc는 hc(r2', s, 1) = s를 만족하는 것을 특징으로 하는 메시지 복원형 서명장치.
  35. p를 소수, G를 요소, 그 차수를 q로 하는 유한체 GF(p) 상에서 정의되는 타원곡선 E(GF(p)) 상의 연산에 기초하여, 이산대수문제를 안전성의 근거로 하고, 메시지 m에 대하여 비밀키 xA를 이용하여 메시지 복원이 가능한 서명을 실행하는 장치에 있어서,
    비밀키 xA를 기억하고 있는 비밀키 기억수단과,
    난수 k를 생성하는 제 1 난수생성수단과,
    함수 F21(k)=kG 에 따라서 상기 난수 k로부터 커미트먼트 R1을 생성하는 커미트먼트 생성수단과,
    E(GF(p))×GF(p)로부터 GF(p)로의 사상을 행하는 함수 F22(R1, m)에 따라서 상기 커미트먼트 R1및 상기 메시지 m으로부터 마스크된 메시지 r2를 생성하는 메시지 마스크수단과,
    함수 F23(r2) = r2'(mod q)에 따라서 상기 마스크된 메시지 r2로부터 서명용 메시지 r2'를 생성하는 서명용 메시지 생성수단과,
    유한링 Zq를 {O, 1,···, q-1}로 하고, 함수 ha, hb, hc를 Zq×Zq×Zq로부터 Zq로의 사상을 행하는 함수로 할 때, 식
    ha(r2', s, 1)k = hb(r2', s, 1) + hc(r2', s, 1)xA(mod q)
    를 만족하는 서명 s를 산출하는 서명생성수단을 구비하고,
    상기 함수 ha는 ha(r2', s, 1) = r2'+s+1을 만족하고,
    상기 함수 hb는 hb(r2', s, 1) = s를 만족하며,
    상기 함수 hc는 hc(r2', s, 1) = r2'를 만족하는 것을 특징으로 하는 메시지 복원형 서명장치.
  36. 삭제
  37. p를 소수, r을 양의 정수, G를 요소, 그 차수를 q로 하는 유한체 GF(pr) 상에서 정의되는 타원곡선 E(GF(pr)) 상의 연산에 기초하여, 이산대수문제를 안전성의 근거로 하고, 메시지 m에 대하여 비밀키 xA를 이용하여 메시지 복원이 가능한 서명을 실행하는 장치에 있어서,
    비밀키 xA를 기억하고 있는 비밀키 기억수단과,
    난수 k를 생성하는 난수생성수단과,
    함수 F24(k)=kG 에 따라 상기 난수 k로부터 커미트먼트 R1을 생성하는 커미트먼트 생성수단과,
    E(GF(pr))×GF(pr)로부터 GF(pr)로의 사상을 행하는 함수 F25(R1, m)에 따라 상기 커미트먼트 R1및 상기 메시지 m으로부터 마스크된 메시지 r2를 생성하는 메시지 마스크수단과,
    GF(pr)로부터 유한링 Zpr= {0, 1, ···, pr-1}로의 사상을 행하는 함수 F26(r2)에 따라 상기 마스크된 메세지 r2로부터 변환후 메시지 rc2를 생성하는 변환후 메시지 생성수단과,
    함수 F27(rc2) = rc2' (mod q)에 따라 상기 변환후 메시지 rc2로부터 서명용 메시지 rc2'를 생성하는 서명용 메시지 생성수단과,
    유한링 Zq를 {O, 1,···, q-1}로 하고, 함수 ha, hb, hc를 Zq×Zq×Zq로부터 Zq로의 사상을 행하는 함수로 할 때, 식
    ha(rc2', s, 1)k = hb(rc2', s, 1) + hc(rc2', s, 1)xA(mod q)
    를 만족하는 서명 s를 산출하는 서명생성수단을 구비하며,
    상기 함수 ha는 ha(rc2', s, 1)=rc2'를 만족하고,
    상기 함수 hb는 hb(rc2', s, 1) = rc2'+s+1을 만족하고,
    상기 함수 hc는 hc(rc2', s, 1) = s를 만족하는 것을 특징으로 하는 메시지 복원형 서명장치.
  38. p를 소수, r을 양의 정수, G를 요소, 그 차수를 q로 하는 유한체 GF(pr) 상에서 정의되는 타원곡선 E(GF(pr)) 상의 연산에 기초하여, 이산대수문제를 안전성의 근거로 하고, 메시지 m에 대하여 비밀키 xA를 이용하여 메시지 복원이 가능한 서명을 실행하는 장치에 있어서,
    비밀키 xA를 기억하고 있는 비밀키 기억수단과,
    난수 k를 생성하는 난수생성수단과,
    함수 F24(k)=kG 에 따라 상기 난수 k로부터 커미트먼트 R1을 생성하는 커미트먼트 생성수단과,
    E(GF(pr))×GF(pr)로부터 GF(pr)로의 사상을 행하는 함수 F25(R1, m)에 따라 상기 커미트먼트 R1및 상기 메시지 m으로부터 마스크된 메시지 r2를 생성하는 메시지 마스크수단과,
    GF(pr)로부터 유한링 Zpr= {0, 1, ···, pr-1}로의 사상을 행하는 함수 F26(r2)에 따라 상기 마스크된 메세지 r2로부터 변환후 메시지 rc2를 생성하는 변환후 메시지 생성수단과,
    함수 F27(rc2) = rc2' (mod q)에 따라 상기 변환후 메시지 rc2로부터 서명용 메시지 rc2'를 생성하는 서명용 메시지 생성수단과,
    유한링 Zq를 {O, 1,···, q-1}로 하고, 함수 ha, hb, hc를 Zq×Zq×Zq로부터 Zq로의 사상을 행하는 함수로 할 때, 식
    ha(rc2', s, 1)k = hb(rc2', s, 1) + hc(rc2', s, 1)xA(mod q)
    를 만족하는 서명 s를 산출하는 서명생성수단을 구비하며,
    상기 함수 ha는 ha(rc2', s, 1) = s를 만족하고,
    상기 함수 hb는 hb(rc2', s, 1) = rc2'+s+1을 만족하고,
    상기 함수 hc는 hc(rc2', s, 1) = rc2'를 만족하는 것을 특징으로 하는 메시지 복원형 서명장치.
  39. p를 소수, r을 양의 정수, G를 요소, 그 차수를 q로 하는 유한체 GF(pr) 상에서 정의되는 타원곡선 E(GF(pr)) 상의 연산에 기초하여, 이산대수문제를 안전성의 근거로 하고, 메시지 m에 대하여 비밀키 xA를 이용하여 메시지 복원이 가능한 서명을 실행하는 장치에 있어서,
    비밀키 xA를 기억하고 있는 비밀키 기억수단과,
    난수 k를 생성하는 난수생성수단과,
    함수 F24(k)=kG 에 따라 상기 난수 k로부터 커미트먼트 R1을 생성하는 커미트먼트 생성수단과,
    E(GF(pr))×GF(pr)로부터 GF(pr)로의 사상을 행하는 함수 F25(R1, m)에 따라 상기 커미트먼트 R1및 상기 메시지 m으로부터 마스크된 메시지 r2를 생성하는 메시지 마스크수단과,
    GF(pr)로부터 유한링 Zpr= {0, 1, ···, pr-1}로의 사상을 행하는 함수 F26(r2)에 따라 상기 마스크된 메세지 r2로부터 변환후 메시지 rc2를 생성하는 변환후 메시지 생성수단과,
    함수 F27(rc2) = rc2' (mod q)에 따라 상기 변환후 메시지 rc2로부터 서명용 메시지 rc2'를 생성하는 서명용 메시지 생성수단과,
    유한링 Zq를 {O, 1,···, q-1}로 하고, 함수 ha, hb, hc를 Zq×Zq×Zq로부터 Zq로의 사상을 행하는 함수로 할 때, 식
    ha(rc2', s, 1)k = hb(rc2', s, 1) + hc(rc2', s, 1)xA(mod q)
    를 만족하는 서명 s를 산출하는 서명생성수단을 구비하며,
    상기 함수 ha는 ha(rc2', s, 1) = s를 만족하고,
    상기 함수 hb는 hb(rc2', s, 1) = rc2'를 만족하고,
    상기 함수 hc는 hc(rc2', s, 1) = rc2'+s+1을 만족하는 것을 특징으로 하는 메시지 복원형 서명장치.
  40. p를 소수, r을 양의 정수, G를 요소, 그 차수를 q로 하는 유한체 GF(pr) 상에서 정의되는 타원곡선 E(GF(pr)) 상의 연산에 기초하여, 이산대수문제를 안전성의 근거로 하고, 메시지 m에 대하여 비밀키 xA를 이용하여 메시지 복원이 가능한 서명을 실행하는 장치에 있어서,
    비밀키 xA를 기억하고 있는 비밀키 기억수단과,
    난수 k를 생성하는 난수생성수단과,
    함수 F24(k)=kG 에 따라 상기 난수 k로부터 커미트먼트 R1을 생성하는 커미트먼트 생성수단과,
    E(GF(pr))×GF(pr)로부터 GF(pr)로의 사상을 행하는 함수 F25(R1, m)에 따라 상기 커미트먼트 R1및 상기 메시지 m으로부터 마스크된 메시지 r2를 생성하는 메시지 마스크수단과,
    GF(pr)로부터 유한링 Zpr= {0, 1, ···, pr-1}로의 사상을 행하는 함수 F26(r2)에 따라 상기 마스크된 메세지 r2로부터 변환후 메시지 rc2를 생성하는 변환후 메시지 생성수단과,
    함수 F27(rc2) = rc2' (mod q)에 따라 상기 변환후 메시지 rc2로부터 서명용 메시지 rc2'를 생성하는 서명용 메시지 생성수단과,
    유한링 Zq를 {O, 1,···, q-1}로 하고, 함수 ha, hb, hc를 Zq×Zq×Zq로부터 Zq로의 사상을 행하는 함수로 할 때, 식
    ha(rc2', s, 1)k = hb(rc2', s, 1) + hc(rc2', s, 1)xA(mod q)
    를 만족하는 서명 s를 산출하는 서명생성수단을 구비하며,
    상기 함수 ha는 ha(rc2', s, 1) = rc2'를 만족하고,
    상기 함수 hb는 hb(rc2', s, 1) = s를 만족하고,
    상기 함수 hc는 hc(rc2', s, 1) = rc2'+s+1을 만족하는 것을 특징으로 하는 메시지 복원형 서명장치.
  41. p를 소수, r을 양의 정수, G를 요소, 그 차수를 q로 하는 유한체 GF(pr) 상에서 정의되는 타원곡선 E(GF(pr)) 상의 연산에 기초하여, 이산대수문제를 안전성의 근거로 하고, 메시지 m에 대하여 비밀키 xA를 이용하여 메시지 복원이 가능한 서명을 실행하는 장치에 있어서,
    비밀키 xA를 기억하고 있는 비밀키 기억수단과,
    난수 k를 생성하는 난수생성수단과,
    함수 F24(k)=kG 에 따라 상기 난수 k로부터 커미트먼트 R1을 생성하는 커미트먼트 생성수단과,
    E(GF(pr))×GF(pr)로부터 GF(pr)로의 사상을 행하는 함수 F25(R1, m)에 따라 상기 커미트먼트 R1및 상기 메시지 m으로부터 마스크된 메시지 r2를 생성하는 메시지 마스크수단과,
    GF(pr)로부터 유한링 Zpr= {0, 1, ···, pr-1}로의 사상을 행하는 함수 F26(r2)에 따라 상기 마스크된 메세지 r2로부터 변환후 메시지 rc2를 생성하는 변환후 메시지 생성수단과,
    함수 F27(rc2) = rc2' (mod q)에 따라 상기 변환후 메시지 rc2로부터 서명용 메시지 rc2'를 생성하는 서명용 메시지 생성수단과,
    유한링 Zq를 {O, 1,···, q-1}로 하고, 함수 ha, hb, hc를 Zq×Zq×Zq로부터 Zq로의 사상을 행하는 함수로 할 때, 식
    ha(rc2', s, 1)k = hb(rc2', s, 1) + hc(rc2', s, 1)xA(mod q)
    를 만족하는 서명 s를 산출하는 서명생성수단을 구비하며,
    상기 함수 ha는 ha(rc2', s, 1) = rc2'+s+1을 만족하고,
    상기 함수 hb는 hb(rc2', s, 1) = rc2'를 만족하고,
    상기 함수 hc는 hc(rc2', s, 1) = s를 만족하는 것을 특징으로 하는 메시지 복원형 서명장치.
  42. p를 소수, r을 양의 정수, G를 요소, 그 차수를 q로 하는 유한체 GF(pr) 상에서 정의되는 타원곡선 E(GF(pr)) 상의 연산에 기초하여, 이산대수문제를 안전성의 근거로 하고, 메시지 m에 대하여 비밀키 xA를 이용하여 메시지 복원이 가능한 서명을 실행하는 장치에 있어서,
    비밀키 xA를 기억하고 있는 비밀키 기억수단과,
    난수 k를 생성하는 난수생성수단과,
    함수 F24(k)=kG 에 따라 상기 난수 k로부터 커미트먼트 R1을 생성하는 커미트먼트 생성수단과,
    E(GF(pr))×GF(pr)로부터 GF(pr)로의 사상을 행하는 함수 F25(R1, m)에 따라 상기 커미트먼트 R1및 상기 메시지 m으로부터 마스크된 메시지 r2를 생성하는 메시지 마스크수단과,
    GF(pr)로부터 유한링 Zpr= {0, 1, ···, pr-1}로의 사상을 행하는 함수 F26(r2)에 따라 상기 마스크된 메세지 r2로부터 변환후 메시지 rc2를 생성하는 변환후 메시지 생성수단과,
    함수 F27(rc2) = rc2' (mod q)에 따라 상기 변환후 메시지 rc2로부터 서명용 메시지 rc2'를 생성하는 서명용 메시지 생성수단과,
    유한링 Zq를 {O, 1,···, q-1}로 하고, 함수 ha, hb, hc를 Zq×Zq×Zq로부터 Zq로의 사상을 행하는 함수로 할 때, 식
    ha(rc2', s, 1)k = hb(rc2', s, 1) + hc(rc2', s, 1)xA(mod q)
    를 만족하는 서명 s를 산출하는 서명생성수단을 구비하며,
    상기 함수 ha는 ha(rc2', s, 1) = rc2'+s+1을 만족하고,
    상기 함수 hb는 hb(rc2', s, 1)=s를 만족하며,
    상기 함수 hc는 hc(rc2', s, 1)=rc2'를 만족하는 것을 특징으로 하는 메시지 복원형 서명장치.
  43. 삭제
  44. 삭제
  45. 삭제
  46. 삭제
  47. 삭제
  48. 삭제
  49. 삭제
  50. 삭제
KR10-1999-7006737A 1997-01-28 1997-01-28 메시지 복원형 서명장치 KR100438257B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP1997/000181 WO1998033159A1 (fr) 1997-01-28 1997-01-28 Dispositif d'identification du type a reproduction de message

Publications (2)

Publication Number Publication Date
KR20000070493A KR20000070493A (ko) 2000-11-25
KR100438257B1 true KR100438257B1 (ko) 2004-07-02

Family

ID=14179969

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-1999-7006737A KR100438257B1 (ko) 1997-01-28 1997-01-28 메시지 복원형 서명장치

Country Status (5)

Country Link
US (1) US6697946B1 (ko)
EP (2) EP1976180A3 (ko)
KR (1) KR100438257B1 (ko)
DE (1) DE69738931D1 (ko)
WO (1) WO1998033159A1 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU769464B2 (en) * 1999-01-27 2004-01-29 France Telecom Method, system, device for proving the authenticity of an entity and/or the integrity and/or the authenticity of message
WO2005071880A1 (ja) * 2004-01-23 2005-08-04 Nec Corporation グループ署名システム、方法、装置、およびプログラム
WO2006085430A1 (ja) * 2005-02-10 2006-08-17 Nec Corporation メンバー証明書獲得装置、メンバー証明書発行装置、グループ署名装置、グループ署名検証装置
CA2702280C (en) 2007-10-29 2013-08-20 Nippon Telegraph And Telephone Corporation Signature generating apparatus, signature verifying apparatus and methods therefor
US20090313171A1 (en) * 2008-06-17 2009-12-17 Microsoft Corporation Electronic transaction verification
RU2448361C2 (ru) * 2010-07-01 2012-04-20 Андрей Рюрикович Федоров Способ восстановления записей в запоминающем устройстве, система для его осуществления и машиночитаемый носитель
EP2686978B1 (en) * 2011-03-18 2017-03-15 Certicom Corp. Keyed pv signatures
RU2502124C1 (ru) * 2012-09-12 2013-12-20 Общество с ограниченной ответственностью "РЭЙДИКС" Способ восстановления записей в запоминающем устройстве и система для его осуществления
EP3721598A1 (en) * 2017-12-07 2020-10-14 Telefonaktiebolaget LM Ericsson (publ) Security for group communication
JP7109295B2 (ja) * 2018-07-27 2022-07-29 キヤノン株式会社 認証システム、認証装置、被認証装置及び画像形成装置
US11128454B2 (en) 2019-05-30 2021-09-21 Bong Mann Kim Quantum safe cryptography and advanced encryption and key exchange (AEKE) method for symmetric key encryption/exchange

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0735723B1 (en) * 1990-06-01 2006-01-11 Kabushiki Kaisha Toshiba Cryptographic communication method and cryptographic communication device
DE69327238T2 (de) * 1993-08-17 2000-09-07 Entrust Technologies Switzerla Verfahren zur digitalen Unterschrift und Verfahren zur Schlüsselübereinkunft
AU3073595A (en) * 1994-07-29 1996-03-04 Certicom Corp. Elliptic curve encryption systems

Also Published As

Publication number Publication date
EP1976180A3 (en) 2010-10-27
EP0977165B1 (en) 2008-08-20
EP0977165A4 (en) 2004-05-12
WO1998033159A1 (fr) 1998-07-30
KR20000070493A (ko) 2000-11-25
DE69738931D1 (de) 2008-10-02
EP1976180A2 (en) 2008-10-01
US6697946B1 (en) 2004-02-24
EP0977165A1 (en) 2000-02-02

Similar Documents

Publication Publication Date Title
US7372961B2 (en) Method of public key generation
EP0503119B1 (en) Public key cryptographic system using elliptic curves over rings
US7996676B2 (en) Masked digital signatures
US7930549B2 (en) Accelerated signature verification on an elliptic curve
KR100438257B1 (ko) 메시지 복원형 서명장치
EP2082523B1 (en) Compressed ecdsa signatures
US20150006900A1 (en) Signature protocol
US6097813A (en) Digital signature protocol with reduced bandwidth
Lv et al. Practical convertible authenticated encryption schemes using self-certified public keys
US6507656B1 (en) Non malleable encryption apparatus and method
WO2016187689A1 (en) Signature protocol
JP3540477B2 (ja) 署名方式
JPH1084341A (ja) メッセージ付加形デジタル署名方法及びそれに対した検証方法
CA2306282C (en) Accelerated signature verification on an elliptic curve
CA2892318C (en) Signature protocol
Lenstra et al. User impersonation in key certification schemes
WO2004068264A2 (en) System and method for creating electronic signatures
Kou et al. Security fundamentals
Sarlabous Introduction to cryptography
Pandey et al. An Efficient Security Protocol based on ECC with Forward Secrecy and Public Verification
Sarlabous Intelligence is found in many places L'intelligence se trouve dans beaucoup endroits Intelligenz findet sich an vielen Plaetzen...-Jorgito
Parthiban et al. Stern Series Based ECC for Digital Signature with Message Recovery

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120611

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee