KR100599159B1 - 디지털서명 생성 및 확인 방법 및 그 장치 - Google Patents

디지털서명 생성 및 확인 방법 및 그 장치 Download PDF

Info

Publication number
KR100599159B1
KR100599159B1 KR1020050017716A KR20050017716A KR100599159B1 KR 100599159 B1 KR100599159 B1 KR 100599159B1 KR 1020050017716 A KR1020050017716 A KR 1020050017716A KR 20050017716 A KR20050017716 A KR 20050017716A KR 100599159 B1 KR100599159 B1 KR 100599159B1
Authority
KR
South Korea
Prior art keywords
digital signature
secret key
message
hashing
key
Prior art date
Application number
KR1020050017716A
Other languages
English (en)
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 삼성전자주식회사
Priority to KR1020050017716A priority Critical patent/KR100599159B1/ko
Priority to US11/366,419 priority patent/US8412948B2/en
Application granted granted Critical
Publication of KR100599159B1 publication Critical patent/KR100599159B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • 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/3236Cryptographic 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 using cryptographic hash functions
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 디지털서명을 생성하는데 소요되는 시간을 단축시키는 방안과 최소한의 연산량을 이용하여 디지털 서명을 생성하는 방안을 제안한다. 이를 위해 본 발명은 종래 하나의 비밀키를 이용하여 디지털서명을 생성하는 방안 대신 적어도 두 개의 비밀키들을 이용하여 디지털서명을 생성하는 방안을 제안한다. 즉, 전송할 메시지를 해쉬한 값으로부터 설정된 적어도 2개의 비밀키들 중 하나의 비밀키와 비밀키의 해쉬 회수를 결정하고, 결정한 비밀키를 결정한 해쉬 회수만큼 해쉬한 값을 디지털서명으로 설정한다.
디지털 서명, 원 타임 서명, 해쉬 함수, 일방향 함수, 비밀키, 공개키

Description

디지털서명 생성 및 확인 방법 및 그 장치{Method and apparatus for digital signature generation and validation}
도 1은 종래 디지털서명을 생성하기 위한 비밀키와 공개키를 도시한 도면,
도 2는 본 발명의 일 실시예에 따른 적어도 2개의 비밀키들을 도시한 도면,
도 3은 본 발명의 일 실시예에 따른 디지털서명을 생성하기 위한 비밀키와 공개키를 도시한 도면,
도 4는 본 발명의 일 실시예에 따른 디지털서명 생성부에서 수행되는 동작을 도시한 도면,
도 5는 종래 방식에 의해 전달받은 디지털서명의 위조 여부를 확인하는데 필요한 연산의 복잡도와 공개키의 길이의 관계를 도시한 도면, 그리고
도 6은 본 발명의 일 실시예에 따른 전달받은 디지털서명의 위조 여부를 확인하는데 필요한 연산의 복잡도와 공개키의 길이의 관계를 도시한 도면이다.
본 발명은 디지털서명(Digital Signature)에 관한 것으로서, 더욱 상세하게는 디지털서명(Digital Signature)을 생성하기 위한 서명의 복잡도와 신속히 디지 털서명을 수행할 수 있는 방안을 제안함에 있다.
디지털서명은 펜이나 필기구 대신 컴퓨터 등을 매개로 하여 서명자의 신원을 확인하기 위해 생성되는 정보를 의미한다. 디지털서명은 자료메시지에 부착되거나 논리적으로 결합된 전자적 형태의 자료로, 서명자의 신원을 확인하고 자료메시지의 내용에 대한 그 사람의 승인을 나타낼 목적으로 사용된다. 디지털서명은 손으로 하는 수기서명(manual signature) 또는 날인의 전자적인 대체물로서 펜 대신에 컴퓨터를 매개로 하여 생성되는 정보라고 할 수 있다. 일반적으로 디지털서명은 공개키 암호방식(비대칭적 암호체계)을 이용한다.
디지털서명은 디지털서명에 작성자로 기재된 자가 그 전자문서를 작성하였다는 사실과 작성내용이 송·수신과정에서 위조·변조되지 않았다는 사실을 증명하고, 또한 작성자가 그 전자문서 작성사실을 나중에 부인할 수 없게 하는 역할을 한다.
디지털서명은 인터넷쇼핑이나 사이버 금융거래 등에서 생길 수 있는 정보유출 등의 위험을 줄일 수 있는 효과가 있으므로, 디지털서명을 활용하면 개인정보 도용이나 변조를 원천적으로 차단할 수 있다.
디지털서명의 대표적인 용도는 인터넷뱅킹 등의 금융거래, 인터넷 민원서비스, 인터넷쇼핑 등이 있으며, 앞으로 국제간 전자상거래, 전자투표 등으로 확대될 수 있다. 인터넷뱅킹이나 온라인 주식거래에 필요한 공인인증서는 국가가 지정한 공인인증기관에서 발행하고 공개키를 관리하는 대표적인 디지털서명이다.
도 1은 종래 디지털서명을 생성하는 일 예를 도시하고 있다. 이하 도 1을 이 용하여 종래 디지털 서명을 생성하는 방안에 대해 알아보기로 한다. 이하 설명의 편의를 위해 디지털 서명을 생성하는 장치를 디지털 서명 생성부라 가정한다.
전송할 메시지(m)가 생성되면, 디지털 서명 생성부는 생성된 메시지에 대한 디지털 서명을 생성한다. 디지털 서명 생성부는 해쉬 함수를 이용하여 생성한 메시지에 대한 해쉬 연산 값을 산출한다. 디지털 서명 생성부는 산출된 해쉬 연산값을 이용하여 디지털 서명을 생성한다.
디지털 서명 생성부에서 생성되는 해쉬 연산값이 8비트로 표현된다고 가정하면, 디지털 서명 생성부에서 생성되는 해쉬 연산값은 '0000 0000' 부터 '1111 1111'까지를 갖게 된다. 즉, 해쉬 연산값은 '0'부터 '28-1'까지를 갖는다. 도 1에 의하면 n은 28-1이다. 또한, 생성한 메시지에 대한 해쉬 연산값이 '0000 1111'이라 가정하면, 이를 10진수로 표현하면 '15'가 된다.
디지털 서명 생성부는 비밀키(a)를 해쉬 연산한 결과값을 디지털서명으로 사용한다. 디지털 서명 생성부에서 비밀키를 해쉬 연산하는 회수는 생성한 메시지에 대한 해쉬 연산값을 이용한다. 상술한 바에 의하면, 생성한 메시지에 대한 해쉬 연산값이 '15'이므로, 전달하는 디지털 서명은 15번 해쉬하여 공개키를 생성하는 키 값이다. 즉, 디지털 서명 생성부는 'h 2^(8)-1-15(a)'를 디지털 서명으로 설정한다.
도 1에 의하면 a는 비밀키이며, hn(a)는 공개키이다. 따라서, 해쉬 함수는 일방향 함수이므로 제3자는 공개키로부터 비밀키를 획득할 수 없게 된다.
디지털 서명 수신부는 디지털 서명 생성부로부터 메시지와 디지털서명을 전달받는다. 디지털 서명 수신부는 전달받은 메시지를 해쉬한 결과값을 산출한다. 산출한 결과값에 대응되는 수만큼 전달받은 디지털서명을 해쉬한다. 상술한 바에 의하면 메시지로부터 산출한 결과값에 대응되는 수는 '15'이므로, 디지털서명 수신부는 전달받은 디지털서명을 '15'번 반복하여 해쉬한다. '15'번 반복한 결과값이 공개키와 동일하면, 디지털서명 수신부는 디지털서명이 위조 또는 변조되지 않았다고 인지하게 된다. 하지만, 전달받은 공개키와 '15'번 반복하여 해쉬한 결과값이 동일하지 않으면, 디지털서명 수신부는 수신한 디지털서명이 위조 또는 변조되었다고 인지하게 된다.
도 1에서 살펴본 바와 같이 디지털 서명 수신부는 산출한 결과값에 대응되는 수만큼 전달받은 디지털서명을 해쉬한다. 즉, 산출한 결과값에 대응되는 회수와 해쉬 회수는 비례한다. 따라서, 산출한 결과값에 대응되는 수가 큰 경우에는 해쉬 회수 역시 증가하게 된다.
즉, 산출한 결과값에 대응되는 수가 큰 경우, 디지털 서명 수신부에서 수행되는 연산량은 증가하게 되며, 디지털 서명의 위조 또는 변조를 확인하는데 소요되는 시간 역시 증가하게 된다.
이와 같은 문제점은 디지털서명 생성부에서도 동일하게 발생한다. 즉, 디지털 서명 생성부에서 산출한 결과값에 대응되는 수와 해쉬 회수는 반비례한다. 즉, 디지털 서명 생성부에서 산출한 결과값에 대응되는 수가 작은 경우, 비밀키의 해쉬 회수는 증가한다. 따라서, 디지털서명 생성부의 연산량은 증가하게 되며, 이로 이 해 디지털서명을 생성하는데 소요되는 시간은 늘어나게 된다.
상술한 바와 같은 문제점을 해결하기 위한 본 발명의 과제는 디지털 서명 생성부가 디지털서명을 생성하는데 소요되는 시간을 단축시키는 방안을 제안함에 있다.
상술한 바와 같은 문제점을 해결하기 위한 본 발명의 다른 과제는 디지털서명 생성부가 최소한의 연산량을 이용하여 디지털 서명을 생성하는 방안을 제안함에 있다.
상술한 바와 같은 문제점을 해결하기 위한 본 발명의 또 다른 과제는 디지털서명 수신부가 최소한의 연산량으로 디지털 서명의 위조 또는 변조 여부를 확인하는 방안을 제안함에 있다.
상술한 바와 같은 문제점을 해결하기 위한 본 발명의 또 다른 과제는 디지털서명 수신부가 전달받은 디지털 서명으로부터 공개키를 생성하는데 소요되는 시간을 단축시키는 방안을 제안함에 있다.
따라서 본 발명의 과제들을 이루기 위해 전송할 메시지를 해쉬한 값으로부터 설정된 적어도 2개의 비밀키들 중 하나의 비밀키와 상기 비밀키의 해쉬 회수를 결정하는 단계; 및 결정한 상기 비밀키를 결정한 상기 해쉬 회수만큼 해쉬한 값을 디지털서명으로 설정하는 단계;를 포함함을 특징으로 하는 디지털서명 생성 방법을 제안한다.
따라서 본 발명의 과제들을 이루기 위해 수신한 메시지를 해쉬한 값으로부터 수신한 디지털서명의 해쉬회수를 산출하는 단계; 및 상기 산출한 회수만큼 상기 디지털서명을 해쉬한 값이 적어도 2개의 공개키들 중 하나의 공개키와 동일한 지 여부를 확인하는 단계;를 포함함을 특징으로 하는 디지털 서명 확인 방법을 제안한다.
따라서 본 발명의 과제들을 이루기 위해 전송할 메시지를 해쉬한 값으로부터 설정된 적어도 2개의 비밀키들 중 하나의 비밀키와 상기 비밀키의 해쉬 회수를 결정하고, 결정한 상기 비밀키를 결정한 상기 해쉬 회수만큼 해쉬한 값을 디지털서명으로 설정하고, 설정한 상기 디지털서명과 상기 메시지를 전송하는 디지털 서명 생성부; 및 수신한 메시지를 해쉬한 값으로부터 수신한 디지털서명의 해쉬회수를 산출고, 상기 산출한 회수만큼 상기 디지털서명을 해쉬한 값이 적어도 2개의 공개키들 중 하나의 공개키와 동일한 지 여부를 확인하는 디지털서명 수신부;를 포함함을 특징으로 하는 디지털 서명 생성 확인 시스템을 제안한다.
따라서 본 발명의 과제들을 이루기 위해 전송할 메시지를 해쉬한 값으로부터 설정된 적어도 2개의 비밀키들 중 하나의 비밀키와 상기 비밀키의 해쉬 회수를 결정하는 결정부; 및 상기 결정한 상기 비밀키를 결정한 상기 해쉬 회수만큼 해쉬한 값을 디지털서명으로 설정하는 설정부;를 포함함을 특징으로 하는 디지털 서명 생성 장치를 제안한다.
본 발명은 적어도 2개의 비밀키를 사용하여 디지털서명을 생성하는 방안을 제안한다. 이하 도면들을 이용하여 본 발명에서 제안하는 디지털서명을 생성하는 방안에 대해 알아보기로 한다.
도 2는 본 발명에서 사용하는 비밀키를 도시하고 있다. 즉, 종래는 하나의 비밀키(a)만을 사용하였으나, 본 발명은 복수 개의 비밀키들(a1부터 an까지)을 사용하여 디지털서명을 생성한다.
도 3은 본 발명의 일 실시예에 따른 비밀키를 이용하여 디지털서명을 생성하는 방안을 설명하기 위한 도면이다. 이하 도 3을 이용하여 본 발명에서 제안하는 디지털서명을 생성하는 방안에 대해 상세하게 알아보기로 한다.
도 3은 3개의 비밀키들(a1, a2, a3)을 도시하고 있으나, 사용자의 설정에 따라 비밀키의 개수는 가변될 수 있다. 또한, 비밀키 a1에 대한 공개키인 hk(a1)과 비밀키 a2에 대한 공개키인 hl(a2)과 비밀키 a3에 대한 공개키인 hm(a3)을 도시하고 있다. k와 l와 m의 크기는 사용자의 설정에 따라 변경될 수 있음은 자명하다.
이하 설명의 편의를 위해 디지털서명을 생성하는 장치를 디지털서명 생성부라 한다.
전송할 메시지(m)가 생성되면, 디지털 서명 생성부는 생성된 메시지에 대한 디지털 서명을 생성한다. 디지털 서명 생성부는 해쉬 함수를 이용하여 생성한 메시지에 대한 해쉬 연산 값을 산출한다. 디지털 서명 생성부는 산출된 해쉬 연산값을 이용하여 디지털 서명을 생성한다.
일 예로 디지털 서명 생성부에서 생성되는 해쉬 연산값이 4비트로 표현된다고 가정하면, 디지털 서명 생성부에서 생성되는 해쉬 연산값은 '0000' 부터 '1111' 까지를 갖게 된다. 즉, 해쉬 연산값은 '0' 부터 '15'까지를 갖는다. 일반적으로 해쉬 연산을 수행함으로서 가변 길이를 갖는 메시지는 일정한 길이를 갖게 된다.
이하 설명의 편의를 위해 'k', 'l', 'm'을 일 예를 들어 설명하기로 한다. 즉, 'k'는 6이라 가정하며, 'l'과 'm'는 '5'라 가정한다. 또한, 생성한 메시지에 대한 해쉬 연산값이 '0011'이라 가정하면, 이를 10진수로 표현하면 '3'이 된다. 디지털서명 생성부는 생성한 메시지에 대한 해쉬 연산값을 이용하여 디지털서명을 생성한다. 표 1은 메시지의 해쉬 연산값에 대응되는 디지털서명을 나타내고 있다.
해쉬 연산값 디지털서명 해쉬 연산값 디지털서명 해쉬 연산값 디지털 서명
0 h4(a3) 5 h4(a3) 10 h5(a1)
1 h3(a3) 6 h3(a2) 11 h4(a1)
2 h2(a3) 7 h2(a2) 12 h3(a1)
3 h1(a3) 8 h1(a2) 13 h2(a1)
4 a3 9 a2 14 h(a1)
15 a1
이와 같이 함으로서, 디지털서명 생성부에서 디지털 서명을 생성하기 위한 연산량이 감소되며, 이로 인해 디지털서명을 생성하는데 소요되는 시간을 단축시킬 수 있다.
디지털서명 수신부는 전달받은 메시지와 디지털서명을 이용하여 디지털서명의 위조 또는 변조 여부를 확인한다. 즉, 디지털서명 수신부는 전달받은 메시지에 대한 해쉬 연산값을 산출하고, 산출한 연산값을 이용하여 디지털서명을 해쉬한다. 해쉬 연산값과 공개키가 동일하면 디지털서명 수신부는 디지털서명이 위조 또는 변조되지 않았다고 인식하며, 동일하지 않으면 디지털서명이 위조 또는 변조되었다고 인식한다.
이에 대해 예를 들어 설명하기로 한다. 디지털서명 수신부는 전달받은 메시지를 해쉬한 값이 '3'이라면, 전달받은 디지털서명을 3회 해쉬한다. 3회 해쉬한 값이 'h4(a3)'과 동일하면, 디지털서명 수신부는 전달받은 디지털서명이 위조 또는 변조되지 않았다고 인식하게 된다. 디지털서명 수신부는 전달받은 메시지를 해쉬한 값이 '15'이라면, 전달받은 디지털서명을 5회 해쉬한다. 5회 해쉬한 값이 'h5(a1)'과 동일하면, 디지털서명 수신부는 전달받은 디지털서명이 위조 또는 변조되지 않았다고 인식하게 된다.
상술한 바와 같이 사용하는 비밀키의 개수가 증가할수록 디지털서명을 생성 또는 위조 여부를 확인하는데 필요한 연산량은 감소한다. 즉, 종래 전달받은 메시지를 해쉬한 값이 '15'라면 전달받은 디지털서명을 '15'번 해쉬하였으나, 본 발명에 의하면 전달받은 디지털서명을 '5'번 해쉬함으로서 위조 또는 변조 여부를 확인할 수 있다.
도 4는 본 발명의 일 실시예에 따른 디지털서명 생성부에서 수행되는 동작을 나타내고 있다. 이하 도 4를 이용하여 본 발명의 일 실시예에 따른 디지털서명 생성부에서 수행되는 동작에 대해 상세하게 알아보기로 한다.
S400단계에서 디지털서명 생성부는 복수 개의 비밀키들을 설정한다. 비밀키의 개수는 사용자의 설정에 따라 달라질 수 있음은 자명하다. S402단계에서 디지털서명 생성부는 생성한 각 비밀키들을 복수개의 각 그룹에 대해 중첩되지 않게 할당한다.
S404단계에서 디지털서명 생성부는 전달할 메시지를 해쉬한 결과값을 산출한다. S406단계에서 디지털서명 생성부는 산출한 결과값에 대응되는 그룹 및 해쉬 회수를 산출한다. 이와 같은 동작은 디지털서명 생성부를 구성하고 있는 산출부에서 수행된다. S408단계에서 디지털서명 생성부는 산출한 그룹에 대응되는 비밀키를 산출한 회수만큼 해쉬한 값을 산출하고, 산출한 값을 디지털서명으로 설정한다. 이와 같은 동작은 디지털서명 생성부를 구성하고 있는 설정부에서 수행된다. S412단계에서 디지털서명 생성부는 산출한 값(디지털서명)을 전송한다. 물론 디지털서명 생성부는 디지털서명과 더불어 메시지도 함께 전송한다.
도 5는 종래 방식에 의해 전달받은 디지털서명의 위조 여부를 확인하는데 필요한 연산의 복잡도와 공개키의 길이의 관계를 도시하고 있으며, 도 6은 본 발명에 의해 전달받은 디지털서명의 위조 여부를 확인하는데 필요한 연산의 복잡도와 공개키의 길이의 관계를 도시하고 있다.
도 5와 도 6에 도시되어 있는 바와 같이 본원 발명에서 제안하는 방식은 종래 방식에 비해 연산의 복잡도가 감소됨을 알 수 있다.
이하 본 발명에서 제안하는 복수 개의 비밀키를 이용하여 디지털서명을 생성하는 다른 실시예에 대해 알아보기로 한다.
전송되는 메시지의 종류에 따라 사용하는 비밀키를 달리 설정할 수 있다. 신속한 전송속도가 요청되는 메시지는 비밀키로 a1을 사용하며, 중간 정도의 전송속도가 요청되는 메시지는 비밀키로 a2를 사용한다. 또한 느린 전송속도가 요청되는 메시지는 비밀키로 a3을 사용한다. 또한, 신속한 전송속도가 요청되는 메시지는 디지털서명을 생성하거나, 전달받은 디지털서명의 위조 여부를 확인하는데 필요한 연산량을 최소화한다. 이는 비밀키로부터 공개키를 산출하는데 필요한 해쉬 회수를 줄임으로서 가능하다.
또한, 전송회수에 따라 사용하는 비밀키의 종류를 달리 설정할 수 있다. 즉, 전송회수가 빈번한 메시지는 비밀키로 a1을 사용하며, 중간 정도의 전송회수를 가지는 메시지는 비밀키로 a2를 사용한다. 적은 전송회수를 가지는 메시지는 비밀키로 a3을 사용한다. 물론 상술한 방법 이외에 다른 방법으로 메시지의 특성에 따라 사용하는 비밀키를 달리 설정할 수 있다.
이를 위해 디지털서명 생성부는 메시지를 해쉬한 값이 해당 비밀키를 이용하여 디지털 서명을 생성할 수 있도록 해쉬한 값을 변형한다. 즉, 디지털서명 생성부는 메시지가 요청하는 비밀키와 메시지를 해쉬한 값에 대응되는 비밀키가 동일한 경우에는 도 3에서 제시하고 있는 방법으로 디지털서명을 생성한다.
하지만, 메시지가 요청하는 비밀키와 메시지를 해쉬한 값에 대응되는 비밀키가 동일하지 않은 경우에는 해쉬한 값을 변형한다. 즉, 메시지가 요청하는 비밀키를 a1이고, 메시지를 해쉬한 값에 대응되는 비밀키가 a3인 경우, 디지털서명 생성부는 메시지를 해쉬한 값이 a1에 포함될 수 있도록 필요한 수를 가산하거나, 감산한다. 물론 가산하거나, 감산한 수에 대한 정보는 디지털서명 수신부로 전달된다.
이와 같은 방법 이외에 디지털서명 생성부는 해쉬 값에 대해 가산하거나, 감산하는 수가 고정되어 있는 경우, 고정된 수를 복수 회 반복함으로서 메시지를 해쉬한 값이 a1에 포함되도록 할 수 있다. 즉, 가산해야 할 수가 '4'이고, 고정된 수가 '2'인 경우, 디지털서명 생성부는 반복회수인 '2'만을 전송함으로서 정보를 전송하는데 필요한 비트 수를 줄일 수 있다.
디지털서명 수신부는 전달받은 메시지와 디지털서명, 정보를 이용하여 디지털서명의 위조 여부를 확인할 수 있다.
본 발명에서 제안하고 있는 바와 같이 디지털서명 생성부가 디지털서명을 생성하기 위해 복수 개의 비밀키를 사용함으로서, 디지털서명을 생성하는데 소요되는 시간을 줄일 수 있다. 또한, 디지털서명 생성부는 적은 연산만으로도 디지털서명을 생성할 수 있다.
디지털서명 수신부 역시 적은 연산만으로 수신한 디지털서명의 위조 또는 변조 여부를 확인할 수 있다. 또한, 디지털서명 수신부는 디지털서명의 위조 또는 변조의 확인하는데 소요되는 시간을 줄일 수 있게 된다.
이상, 본 발명을 본 발명의 원리를 예시하기 위한 바람직한 실시예에 대하여 도시하고 또한 설명하였으나, 본 발명은 그와 같이 도시되고 설명된 그대로의 구성 및 작용으로 한정되는 것이 아니다. 오히려, 첨부된 특허청구범위의 사상 및 범주를 일탈함이 없이 본 발명에 대한 다수의 변경 및 수정이 가능함을 당업자들은 잘 이해할 수 있을 것이다. 따라서, 그러한 적절한 모든 변경 및 수정과 균등물들도 본 발명의 범위에 속하는 것으로 간주되어야 할 것이다.

Claims (18)

  1. 전송할 메시지를 해쉬한 값으로부터 설정된 적어도 2개의 비밀키들 중 하나의 비밀키와 상기 비밀키의 해쉬 회수를 결정하는 단계; 및
    결정한 상기 비밀키를 결정한 상기 해쉬 회수만큼 해쉬한 값을 디지털서명으로 설정하는 단계;를 포함함을 특징으로 하는 디지털서명 생성 방법.
  2. 제 1항에 있어서, 상기 비밀키는 대응되는 공개키를 가지고 있으며, 상기 공개키는 상기 비밀키를 설정된 회수만큼 해쉬함으로서 획득됨을 특징으로 하는 상기 디지털 서명 생성 방법.
  3. 제 2항에 있어서, 상기 디지털서명은,
    상기 디지털서명을 결정한 회수만큼 해쉬함으로서 상기 공개키가 획득되도록 상기 비밀키를 적어도 한번 해쉬한 값이거나, 상기 비밀키임을 특징으로 하는 상기 디지털 서명 생성 방법.
  4. 제 2항에 있어서, 상기 공개키를 획득하기 위한 상기 비밀키의 해쉬 회수는 동일하게 설정함을 특징으로 하는 상기 디지털 서명 생성 방법.
  5. 제 2항에 있어서, 상기 공개키를 획득하기 위한 상기 비밀키의 해쉬 회수는 상기 비밀키에 따라 달리 설정함을 특징으로 하는 상기 디지털 서명 생성 방법.
  6. 제 1항에 있어서, 전달되는 상기 메시지에 따라 전송회수, 중요도, 요구되는 전송속도를 포함하는 메시지의 특성에 비밀키를 달리 결정함을 특징으로 하는 상기 디지털 서명 생성 방법.
  7. 제 6항에 있어서, 상기 비밀키를 달리 결정하기 위해 상기 메시지를 해쉬한 값을 설정된 방식으로 변형하고, 상기 변형한 정보를 상기 메시지와 디지털서명와 함께 전송함을 특징으로 하는 상기 디지털 서명 생성 방법.
  8. 수신한 메시지를 해쉬한 값으로부터 수신한 디지털서명의 해쉬회수를 산출하는 단계; 및
    상기 산출한 회수만큼 상기 디지털서명을 해쉬한 값이 적어도 2개의 공개키들 중 하나의 공개키와 동일한 지 여부를 확인하는 단계;를 포함함을 특징으로 하는 디지털 서명 확인 방법.
  9. 제 8항에 있어서, 상기 디지털서명을 해쉬한 값과 동일한 공개키가 있으면, 상기 디지털서명이 위조되지 않았다고 판단함을 특징으로 하는 상기 디지털 서명 확인 방법.
  10. 전송할 메시지를 해쉬한 값으로부터 설정된 적어도 2개의 비밀키들 중 하나 의 비밀키와 상기 비밀키의 해쉬 회수를 결정하고, 결정한 상기 비밀키를 결정한 상기 해쉬 회수만큼 해쉬한 값을 디지털서명으로 설정하고, 설정한 상기 디지털서명과 상기 메시지를 전송하는 디지털 서명 생성부; 및
    수신한 메시지를 해쉬한 값으로부터 수신한 디지털서명의 해쉬회수를 산출고, 상기 산출한 회수만큼 상기 디지털서명을 해쉬한 값이 적어도 2개의 공개키들 중 하나의 공개키와 동일한 지 여부를 확인하는 디지털서명 수신부;를 포함함을 특징으로 하는 디지털 서명 생성 확인 시스템.
  11. 제 10항에 있어서, 상기 디지털서명 생성부는,
    상기 비밀키에 대응되는 공개키를 가지고 있으며, 상기 공개키는 상기 비밀키를 설정된 회수만큼 해쉬함으로서 획득됨을 특징으로 하는 상기 디지털 서명 생성 확인 시스템.
  12. 제 11항에 있어서, 상기 디지털서명 생성부는,
    상기 디지털서명을 결정한 회수만큼 해쉬함으로서 상기 공개키가 획득되도록 상기 비밀키를 적어도 한번 해쉬한 값이거나, 상기 비밀키를 상기 디지털서명으로 설정함을 특징으로 하는 상기 디지털 서명 생성 확인 시스템.
  13. 제 11항에 있어서, 상기 디지털서명 생성부는,
    상기 공개키를 획득하기 위한 상기 비밀키의 해쉬 회수는 동일하게 설정함을 특징으로 하는 상기 디지털 서명 생성 확인 시스템.
  14. 제 11항에 있어서, 상기 디지털서명 생성부는,
    상기 공개키를 획득하기 위한 상기 비밀키의 해쉬 회수는 상기 비밀키에 따라 달리 설정함을 특징으로 하는 상기 디지털 서명 생성 확인 시스템.
  15. 제 10항에 있어서, 상기 디지털서명 생성부는,
    전달되는 상기 메시지의 전송회수, 중요도, 요구되는 전송속도를 포함하는 메시지의 특성에 비밀키를 달리 결정함을 특징으로 하는 상기 디지털 서명 생성 확인 시스템.
  16. 전송할 메시지를 해쉬한 값으로부터 설정된 적어도 2개의 비밀키들 중 하나의 비밀키와 상기 비밀키의 해쉬 회수를 결정하는 결정부; 및
    상기 결정한 상기 비밀키를 결정한 상기 해쉬 회수만큼 해쉬한 값을 디지털서명으로 설정하는 설정부;를 포함함을 특징으로 하는 디지털 서명 생성 장치.
  17. 제 16항에 있어서,
    상기 비밀키에 대응되는 공개키를 가지고 있으며, 상기 공개키는 상기 비밀키를 설정된 회수만큼 해쉬함으로서 획득됨을 특징으로 하는 상기 디지털 서명 생성 장치.
  18. 제 17항에 있어서,
    상기 공개키를 획득하기 위한 상기 비밀키의 해쉬 회수는 상기 비밀키에 따라 달리 설정함을 특징으로 하는 상기 디지털 서명 생성 장치.
KR1020050017716A 2005-03-03 2005-03-03 디지털서명 생성 및 확인 방법 및 그 장치 KR100599159B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020050017716A KR100599159B1 (ko) 2005-03-03 2005-03-03 디지털서명 생성 및 확인 방법 및 그 장치
US11/366,419 US8412948B2 (en) 2005-03-03 2006-03-03 Method and apparatus for digital signature generation and validation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050017716A KR100599159B1 (ko) 2005-03-03 2005-03-03 디지털서명 생성 및 확인 방법 및 그 장치

Publications (1)

Publication Number Publication Date
KR100599159B1 true KR100599159B1 (ko) 2006-07-12

Family

ID=37183896

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050017716A KR100599159B1 (ko) 2005-03-03 2005-03-03 디지털서명 생성 및 확인 방법 및 그 장치

Country Status (2)

Country Link
US (1) US8412948B2 (ko)
KR (1) KR100599159B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180135779A (ko) 2017-06-13 2018-12-21 한국과학기술연구원 양자 키 분배 기반 디지털 서명 방법 및 이를 수행하는 시스템

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05260043A (ja) * 1992-03-09 1993-10-08 Nippon Telegr & Teleph Corp <Ntt> ディジタル署名方式
JPH06112935A (ja) * 1992-09-30 1994-04-22 Mitsubishi Electric Corp 暗号通信方法
KR970056189A (ko) * 1995-12-22 1997-07-31 로버트 에이. 스코트 해쉬 키를 이용한 암호화 서명의 발생
JPH11215117A (ja) 1997-10-20 1999-08-06 Sun Microsyst Inc 鍵の符号化及び回復方法及び装置
JP2001147898A (ja) 1999-11-18 2001-05-29 Ricoh Co Ltd 原本性保証電子保存方法、装置及びコンピュータ読み取り可能な記録媒体
KR20020051597A (ko) * 2000-12-23 2002-06-29 오길록 비대칭키 암호 알고리즘을 이용한 데이터 암호화 시스템및 그 방법
KR20040040271A (ko) * 2002-11-05 2004-05-12 (주)제이랜드소프트 공개키 기반구조의 디지털전자서명 및 암호화를 이용한출력물 내용 증명방법 및 그 장치

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3747520B2 (ja) * 1996-01-30 2006-02-22 富士ゼロックス株式会社 情報処理装置及び情報処理方法
US20020184504A1 (en) * 2001-03-26 2002-12-05 Eric Hughes Combined digital signature
US20030233542A1 (en) * 2002-06-18 2003-12-18 Benaloh Josh D. Selectively disclosable digital certificates
TWI305462B (en) * 2005-12-29 2009-01-11 Ind Tech Res Inst Method and system for secure authentication in a wireless network
US8275125B2 (en) * 2008-04-21 2012-09-25 Tata Consultancy Services Ltd Method for designing a secure hash function and a system thereof

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05260043A (ja) * 1992-03-09 1993-10-08 Nippon Telegr & Teleph Corp <Ntt> ディジタル署名方式
JPH06112935A (ja) * 1992-09-30 1994-04-22 Mitsubishi Electric Corp 暗号通信方法
KR970056189A (ko) * 1995-12-22 1997-07-31 로버트 에이. 스코트 해쉬 키를 이용한 암호화 서명의 발생
JPH11215117A (ja) 1997-10-20 1999-08-06 Sun Microsyst Inc 鍵の符号化及び回復方法及び装置
JP2001147898A (ja) 1999-11-18 2001-05-29 Ricoh Co Ltd 原本性保証電子保存方法、装置及びコンピュータ読み取り可能な記録媒体
KR20020051597A (ko) * 2000-12-23 2002-06-29 오길록 비대칭키 암호 알고리즘을 이용한 데이터 암호화 시스템및 그 방법
KR20040040271A (ko) * 2002-11-05 2004-05-12 (주)제이랜드소프트 공개키 기반구조의 디지털전자서명 및 암호화를 이용한출력물 내용 증명방법 및 그 장치

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180135779A (ko) 2017-06-13 2018-12-21 한국과학기술연구원 양자 키 분배 기반 디지털 서명 방법 및 이를 수행하는 시스템
KR102011043B1 (ko) 2017-06-13 2019-08-14 한국과학기술연구원 양자 키 분배 기반 디지털 서명 방법 및 이를 수행하는 시스템

Also Published As

Publication number Publication date
US8412948B2 (en) 2013-04-02
US20070180256A1 (en) 2007-08-02

Similar Documents

Publication Publication Date Title
JP5468157B2 (ja) 公開鍵を検証可能に生成する方法及び装置
US8654975B2 (en) Joint encryption of data
US7139910B1 (en) Systems and methods for obtaining digital signatures on a single authoritative copy of an original electronic record
JP3522447B2 (ja) 認証交換方法および付加型公衆電子署名方法
JP5593850B2 (ja) 認証装置、認証方法、プログラム、及び署名生成装置
CN100566250C (zh) 一种点对点网络身份认证方法
US7779262B2 (en) Security method using electronic signature
US20130283035A1 (en) Digital file authentication using biometrics
JP2004023796A (ja) 選択的に開示可能なデジタル証明書
CN101610153A (zh) 基于椭圆曲线签名算法的电子签章认证方法
JP6041864B2 (ja) データの暗号化のための方法、コンピュータ・プログラム、および装置
WO2003007203A2 (en) System and method for renewing and extending digitally signed certificates
CN101647229B (zh) 压缩的ecdsa签名
KR101253683B1 (ko) 연쇄 해시에 의한 전자서명 시스템 및 방법
JP5109976B2 (ja) 電子署名システムおよび電子署名検証方法
Huang et al. Convertible nominative signatures
KR100599159B1 (ko) 디지털서명 생성 및 확인 방법 및 그 장치
KR100659609B1 (ko) 디지털 서명 생성 및 확인 방법 및 그 장치
KR100654933B1 (ko) 사용자의 패스워드 입력에 따라서 동적 생성되는 인증서를인증하는 인증시스템 및 인증방법
CN101420304A (zh) 基于离散对数对电子文档数字签名的安全保护方法
JP4971917B2 (ja) 署名生成装置、署名検証装置、グループ管理装置、およびそれらのプログラム
JP3540477B2 (ja) 署名方式
JP3859983B2 (ja) ブラインド署名方法、その装置、そのプログラム及びその記録媒体
Jain Digital signature algorithm
TW202244911A (zh) Ecqv衍生子憑證產生系統、方法及電腦可讀媒介

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: 20130624

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140619

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150624

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20160620

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20170619

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20180620

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20190619

Year of fee payment: 14