맞춤기술찾기

이전대상기술

양자 내성을 가진 무한 해시 함수 기반 전자서명 방법, 장치, 및 시스템

  • 기술번호 : KST2023010101
  • 담당센터 : 경기기술혁신센터
  • 전화번호 : 031-8006-1570
요약, Int. CL, CPC, 출원번호/일자, 출원인, 등록번호/일자, 공개번호/일자, 공고번호/일자, 국제출원번호/일자, 국제공개번호/일자, 우선권정보, 법적상태, 심사진행상태, 심판사항, 구분, 원출원번호/일자, 관련 출원번호, 기술이전 희망, 심사청구여부/일자, 심사청구항수의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 서지정보 표입니다.
요약 본 발명은 전자서명 방법 및 장치에 관한 것으로, 구체적으로는, 해시 함수의 무한 연속 관계와 일회용 키 쌍을 이용하여 양자 내성을 지닌 안전한 전자서명을 실시하는 방법 및 장치에 관한 것이다. 본 발명의 일 실시예에 의한 컴퓨터 장치를 이용한 전자서명 방법은, 전자서명할 메시지를 획득하는 단계, 키 생성 알고리즘에 의하여 생성된 복수의 공개키들을 획득하는 단계, 및 상기 복수의 공개키들에 기반하여 상기 메시지에 대한 서명 검증값을 생성하는 단계를 포함하고, 상기 서명 검증값은 서로 다른 상기 공개키 또는 서로 다른 상기 공개키를 병합한 값을 기초로 생성되는 적어도 하나의 검증인자를 포함하는 것을 특징으로 할 수 있다.
Int. CL H04L 9/32 (2006.01.01) H04L 9/30 (2006.01.01)
CPC H04L 9/3247(2013.01) H04L 9/3263(2013.01) H04L 9/30(2013.01)
출원번호/일자 1020230028585 (2023.03.03)
출원인 단국대학교 산학협력단
등록번호/일자
공개번호/일자 10-2023-0152560 (2023.11.03) 문서열기
공고번호/일자
국제출원번호/일자
국제공개번호/일자
우선권정보 대한민국  |   1020220052326   |   2022.04.27
법적상태 공개
심사진행상태 수리
심판사항
구분 국내출원/신규
원출원번호/일자
관련 출원번호
심사청구여부/일자 Y (2023.03.03)
심사청구항수 20

출원인

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 출원인 표입니다.
번호 이름 국적 주소
1 단국대학교 산학협력단 대한민국 경기도 용인시 수지구

발명자

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 발명자 표입니다.
번호 이름 국적 주소
1 박창섭 서울특별시 강남구
2 우사무엘 서울특별시 양천구

대리인

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 대리인 표입니다.
번호 이름 국적 주소
1 오재언 대한민국 서울특별시 강남구 테헤란로**길 * *층 (대영빌딩)(콕스특허법률사무소)

최종권리자

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 최종권리자 표입니다.
번호 이름 국적 주소
최종권리자 정보가 없습니다
번호, 서류명, 접수/발송일자, 처리상태, 접수/발송일자의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 행정처리 표입니다.
번호 서류명 접수/발송일자 처리상태 접수/발송번호
1 [특허출원]특허출원서
[Patent Application] Patent Application
2023.03.03 수리 (Accepted) 1-1-2023-0248177-08
번호, 청구항의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 청구항 표입니다.
번호 청구항
1 1
컴퓨팅 장치를 이용하여 전자서명된 메시지를 생성하는 방법에 있어서,전자서명할 메시지를 획득하는 단계;키 생성 알고리즘에 의하여 공개키와 개인키를 생성하는 단계;상기 메시지 및 상기 개인키에 기반하여 전자서명 데이터를 생성하는 단계;상기 전자서명 데이터의 무결성 검증을 위한 적어도 하나의 검증인자를 생성하는 단계;상기 검증인자 중 적어도 하나를 포함하는 검증값을 생성하는 단계; 및상기 메시지, 상기 전자서명 데이터, 상기 공개키, 및 상기 검증값을 포함하는 전자서명된 메시지를 생성하는 단계; 를 포함하는, 방법
2 2
제 1 항에 있어서,적어도 하나의 알파-검증인자를 생성하는 단계;적어도 하나의 베타-검증인자를 생성하는 단계;적어도 하나의 감마-검증인자를 생성하는 단계; 및상기 컴퓨팅 장치의 메모리에, 적어도 하나의 상기 공개키, 적어도 하나의 상기 개인키, 및 적어도 하나의 상기 알파-검증인자를 저장하는 단계; 를 더 포함하고,상기 전자서명 데이터를 생성하는 단계는, 상기 메시지, 적어도 하나의 상기 알파-검증인자, 적어도 하나의 베타-검증인자, 및 적어도 하나의 감마-검증인자에 기반하여 상기 전자서명 데이터를 생성하는 단계를 포함하고,상기 검증값은, 적어도 하나의 상기 베타-검증인자와 적어도 하나의 상기 감마-검증인자를 포함하는, 방법
3 3
제 2 항에 있어서,상기 메시지의 전송 순번 x를 식별하는 단계;상기 전송 순번 x보다 큰 전송 순번 y와, 상기 전송 순번 x보다 크고 상기 전송 순번 y와 다른 전송 순번 z를 정의하는 단계;상기 컴퓨팅 장치의 메모리로부터, 전송 순번 x의 공개키인 PKx, 전송 순번 x의 개인키인 SKx, 전송 순번 y의 공개키인 PKy, 전송 순번 y의 개인키인 SKy, 전송 순번 x의 알파-검증인자인 αx, 전송 순번 y의 알파-검증인자인 αy를 불러오는 단계;전송 순번 x의 전자서명할 메시지인 mx를 획득하는 단계;전송 순번 z의 공개키인 PKz와 전송 순번 z의 개인키인 SKz를 생성하는 단계;전송 순번 z의 알파-검증인자인 αz를 상기 PKz에 기반하여 생성하는 단계;전송 순번 x의 베타-검증인자인 βx를 상기 αy에 기반하여 생성하는 단계;전송 순번 y의 베타-검증인자인 βy를 상기 αz에 기반하여 생성하는 단계;전송 순번 x의 감마-검증입자인 γx를 상기 αy 및 상기 βy에 기반하여 생성하는 단계;상기 전송 순번 x의 전자서명 데이터인 SIGx를 상기 mx, 상기 γx, 및 상기 SKx에 기반하여 생성하는 단계;상기 βx와 상기 γx에 기반하여 전송 순번 x의 검증값인 authPx를 생성하는 단계;상기 mx, 상기 SIGx, 상기 PKx, 및 상기 authPx를 포함하는 전송 순번 x의 전자서명된 메시지를 생성하는 단계; 및상기 컴퓨팅 장치의 메모리에, 상기 PKy, 상기 SKy, 상기 PKz, 상기 SKz, 상기 αy, 및 상기 αz를 저장하는 단계를 포함하는, 방법
4 4
제 3 항에 있어서,상기 αz는, 상기 PKz에 압축 연산(H^)을 적용한 값인 H^(PKz)에 기반하여 생성되고,상기 압축 연산 H^는, 제1길이의 이진수 수열을 입력받아 상기 제1길이보다 짧은 제2길이의 이진수 수열을 출력하는 함수 연산을 포함하는 연산에 의해 수행되는, 방법
5 5
제 3 항에 있어서,상기 βx는, 상기 αy에 해시 연산(H)을 적용한 값인 H(αy)에 기반하여 생성되고,상기 βy는, 상기 αz에 해시 연산(H)을 적용한 값인 H(αz)에 기반하여 생성되고,상기 해시 연산 H는, 임의의 길이의 이진수 수열을 입력받아 제3길이의 이진수 수열을 출력하는 충돌 저항성(collision-resistant) 해시 함수 연산을 포함하는 연산에 의해 수행되는, 방법
6 6
제 3 항에 있어서,상기 γx는, 상기 αy와 상기 βy 를 병합 연산(||)한 값에 해시 연산(H)을 적용한 값인 H(αy||βy)에 기반하여 생성되고,상기 SIGx는, 상기 mx와 상기 γx를 병합 연산(||)한 값에 해시 연산(H)을 적용한 후 상기 SKx를 이용하여 개인키 암호화하여 생성되고,상기 해시 연산 H는, 임의의 길이의 이진수 수열을 입력받아 제3길이의 이진수 수열을 출력하는 충돌 저항성(collision-resistant) 해시 함수 연산을 포함하는 연산에 의해 수행되고,상기 병합 연산 ||는, 임의의 길이의 두 이진수 수열을 단순연결(concatenation)하는 함수 연산을 포함하는 연산에 의해 수행되는, 방법
7 7
제 1 항에 있어서,상기 컴퓨팅 장치를 초기화하는 단계를 더 포함하고, 상기 초기화하는 단계는,상기 키 생성 알고리즘에 의하여 적어도 하나의 초기 공개키와 초기 개인키를 생성하는 단계;적어도 하나의 초기 알파-검증인자를 생성하는 단계;적어도 하나의 초기 베타-검증인자를 생성하는 단계;적어도 하나의 초기 감마-검증인자를 생성하는 단계;적어도 하나의 상기 베타-검증인자와 적어도 하나의 상기 감마-검증인자에 기반하여 초기 루트 공개키를 생성하는 단계; 및상기 컴퓨팅 장치의 메모리에, 적어도 하나의 상기 초기 공개키, 적어도 하나의 상기 초기 개인키, 및 적어도 하나의 상기 알파-검증인자를 저장하는 단계; 를 포함하는, 방법
8 8
제 7 항에 있어서,초기화 시점의 전송 순번을 x로 정의하는 단계;상기 전송 순번 x보다 큰 전송 순번 y와, 상기 전송 순번 x보다 크고 상기 전송 순번 y와 다른 전송 순번 z를 정의하는 단계;전송 순번 y의 공개키인 PKy와 전송 순번 y의 개인키인 SKy를 생성하는 단계;전송 순번 z의 공개키인 PKz와 전송 순번 z의 개인키인 SKz를 생성하는 단계;전송 순번 y의 알파-검증인자인 αy를 상기 PKy에 기반하여 생성하는 단계;전송 순번 z의 알파-검증인자인 αz를 상기 PKz에 기반하여 생성하는 단계;전송 순번 x의 베타-검증인자인 βx를 상기 αy에 기반하여 생성하는 단계;전송 순번 y의 베타-검증인자인 βy를 상기 αz에 기반하여 생성하는 단계;전송 순번 x의 감마-검증입자인 γx를 상기 αy 및 상기 βy를 병합 연산한 값에 기반하여 생성하는 단계;상기 βx 및 상기 γx에 기반하여 초기 루트 공개키인 rPK(0)을 생성하는 단계; 및상기 컴퓨팅 장치의 메모리에, 상기 PKy, 상기 SKy, 상기 PKz, 상기 SKz, 상기 αy, 및 상기 αz를 저장하는 단계를 포함하는, 방법
9 9
제 7 항에 있어서,상기 αy는, 상기 PKy에 압축 연산(H^)을 적용한 값인 H^(PKy)에 기반하여 생성되고,상기 αz는, 상기 PKz에 압축 연산(H^)을 적용한 값인 H^(PKz)에 기반하여 생성되고,상기 βx는, 상기 αy에 해시 연산(H)을 적용한 값인 H(αy)에 기반하여 생성되고,상기 βy는, 상기 αz에 해시 연산(H)을 적용한 값인 H(αz)에 기반하여 생성되고,상기 γx는, 상기 αy와 상기 βy 를 병합 연산(||)한 값에 해시 연산(H)을 적용한 값인 H(αy||βy)에 기반하여 생성되고,상기 압축 연산 H^는, 제1길이의 이진수 수열을 입력받아 상기 제1길이보다 짧은 제2길이의 이진수 수열을 출력하는 함수 연산을 포함하는 연산에 의해 수행되고,상기 해시 연산 H는, 임의의 길이의 이진수 수열을 입력받아 제3길이의 이진수 수열을 출력하는 충돌 저항성(collision-resistant) 해시 함수 연산을 포함하는 연산에 의해 수행되고,상기 병합 연산 ||는, 임의의 길이의 두 이진수 수열을 단순연결(concatenation)하는 함수 연산을 포함하는 연산에 의해 수행되는, 방법
10 10
제 3 항 또는 제 7 항 중 어느 한 항에 있어서,상기 전송 순번 y는 x+1의 값을 가지고, 상기 전송 순번 z는 x+2의 값을 가지는, 방법
11 11
컴퓨팅 장치를 이용하여 전자서명된 메시지를 검증하는 방법에 있어서,원본 메시지, 전자서명 데이터, 전자서명 공개키, 및 검증값을 포함하는 전자서명된 메시지를 획득하는 단계;상기 컴퓨팅 장치의 메모리로부터, 적어도 하나의 루트인자를 포함하는 루트 공개키를 불러오는 단계;상기 전자서명 공개키와 적어도 하나의 상기 루트인자에 기반한 연산을 통하여 제1무결성을 검증하는 단계;상기 원본 메시지, 상기 전자서명 데이터, 상기 전자서명 공개키, 및 상기 검증값에 기반한 연산을 통하여 제2무결성을 검증하는 단계; 및상기 제1무결성 및 상기 제2무결성이 모두 검증되면, 상기 루트 공개키를 상기 검증값에 기반하여 생성된 대체 공개키로 변경하여 저장하는 단계; 를 포함하는, 방법
12 12
제 11 항에 있어서,상기 컴퓨팅 장치의 메모리로부터, 상기 루트 공개키에 포함된 적어도 하나의 베타-루트인자와 적어도 하나의 감마-루트인자를 불러오는 단계;적어도 하나의 알파-검증인자를 생성하는 단계;상기 검증값으로부터 적어도 하나의 베타-검증인자와 적어도 하나의 감마-검증인자를 획득하는 단계; 를 더 포함하고,상기 제1무결성을 검증하는 단계는, 적어도 하나의 상기 알파-검증인자에 기반한 연산 결과가 적어도 하나의 상기 베타-루트인자와 일치하는지 판단하는 단계; 적어도 하나의 상기 알파-검증인자와 상기 베타-검증인자에 기반한 연산 결과가 적어도 하나의 상기 감마-루트인자와 일치하는지 판단하는 단계; 및 모두 일치하는 경우 상기 제1무결성이 검증된 것으로 판단하는 단계; 를 포함하고,상기 제2무결성을 검증하는 단계는, 상기 원본 메시지와 적어도 하나의 상기 감마-검증인자에 기반한 연산 결과가, 상기 전자서명 데이터를 상기 전자서명 공개키로 복호화한 값에 기반한 연산 결과와 일치하는지를 판단하는 단계; 및 일치하는 경우 상기 제2무결정이 검증된 것으로 판단하는 단계; 를 포함하고,상기 루트 공개키를 변경하는 단계는, 상기 베타-검증인자와 상기 감마-루트인자에 기반하여 대체 공개키를 생성하는 단계; 및 상기 컴퓨팅 장치의 메모리에 기록된 상기 루트 공개키를 상기 대체 공개키로 변경하여 저장하는 단계; 를 포함하는, 방법
13 13
제 12 항에 있어서,상기 컴퓨팅 장치의 메모리로부터, 상기 루트 공개키인 rPK*를 불러오고, 상기 rPK*에 포함된 상기 베타-루트인자인 β*와 상기 감마-루트인자인 γ*를 불러오는 단계;상기 검증값인 authP로부터 상기 베타-검증인자인 β와 상기 감마-검증인자인 γ를 획득하는 단계;상기 알파-검증인자인 α를 상기 전자서명 공개키인 PK에 기반하여 생성하는 단계;상기 β*가 상기 α에 기반하여 연산된 값과 일치하는지를 판단하는 단계;상기 γ*가 상기 α 및 상기 γ에 기반하여 연산된 값과 일치하는지를 판단하는 단계;상기 β* 및 상기 γ*가 일치하는 경우 제1무결성이 검증된 것으로 판단하는 단계;상기 원본 메시지인 m 및 상기 γ에 기반하여 연산된 값인 V가, 상기 전자서명 데이터인 SIG를 상기 PK로 복호화한 값과 일치하는지를 판단하는 단계;상기 대체 공개키인 rPK를 상기 β 및 상기 γ에 기반하여 생성하는 단계; 및상기 컴퓨팅 장치의 메모리에, 상기 rPK*를 상기 rPK로 변경하여 저장하는 단계; 를 포함하는, 방법
14 14
제 13 항에 있어서,상기 αx는, 상기 PKx에 압축 연산(H^)을 적용한 값인 H^(PKx)에 기반하여 생성되고,상기 압축 연산 H^는, 제1길이의 이진수 수열을 입력받아 상기 제1길이보다 짧은 제2길이의 이진수 수열을 출력하는 함수 연산을 포함하는 연산에 의해 수행되는, 방법
15 15
제 13 항에 있어서,상기 β*는, 상기 αx에 해시 연산(H)을 적용한 값인 H(αx)에 기반하여 생성된 값과 일치하는지 비교되고,상기 해시 연산 H는, 임의의 길이의 이진수 수열을 입력받아 제3길이의 이진수 수열을 출력하는 충돌 저항성(collision-resistant) 해시 함수 연산을 포함하는 연산에 의해 수행되는, 방법
16 16
제 13 항에 있어서,상기 γ*는, 상기 αx와 상기 βx를 병합 연산(||)한 값에 해시 연산(H)을 적용한 값인 H(αx||βx)와 일치하는지 비교되고,상기 Vx는, 상기 mx와 상기 γx를 병합 연산(||)한 값에 해시 연산(H)을 적용한 값이고,상기 해시 연산 H는, 임의의 길이의 이진수 수열을 입력받아 제3길이의 이진수 수열을 출력하는 충돌 저항성(collision-resistant) 해시 함수 연산을 포함하는 연산에 의해 수행되고,상기 병합 연산 ||는, 임의의 길이의 두 이진수 수열을 단순연결(concatenation)하는 함수 연산을 포함하는 연산에 의해 수행되는, 방법
17 17
제 11 항에 있어서,상기 컴퓨팅 장치를 초기화하는 단계를 더 포함하고, 상기 초기화하는 단계는,적어도 하나의 베타-루트인자와 적어도 하나의 감마-루트인자를 포함하는 초기 루트 공개키를 획득하는 단계; 및상기 컴퓨팅 장치의 메모리에, 상기 초키 루트 공개키를 루트 공개키로서 저장하는 단계; 를 포함하는, 방법
18 18
제 1 항에 기재된 방법에 의하여 전자서명된 메시지를 생성하는 컴퓨팅 장치에 있어서,연산 기능을 가진 프로세서;상기 프로세서에 연결된 메모리;전자서명할 메시지를 입력받는 입력부;키 생성 알고리즘에 의하여 공개키와 비밀키 쌍을 생성하는 키 생성부;상기 메시지 및 상기 개인키에 기반하여 전자서명 데이터를 생성하고, 상기 전자서명 데이터의 무결성 검증을 위한 적어도 하나의 검증인자를 생성하고, 상기 검증인자 중 적어도 하나를 포함하는 검증값을 생성하는 전자서명부; 및상기 메시지, 상기 전자서명 데이터, 상기 공개키, 및 상기 검증값을 포함하는 전자서명된 메시지를 출력하는 출력부; 를 포함하는, 장치
19 19
제 11 항에 기재된 방법에 의하여 전자서명된 메시지를 검증하는 컴퓨팅 장치에 있어서,연산 기능을 가진 프로세서;상기 프로세서에 연결되고, 적어도 하나의 루트인자를 포함하는 루트 공개키를 저장하는 메모리;원본 메시지, 전자서명 데이터, 전자서명 공개키, 및 검증값을 포함하는 전자서명 검증할 메시지를 입력받는 입력부;상기 메모리로부터, 적어도 하나의 루트인자를 포함하는 루트 공개키를 불러오고, 상기 전자서명 공개키와 적어도 하나의 상기 루트인자에 기반한 연산을 통하여 제1무결성을 검증하고, 상기 원본 메시지, 상기 전자서명 데이터, 상기 전자서명 공개키, 및 상기 검증값에 기반한 연산을 통하여 제2무결성을 검증하고, 상기 제1무결성 및 상기 제2무결성이 모두 검증되면 상기 검증할 메시지가 검증된 것으로 판단하도록 구성되는 검증부;상기 검증의 결과를 출력하는 출력부; 및상기 검증부의 판단 결과에 따라 상기 루트 공개키를 상기 검증값에 기반하여 생성된 대체 공개키로 변경하여 상기 메모리에 저장하는 갱신처리부; 를 포함하는, 컴퓨팅 장치
20 20
제어 장치와 적어도 하나의 동작 장치를 포함하는 신호 제어 시스템에 있어서,상기 제어 장치는, 상기 적어도 하나의 동작 장치에 대하여 제어 신호를 송신할 수 있도록 구성되고,상기 적어도 하나의 동작 장치는, 상기 제어 신호의 수신을 위해 초기화될 수 있고, 상기 초기화는 상기 제어 장치로부터 생성된 적어도 하나의 루트인자를 포함하는 루트 공개키를 저장하는 절차를 포함하고,상기 제어 장치는, 키 생성 알고리즘에 의하여 적어도 하나의 공개키와 개인키를 생성하고, 상기 공개키에 기반하여, 상기 루트인자에 적어도 한 번의 해시 연산을 적용함으로써 무결성 검증이 가능한 적어도 하나의 검증인자를 생성하고, 상기 적어도 하나의 검증인자를 포함하는 검증값을 생성하고, 상기 개인키를 사용하여 상기 메시지에 기반하여 생성된 값을 암호화하여 전자서명 데이터를 생성하고, 상기 메시지, 전자서명 데이터, 공개키, 및 검증값을 포함하는 제어 신호를 송신하도록 구성되고,상기 동작 장치는, 상기 제어 신호를 수신하고, 상기 검증값으로부터 추출된 적어도 하나의 검증인자에 적어도 한 번의 해시 연산을 적용하고, 상기 연산의 결과를 저장되어 있는 상기 루트 공개키로부터 추출된 적어도 하나의 상기 루트인자와 비교함으로써 제1무결성을 검증하고, 상기 전자서명 데이터를 상기 공개키를 이용하여 복호화한 값에 기반하여 제2무결성을 검증하고, 상기 제1무결성 및 상기 제2무결성이 모두 검증된 경우 상기 제어 신호의 무결성이 검증된 것으로 판단하도록 구성되고, 상기 수신 장치는, 상기 제어 신호의 무결성이 판단된 경우, 상기 검증값에 기반하여 상기 루트 공개키를 갱신하고, 상기 제어 신호를 정상 처리하도록 구성되는, 신호 제어 시스템
지정국 정보가 없습니다
패밀리정보가 없습니다
국가 R&D 정보가 없습니다.