[go: up one dir, main page]

KR102848801B1 - 인증 블록을 이용한 공개키 관리를 수행할 수 있는 인증 서버 및 그 동작 방법 - Google Patents

인증 블록을 이용한 공개키 관리를 수행할 수 있는 인증 서버 및 그 동작 방법

Info

Publication number
KR102848801B1
KR102848801B1 KR1020220180528A KR20220180528A KR102848801B1 KR 102848801 B1 KR102848801 B1 KR 102848801B1 KR 1020220180528 A KR1020220180528 A KR 1020220180528A KR 20220180528 A KR20220180528 A KR 20220180528A KR 102848801 B1 KR102848801 B1 KR 102848801B1
Authority
KR
South Korea
Prior art keywords
authentication block
public key
authentication
pseudo
signature data
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
KR1020220180528A
Other languages
English (en)
Other versions
KR20240098603A (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 주식회사 한컴위드
Priority to KR1020220180528A priority Critical patent/KR102848801B1/ko
Publication of KR20240098603A publication Critical patent/KR20240098603A/ko
Application granted granted Critical
Publication of KR102848801B1 publication Critical patent/KR102848801B1/ko
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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
    • 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/321Cryptographic 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 a third party or a trusted authority
    • H04L9/3213Cryptographic 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 a third party or a trusted authority using tickets or tokens, e.g. Kerberos
    • 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
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/08Randomization, e.g. dummy operations or using noise

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 사용자 단말로부터 공개키에 대한 인증 블록의 발급 요청이 수신되면, 인증 기관(Certificate Authority: CA) 개인키를 이용한 전자 서명을 통해 제1 서명 데이터를 생성한 후, 상기 공개키와 상기 제1 서명 데이터가 포함된 제이슨 웹 토큰(JSON Web Tokens) 구조의 제1 인증 블록을 생성하여 상기 사용자 단말로 발급해 줌으로써, 양자 내성 암호화 기술을 이용하여 생성된 키 쌍을 통한 전자 서명이 가능하도록 지원할 수 있다.

Description

인증 블록을 이용한 공개키 관리를 수행할 수 있는 인증 서버 및 그 동작 방법{AUTHENTICATION SERVER THAT CAN PERFORM PUBLIC KEY MANAGEMENT USING AUTHENTICATION BLOCKS AND THE OPERATING METHOD THEREOF}
본 발명은 인증 블록을 이용한 공개키 관리를 수행할 수 있는 인증 서버 및 그 동작 방법에 대한 것이다.
최근, 인터넷 등이 널리 보급됨에 따라, 회원제로 운영되는 웹 사이트가 증가하고 있고, 전자 결제나 온라인 기반의 뱅킹 서비스 사용도 급증하고 있다.
일반적인 온라인 뱅킹 서비스나 결제 시스템에서 도입하고 있는 사용자 확인 서비스는 공개키 기반의 암호화 방식(Public Key Infrastructure: PKI)을 이용한 전자 서명 시스템이 주를 이루고 있다.
공개키 기반의 암호화 방식의 전자 서명 시스템이란 메시지를 전달하는 측에서 해당 메시지에 대해 자신의 개인키로 암호화를 수행하여 전자 서명 값을 생성한 후 상기 메시지와 상기 전자 서명 값을 메시지 수신측에 전달하면, 메시지 수신측에서 상기 개인키에 대응하는 공개키로 상기 전자 서명 값을 복호화한 후, 상기 공개키로 복호화한 값과 상기 메시지를 비교하여 두 값이 서로 동일한 것으로 판단되면, 메시지 전송측으로부터 수신된 상기 전자 서명 값이 상기 메시지 전송측의 개인키에 의해서 정말로 암호화된 값임이 입증됨에 따라, 상기 메시지가 진정한 메시지 전송측으로부터 전달된 메시지임을 확인하는 시스템이다.
이러한 공개키 기반의 암호화 방식의 전자 서명 시스템은 소정의 키 쌍 생성 알고리즘을 활용해서, 개인키와 이에 대응하는 공개키를 생성한 후 상기 개인키로 전자 서명 값을 생성하고, 상기 공개키로 상기 전자 서명 값을 검증하는 형태로 운영되고 있다.
이러한 전자 서명 시스템에서는 사용자가 전자 서명을 수행할 수 있도록 하기 위해, 사용자 단말로 소정의 인증서를 발급해 주고, 사용자가 사용자 단말을 이용해서 소정의 콘텐츠 제공 서버에 접속해서 전자 서명을 수행하는 경우, 사용자 단말로부터 전송되는 인증서에 대한 검증을 수행해야 할 필요가 있다.
이러한 인증서에 대한 발급 및 검증을 수행하기 위해서, 인증 기관(Certificate Authority: CA)이 존재한다. 인증 기관은 사용자 단말에서 개인키와 공개키가 생성된 후, 상기 사용자 단말로부터 상기 공개키가 전송되면서 인증서 발급 요청이 수신되면, 자신의 개인키인 CA 개인키를 이용하여 생성한 인증 기관의 전자 서명 값과 상기 공개키가 포함된 인증서를 생성해서 상기 사용자 단말로 전달해 주고, 추후 상기 인증서에 대한 검증 요청이 수신되면, 상기 인증서에 포함된 인증 기관의 전자 서명 값을 기초로 상기 인증서가 정당하게 발급된 사용자에 대한 인증서가 맞음을 검증해 주는 역할을 수행한다.
최근에는 컴퓨터 시스템의 발전으로 인해, 고성능의 양자 컴퓨터의 도입이 가시화됨에 따라, 이러한 양자 컴퓨터에 의한 해킹에 방어하기 위한 양자 내성 암호화 기술에 대한 연구가 지속되고 있다.
이와 관련해서, 공개키 기반의 전자 서명 시스템에서도 기존의 RSA 기반의 키 쌍 생성 알고리즘이 아닌, 양자 내성 암호화 기술을 적용한 개인키-공개키 키 쌍 생성 알고리즘을 도입하기 위한 논의가 활발하게 이루어지고 있다.
다만, 양자 내성 암호화 기술을 활용한 키 쌍 생성 알고리즘으로 생성된 개인키와 공개키는 기존의 RSA 기반의 키보다 데이터의 크기가 매우 크다는 점에서, 이러한 양자 내성 암호화 기반의 전자 서명 시스템에서는, 기존의 전자 서명을 위한 인증서를 사용자 단말에 발급해 주고, 이 인증서를 이용하여 서명 검증을 수행하는 방식을 적용하기가 적절하지 않을 수 있다.
이와 관련해서, 최근에는 서버와 클라이언트 간의 데이터를 송수신할 때 사용할 수 있는 새로운 표준 포맷으로 JSON(JavaScript Object Notation)이라고 하는 포맷의 활용이 증가하고 있다. 이 JSON에서는 제이슨 웹 토큰(JSON Web Tokens)이라고 하는 소정의 데이터 토큰 구조를 지원하고 있는데, 이 토큰을 이용하게 되면, 기존의 인증서와 달리, 토큰 내에 데이터의 크기가 큰 공개키도 포함시켜 서로 주고받을 수 있다는 점에서, 양자 내성 암호화 기술을 활용한 전자 서명 시스템에서 기존의 인증서가 아닌 제이슨 웹 토큰을 이용하는 방안을 고려할 필요가 있다.
본 발명은 사용자 단말로부터 공개키에 대한 인증 블록의 발급 요청이 수신되면, 인증 기관(Certificate Authority: CA) 개인키를 이용한 전자 서명을 통해 제1 서명 데이터를 생성한 후, 상기 공개키와 상기 제1 서명 데이터가 포함된 제이슨 웹 토큰(JSON Web Tokens) 구조의 제1 인증 블록을 생성하여 상기 사용자 단말로 발급해 줌으로써, 양자 내성 암호화 기술을 이용하여 생성된 키 쌍을 통한 전자 서명이 가능하도록 지원하고자 한다.
본 발명의 일실시예에 따른 인증 블록을 이용한 공개키 관리를 수행할 수 있는 인증 서버는 사전 발급된 인증 기관(Certificate Authority: CA) 개인키와, 상기 CA 개인키에 대응하는 CA 공개키가 저장되어 있는 키 쌍 저장부, 사용자 단말에서 전자 서명을 위한 개인키와, 상기 개인키에 대응되는 공개키 쌍이 생성된 후, 상기 사용자 단말로부터 상기 공개키와 함께 인증 블록의 발급 요청 명령이 수신되면, 상기 CA 개인키를 기반으로 한 전자 서명을 수행하여 제1 서명 데이터를 생성한 후, 상기 공개키와 상기 제1 서명 데이터를 포함하는 제이슨 웹 토큰(JSON Web Tokens) 구조의 제1 인증 블록을 생성하는 블록 생성부, 상기 제1 인증 블록을 상기 사용자 단말로 전송함으로써, 상기 제1 인증 블록의 발급을 완료하는 인증 블록 발급부 및 상기 사용자 단말에 상기 제1 인증 블록이 발급된 이후, 상기 사용자 단말이 콘텐츠 제공자(Content Provider: CP)의 서비스 서버에 접속하여, 상기 개인키를 기반으로 전자 서명된 제2 서명 데이터와 상기 제1 인증 블록을 상기 서비스 서버에 전송하면서, 상기 서비스 서버로 상기 제2 서명 데이터에 대한 검증 요청 명령을 전송함에 따라, 상기 서비스 서버로부터, 상기 제1 인증 블록과 함께 상기 제1 인증 블록에 포함된 상기 공개키에 대한 유효성 검증 요청 명령이 수신되면, 상기 CA 공개키를 기초로 상기 제1 인증 블록에 포함되어 있는 상기 제1 서명 데이터에 대한 서명 검증을 수행하여, 상기 제1 서명 데이터가 정상적 서명 데이터로 검증되면, 상기 서비스 서버로 상기 공개키가 유효함을 지시하는 결과 메시지를 전송하는 인증 블록 검증부를 포함한다.
또한, 본 발명의 일실시예에 따른 인증 블록을 이용한 공개키 관리를 수행할 수 있는 인증 서버의 동작 방법은 사전 발급된 CA 개인키와, 상기 CA 개인키에 대응하는 CA 공개키가 저장되어 있는 키 쌍 저장부를 유지하는 단계, 사용자 단말에서 전자 서명을 위한 개인키와, 상기 개인키에 대응되는 공개키 쌍이 생성된 후, 상기 사용자 단말로부터 상기 공개키와 함께 인증 블록의 발급 요청 명령이 수신되면, 상기 CA 개인키를 기반으로 한 전자 서명을 수행하여 제1 서명 데이터를 생성한 후, 상기 공개키와 상기 제1 서명 데이터를 포함하는 제이슨 웹 토큰 구조의 제1 인증 블록을 생성하는 단계, 상기 제1 인증 블록을 상기 사용자 단말로 전송함으로써, 상기 제1 인증 블록의 발급을 완료하는 단계 및 상기 사용자 단말에 상기 제1 인증 블록이 발급된 이후, 상기 사용자 단말이 콘텐츠 제공자의 서비스 서버에 접속하여, 상기 개인키를 기반으로 전자 서명된 제2 서명 데이터와 상기 제1 인증 블록을 상기 서비스 서버에 전송하면서, 상기 서비스 서버로 상기 제2 서명 데이터에 대한 검증 요청 명령을 전송함에 따라, 상기 서비스 서버로부터, 상기 제1 인증 블록과 함께 상기 제1 인증 블록에 포함된 상기 공개키에 대한 유효성 검증 요청 명령이 수신되면, 상기 CA 공개키를 기초로 상기 제1 인증 블록에 포함되어 있는 상기 제1 서명 데이터에 대한 서명 검증을 수행하여, 상기 제1 서명 데이터가 정상적 서명 데이터로 검증되면, 상기 서비스 서버로 상기 공개키가 유효함을 지시하는 결과 메시지를 전송하는 단계를 포함한다.
본 발명은 사용자 단말로부터 공개키에 대한 인증 블록의 발급 요청이 수신되면, 인증 기관(Certificate Authority: CA) 개인키를 이용한 전자 서명을 통해 제1 서명 데이터를 생성한 후, 상기 공개키와 상기 제1 서명 데이터가 포함된 제이슨 웹 토큰(JSON Web Tokens) 구조의 제1 인증 블록을 생성하여 상기 사용자 단말로 발급해 줌으로써, 양자 내성 암호화 기술을 이용하여 생성된 키 쌍을 통한 전자 서명이 가능하도록 지원할 수 있다.
도 1은 본 발명의 일실시예에 따른 인증 블록을 이용한 공개키 관리를 수행할 수 있는 인증 서버의 구조를 도시한 도면이다.
도 2는 본 발명의 일실시예에 따른 인증 블록을 이용한 공개키 관리를 수행할 수 있는 인증 서버의 동작 방법을 도시한 순서도이다.
이하에서는 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명하기로 한다. 이러한 설명은 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였으며, 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 본 명세서 상에서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 사람에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다.
본 문서에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있다는 것을 의미한다. 또한, 본 발명의 다양한 실시예들에 있어서, 각 구성요소들, 기능 블록들 또는 수단들은 하나 또는 그 이상의 하부 구성요소로 구성될 수 있고, 각 구성요소들이 수행하는 전기, 전자, 기계적 기능들은 전자회로, 집적회로, ASIC(Application Specific Integrated Circuit) 등 공지된 다양한 소자들 또는 기계적 요소들로 구현될 수 있으며, 각각 별개로 구현되거나 2 이상이 하나로 통합되어 구현될 수도 있다.
한편, 첨부된 블록도의 블록들이나 흐름도의 단계들은 범용 컴퓨터, 특수용 컴퓨터, 휴대용 노트북 컴퓨터, 네트워크 컴퓨터 등 데이터 프로세싱이 가능한 장비의 프로세서나 메모리에 탑재되어 지정된 기능들을 수행하는 컴퓨터 프로그램 명령들(instructions)을 의미하는 것으로 해석될 수 있다. 이들 컴퓨터 프로그램 명령들은 컴퓨터 장치에 구비된 메모리 또는 컴퓨터에서 판독 가능한 메모리에 저장될 수 있기 때문에, 블록도의 블록들 또는 흐름도의 단계들에서 설명된 기능들은 이를 수행하는 명령 수단을 내포하는 제조물로 생산될 수도 있다. 아울러, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 명령들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 가능한 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 정해진 순서와 달리 실행되는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 실질적으로 동시에 수행되거나, 역순으로 수행될 수 있으며, 경우에 따라 일부 블록들 또는 단계들이 생략된 채로 수행될 수도 있다.
도 1은 본 발명의 일실시예에 따른 인증 블록을 이용한 공개키 관리를 수행할 수 있는 인증 서버의 구조를 도시한 도면이다.
도 1을 참조하면, 본 발명에 따른 인증 서버(110)는 키 쌍 저장부(111), 블록 생성부(112), 인증 블록 발급부(113) 및 인증 블록 검증부(114)를 포함한다.
키 쌍 저장부(111)에는 사전 발급된 인증 기관(Certificate Authority: CA) 개인키와, 상기 CA 개인키에 대응하는 CA 공개키가 저장되어 있다.
이때, 본 발명의 일실시예에 따르면, 상기 CA 개인키와 상기 CA 공개키는 양자 내성 암호화 기반의 키 쌍 생성 알고리즘에 기초하여 생성된 키 쌍일 수 있다.
블록 생성부(112)는 사용자 단말(10)에서 전자 서명을 위한 개인키와, 상기 개인키에 대응되는 공개키 쌍이 생성된 후, 사용자 단말(10)로부터 상기 공개키와 함께 인증 블록의 발급 요청 명령이 수신되면, 상기 CA 개인키를 기반으로 한 전자 서명을 수행하여 제1 서명 데이터를 생성한 후, 상기 공개키와 상기 제1 서명 데이터를 포함하는 제이슨 웹 토큰(JSON Web Tokens) 구조의 제1 인증 블록을 생성한다.
이때, 본 발명의 일실시예에 따르면, 사용자 단말(10)이 생성한 상기 개인키와 상기 공개키는, 양자 내성 암호화 기반의 키 쌍 생성 알고리즘에 기초하여 생성된 키 쌍일 수 있다.
인증 블록 발급부(113)는 상기 제1 인증 블록을 사용자 단말(10)로 전송함으로써, 상기 제1 인증 블록의 발급을 완료한다.
이렇게, 상기 제1 인증 블록이 사용자 단말(10)에 발급되면, 사용자 단말(10)은 소정의 콘텐츠 제공자(Content Provider: CP)의 서비스 서버에서 전자 서명이 필요할 때, 상기 제1 인증 블록을 이용하여, 사용자 단말(10)에 저장되어 있는 상기 개인키 기반의 전자 서명을 수행할 수 있다.
예컨대, 사용자 단말(10)에 상기 제1 인증 블록이 발급된 이후, 사용자 단말(10)의 사용자가, 사용자 단말(10)을 이용하여 인터넷 뱅킹 서비스를 제공하는 서비스 서버(20)에 접속한 후, 로그인을 하거나 계좌 이체를 하는 등으로 인해, 사용자 단말(10)과 서비스 서버(20) 간의 전자 서명 및 검증 절차가 수행되는 상황이 발생하게 되면, 사용자 단말(10)은 상기 개인키를 기반으로 전자 서명을 수행하여 제2 서명 데이터를 생성한 후, 상기 제2 서명 데이터와 상기 제1 인증 블록을 서비스 서버(20)로 전송하면서, 서비스 서버(20)로, 상기 제2 서명 데이터에 대한 검증 요청 명령을 전송할 수 있다.
그러면, 서비스 서버(20)는 본 발명의 인증 서버(110)로 상기 제1 인증 블록과 함께 상기 제1 인증 블록에 포함된 상기 공개키에 대한 유효성 검증 요청 명령을 전송하게 된다.
이렇게, 사용자 단말(10)에 상기 제1 인증 블록이 발급된 이후, 사용자 단말(10)이 서비스 서버(20)에 접속하여, 상기 개인키를 기반으로 전자 서명된 제2 서명 데이터와 상기 제1 인증 블록을 서비스 서버(20)에 전송하면서, 서비스 서버(20)로 상기 제2 서명 데이터에 대한 검증 요청 명령을 전송함에 따라, 서비스 서버(20)로부터 본 발명의 인증 서버(110)에, 상기 제1 인증 블록과 함께 상기 제1 인증 블록에 포함된 상기 공개키에 대한 유효성 검증 요청 명령이 수신되면, 인증 블록 검증부(114)는 상기 CA 공개키를 기초로 상기 제1 인증 블록에 포함되어 있는 상기 제1 서명 데이터에 대한 서명 검증을 수행하여, 상기 제1 서명 데이터가 정상적 서명 데이터로 검증되면, 서비스 서버(20)로 상기 공개키가 유효함을 지시하는 결과 메시지를 전송한다.
이때, 본 발명의 일실시예에 따르면, 서비스 서버(20)는 본 발명의 인증 서버(110)로부터 상기 결과 메시지가 수신되는 경우, 상기 제1 인증 블록에 포함되어 있는 상기 공개키를 기초로 상기 제2 서명 데이터에 대한 서명 검증을 수행한 후, 상기 제2 서명 데이터가 정상적 서명 데이터로 검증되면, 사용자 단말(10)로 상기 제2 서명 데이터가 검증 완료되었음을 지시하는 검증 완료 메시지를 전송함으로써, 사용자 단말(10)과의 전자 서명 절차를 완료할 수 있다.
이때, 본 발명의 일실시예에 따르면, 인증 서버(110)는 이력 관리부(115)를 더 포함할 수 있다.
이력 관리부(115)는, 블록 생성부(112)에서 상기 제1 인증 블록이 생성되면, 상기 제1 인증 블록을 사전 설정된 해시 함수에 입력으로 인가하여 제1 해시 값을 생성한 후, 사전 설정된 데이터베이스(100) 상에, 상기 제1 해시 값을 저장하고, 상기 제1 해시 값이 저장된 시점으로부터 사전 설정된 유효 기간이 경과하게 되면, 데이터베이스(100)로부터 상기 제1 해시 값을 삭제한다.
예컨대, 상기 유효 기간이 1년이라고 하는 경우, 이력 관리부(115)는 블록 생성부(112)에서 생성된 상기 제1 인증 블록을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성한 후, 데이터베이스(100) 상에, 상기 제1 해시 값을 저장하고, 상기 제1 해시 값이 저장된 시점으로부터 1년이 경과하게 되면, 데이터베이스(100)로부터 상기 제1 해시 값을 삭제할 수 있다.
이때, 본 발명의 일실시예에 따르면, 인증 블록 검증부(114)는 서비스 서버(20)로부터, 상기 제1 인증 블록과 함께 상기 제1 인증 블록에 포함된 상기 공개키에 대한 유효성 검증 요청 명령이 수신되면, 상기 제1 인증 블록을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성한 후, 데이터베이스(100) 상에 상기 제1 해시 값이 저장되어 있는지 확인하여, 상기 제1 해시 값이 저장되어 있는 것으로 확인되면, 상기 CA 공개키를 기초로 상기 제1 인증 블록에 포함되어 있는 상기 제1 서명 데이터에 대한 서명 검증을 수행할 수 있다.
즉, 인증 블록 검증부(114)는 상기 제1 인증 블록에 대한 유효 기간이 경과하지 않아서, 데이터베이스(100) 상에 상기 제1 인증 블록에 대한 상기 제1 해시 값이 존재하고 있는 경우에 한해서, 상기 제1 인증 블록에 포함되어 있는 상기 제1 서명 데이터에 대한 서명 검증 작업을 수행할 수 있다.
본 발명의 일실시예에 따르면, 인증 서버(110)는 사용자 단말(10)로 상기 제1 인증 블록을 발급하는 과정에서, 보안성을 강화하기 위한 추가 구성을 더 포함할 수 있다.
이와 관련해서, 본 발명의 일실시예에 따르면, 블록 생성부(112)는 함수 저장부(116), 선택부(117), 난수 생성부(118), 연산부(119), 생성부(120), 서명부(121) 및 블록 생성 처리부(122)를 포함할 수 있다.
함수 저장부(116)에는 사전 설정된 복수의 의사(Pseudo) 난수 생성 함수들이 저장되어 있다.
선택부(117)는 사용자 단말(10)로부터 상기 공개키와 함께 상기 인증 블록의 발급 요청 명령이 수신되면, 현재 시점의 날짜를 확인하여, 상기 현재 시점의 날짜에 대한 n(n은 2이상의 자연수임)자리수의 날짜 값을 생성하고, 상기 복수의 의사 난수 생성 함수들 중 어느 하나인 제1 의사 난수 생성 함수를 랜덤하게 선택한다.
관련해서, 현재 시점의 날짜가 '2022년 12월 8일'이라고 하고, n을 '8'이라고 하는 경우, 선택부(117)는 상기 현재 시점의 날짜에 대한 8자리수의 날짜 값을 '20221208'과 같이 생성하고, 상기 복수의 의사 난수 생성 함수들 중 어느 하나인 상기 제1 의사 난수 생성 함수를 랜덤하게 선택할 수 있다.
난수 생성부(118)는 상기 n자리수의 날짜 값을 구성하는 각 자리의 숫자를 시드(seed)로 하여 상기 제1 의사 난수 생성 함수에 하나씩 입력으로 인가함으로써, n개의 의사 난수들을 생성한다.
관련해서, 전술한 예와 같이, 8자리수의 날짜 값이 '20221208'이라고 하는 경우, 난수 생성부(118)는 상기 날짜 값을 구성하는 각 자리의 숫자인 '2, 0, 2, 2, 1, 2, 0, 8'을 시드로 하여 상기 제1 의사 난수 생성 함수에 하나씩 입력으로 인가함으로써, 8개의 의사 난수들을 'R1, R2, R3, R4, R5, R6, R7, R8'과 같이 생성할 수 있다. 즉, 난수 생성부(118)는 '2'를 상기 제1 의사 난수 생성 함수에 시드로 입력하여 'R1'을 생성할 수 있고, '0'을 상기 제1 의사 난수 생성 함수에 시드로 입력하여 'R2'를 생성할 수 있으며, '2'를 상기 제1 의사 난수 생성 함수에 시드로 입력하여 'R3'을 생성할 수 있고, '2'를 상기 제1 의사 난수 생성 함수에 시드로 입력하여 'R4'를 생성할 수 있고, '1'을 상기 제1 의사 난수 생성 함수에 시드로 입력하여 'R5'를 생성할 수 있고, '2'를 상기 제1 의사 난수 생성 함수에 시드로 입력하여 'R6'을 생성할 수 있고, '0'을 상기 제1 의사 난수 생성 함수에 시드로 입력하여 'R7'을 생성할 수 있고, '8'을 상기 제1 의사 난수 생성 함수에 시드로 입력하여 'R8'을 생성할 수 있다.
연산부(119)는 상기 n개의 의사 난수들 각각에 대해, 상기 n자리수의 날짜 값을 구성하는 각 자리의 숫자를 제수로 하는 모듈로(modulo) 연산을 수행함으로써, n개의 연산 값들을 생성한다. 이때, 연산부(119)는 모듈로 연산을 수행할 때, 제수로 사용되는 숫자가 0인 경우에는 피제수로 사용된 의사 난수를 연산 결과로 산출할 수 있다.
관련해서, 전술한 예와 같이, 'R1, R2, R3, R4, R5, R6, R7, R8'과 같은 8개의 의사 난수들이 생성되었다고 하는 경우, 연산부(119)는 'R1, R2, R3, R4, R5, R6, R7, R8' 각각에 대해, 상기 날짜 값인 '20221208'을 구성하는 각 자리의 숫자인 '2, 0, 2, 2, 1, 2, 0, 8'을 제수로 하는 모듈로 연산을 수행함으로써, 8개의 연산 값들을 'S1, S2, S3, S4, S5, S6, S7, S8'과 같이 생성할 수 있다. 즉, 연산부(119)는 'R1'에 대해, '2'를 제수로 하는 모듈로 연산을 수행함으로써, 'S1'을 생성할 수 있고, 'R2'에 대해서는 제수가 '0'이므로 'R2'를 연산 결과로 산출함으로써, 'S2'를 생성할 수 있으며, 'R3'에 대해, '2'를 제수로 하는 모듈로 연산을 수행함으로써, 'S3'을 생성할 수 있고, 'R4'에 대해, '2'를 제수로 하는 모듈로 연산을 수행함으로써, 'S4'를 생성할 수 있고, 'R5'에 대해, '1'를 제수로 하는 모듈로 연산을 수행함으로써, 'S5'를 생성할 수 있고, 'R6'에 대해, '2'를 제수로 하는 모듈로 연산을 수행함으로써, 'S6'을 생성할 수 있고, 'R7'에 대해서는 제수가 '0'이므로 'R7'을 연산 결과로 산출함으로써, 'S7'을 생성할 수 있고, 'R8'에 대해, '8'를 제수로 하는 모듈로 연산을 수행함으로써, 'S8'을 생성할 수 있다.
생성부(120)는 상기 n자리수의 날짜 값을 구성하는 각 자리의 숫자를 성분으로 갖는 n차원의 벡터와 상기 n개의 연산 값들 각각을 성분으로 갖는 n차원의 벡터 간의 합성곱을 수행하여 합성곱 벡터를 생성한 후, 상기 합성곱 벡터를 구성하는 각 성분을 연접한 연접 데이터와 상기 공개키를 구성하는 데이터를 서로 연접함으로써, 전자 서명용 데이터를 생성한다.
관련해서, 전술한 바와 같이, 8자리수의 날짜 값이 '20221208'이고, 8개의 연산 값들이 'S1, S2, S3, S4, S5, S6, S7, S8'이라고 하는 경우, 생성부(120)는 상기 8자리수의 날짜 값을 구성하는 각 자리의 숫자를 성분으로 갖는 8차원의 벡터인 '[2 0 2 2 1 2 0 8]'과 상기 8개의 연산 값들 각각을 성분으로 갖는 8차원의 벡터인 '[S1 S2 S3 S4 S5 S6 S7 S8]' 간의 합성곱(convolution)을 수행하여 합성곱 벡터를 생성할 수 있다.
그러고 나서, 생성부(120)는 상기 합성곱 벡터를 구성하는 각 성분을 연접한 연접 데이터인 'D'와 상기 공개키를 구성하는 데이터인 'P'를 서로 연접함으로써, 전자 서명용 데이터를 'DP'와 같이 생성할 수 있다.
서명부(121)는 상기 CA 개인키를 기초로 상기 전자 서명용 데이터에 대한 전자 서명을 수행함으로써, 상기 제1 서명 데이터를 생성한다.
블록 생성 처리부(122)는 상기 제1 서명 데이터가 생성되면, 상기 공개키와 상기 제1 서명 데이터를 포함함과 동시에, 상기 현재 시점의 날짜에 대한 정보를 추가로 포함하는 제이슨 웹 토큰 구조의 상기 제1 인증 블록을 생성한다.
이때, 본 발명의 일실시예에 따르면, 이력 관리부(115)는 상기 제1 인증 블록이 생성되면, 상기 제1 인증 블록을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성한 후, 데이터베이스(100) 상에, 상기 제1 해시 값을 저장함과 동시에, 상기 제1 의사 난수 생성 함수를 상기 제1 해시 값에 대응시켜 추가로 저장할 수 있다.
이때, 본 발명의 일실시예에 따르면, 인증 블록 검증부(114)는 추출부(123), 연산 복원부(124), 연접부(125) 및 검증 처리부(126)를 포함할 수 있다.
추출부(123)는 서비스 서버(20)로부터, 상기 제1 인증 블록과 함께 상기 제1 인증 블록에 포함된 상기 공개키에 대한 유효성 검증 요청 명령이 수신되면, 상기 제1 인증 블록을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성한 후, 데이터베이스(100) 상에 상기 제1 해시 값이 저장되어 있는지 확인하여, 상기 제1 해시 값이 저장되어 있는 것으로 확인되면, 상기 제1 해시 값을 기초로, 데이터베이스로(100)부터 상기 제1 해시 값에 대응되어 저장되어 있는 상기 제1 의사 난수 생성 함수를 추출한다.
연산 복원부(124)는 상기 제1 인증 블록에 포함되어 있는 상기 현재 시점의 날짜에 대한 정보를 기초로 상기 n자리수의 날짜 값을 생성한 후, 상기 n자리수의 날짜 값을 구성하는 각 자리의 숫자를 시드로 하여 상기 제1 의사 난수 생성 함수에 하나씩 입력으로 인가함으로써, 상기 n개의 의사 난수들을 생성하고, 상기 n개의 의사 난수들 각각에 대해, 상기 n자리수의 날짜 값을 구성하는 각 자리의 숫자를 제수로 하는 모듈로 연산(제수로 사용되는 숫자가 0인 경우에는 피제수로 사용된 의사 난수를 연산 결과로 산출함)을 수행함으로써, 상기 n개의 연산 값들을 생성한다.
관련해서, 전술한 예와 같이, 상기 제1 인증 블록에 포함된 상기 현재 시점의 날짜가 '2022년 12월 8일'이라고 하는 경우, 연산 복원부(124)는 이를 기초로 8자리수의 날짜 값을 '20221208'로 생성한 후, 상기 날짜 값을 구성하는 각 자리의 숫자인 '2, 0, 2, 2, 1, 2, 0, 8'을 시드로 하여 상기 제1 의사 난수 생성 함수에 하나씩 입력으로 인가함으로써, 8개의 의사 난수들을 'R1, R2, R3, R4, R5, R6, R7, R8'과 같이 생성할 수 있다.
그 이후, 연산 복원부(124)는 'R1, R2, R3, R4, R5, R6, R7, R8' 각각에 대해, 상기 날짜 값인 '20221208'을 구성하는 각 자리의 숫자인 '2, 0, 2, 2, 1, 2, 0, 8'을 제수로 하는 모듈로 연산을 수행함으로써, 8개의 연산 값들을 'S1, S2, S3, S4, S5, S6, S7, S8'과 같이 생성할 수 있다. 이때, 'R2'와 'R7'에 대해서는 제수로 사용되는 숫자가 0이기 때문에, 연산 복원부(124)는 피제수로 사용된 의사 난수인 'R2'와 'R7'을 연산 결과로 산출할 수 있다.
연접부(125)는 상기 n자리수의 날짜 값을 구성하는 각 자리의 숫자를 성분으로 갖는 n차원의 벡터와 상기 n개의 연산 값들 각각을 성분으로 갖는 n차원의 벡터 간의 합성곱을 수행하여 상기 합성곱 벡터를 생성한 후, 상기 합성곱 벡터를 구성하는 각 성분을 연접한 상기 연접 데이터를 생성한다.
관련해서, 전술한 바와 같이, 8자리수의 날짜 값이 '20221208'이고, 8개의 연산 값들이 'S1, S2, S3, S4, S5, S6, S7, S8'이라고 하는 경우, 연접부(125)는 상기 8자리수의 날짜 값을 구성하는 각 자리의 숫자를 성분으로 갖는 8차원의 벡터인 '[2 0 2 2 1 2 0 8]'과 상기 8개의 연산 값들 각각을 성분으로 갖는 8차원의 벡터인 '[S1 S2 S3 S4 S5 S6 S7 S8]' 간의 합성곱을 수행하여 합성곱 벡터를 생성할 수 있다.
그러고 나서, 연접부(125)는 상기 합성곱 벡터를 구성하는 각 성분을 연접함으로써, 연접 데이터 'D'를 생성할 수 있다.
검증 처리부(126)는 상기 CA 공개키를 기초로 상기 제1 인증 블록에 포함되어 있는 상기 제1 서명 데이터를 복호화하여 복호화 데이터를 생성한 후, 상기 복호화 데이터에서 상기 연접 데이터를 제거한 나머지 데이터가 상기 제1 인증 블록에 포함되어 있는 상기 공개키를 구성하는 데이터와 일치하는지 확인하여, 일치하는 것으로 확인되면, 상기 제1 서명 데이터를 정상적 서명 데이터로 검증 완료한 후, 서비스 서버(20)로 상기 결과 메시지를 전송한다.
관련해서, 상기 제1 인증 블록에 포함되어 있는 상기 제1 서명 데이터가 상기 CA 개인키로 정상 서명된 데이터라고 한다면, 상기 제1 서명 데이터를 상기 CA 공개키로 복호화한 복호화 데이터는, 상기 연접 데이터인 'D'와 상기 공개키를 구성하는 데이터인 'P'가 서로 연접된 형태인 'DP'가 될 것이다.
따라서, 검증 처리부(126)는 상기 CA 공개키를 기초로 상기 제1 서명 데이터를 복호화하여 생성된 복호화 데이터로부터 상기 연접 데이터인 'D'를 제거한 나머지 데이터가 상기 제1 인증 블록에 포함되어 있는 상기 공개키를 구성하는 데이터인 'P'와 일치하는지 확인할 수 있다.
만약, 양 데이터가 일치하는 것으로 확인된다면, 상기 제1 인증 블록에 포함되어 있는 상기 제1 서명 데이터는 상기 CA 개인키로 정상 서명이 완료된 데이터로 볼 수 있으므로, 검증 처리부(126)는 상기 제1 서명 데이터를 정상적 서명 데이터로 검증 완료한 후, 서비스 서버(20)로 상기 공개키가 유효함을 지시하는 상기 결과 메시지를 전송할 수 있다.
도 2는 본 발명의 일실시예에 따른 인증 블록을 이용한 공개키 관리를 수행할 수 있는 인증 서버의 동작 방법을 도시한 순서도이다.
단계(S210)에서는 사전 발급된 CA 개인키와, 상기 CA 개인키에 대응하는 CA 공개키가 저장되어 있는 키 쌍 저장부를 유지한다.
단계(S220)에서는 사용자 단말에서 전자 서명을 위한 개인키와, 상기 개인키에 대응되는 공개키 쌍이 생성된 후, 상기 사용자 단말로부터 상기 공개키와 함께 인증 블록의 발급 요청 명령이 수신되면, 상기 CA 개인키를 기반으로 한 전자 서명을 수행하여 제1 서명 데이터를 생성한 후, 상기 공개키와 상기 제1 서명 데이터를 포함하는 제이슨 웹 토큰 구조의 제1 인증 블록을 생성한다.
단계(S230)에서는 상기 제1 인증 블록을 상기 사용자 단말로 전송함으로써, 상기 제1 인증 블록의 발급을 완료한다.
단계(S240)에서는 상기 사용자 단말에 상기 제1 인증 블록이 발급된 이후, 상기 사용자 단말이 콘텐츠 제공자의 서비스 서버에 접속하여, 상기 개인키를 기반으로 전자 서명된 제2 서명 데이터와 상기 제1 인증 블록을 상기 서비스 서버에 전송하면서, 상기 서비스 서버로 상기 제2 서명 데이터에 대한 검증 요청 명령을 전송함에 따라, 상기 서비스 서버로부터, 상기 제1 인증 블록과 함께 상기 제1 인증 블록에 포함된 상기 공개키에 대한 유효성 검증 요청 명령이 수신되면, 상기 CA 공개키를 기초로 상기 제1 인증 블록에 포함되어 있는 상기 제1 서명 데이터에 대한 서명 검증을 수행하여, 상기 제1 서명 데이터가 정상적 서명 데이터로 검증되면, 상기 서비스 서버로 상기 공개키가 유효함을 지시하는 결과 메시지를 전송한다.
이때, 본 발명의 일실시예에 따르면, 상기 인증 서버의 동작 방법은 상기 제1 인증 블록이 생성되면, 상기 제1 인증 블록을 사전 설정된 해시 함수에 입력으로 인가하여 제1 해시 값을 생성한 후, 사전 설정된 데이터베이스 상에, 상기 제1 해시 값을 저장하고, 상기 제1 해시 값이 저장된 시점으로부터 사전 설정된 유효 기간이 경과하게 되면, 상기 데이터베이스로부터 상기 제1 해시 값을 삭제하는 단계를 더 포함할 수 있다.
이때, 단계(S240)에서는 상기 서비스 서버로부터, 상기 제1 인증 블록과 함께 상기 제1 인증 블록에 포함된 상기 공개키에 대한 유효성 검증 요청 명령이 수신되면, 상기 제1 인증 블록을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성한 후, 상기 데이터베이스 상에 상기 제1 해시 값이 저장되어 있는지 확인하여, 상기 제1 해시 값이 저장되어 있는 것으로 확인되면, 상기 CA 공개키를 기초로 상기 제1 인증 블록에 포함되어 있는 상기 제1 서명 데이터에 대한 서명 검증을 수행할 수 있다.
이때, 본 발명의 일실시예에 따르면, 단계(S220)에서는 사전 설정된 복수의 의사 난수 생성 함수들이 저장되어 있는 함수 저장부를 유지하는 단계, 상기 사용자 단말로부터 상기 공개키와 함께 상기 인증 블록의 발급 요청 명령이 수신되면, 현재 시점의 날짜를 확인하여, 상기 현재 시점의 날짜에 대한 n(n은 2이상의 자연수임)자리수의 날짜 값을 생성하고, 상기 복수의 의사 난수 생성 함수들 중 어느 하나인 제1 의사 난수 생성 함수를 랜덤하게 선택하는 단계, 상기 n자리수의 날짜 값을 구성하는 각 자리의 숫자를 시드로 하여 상기 제1 의사 난수 생성 함수에 하나씩 입력으로 인가함으로써, n개의 의사 난수들을 생성하는 단계, 상기 n개의 의사 난수들 각각에 대해, 상기 n자리수의 날짜 값을 구성하는 각 자리의 숫자를 제수로 하는 모듈로 연산(제수로 사용되는 숫자가 0인 경우에는 피제수로 사용된 의사 난수를 연산 결과로 산출함)을 수행함으로써, n개의 연산 값들을 생성하는 단계, 상기 n자리수의 날짜 값을 구성하는 각 자리의 숫자를 성분으로 갖는 n차원의 벡터와 상기 n개의 연산 값들 각각을 성분으로 갖는 n차원의 벡터 간의 합성곱을 수행하여 합성곱 벡터를 생성한 후, 상기 합성곱 벡터를 구성하는 각 성분을 연접한 연접 데이터와 상기 공개키를 구성하는 데이터를 서로 연접함으로써, 전자 서명용 데이터를 생성하는 단계, 상기 CA 개인키를 기초로 상기 전자 서명용 데이터에 대한 전자 서명을 수행함으로써, 상기 제1 서명 데이터를 생성하는 단계 및 상기 제1 서명 데이터가 생성되면, 상기 공개키와 상기 제1 서명 데이터를 포함함과 동시에, 상기 현재 시점의 날짜에 대한 정보를 추가로 포함하는 제이슨 웹 토큰 구조의 상기 제1 인증 블록을 생성하는 단계를 포함할 수 있다.
이때, 상기 삭제하는 단계는 상기 제1 인증 블록이 생성되면, 상기 제1 인증 블록을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성한 후, 상기 데이터베이스 상에, 상기 제1 해시 값을 저장함과 동시에, 상기 제1 의사 난수 생성 함수를 상기 제1 해시 값에 대응시켜 추가로 저장할 수 있다.
이때, 본 발명의 일실시예에 따르면, 단계(S240)에서는 상기 서비스 서버로부터, 상기 제1 인증 블록과 함께 상기 제1 인증 블록에 포함된 상기 공개키에 대한 유효성 검증 요청 명령이 수신되면, 상기 제1 인증 블록을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성한 후, 상기 데이터베이스 상에 상기 제1 해시 값이 저장되어 있는지 확인하여, 상기 제1 해시 값이 저장되어 있는 것으로 확인되면, 상기 제1 해시 값을 기초로, 상기 데이터베이스로부터 상기 제1 해시 값에 대응되어 저장되어 있는 상기 제1 의사 난수 생성 함수를 추출하는 단계, 상기 제1 인증 블록에 포함되어 있는 상기 현재 시점의 날짜에 대한 정보를 기초로 상기 n자리수의 날짜 값을 생성한 후, 상기 n자리수의 날짜 값을 구성하는 각 자리의 숫자를 시드로 하여 상기 제1 의사 난수 생성 함수에 하나씩 입력으로 인가함으로써, 상기 n개의 의사 난수들을 생성하고, 상기 n개의 의사 난수들 각각에 대해, 상기 n자리수의 날짜 값을 구성하는 각 자리의 숫자를 제수로 하는 모듈로 연산(제수로 사용되는 숫자가 0인 경우에는 피제수로 사용된 의사 난수를 연산 결과로 산출함)을 수행함으로써, 상기 n개의 연산 값들을 생성하는 단계, 상기 n자리수의 날짜 값을 구성하는 각 자리의 숫자를 성분으로 갖는 n차원의 벡터와 상기 n개의 연산 값들 각각을 성분으로 갖는 n차원의 벡터 간의 합성곱을 수행하여 상기 합성곱 벡터를 생성한 후, 상기 합성곱 벡터를 구성하는 각 성분을 연접한 상기 연접 데이터를 생성하는 단계 및 상기 CA 공개키를 기초로 상기 제1 인증 블록에 포함되어 있는 상기 제1 서명 데이터를 복호화하여 복호화 데이터를 생성한 후, 상기 복호화 데이터에서 상기 연접 데이터를 제거한 나머지 데이터가 상기 제1 인증 블록에 포함되어 있는 상기 공개키를 구성하는 데이터와 일치하는지 확인하여, 일치하는 것으로 확인되면, 상기 제1 서명 데이터를 정상적 서명 데이터로 검증 완료한 후, 상기 서비스 서버로 상기 결과 메시지를 전송하는 단계를 포함할 수 있다.
또한, 본 발명의 일실시예에 따르면, 상기 서비스 서버는 상기 인증 서버로부터 상기 결과 메시지가 수신되는 경우, 상기 제1 인증 블록에 포함되어 있는 상기 공개키를 기초로 상기 제2 서명 데이터에 대한 서명 검증을 수행한 후, 상기 제2 서명 데이터가 정상적 서명 데이터로 검증되면, 상기 사용자 단말로 상기 제2 서명 데이터가 검증 완료되었음을 지시하는 검증 완료 메시지를 전송할 수 있다.
이상, 도 2를 참조하여 본 발명의 일실시예에 따른 인증 서버의 동작 방법에 대해 설명하였다. 여기서, 본 발명의 일실시예에 따른 인증 서버의 동작 방법은 도 1을 이용하여 설명한 인증 서버(110)의 동작에 대한 구성과 대응될 수 있으므로, 이에 대한 보다 상세한 설명은 생략하기로 한다.
본 발명의 일실시예에 따른 인증 서버의 동작 방법은 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램으로 구현될 수 있다.
또한, 본 발명의 일실시예에 따른 인증 서버의 동작 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.
110: 인증 서버
111: 키 쌍 저장부 112: 블록 생성부
113: 인증 블록 발급부 114: 인증 블록 검증부
115: 이력 관리부 116: 함수 저장부
117: 선택부 118: 난수 생성부
119: 연산부 120: 생성부
121: 서명부 122: 블록 생성 처리부
123: 추출부 124: 연산 복원부
125: 연접부 126: 검증 처리부
100: 데이터베이스
10: 사용자 단말
20: 서비스 서버

Claims (12)

  1. 인증 블록을 이용한 공개키 관리를 수행할 수 있는 인증 서버에 있어서,
    사전 발급된 인증 기관(Certificate Authority: CA) 개인키와, 상기 CA 개인키에 대응하는 CA 공개키가 저장되어 있는 키 쌍 저장부;
    사용자 단말에서 전자 서명을 위한 개인키와, 상기 개인키에 대응되는 공개키 쌍이 생성된 후, 상기 사용자 단말로부터 상기 공개키와 함께 인증 블록의 발급 요청 명령이 수신되면, 상기 CA 개인키를 기반으로 한 전자 서명을 수행하여 제1 서명 데이터를 생성한 후, 상기 공개키와 상기 제1 서명 데이터를 포함하는 제이슨 웹 토큰(JSON Web Tokens) 구조의 제1 인증 블록을 생성하는 블록 생성부;
    상기 제1 인증 블록을 상기 사용자 단말로 전송함으로써, 상기 제1 인증 블록의 발급을 완료하는 인증 블록 발급부;
    상기 제1 인증 블록을 사전 설정된 해시 함수에 입력으로 인가하여 제1 해시 값을 생성한 후, 사전 설정된 데이터베이스 상에, 상기 제1 해시 값을 저장하고, 상기 제1 해시 값이 저장된 시점으로부터 사전 설정된 유효 기간이 경과하게 되면, 상기 데이터베이스로부터 상기 제1 해시 값을 삭제하는 이력 관리부; 및
    상기 사용자 단말에 상기 제1 인증 블록이 발급된 이후, 상기 사용자 단말이 콘텐츠 제공자(Content Provider: CP)의 서비스 서버에 접속하여, 상기 개인키를 기반으로 전자 서명된 제2 서명 데이터와 상기 제1 인증 블록을 상기 서비스 서버에 전송하면서, 상기 서비스 서버로 상기 제2 서명 데이터에 대한 검증 요청 명령을 전송함에 따라, 상기 서비스 서버로부터, 상기 제1 인증 블록과 함께 상기 제1 인증 블록에 포함된 상기 공개키에 대한 유효성 검증 요청 명령이 수신되면, 상기 제1 인증 블록을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성한 후, 상기 데이터베이스 상에 상기 제1 해시 값이 저장되어 있는지 확인하여, 상기 제1 해시 값이 저장되어 있는 것으로 확인되면, 상기 CA 공개키를 기초로 상기 제1 인증 블록에 포함되어 있는 상기 제1 서명 데이터에 대한 서명 검증을 수행하여, 상기 제1 서명 데이터가 정상적 서명 데이터로 검증되면, 상기 서비스 서버로 상기 공개키가 유효함을 지시하는 결과 메시지를 전송하는 인증 블록 검증부
    를 포함하고,
    상기 블록 생성부는
    사전 설정된 복수의 의사 난수 생성 함수들이 저장되어 있는 함수 저장부;
    상기 사용자 단말로부터 상기 공개키와 함께 상기 인증 블록의 발급 요청 명령이 수신되면, 현재 시점의 날짜를 확인하여, 상기 현재 시점의 날짜에 대한 n(n은 2이상의 자연수임)자리수의 날짜 값을 생성하고, 상기 복수의 의사 난수 생성 함수들 중 어느 하나인 제1 의사 난수 생성 함수를 랜덤하게 선택하는 선택부;
    상기 n자리수의 날짜 값을 구성하는 각 자리의 숫자를 시드(seed)로 하여 상기 제1 의사 난수 생성 함수에 하나씩 입력으로 인가함으로써, n개의 의사 난수들을 생성하는 난수 생성부;
    상기 n개의 의사 난수들 각각에 대해, 상기 n자리수의 날짜 값을 구성하는 각 자리의 숫자를 제수로 하는 모듈로(modulo) 연산 - 제수로 사용되는 숫자가 0인 경우에는 피제수로 사용된 의사 난수를 연산 결과로 산출함 - 을 수행함으로써, n개의 연산 값들을 생성하는 연산부;
    상기 n자리수의 날짜 값을 구성하는 각 자리의 숫자를 성분으로 갖는 n차원의 벡터와 상기 n개의 연산 값들 각각을 성분으로 갖는 n차원의 벡터 간의 합성곱을 수행하여 합성곱 벡터를 생성한 후, 상기 합성곱 벡터를 구성하는 각 성분을 연접한 연접 데이터와 상기 공개키를 구성하는 데이터를 서로 연접함으로써, 전자 서명용 데이터를 생성하는 생성부;
    상기 CA 개인키를 기초로 상기 전자 서명용 데이터에 대한 전자 서명을 수행함으로써, 상기 제1 서명 데이터를 생성하는 서명부; 및
    상기 제1 서명 데이터가 생성되면, 상기 공개키와 상기 제1 서명 데이터를 포함함과 동시에, 상기 현재 시점의 날짜에 대한 정보를 추가로 포함하는 제이슨 웹 토큰 구조의 상기 제1 인증 블록을 생성하는 블록 생성 처리부
    를 포함하며,
    이때 상기 이력 관리부는
    상기 제1 인증 블록을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성한 후, 상기 데이터베이스 상에, 상기 제1 해시 값을 저장함과 동시에, 상기 제1 의사 난수 생성 함수를 상기 제1 해시 값에 대응시켜 추가로 저장하는 것을 특징으로 하는 인증 서버.
  2. 삭제
  3. 삭제
  4. 제1항에 있어서,
    상기 인증 블록 검증부는
    상기 서비스 서버로부터, 상기 제1 인증 블록과 함께 상기 제1 인증 블록에 포함된 상기 공개키에 대한 유효성 검증 요청 명령이 수신되면, 상기 제1 인증 블록을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성한 후, 상기 데이터베이스 상에 상기 제1 해시 값이 저장되어 있는지 확인하여, 상기 제1 해시 값이 저장되어 있는 것으로 확인되면, 상기 제1 해시 값을 기초로, 상기 데이터베이스로부터 상기 제1 해시 값에 대응되어 저장되어 있는 상기 제1 의사 난수 생성 함수를 추출하는 추출부;
    상기 제1 인증 블록에 포함되어 있는 상기 현재 시점의 날짜에 대한 정보를 기초로 상기 n자리수의 날짜 값을 생성한 후, 상기 n자리수의 날짜 값을 구성하는 각 자리의 숫자를 시드로 하여 상기 제1 의사 난수 생성 함수에 하나씩 입력으로 인가함으로써, 상기 n개의 의사 난수들을 생성하고, 상기 n개의 의사 난수들 각각에 대해, 상기 n자리수의 날짜 값을 구성하는 각 자리의 숫자를 제수로 하는 모듈로 연산 - 제수로 사용되는 숫자가 0인 경우에는 피제수로 사용된 의사 난수를 연산 결과로 산출함 - 을 수행함으로써, 상기 n개의 연산 값들을 생성하는 연산 복원부;
    상기 n자리수의 날짜 값을 구성하는 각 자리의 숫자를 성분으로 갖는 n차원의 벡터와 상기 n개의 연산 값들 각각을 성분으로 갖는 n차원의 벡터 간의 합성곱을 수행하여 상기 합성곱 벡터를 생성한 후, 상기 합성곱 벡터를 구성하는 각 성분을 연접한 상기 연접 데이터를 생성하는 연접부; 및
    상기 CA 공개키를 기초로 상기 제1 인증 블록에 포함되어 있는 상기 제1 서명 데이터를 복호화하여 복호화 데이터를 생성한 후, 상기 복호화 데이터에서 상기 연접 데이터를 제거한 나머지 데이터가 상기 제1 인증 블록에 포함되어 있는 상기 공개키를 구성하는 데이터와 일치하는지 확인하여, 일치하는 것으로 확인되면, 상기 제1 서명 데이터를 정상적 서명 데이터로 검증 완료한 후, 상기 서비스 서버로 상기 결과 메시지를 전송하는 검증 처리부
    를 포함하는 인증 서버.
  5. 제1항에 있어서,
    상기 서비스 서버는
    상기 인증 서버로부터 상기 결과 메시지가 수신되는 경우, 상기 제1 인증 블록에 포함되어 있는 상기 공개키를 기초로 상기 제2 서명 데이터에 대한 서명 검증을 수행한 후, 상기 제2 서명 데이터가 정상적 서명 데이터로 검증되면, 상기 사용자 단말로 상기 제2 서명 데이터가 검증 완료되었음을 지시하는 검증 완료 메시지를 전송하는 것을 특징으로 하는 인증 서버.
  6. 인증 블록을 이용한 공개키 관리를 수행할 수 있는 인증 서버의 동작 방법에 있어서,
    사전 발급된 인증 기관(Certificate Authority: CA) 개인키와, 상기 CA 개인키에 대응하는 CA 공개키가 저장되어 있는 키 쌍 저장부를 유지하는 단계;
    사용자 단말에서 전자 서명을 위한 개인키와, 상기 개인키에 대응되는 공개키 쌍이 생성된 후, 상기 사용자 단말로부터 상기 공개키와 함께 인증 블록의 발급 요청 명령이 수신되면, 상기 CA 개인키를 기반으로 한 전자 서명을 수행하여 제1 서명 데이터를 생성한 후, 상기 공개키와 상기 제1 서명 데이터를 포함하는 제이슨 웹 토큰(JSON Web Tokens) 구조의 제1 인증 블록을 생성하는 단계;
    상기 제1 인증 블록을 상기 사용자 단말로 전송함으로써, 상기 제1 인증 블록의 발급을 완료하는 단계;
    상기 제1 인증 블록을 사전 설정된 해시 함수에 입력으로 인가하여 제1 해시 값을 생성한 후, 사전 설정된 데이터베이스 상에, 상기 제1 해시 값을 저장하고, 상기 제1 해시 값이 저장된 시점으로부터 사전 설정된 유효 기간이 경과하게 되면, 상기 데이터베이스로부터 상기 제1 해시 값을 삭제하는 단계; 및
    상기 사용자 단말에 상기 제1 인증 블록이 발급된 이후, 상기 사용자 단말이 콘텐츠 제공자(Content Provider: CP)의 서비스 서버에 접속하여, 상기 개인키를 기반으로 전자 서명된 제2 서명 데이터와 상기 제1 인증 블록을 상기 서비스 서버에 전송하면서, 상기 서비스 서버로 상기 제2 서명 데이터에 대한 검증 요청 명령을 전송함에 따라, 상기 서비스 서버로부터, 상기 제1 인증 블록과 함께 상기 제1 인증 블록에 포함된 상기 공개키에 대한 유효성 검증 요청 명령이 수신되면, 상기 제1 인증 블록을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성한 후, 상기 데이터베이스 상에 상기 제1 해시 값이 저장되어 있는지 확인하여, 상기 제1 해시 값이 저장되어 있는 것으로 확인되면, 상기 CA 공개키를 기초로 상기 제1 인증 블록에 포함되어 있는 상기 제1 서명 데이터에 대한 서명 검증을 수행하여, 상기 제1 서명 데이터가 정상적 서명 데이터로 검증되면, 상기 서비스 서버로 상기 공개키가 유효함을 지시하는 결과 메시지를 전송하는 단계
    를 포함하고,
    상기 제1 인증 블록을 생성하는 단계는
    사전 설정된 복수의 의사 난수 생성 함수들이 저장되어 있는 함수 저장부를 유지하는 단계;
    상기 사용자 단말로부터 상기 공개키와 함께 상기 인증 블록의 발급 요청 명령이 수신되면, 현재 시점의 날짜를 확인하여, 상기 현재 시점의 날짜에 대한 n(n은 2이상의 자연수임)자리수의 날짜 값을 생성하고, 상기 복수의 의사 난수 생성 함수들 중 어느 하나인 제1 의사 난수 생성 함수를 랜덤하게 선택하는 단계;
    상기 n자리수의 날짜 값을 구성하는 각 자리의 숫자를 시드(seed)로 하여 상기 제1 의사 난수 생성 함수에 하나씩 입력으로 인가함으로써, n개의 의사 난수들을 생성하는 단계;
    상기 n개의 의사 난수들 각각에 대해, 상기 n자리수의 날짜 값을 구성하는 각 자리의 숫자를 제수로 하는 모듈로(modulo) 연산 - 제수로 사용되는 숫자가 0인 경우에는 피제수로 사용된 의사 난수를 연산 결과로 산출함 - 을 수행함으로써, n개의 연산 값들을 생성하는 단계;
    상기 n자리수의 날짜 값을 구성하는 각 자리의 숫자를 성분으로 갖는 n차원의 벡터와 상기 n개의 연산 값들 각각을 성분으로 갖는 n차원의 벡터 간의 합성곱을 수행하여 합성곱 벡터를 생성한 후, 상기 합성곱 벡터를 구성하는 각 성분을 연접한 연접 데이터와 상기 공개키를 구성하는 데이터를 서로 연접함으로써, 전자 서명용 데이터를 생성하는 단계;
    상기 CA 개인키를 기초로 상기 전자 서명용 데이터에 대한 전자 서명을 수행함으로써, 상기 제1 서명 데이터를 생성하는 단계; 및
    상기 제1 서명 데이터가 생성되면, 상기 공개키와 상기 제1 서명 데이터를 포함함과 동시에, 상기 현재 시점의 날짜에 대한 정보를 추가로 포함하는 제이슨 웹 토큰 구조의 상기 제1 인증 블록을 생성하는 단계
    를 포함하며,
    이때 상기 삭제하는 단계는
    상기 제1 인증 블록을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성한 후, 상기 데이터베이스 상에, 상기 제1 해시 값을 저장함과 동시에, 상기 제1 의사 난수 생성 함수를 상기 제1 해시 값에 대응시켜 추가로 저장하는 것을 특징으로 하는 인증 서버의 동작 방법.
  7. 삭제
  8. 삭제
  9. 제6항에 있어서,
    상기 전송하는 단계는
    상기 서비스 서버로부터, 상기 제1 인증 블록과 함께 상기 제1 인증 블록에 포함된 상기 공개키에 대한 유효성 검증 요청 명령이 수신되면, 상기 제1 인증 블록을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성한 후, 상기 데이터베이스 상에 상기 제1 해시 값이 저장되어 있는지 확인하여, 상기 제1 해시 값이 저장되어 있는 것으로 확인되면, 상기 제1 해시 값을 기초로, 상기 데이터베이스로부터 상기 제1 해시 값에 대응되어 저장되어 있는 상기 제1 의사 난수 생성 함수를 추출하는 단계;
    상기 제1 인증 블록에 포함되어 있는 상기 현재 시점의 날짜에 대한 정보를 기초로 상기 n자리수의 날짜 값을 생성한 후, 상기 n자리수의 날짜 값을 구성하는 각 자리의 숫자를 시드로 하여 상기 제1 의사 난수 생성 함수에 하나씩 입력으로 인가함으로써, 상기 n개의 의사 난수들을 생성하고, 상기 n개의 의사 난수들 각각에 대해, 상기 n자리수의 날짜 값을 구성하는 각 자리의 숫자를 제수로 하는 모듈로 연산 - 제수로 사용되는 숫자가 0인 경우에는 피제수로 사용된 의사 난수를 연산 결과로 산출함 - 을 수행함으로써, 상기 n개의 연산 값들을 생성하는 단계;
    상기 n자리수의 날짜 값을 구성하는 각 자리의 숫자를 성분으로 갖는 n차원의 벡터와 상기 n개의 연산 값들 각각을 성분으로 갖는 n차원의 벡터 간의 합성곱을 수행하여 상기 합성곱 벡터를 생성한 후, 상기 합성곱 벡터를 구성하는 각 성분을 연접한 상기 연접 데이터를 생성하는 단계; 및
    상기 CA 공개키를 기초로 상기 제1 인증 블록에 포함되어 있는 상기 제1 서명 데이터를 복호화하여 복호화 데이터를 생성한 후, 상기 복호화 데이터에서 상기 연접 데이터를 제거한 나머지 데이터가 상기 제1 인증 블록에 포함되어 있는 상기 공개키를 구성하는 데이터와 일치하는지 확인하여, 일치하는 것으로 확인되면, 상기 제1 서명 데이터를 정상적 서명 데이터로 검증 완료한 후, 상기 서비스 서버로 상기 결과 메시지를 전송하는 단계
    를 포함하는 인증 서버의 동작 방법.
  10. 제6항에 있어서,
    상기 서비스 서버는
    상기 인증 서버로부터 상기 결과 메시지가 수신되는 경우, 상기 제1 인증 블록에 포함되어 있는 상기 공개키를 기초로 상기 제2 서명 데이터에 대한 서명 검증을 수행한 후, 상기 제2 서명 데이터가 정상적 서명 데이터로 검증되면, 상기 사용자 단말로 상기 제2 서명 데이터가 검증 완료되었음을 지시하는 검증 완료 메시지를 전송하는 것을 특징으로 하는 인증 서버의 동작 방법.
  11. 제6항, 제9항 또는 제10항 중 어느 한 항의 방법을 컴퓨터와의 결합을 통해 실행시키기 위한 컴퓨터 프로그램을 기록한 컴퓨터 판독 가능 기록 매체.
  12. 제6항, 제9항 또는 제10항 중 어느 한 항의 방법을 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램.
KR1020220180528A 2022-12-21 2022-12-21 인증 블록을 이용한 공개키 관리를 수행할 수 있는 인증 서버 및 그 동작 방법 Active KR102848801B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220180528A KR102848801B1 (ko) 2022-12-21 2022-12-21 인증 블록을 이용한 공개키 관리를 수행할 수 있는 인증 서버 및 그 동작 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220180528A KR102848801B1 (ko) 2022-12-21 2022-12-21 인증 블록을 이용한 공개키 관리를 수행할 수 있는 인증 서버 및 그 동작 방법

Publications (2)

Publication Number Publication Date
KR20240098603A KR20240098603A (ko) 2024-06-28
KR102848801B1 true KR102848801B1 (ko) 2025-08-21

Family

ID=91669082

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220180528A Active KR102848801B1 (ko) 2022-12-21 2022-12-21 인증 블록을 이용한 공개키 관리를 수행할 수 있는 인증 서버 및 그 동작 방법

Country Status (1)

Country Link
KR (1) KR102848801B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN119363447B (zh) * 2024-10-24 2025-12-26 中国建设银行股份有限公司 业务处理方法、装置、设备、存储介质及程序产品

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018093407A (ja) * 2016-12-05 2018-06-14 キヤノン株式会社 システム、リソースサーバ、システムの制御方法およびプログラム
KR101985179B1 (ko) * 2017-12-26 2019-09-03 상명대학교 천안산학협력단 블록체인 기반의 ID as a Service

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102179543B1 (ko) * 2018-05-08 2020-11-18 라온시큐어(주) 블록체인 기반 디지털 신분증 및 이의 발급과 신원확인 방법 및 시스템

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018093407A (ja) * 2016-12-05 2018-06-14 キヤノン株式会社 システム、リソースサーバ、システムの制御方法およびプログラム
KR101985179B1 (ko) * 2017-12-26 2019-09-03 상명대학교 천안산학협력단 블록체인 기반의 ID as a Service

Also Published As

Publication number Publication date
KR20240098603A (ko) 2024-06-28

Similar Documents

Publication Publication Date Title
US20250286732A1 (en) Personal device security using cryptocurrency wallets
US9185111B2 (en) Cryptographic authentication techniques for mobile devices
JPH09128507A (ja) 相互認証方法
KR102218188B1 (ko) 블록체인 기반의 인증서 관리를 수행하는 노드 장치 및 그 동작 방법
KR102303431B1 (ko) 당사자 간의 전자 계약을 지원하는 블록체인 기반의 전자 계약 관리 시스템 장치 및 그 동작 방법
CN106960343B (zh) 一种电子现金安全支付方法与装置
CN113836506A (zh) 身份认证方法、装置、系统、电子设备、存储介质
KR101253683B1 (ko) 연쇄 해시에 의한 전자서명 시스템 및 방법
CN109257381A (zh) 一种密钥管理方法、系统及电子设备
CN111480316B (zh) 生成和验证密码的方法和设备
CN110719172A (zh) 区块链系统中的签名方法、签名系统以及相关设备
CN111327629A (zh) 身份验证方法、客户端和服务端
KR102848801B1 (ko) 인증 블록을 이용한 공개키 관리를 수행할 수 있는 인증 서버 및 그 동작 방법
KR20210065809A (ko) 영지식-스나크 기반의 증명 서비스를 지원하기 위한 프로토콜 관리 서버 및 그 동작 방법
CN110971403A (zh) 一种基于秘密共享公钥池的抗量子计算区块链系统和交易方法
KR102149706B1 (ko) 블록체인을 이용한 전자 서명 기반의 사용자 인증 처리 장치 및 그 동작 방법
CN111245594B (zh) 一种基于同态运算的协同签名方法及系统
CN120296714A (zh) 一种基于区块链的用户身份校验方法及系统
CN115426106B (zh) 一种身份认证方法、装置、系统、电子设备及存储介质
KR102526406B1 (ko) Nft의 대상이 되는 원본 콘텐츠 데이터에 대한 액세스를 관리하는 액세스 관리 시스템 장치 및 그 동작 방법
KR102024379B1 (ko) 생체 정보 기반의 전자 서명이 가능한 데이터 전송 장치 및 그 동작 방법
CN120258794A (zh) 虚拟资源处理方法、装置、计算机设备和存储介质
CN117938391A (zh) 多方计算数字签名装置以及方法
KR101686157B1 (ko) 인증 비밀번호 생성기 및 이를 이용한 금융거래 시스템 및 방법
KR20220144488A (ko) 온라인 상에서의 부동산 거래를 위한 전자 계약을 처리하는 부동산 중개 관리 서버 및 그 동작 방법

Legal Events

Date Code Title Description
PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

R15-X000 Change to inventor requested

St.27 status event code: A-3-3-R10-R15-oth-X000

R16-X000 Change to inventor recorded

St.27 status event code: A-3-3-R10-R16-oth-X000

D13-X000 Search requested

St.27 status event code: A-1-2-D10-D13-srh-X000

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

E13-X000 Pre-grant limitation requested

St.27 status event code: A-2-3-E10-E13-lim-X000

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

D22 Grant of ip right intended

Free format text: ST27 STATUS EVENT CODE: A-1-2-D10-D22-EXM-PE0701 (AS PROVIDED BY THE NATIONAL OFFICE)

PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

PN2301 Change of applicant

St.27 status event code: A-3-3-R10-R13-asn-PN2301

St.27 status event code: A-3-3-R10-R11-asn-PN2301

R11 Change to the name of applicant or owner or transfer of ownership requested

Free format text: ST27 STATUS EVENT CODE: A-3-3-R10-R11-ASN-PN2301 (AS PROVIDED BY THE NATIONAL OFFICE)

R13 Change to the name of applicant or owner recorded

Free format text: ST27 STATUS EVENT CODE: A-3-3-R10-R13-ASN-PN2301 (AS PROVIDED BY THE NATIONAL OFFICE)

F11 Ip right granted following substantive examination

Free format text: ST27 STATUS EVENT CODE: A-2-4-F10-F11-EXM-PR0701 (AS PROVIDED BY THE NATIONAL OFFICE)

PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U11-oth-PR1002

Fee payment year number: 1

U11 Full renewal or maintenance fee paid

Free format text: ST27 STATUS EVENT CODE: A-2-2-U10-U11-OTH-PR1002 (AS PROVIDED BY THE NATIONAL OFFICE)

Year of fee payment: 1

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

Q13 Ip right document published

Free format text: ST27 STATUS EVENT CODE: A-4-4-Q10-Q13-NAP-PG1601 (AS PROVIDED BY THE NATIONAL OFFICE)