KR102329075B1 - 복수 개의 블록체인을 통합하여 하나의 미들 블록으로 사용자 인증을 수행하는 사용자 인증 시스템 - Google Patents

복수 개의 블록체인을 통합하여 하나의 미들 블록으로 사용자 인증을 수행하는 사용자 인증 시스템 Download PDF

Info

Publication number
KR102329075B1
KR102329075B1 KR1020210122098A KR20210122098A KR102329075B1 KR 102329075 B1 KR102329075 B1 KR 102329075B1 KR 1020210122098 A KR1020210122098 A KR 1020210122098A KR 20210122098 A KR20210122098 A KR 20210122098A KR 102329075 B1 KR102329075 B1 KR 102329075B1
Authority
KR
South Korea
Prior art keywords
module
user authentication
client
blockchain
compatible
Prior art date
Application number
KR1020210122098A
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 KR1020210122098A priority Critical patent/KR102329075B1/ko
Application granted granted Critical
Publication of KR102329075B1 publication Critical patent/KR102329075B1/ko
Priority to PCT/KR2022/006125 priority patent/WO2022240027A1/ko

Links

Images

Classifications

    • H04L67/2838
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0815Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1087Peer-to-peer [P2P] networks using cross-functional networking aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/567Integrating service provisioning from a plurality of service providers
    • 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
    • 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
    • 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/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • 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
    • 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
    • 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/40Network security protocols
    • H04L2209/38

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Accounting & Taxation (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Power Engineering (AREA)

Abstract

일 실시예에 따른 복수 개의 블록체인 네트워크를 통합 연결한 미들 블록 시스템은, 적어도 하나 이상의 클라이언트와 연동되어, 상기 클라이언트로부터 요청되는 신호를 수신하며, API 서비스를 제공하는 미들 웨어 모듈 및 복수 개의 블록체인 플랫폼과 상기 미들 웨어 모듈을 상호 연결시켜주는 호환 모듈부;를 포함하고, 상기 호환 모듈부는, 상기 미들 웨어 모듈의 코드(code)와 상기 미들 웨어 모듈과 연결되어 있는 블록체인 플랫폼의 코드(code)가 상호 연동될 수 있도록 호환 역할을 수행하는 복수 개의 호환 모듈을 포함할 수 있다.

Description

복수 개의 블록체인을 통합하여 하나의 미들 블록으로 사용자 인증을 수행하는 사용자 인증 시스템{A user authentication system that integrates multiple blockchains and performs user authentication with one middle block}
본 발명은 복수 개의 블록체인을 통합하여 하나의 미들 블록으로 사용자 인증을 수행하는 사용자 인증 시스템에 관한 발명으로서, 보다 상세하게는 블록체인 네트워크와 연동되어 있는 중간 호환 모듈을 이용하여 클라이언트에게 블록체인에 기반한 API 서비스를 유용하게 제공해주는 기술에 관한 발명이다.
블록체인(Blockchain)은 분산 데이터 저장기술의 한 형태를 의미한다. 지속적으로 변경되는 데이터를 모든 참여 노드에기록한 변경 리스트로서 분산 노드의 운영자에 의한 임의 조작이 불가능하도록 고안되었다.
즉, 관리대상 데이터를 ‘블록’(소규모 데이터들이 P2P 방식을 기반으로 생성된 체인 형태의 연결고리) 기반 분산 데이터 저장 환경에 저장하여 누구라도 임의로 수정할 수 없고 누구나 변경의 결과를 열람할 수 있는 분산 컴퓨팅 기술 기반의 원장 관리 기술을 의미하며, 대표적으로 블록체인 기술을 활용한 구현 사례로는 비트코인, 이더리움 등 다양하게 존재한다.
블록체인 기술이 제시된 이후 관련 기술의 계속 발전을 함으로써, 현재 블록체인 기술의 구현은 산업 전반에 걸쳐 높은 수준에서 범용화가 되었으며, 관련기술을 활용한 산업 현장의 변화도 발 빠르게 이루어져 사회 곳곳에서 블록체인을 활용한 개량기술들이 활약하고 있다.
블록체인 시스템은 크게 무 허가형 블록체인(Permissionless blockchain) 시스템과 허가형 블록체인(Permissioned blockchain) 시스템으로 구분될 수 있다. 구체적으로, 해당 네트워크에 누구든지 참여할 수 있고, 참여된 모든 구성원(노드)들이 데이터베이스에 해당하는 분산 원장을 보유하고 있는 블록체인 시스템으로 무 허가형 블록체인 시스템 이라고 하며 이는 보통 퍼블릭 블록체인(Public blockchain)이라고 불리기도 한다.
이와 달리 특정 동일 목적을 가진 기관들의 집합 또는 특정 단체만이 해당 네트워크에 참여할 수 있는 시스템을 허가형 블록체인(Permissioned blockchain)이라고 하며 이는 중앙집중화의 정도에 따라 프라이빗 블록체인(Private blockchain) 또는 컨소시엄 블록체인(Consortium Blockchain)이라고 불리기도 한다.
퍼블릭 블록체인은 대개 네트워크에서 이루어지는 트랜잭션 및 이에 대한 안전한 분산 원장에 대한 처리 및 저장에 대한 효율성 보다는 완전한 탈 중앙화를 통해 누구든지 참여할 수 있는 규모의 확장성을 가짐을 목적으로 한다.
이에 비해 허가형 블록체인은 누구든지 참여할 수 있는 퍼블릭 블록체인에 비해 규모의 확장성이 떨어지나, 퍼블릭 블록체인에 비해 트랜잭션 실행 및 이에 대한 안전한 분산 원장에 대한 처리와 저장에 대해 매우 빠른 시스템 성능과 함께 금융거래, 제조사 간 공급망, 제조사와 소비자 간 유통망, 의료 분야에서의 병원 및 기타 관련사 간의 질병 이력 공유 및 정부 주도의 공공 분야에서의 정보 공유 등에 적용할 수 있는 시스템이다.
따라서, 이러한 블록체인의 특성은 산업 여러 분야에 적용되어 활용되고 있는데 대표적으로 개인의 신원을 증명하는 방법에 있어서 탈중앙화 신원증명(Decentralized IdentifierdR, DID) 기술이 대두되고 있다. 탈중앙화 신원증명 방식의 경우 종래 기술에 따른 신원 확인 방식과 달리 중앙 시스템에 의해 통제되지 않으며 개개인이 자신의 정보에 완전한 통제권을 갖도록 하는 특징을 가지고 있기 때문에 대표적으로 블록체인 기술이 적용되는 분야라고 할 수 있다.
구체적으로, DID 는 사용자 스스로 자신의 신원정보를 관리하고 통제할 수 있도록 하는 디지털화된 신원관리 시스템으로서, 우리가 지갑에 주민등록증을 보관하고 필요할 때 꺼내 나를 증명하는 것 처럼, 사용자가 블록체인에 연동된 디지털 월렛에 내 개인정보를 담아 필요할 때 개인키를 입력해 나를 증명하는 방법으로 개인의 신원정보를 증명할 수 있다.
DID의 경우 개인정보사용 및 제공의 주체가 기업에서 개인으로 변화하고 있는 상황에서 DID를 도입하면 개인이 특정 기관과 상호작용할 때, 신원주체가 그 흐름을 통제할 수 있어 신원정보를 투명하게 관리할 수 있는 장점이 존재한다.
그러나, DID 기술의 경우 블록체인 기술의 특성상 네트워크 구조가 복잡하고 어렵다 보니 이를 비즈니스 모델(Business Model)로 적용하여 서비스를 제공하기가 어려웠으며, 종래 기술의 경우 대부분 퍼블릭 블록체인을 이용하여 DID 기술을 적용하다 보니, 퍼블릭 블록체인의 특성상 오라클(oracle) 및 보안 문제가 많이 발생하는 문제점이 존재하였다.
대한민국 공개특허 10-2019-0065345 - 증명서 및 신원 검증 방법 및 장치
따라서, 일 실시예에 따른 복수 개의 블록체인을 통합하여 하나의 미들 블록으로 사용자 인증을 수행하는 사용자 인증 시스템은 상기 설명한 문제점을 고안하기 위한 개발된 발명으로서, 블록체인 네트워크와 연동되어 있는 중간 호환 모듈을 이용하여 클라이언트에게 블록체인에 기반한 API 서비스를 유용하게 제공해주는 기술에 관한 발명이다.
보댜 구체적으로는, Kafka 모듈을 이용하여 여러 블록체인과 애플리케이션간에 용이하게 데이터를 교환할 수 있도록 하는 플랫폼(Platform)을 제공함으로써, 종래 기술에 따른 프로그램 및 어플리케이션 등이 용이하게 블록체인 플랫폼과 연결될 수 있도록 하는데 그 목적이 있다.
또한, 일 실시예에 따른 복수 개의 블록체인을 통합하여 하나의 미들 블록으로 API 서비스를 제공하는 방법과 장치 및 이를 이용한 신원 증명 방법은 허가형 블록체인과 DID 비즈니스 모델과의 상호 연결을 용이하게 하면서 보안 문제를 해결할 수 있는 미들 블록을 제공하는데 그 목적이 있다.
보다 구체적으로는, 미들 블록에 증명 레이어를 추가하여 블록체인 네트워크 상에서 발생할 수 있는 오라클(Oracle) 문제를 해결하여 보다 안정적인 DID 서비스를 제공하는데 그 목적이 존재한다.
일 실시예에 따른 복수 개의 블록체인을 통합하여 하나의 미들 블록으로 사용자 인증을 수행하는 사용자 인증 시스템은 적어도 하나 이상의 클라이언트와 연동되어, 상기 클라이언트로부터 요청되는 신호를 수신하며, API 서비스를 제공하는 미들 웨어 모듈, 상기 미들 웨어 모듈이 상기 클라이언트로부터 상기 클라이언트의 사용자에 대한 신원 검증 요청 신호를 수신한 경우 상기 사용자에 대한 사용자 인증을 수행하는 신원 검증 모듈 및 복수 개의 블록체인 플랫폼과 상기 미들 웨어 모듈을 상호 연결시켜주는 호환 모듈부를 포함하고, 상기 호환 모듈부는, 상기 미들 웨어 모듈의 코드(code)와 상기 미들 웨어 모듈과 연결되어 있는 블록체인 플랫폼의 코드(code)가 상호 연동될 수 있도록 호환 역할을 수행하는 복수 개의 호환 모듈을 포함할 수 있다.
상기 신원 검증 모듈은, 생체 정보를 기반으로 한 생체 인증 방법 또는 은행 계좌 인증 방법으로 상기 사용자 인증을 수행할 수 있다.
상기 미들 웨어 모듈은, 상기 클라이언트로부터 상기 사용자에 대한 신원 검증 요청을 수신한 경우, 상기 사용자에 대한 key pair를 생성하고, 생성된 상기 key pair를 상기 사용자의 아이디 및 비빌번호와 결합하여 데이터베이스부에 암호화된 형식으로 저장할 수 있다.
상기 미들 웨어 모듈은, 상기 key pair와 대응되는 아이디를 가진 JWE 토큰을 생성하고, 생성된 상기 JWE 토큰은 상기 클라이언트로 송신할 수 있다.
상기 미들 웨어 모듈은, 상기 호환 모듈부와 데이터를 송신하고 수신하는 카프카(Kafka) 모듈 및 상기 클라이언트에게 상기 카프카 모듈로부터 받은 데이터를 기초로 API 서비스를 제공하는 FACADE 모듈을 포함할 수 있다.
일 실시예에 따른 복수 개의 블록체인을 통합하여 하나의 미들 블록으로 사용자 인증을 수행하는 사용자 인증 시스템은 어플리케이션 및 프로그램 등의 기존 시스템과 블록체인 플랫폼을 용이하게 연결해줌으로써, 기존 시스템이 빠르고 쉽게 블록체인 기반 어플리케이션을 생성하는 것을 돕는 서비스를 제공할 수 있는 효과가 존재한다. 따라서, 블록체인 서비스를 제공하기 위해 처음부터 블록체인을 위한 서비스를 제작할 필요 없이, 본 발명을 이용하여 생성된 API를 이용하여 블록체인 기반의 서비스를 사용자에게 쉽게 제공할 수 있는 장점이 존재한다.
또한, 본 발명의 경우 정부에서 발급하는 신분증을 기반으로 한 비대면 생체인식 지문 검증과, 은행 계좌 이체를 통한 검증을 통해 사용자의 신원을 검증하므로, 블록체인 플랫폼에서 빈번하게 발생하는 오라클(Oracle) 문제를 해결해 시스템의 보안성과 신뢰성을 높일 수 있는 장점이 존재한다.
또한, 본 발명에 따를 경우, DID 기술을 용이하게 블록체인 플랫폼에 적용시킬 수 있어, DID 문서에 저장된 사용자들의 자세한 생체정보와 같이 탈중앙화된 신원을 사용자에게 제공할 수 있는 장점이 존재하며, DID와 허가형 블록체인 네트워크를 위한 상호 호환성을 제공할 수 있는 장점이 있다.
도 1은 본 발명의 일 실시예에 따른 미들 블록(Middle Block) 시스템의 일부 구성 요소를 도시한 블록도이다.
도 2는 본 발명의 일 실시예에 따른 미들 웨어 모듈의 일부 구성 요소를 도시한 블록도이다.
도 3은 본 발명의 일 실시예에 따른 블록체인 네트워크를 이용한 신원 증명 시스템의 전체 구성도를 도시한 도면이다.
도 4는 본 발명의 일 실시예에 따라 검증 모듈에 수행되는 프로세서에 대한 순서를 도시한 순서도이다.
도 5는 본 발명의 일 실시예에 따라 미들 웨어 모듈에 수행되는 프로세서에 대한 순서를 도시한 순서도이다.
도 6은 본 발명의 일 실시예에 따라 제1모듈에서 수행되는 프로세서에 대한 순서를 도시한 순서도이다
도 7은 본 발명의 일 실시예 따라 미들 블록이 제공할 수 있는 서비스를 간략적으로 도시한 도면이다.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 본 발명의 효과 및 특징, 그리고 그것들을 달성하는 방법은 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 다양한 형태로 구현될 수 있다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예들을 상세히 설명하기로 하며, 도면을 참조하여 설명할 때 동일하거나 대응하는 구성 요소는 동일한 도면부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
이하의 실시예에서, 제1, 제2 등의 용어는 한정적인 의미가 아니라 하나의 구성 요소를 다른 구성 요소와 구별하는 목적으로 사용되었다.
이하의 실시예에서, 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
이하의 실시예에서, 포함하다 또는 가지다 등의 용어는 명세서상에 기재된 특징, 또는 구성요소가 존재함을 의미하는 것이고, 하나 이상의 다른 특징들 또는 구성요소가 부가될 가능성을 미리 배제하는 것은 아니다.
이하의 실시예에서, 막, 영역, 구성 요소 등의 부분이 다른 부분 위에 또는 상에 있다고 할 때, 다른 부분의 바로 위에 있는 경우뿐만 아니라, 그 중간에 다른 막, 영역, 구성 요소 등이 개재되어 있는 경우도 포함한다.
도면에서는 설명의 편의를 위하여 구성 요소들이 그 크기가 과장 또는 축소될 수 있다. 예컨대, 도면에서 나타난 각 구성의 크기 및 두께는 설명의 편의를 위해 임의로 나타내었으므로, 본 발명이 반드시 도시된 바에 한정되지 않는다.
본 발명의 명칭은, 복수 개의 블록체인을 통합하여 하나의 미들 블록으로 API 서비스를 제공하는 방법과 장치 및 이를 이용한 신원 증명 방법은, 이하 설명의 편의를 위해 복수 개의 블록체인을 통합하여 하나의 미들 블록으로 API 서비스를 제공하는 장치(100)는 미들 블록(100)이라 지징하여 설명하도록 한다.
도 1은 본 발명의 일 실시예에 따른 미들 블록(Middle Block) 시스템의 일부 구성 요소를 도시한 블록도이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 미들 블록 시스템(1)은 호환 모듈부(200)를 포함하고 있는 미들 블록(100)과 미들 블록(100)로부터 API 서비스를 제공 받을 수 있는 클라이어트(10) 및 미들 블록(100)과 연동되어 있는 복수 개의 블록체인 플랫폼(300)을 포함할 수 있다.
미들 블록(100)의 미들 웨어 모듈(110)은 클라이어트(10)와 호환 모듈(200)을 이어 주는 중간 역할을 하는 구성 요소로서, Kafka 모듈(113)에 의해 구현될 수 있다. Kafka 모듈(113)에 대해서는 도 2에서 후술하도록 한다.
호환 모듈부(200)는 미들 웨어 모듈(110)의 코드와 복수 개의 블록체인 플랫폼(300) 사이의 코드가 상호 호환 될 수 있도록하는 호환 모듈 역할을 할 수 있다. 일반적으로, 클라이언트(10)에 API 서비스를 제공하는 위해서는, 클라이언트(10)단과 연결되어 있는 미들 웨어 모듈(110)은 그 특성상 블록 체인 플랫폼(300)와 코드가 통일되지 않아 데이터의 송수신이 어려운 단점을 가지고 있다. 따라서, 호환 모듈(200)은 이러한 블록체인 플랫폼(300)과 미들 웨어 모듈(110)을 용이하게 연결해줌으로써, 클라이언트(10)에게 블록체인과 연계된 API 서비스를 효율적으로 제공할 수 있다. 이에 대한 설명 또한 후술하도록 한다.
블록체인 플랫폼(300)은 클라이언트(10)에게 제공하고자 하는 서비스와 연계된 많은 종류의 블록체인 플랫폼을 포함할 수 있으며, 호환 모듈(200)은 복수 개의 호환 모듈을 구비하여, 각각 1:1 로 블록체인 플랫폼과 연동될 수 있다. 즉, 블록체인 플랫폼(300)에 포함될 수 있는 블록체인의 플랫폼의 종류는 다양하므로, 호환 모듈(200)은 각각의 블록체인 플랫폼과 미들 웨어 모듈(110)의 코드가 서로 상호 호환이 될 수 있도록, 미들 블록(100)에 연결 되어 있는 블록체인 플랫폼의 개수만큼 구비될 수 있다.
예를 들어, 미들 블록(100)과 연결되어 있는 블록체인 플랫폼의 개수가 3개인 경우, 호환 모듈(200)은 상기 3개의 블록체인 플랫폼과 각각 일대일로 매칭되어 연결되는 3개의 호환 모듈(210, 220, 230)을 포함할 수 있으며, 미들 블록(100)과 연결되어 있는 블록체인 플랫폼의 개수가 5개인 경우, 호환 모듈(200)은 상기 3개의 블록체인 플랫폼과 각각 일대일로 매칭되어 연결되는 5개의 호환 모듈을 포함할 수 있다.
본 발명에 따른 제1블록체인 플랫폼(310)은 DID 기술 시스템에 맞춰, DID에 특화된 하이퍼레저 인디(Hyperledger Indy) 블록체인 플랫폼으로 전제하고, 제1 호환 모듈(210)은 하이퍼레져 인디 플랫폼(310)과 미들 웨어 모듈(110)의 코드가 서로 호환될 수 있는 역할을 수행하는 DID 메니저먼트 모듈(210)로 전제한다.
또한, 제2플랫폼(320)은 스마트 컨트랙트(smart contract, 계약 조건을 블록체인에 기록하고 조건이 충족됐을 경우 자동으로 계약이 실행되는 계약)에 적합한 하이퍼레저 패브릭(Hyperledger Fabric) 블록체인 플랫폼으로 전제하고, 제2호환 모듈(220)은 하이러져 패브릭 플랫폼(320)과 미들 웨어 모듈(110)의 코드가 서로 호환될 수 있는 역할을 수행하는 패브릭 토큰 메니저먼트 모듈(220)로 전제하여 설명한다.
여기서, 하이퍼레저(Hyperledger)는 블록체인 네트워크에 관한 오픈소스 커뮤니티로 기업수준(enterprise-level)의 블록체인 배포를 위한 프레임워크, 툴과 라이브러리로 구성된 개발 제품군을 제공하는 커뮤니티를 의미하며, 하이퍼레저 인디 블록체인 플랫폼과 하이퍼레져 패브릭 블록체인 플랫폼은 상기 커뮤니티에서 오픈 소스로 제공되는 블록체인의 플랫폼이다.
하이퍼레져 인디(Hyperledger Indy) 플랫폼은 허가형 블록체인으로서, 블록체인 기반의 자기주권형 신원 (SSI)을 구현하기 위한 툴(tool), 아티팩트(artifact), 라이브러리(library)와 재사용 가능한 컴포넌트(Component)를 제공하는 블록체인 플랫폼이다. 하이퍼레져 인디 플랫폼은 다른 블록체인 플랫폼과 호환 가능하며 탈중앙화 신원증명 (DID)를 구현하기 위한 단독 플랫폼으로 사용될 수 있다. 또한, 하이퍼레져 인디 플랫폼은 분산원장기술을 통해 최종 사용자가 본인의 프라이버시와 신원 공개에 관련된 결정의 관리자가 될 수 있도록 할 수 있다. 따라서, 하이퍼레져 인디 플랫폼은 안전한 금융 생태계를 제공하고 강력한 신원 솔루션의 역할을 할 수 있는 플랫폼에 해당한다.
하이퍼레져 패브릭(Hyperledger Fabric)은 허가형 블록체인 기반구조로, 네트워크 내 노드간 역할을 표현하고, 스마트 컨트랙트(패브릭에서는 "체인코드"로 호칭됨)를 실행할 수 있는 블록체인 플랫폼으로서, 구성가능한 합의(configurable consensus)와 멤버십 서비스가 있는 모듈형 구조를 제공할 수 있다.
구체적으로, 하이퍼레져 패브릭 플랫폼은 기본적으로 세가지 노드(peer 노드, orderdr 노드, MSP)로 구성될 수 있다. “피어 노드 (Peer nodes)” 는 체인코드를 실행하고, 원장 데이터에 접근하며 트랜잭션을 보증하는 역할을 수 행할 수 있다. 두번째는 “Orderer 노드”로, 블록체인의 안정성을 보장하고 보증된(endorsed) 트랜잭션들을 네트워크의 peer들에게 전달하는 역할을 할 수있다. 그리고 세번째 MSP (Membership Service Providers)는, 각 노드들이 인증기관 (CA)의 역할을 수행할 수 있도록 하고, 멤버의 신원과 역할을 증명하기 위해 사용된다.
하이퍼레져 패브릭은 다양한 합의 알고리즘을 구현하지만, 플랫폼과 일반적으로 사용되는 합의 알고리즘은 PBFT (Practical Byzantine Fault Tolerance)로 구현된다.
도 1에서는 제1호환 모듈(210) 하이퍼레져 인드 블록체인과 관련된 호환 모듈로서 설명하고, 제2호환 모듈(220)은 하이퍼레져 퍼브를 블록체인과 관련된 호환 모듈로 설명하였지만, 이는 일 실시예에 불과하고, 본 발명의 실시예에 따른 호환 모듈은 연결되는 블록체인 플랫폼에 따라 다양하게 변경되어 설정될 수 있다. 즉, 호환 모듈부(200)은 호환 모듈들은, 연결하고자 하는 블록체인 플랫폼의 특성을 반영하여, 블록체인 플랫폼(300)과 미들 웨어 모듈(110)을 용이하게 연결해줄 수 있다. 일 예로 블록체인 플랫폼에서 공개한 오픈 소스를 이용하여 미들 웨어 모듈(110)의 엔드 포인트(end point)와 블록체인 플랫폼(300)의 엔드 포인트를 연결하는 방법으로 호환 모듈이 생성될 수 있다.
도 2는 본 발명의 일 실시예에 따른 미들 웨어 모듈의 일부 구성 요소를 도시한 블록도이다.
도 2를 참조하면, 미들 웨어 모듈(110)은 복수 개의 클라이언트(10)로부터 요청되는 신호들을 수신하며, API 서비스를 제공하는 FACADE 모듈(111), 블록체인 플랫폼(300)과 관련된 사용자의 키를 포함한 각종 데이터가 저장될 수 있는 미들 레이어(112) 및 클라이언트(10)가 요청한 신호를 호환 모듈(200)로 송신하고, 호환 모듈(200)이 플랫폼(300)를 통해 수신한 데이터를 호환 모듈(200)로부터 수신하는 카프카 모듈(113)을 포함할 수 있다.
카프카 모듈은 아파치 카프카(Apache KAFKA)라는 대용량 실시간 로그 처리 시스템으로서, 발행/구독(Publish/Subscribe) 패러다임을 사용하여 처리하는 메시지 큐잉(Queueing) 시스템을 의미하며, 여기서 메시지 시스템은 로그 데이터, 이벤트 메시지 등 API로 호출할 때 송신하는 데이터들을 처리하는 시스템을 의미한다.
아파치 카프카는 LinkedIn에서 개발된 분산 메시징 시스템으로써 2011년에 오픈소스로 공개되었으며, 대용량의 실시간 로그처리에 특화된 아키텍처 설계를 통하여 기존 메시징 시스템보다 우수한 TPS를 보여주고 있다.
구체적으로, 카프카(KAFKA)는 발행-구독(publish-subscribe) 모델을 기반으로 동작하며. 크게 프로듀서(producer), 컨슈머(consumer), 브로커(broker)로 구성된다. 카프카의 브로커는 토픽(topic)을 기준으로 메시지를 관리한다. 프로듀서는 특정 토픽의 메시지를 생성한 뒤, 해당 메시지를 브로커에 전달한다. 그리고, 브로커가 전달받은 메시지를 토픽 별로 분류하여 쌓아놓으면, 해당 토픽을 구독하는 컨슈머(consumer)들이 메시지를 가져가서 처리하게 된다.
카프카는 확장성(scale-out)과 고가용성(high availability)을 위하여 브로커(broker)들이 클러스터로 구성되어 동작하도록 설계되어 있으며, 심지어 브로커(broker)가 1개 밖에 없을 때에도 클러스터로써 동작한다.
카프카는 플랫폼 간에 데이터를 송수신하는 데 유용한 소프트웨어로, 분산 시스템을 기본으로 설계되었기 때문에, 기존 메시징 시스템에 비해 분산 및 복제 구성을 손쉽게 할 수 있다. 또한, 프로듀셔가 브로커에서 다수의 메시지를 전송할 때, 각각의 메시지를 개별적으로 전송해야 하는 기존 메시징 시스템과는 달리, 카프카는 다수의 메시지를 batch 형태로 브로커에서 한 번에 송신할 수 있기 때문에 TCP/IP 라운드 트립 횟수를 감소시킬 수 있는 장점이 존재한다. 즉, 카프카는 이러한 확장성을 가지고 있기 ‹š문에 카프카 모듈을 미들 웨어 모듈(110)의 일 구성요소로 구현하는 경우 다수의 블록체인 플랫폼과 효율적으로 데이터를 송신하고 수신할 수 있는 장점이 존재한다.
카프카 모듈(113)은 이러한 확정성을 이용하여 여러 개의 블록체인 플랫폼과 데이터를 송신하고 수신할 수 있다. 구체적으로, 카프카 모듈(113)은 카프카 모듈(113)의 코드와 제1블록체인 플랫폼(310)의 코드를 상호 호환시켜주는 제1모듈(210)을 이용하여 제1블록체인 플랫폼(310)과 데이터를 송신하고 수신할 수 있으며, 카프카 모듈(113)의 코드와 제2블록체인 플랫폼(320)의 코드를 상호 호환시켜주는 제2모듈(220)을 이용하여 제2블록체인 플랫폼(320)과 데이터를 송신하고 수신할 수 있다. 그리고 앞서 설명한 바와 같이 블록체인 플랫폼의 종류가 변하여도, 카프카 모듈(113)은 확장성이 좋기 때문에, 호환 모듈(200)을 이용하여 다른 블록체인 플랫폼과 유용하게 데이터를 송신하고 수신할 수 있다. 즉, 도 2에서는 호환 모듈(200)에 3개의 호환 모듈(210, 220, 230)만을 도시하였지만, 카프카 모듈(113)은 호환 모듈이 더 많이 존재하여도, 그 확장성으로 인해 용이하게 더 많은 호환 모듈가 데이터를 송신하고 수신 받을 수 있다. 지금까지 도면을 통해 본 발명에 따른 미들 블록의 구성 요소에 대해 알아보았다. 이하 도면을 통해 본 발명에 따라 실시될 수 있는 신원 증명 방법에 대해 알아본다.
도 3은 본 발명의 일 실시예에 따른 블록체인 네트워크를 이용한 신원 증명 시스템의 전체 구성도를 도시한 도면이다.
도 3을 참조하면, 본 발명에 일 실시예에 따라 블록체인 네트워크를 이용한 신원 증명 시스템(1)은 신원 인증을 하려고 하는 사용자(Holder, 10), 사용자에 대한 검증 가능한 정보를 제공하는 신원정보 발행기관(Issuer, 20), 사용자의 인증이 필요한 검증기관(Verifier, 30) 및 사용자의 개인 정보 및 신원정보 발행기관(20)이 발급한 기관 인증서 등에 대한 정보가 저장되어 있는 블록체인 네트워크(100)를 포함할 수 있으며, 이에 따른 블록체인 네트워크(100)는 앞서 도 1에서 설명한 미들 블록(100)을 이용해 구현될 수 있다.
따라서, 일 실시예에 따른 미들 블록(100)은 도 1에 도시된 바와 같이 복수의 클라이언트(10A, 10B)로부터 신원 증명 요청과 관련된 각종 신호를 송수신하는 미들 웨어 모듈(110), 신원 증명 요청을 한 클라이언트(10A, 10B)에 대한 사용자 인증을 수행하는 검증 모듈(120) 및 복수의 블록체인 플랫폼(300)와 미들 웨어 모듈(110)의 코드가 상호 호환될 수 있는 역할을 하는 호환 모듈부(200)를 포함할 수 있다.
본 발명에 따른 블록체인 네트워크를 이용한 신원 증명 방법의 동작 순서를 알아보면 가장 처음으로 검증기관(30)이 클라이언트(10)에게 신원 정보 인증을 요청한다. (S10)
검증기관(30)으로부터 신원 정보 인증 요청을 수신한 클라이언트(10)는 신원정보 발행기관(20)에게 신원 정보 발행을 요청하고(S20), 신원정보 발행기관(20)이 블록체인 네트워크(100) 상의 분산 ID저장소에 사용자의 신원 정보를 검증할 수 있는 서명된 ID정보를 등록한다(S30).
신원정보 발행기관(20)은 클라이언트(10)에게 신원정보 발행하고 사용자는 신원정보 발행기관(20)이 서명한 내용에 대해 Counter-sign을 하여 DIDs(Key) ― DID Document(Value) 생성한다. (S40)
그 후, 사용자는 검증기관(30)에게 생성한 신원 정보를 전달한다(S50). 이때 신원정보 발행기관(20)에게 받은 신원 정보 전체(Credential-자격증명 데이터)중 인증에 필요한 일부만을 선택한 신원 정보(Presentation)를 검증기관(30)에 전달할 수 있다.
검증기관(30)은 DIDs를 통해 블록체인 네트워크(100) 상의 분산 ID저장소에 저장된 DID Document를 검증하여 신원 확인을 완료할 수 있다.
본 발명의 일 실시예에 따른 블록체인을 이용한 신원 증명 시스템의 경우, DID는 개인의 검증가능한 신원정보들(Verifiable Credentials)을 분산 네트워크에 저장해 놓고 있기 때문에 중앙화된 등록 기관의 검증이 필요하지 않다는 점에서 별도 기관의 신뢰 담보 없이도 분산 개인정보 관리 시스템을 구현하고 사용할 수 있는 탈중앙 구주를 구현한 장점이 존재한다.
또한, 신원정보 발행기관(20)이 발행한 모든 신원 정보중에서 최소한의 검증가능한 인증정보(Presentations)만을 이용하여 신원인증을 하였다는 점에서 프라이버시를 포함한 개인의 신원확인 주권을 강화시킨 효과가 존재한다.
또한, 데이터의 저장을 블록체인의 노드에 하였다는 점에서 보안성 효과가 증가한다. 블록체인의 경우 특정 노드가 DDoS 등 해킹 공격을 받더라도 다른 노드를 통해서 언제든 서비스에 접근할 수 있다는 점에서 가용성을 지니고 있다. 따라서, 한 곳에 데이터가 중앙 저장된 경우 단일 시스템의 실패가 전체 데이터의 손실로 이어지는 단일 실패 지점(Single point of failure) 위험은 분산 시스템을 기반으로 한 블록체인 상에서 발생되지 않는 장점이 존재한다.
도 4는 본 발명의 일 실시예에 따라 검증 모듈(120)에 수행되는 프로세서에 대한 순서를 도시한 순서도이다.
도 1과 도 4를 참조하면, 클라이언트(10)로부터 처음으로 신원 증명에 대한 요청 신호를 미들 웨어 모듈(110)이 수신하면, 미들 웨어 모듈(110)은 이러한 요청 신호를 신원 검증 모듈(120)로 송신한다.
신원 검증 모듈(120)은 미들 웨어 모듈(110)로부터 신원 검증 요청 신호를 수신하면(S110), 2가지 방법으로 신원 검증을 수행한다. 구체적으로, 생체 정보를 기반으로 한 생체 인증 방법(S120)과 은행 계좌를 통해 소액을 이체하는 은행 계좌 인증 방법(S130)을 통해 사용자의 신원을 확인하다.
구체적으로, 생체 정보를 기반으로 한 생체 인증 방법은 정부에서 발급하는 신분증을 기반으로 한 비대면 생체 인식 지문 검증 방법을 의미하며, 은행 계좌 인증 방법은 신원 검증 모듈(120)에 포함되어 있는 Open Bank API를 통해 계좌 이체를 확인하고 KYC(Know Your Customers) 인증 과정을 수행한다.
본 발명에 따란 신원 검증 모듈(120)에 의해 신원을 확인하는 경우 블록체인 상에서 빈번하게 발생하는 오라클(oracle) 문제를 안정적으로 해결할 수 있어, 인간 관리자 없이 블록체인 플랫폼이 안정적으로 유지될 수 있는 장점이 존재한다.
도 5는 본 발명의 일 실시예에 따라 미들 웨어 모듈(120)에 수행되는 프로세서에 대한 순서를 도시한 순서도이다.
도 5를 참조하면, 클라이언트(10)로부터 라우팅되어 들어오는 API 요청은 미들 웨어 모듈(120)이 수신하게 되며, API 요청을 수신받은 미들 웨어 모듈(120)은 사용자의 세부정보를 사용해 key pair 를 생성한다(S210).
Key pair가 생성되면 미들 웨어 모듈(120)은 사용자 ID와 해시화된 비밀번호를 결합시킨 후 결합된 정보는 데이터베이스부에 암호화된 형식으로 저장한다.(S220)
그 후 미들 웨어 모듈(120)은 key pair와 유일무이한 ID를 가진 JWE 토큰을 생성하고, 생성된 JWE 토큰은 다시 클라이언트로 송신한다. (S230)
클라이언트는 JWE 토근을 수신하였기 때문에 다시 비밀번호를 입력할 필요가 없으며, JWE 토큰의 유효기간은 다양하게 설정될 수 있으나 일 예로 24시간으로 설정될 수 있다.
그 후, 미들 웨어 모듈(120)은 사용자를 위한 DID와 블록체인 계좌를 생성할 수 있으며, DID와 계좌 비밀번호는 데이터베이스에 저장되어 있는 사용자의 private key를 활용하여 암호화될 수 있다. (S240, S250)
사용자가 사용하는 JWE 토큰은 암호화되어있기 때문에, JWE 토큰을 사용하여 미들 웨어 모듈(120)에 들어오게 되면, 이에 대한 복호화를 먼저 한 후 원장에 접근을 한다.
도 6은 본 발명의 일 실시예에 따라 제1모듈에서 수행되는 프로세서에 대한 순서를 도시한 순서도이다. 제1모듈의 경우 앞서 설명하였듯이 하이퍼레저 인디 블록체인 플랫폼(310)과 미들 웨어 모듈(110)의 코드가 상호 호환이 되도록 중간 호환 역할을 하는 구성요소로서, DID 메니지먼트 모듈로 지칭될 수 있다.
하이퍼레저 인디 블록체인 플랫폼(310)은 허가형 블록체인이기 때문에 허가를 받은 클라이언만이 하이퍼레져 인디 블록체인 플랫폼(310)의 네트워크를 이용할 수 있다. 따라서, 본 발명의 경우 허가형 블록체인 플랫폼을 이용함에 있어서 허가를 하는 방법으로 앞서 설명한 DID를 이용한다는 점에서 특징이 존재한다.
즉, 도 6을 참고하면, 클라이언트로부터 하이퍼레져 인디 블록체인 플랫폼(310) 네트워크에 진입 요청이 있는 경우 사용자 정보를 기반으로 한 DID 정보를 생성하고, 이에 대한 신원 정보를 발행하고 이를 검증하고 확인하는 방법으로(S310~S340) 탈중앙화된 신원 관리를 수행할 수 있다.
도 7은 본 발명의 일 실시예에 따라 미들 블록이 제공할 수 있는 서비스를 간략적으로 도시한 도면이다.
도 7을 참조하면, 종래 기술에 따른 래거시(legacy) 시스템, 모바일 서비스, 웹 서비스 등 종래 기술에 따른 시스템, 프로그램, 어플리케이션의 경우 그 특성상 데이터들이 중앙화 되어 있다 보니, 블록체인 플랫폼과 연동을 하기 위해서는 많은 시간과 노력이 필요하였다. 즉, 종래 기술에 따른 시스템, 프로그램, 어플레이케이션은 API 형태로 작업이 이루어지는데, 블록체인 경우 그렇지 않다 보니 이 둘을 연계하기 위해서는 많은 개발자들이 시간과 비용을 투입해야만 연계가 가능한 문제점이 존재하였다.
그러나, 일 실시예에 따른 미들 블록(100)은 블록체인 플랫폼(300)과 종래 시스템(50) 사이를 연결해주는 역할을 함으로써, 종래 시스템(50)과 블록체인 플랫폼(300) 사이의 연계를 용이하게 도와줄 수 있다. 구체적으로, 도 7에 도시된 바와 같이 미들 블록(100)과 연계되어 있는 서비스 제공부(101, 102, 103) 종래 시스템(50)의 구성하는 각각의 래거시 시스템, 모바일 서비스, 웹 서비스에 블록체인 시스템과 유용하게 연계할 수 있는 API 제공하기 때문에, 종래 시스템(50)이 보다 용이하게 블록체인 플랫폼(300)과 연계될 수 있느 장점이 존재한다.
도 7에 도시된 블록체인 플랫폼의 EOS(301), DID(302), IoT(303), Fabric(304), Payment(305)는 연계될 수 있는 블록체인 플랫폼 중에 일 예를 도시한 것 뿐이며, 본 발명에 따른 미들 블록(100)은 앞서 살펴본 바와 같이 Kafka 모듈(113)을 이용하여 구현되기 때문에, 확장성이 좋아 여러 블록체인 플랫폼을 통일된 API에서 제공할 수 있는 장점이 존재한다.
일 실시예에 따른 복수 개의 블록체인을 통합하여 하나의 미들 블록으로 API 서비스를 제공하는 방법과 장치 및 이를 이용한 신원 증명 방법은, 어플리케이션 및 프로그램 등의 기존 시스템과 블록체인 플랫폼을 용이하게 연결해줌으로써, 기존 시스템이 빠르고 쉽게 블록체인 기반 어플리케이션을 생성하는 것을 돕는 서비스를 제공할 수 있는 효과가 존재한다. 따라서, 블록체인 서비스를 제공하기 위해 처음부터 블록체인을 위한 서비스를 제작할 필요 없이, 본 발명을 이용하여 생성된 API를 이용하여 블록체인 기반의 서비스를 사용자에게 쉽게 제공할 수 있는 장점이 존재한다.
또한, 본 발명의 경우 정부에서 발급하는 신분증을 기반으로 한 비대면 생체인식 지문 검증과, 은행 계좌 이체를 통한 검증을 통해 사용자의 신원을 검증하므로, 블록체인 플랫폼에서 빈번하게 발생하는 오라클(Oracle) 문제를 해결해 시스템의 보안성과 신뢰성을 높일 수 있는 장점이 존재한다.
또한, 본 발명에 따를 경우, DID 기술을 용이하게 블록체인 플랫폼에 적용시킬 수 있어, DID 문서에 저장된 사용자들의 자세한 생체정보와 같이 탈중앙화된 신원을 사용자에게 제공할 수 있는 장점이 존재하며, DID와 허가형 블록체인 네트워크를 위한 상호 호환성을 제공할 수 있는 장점이 있다.
한편, 본 명세서에 기재된 "~부"로 기재된 구성요소들, 유닛들, 모듈들, 컴포넌트들 등은 함께 또는 개별적이지만 상호 운용 가능한 로직 디바이스들로서 개별적으로 구현될 수 있다. 모듈들, 유닛들 등에 대한 서로 다른 특징들의 묘사는 서로 다른 기능적 실시예들을 강조하기 위해 의도된 것이며, 이들이 개별 하드웨어 또는 소프트웨어 컴포넌트들에 의해 실현되어야만 함을 필수적으로 의미하지 않는다. 오히려, 하나 이상의 모듈들 또는 유닛들과 관련된 기능은 개별 하드웨어 또는 소프트웨어 컴포넌트들에 의해 수행되거나 또는 공통의 또는 개별의 하드웨어 또는 소프트웨어 컴포넌트들 내에 통합될 수 있다.
특정한 순서로 작동들이 도면에 도시되어 있지만, 이러한 작동들이 원하는 결과를 달성하기 위해 도시된 특정한 순서, 또는 순차적인 순서로 수행되거나, 또는 모든 도시된 작동이 수행되어야 할 필요가 있는 것으로 이해되지 말아야 한다. 임의의 환경에서는, 멀티태스킹 및 병렬 프로세싱이 유리할 수 있다. 더욱이, 상술한 실시예에서 다양한 구성요소들의 구분은 모든 실시예에서 이러한 구분을 필요로 하는 것으로 이해되어서는 안되며, 기술된 구성요소들이 일반적으로 단일 소프트웨어 제품으로 함께 통합되거나 다수의 소프트웨어 제품으로 패키징될 수 있다는 것이 이해되어야 한다.
컴퓨터 프로그램(프로그램, 소프트웨어, 소프트웨어 어플리케이션, 스크립트 또는 코드로도 알려져 있음)은 컴파일되거나 해석된 언어나 선험적 또는 절차적 언어를 포함하는 프로그래밍 언어의 어떠한 형태로도 작성될 수 있으며, 독립형 프로그램이나 모듈, 컴포넌트, 서브루틴 또는 컴퓨터 환경에서 사용하기에 적합한 다른 유닛을 포함하여 어떠한 형태로도 전개될 수 있다.
부가적으로, 본 특허문헌에서 기술하는 논리 흐름과 구조적인 블럭도는 개시된 구조적인 수단의 지원을 받는 대응하는 기능과 단계의 지원을 받는 대응하는 행위 및/또는 특정한 방법을 기술하는 것으로, 대응하는 소프트웨어 구조 및 알고리즘과 그 등가물을 구축하는 데에도 사용 가능하다.
본 명세서에서 기술하는 프로세스와 논리 흐름은 입력 데이터 상에서 작동하고 출력을 생성함으로써 기능을 수행하기 위하여 하나 이상이 컴퓨터 프로그램을 실행하는 하나 이상이 프로그래머블 프로세서에 의하여 수행 가능하다.
본 기술한 설명은 본 발명의 최상의 모드를 제시하고 있으며, 본 발명을 설명하기 위하여, 그리고 당업자가 본 발명을 제작 및 이용할 수 있도록 하기 위한 예를 제공하고 있다. 이렇게 작성된 명세서는 그 제시된 구체적인 용어에 본 발명을 제한하는 것이 아니다.
이상에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자 또는 해당 기술 분야에 통상의 지식을 갖는 자라면, 후술될 특허청구범위에 기재된 본 발명의 사상 및 기술 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다. 따라서, 본 발명의 기술적 범위는 명세서의 상세한 설명에 기재된 내용으로 한정되는 것이 아니라 특허청구범위에 의해 정해져야 할 것이다.
100: 미들 블록
110: 미들 웨어 모듈
120; 신원 검증 모듈
200: 호환 모듈부
300: 블록체인 플랫폼

Claims (5)

  1. 적어도 하나 이상의 클라이언트와 연동되어, 상기 클라이언트로부터 요청되는 신호를 수신하며, API 서비스를 제공하는 미들 웨어 모듈;
    상기 미들 웨어 모듈이 상기 클라이언트로부터 상기 클라이언트의 사용자에 대한 신원 검증 요청 신호를 수신한 경우 상기 사용자에 대한 사용자 인증을 수행하는 신원 검증 모듈; 및
    복수 개의 블록체인 플랫폼과 상기 미들 웨어 모듈을 상호 연결시켜주는 호환 모듈부;를 포함하고,
    상기 호환 모듈부는,
    상기 미들 웨어 모듈의 코드(code)와 상기 미들 웨어 모듈과 연결되어 있는 블록체인 플랫폼의 코드(code)가 상호 연동될 수 있도록 호환 역할을 수행하는 복수 개의 호환 모듈;을 포함하는 것을 특징으로 하는,
    복수 개의 블록체인을 통합하여 하나의 미들 블록으로 사용자 인증을 수행하는 사용자 인증 시스템.
  2. 제 1항에 있어서,
    상기 신원 검증 모듈은,
    생체 정보를 기반으로 한 생체 인증 방법 또는 은행 계좌 인증 방법으로 상기 사용자 인증을 수행하는 것을 특징으로 하는,
    복수 개의 블록체인을 통합하여 하나의 미들 블록으로 사용자 인증을 수행하는 사용자 인증 시스템.
  3. 제 2항에 있어서,
    상기 미들 웨어 모듈은,
    상기 클라이언트로부터 상기 사용자에 대한 신원 검증 요청을 수신한 경우, 상기 사용자에 대한 key pair를 생성하고, 생성된 상기 key pair를 상기 사용자의 아이디 및 비빌번호와 결합하여 데이터베이스부에 암호화된 형식으로 저장하는 것을 특징으로 하는,
    복수 개의 블록체인을 통합하여 하나의 미들 블록으로 사용자 인증을 수행하는 사용자 인증 시스템.
  4. 제 3항에 있어서,
    상기 미들 웨어 모듈은,
    상기 key pair와 대응되는 아이디를 가진 JWE 토큰을 생성하고, 생성된 상기 JWE 토큰은 상기 클라이언트로 송신하는 것을 특징으로 하는,
    복수 개의 블록체인을 통합하여 하나의 미들 블록으로 사용자 인증을 수행하는 사용자 인증 시스템.
  5. 제 4항에 있어서,
    상기 미들 웨어 모듈은,
    상기 호환 모듈부와 데이터를 송신하고 수신하는 카프카(Kafka) 모듈 및 상기 클라이언트에게 상기 카프카 모듈로부터 받은 데이터를 기초로 API 서비스를 제공하는 FACADE 모듈을 포함하는 것을 특징으로 하는,
    복수 개의 블록체인을 통합하여 하나의 미들 블록으로 사용자 인증을 수행하는 사용자 인증 시스템.
KR1020210122098A 2021-05-10 2021-09-13 복수 개의 블록체인을 통합하여 하나의 미들 블록으로 사용자 인증을 수행하는 사용자 인증 시스템 KR102329075B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020210122098A KR102329075B1 (ko) 2021-05-10 2021-09-13 복수 개의 블록체인을 통합하여 하나의 미들 블록으로 사용자 인증을 수행하는 사용자 인증 시스템
PCT/KR2022/006125 WO2022240027A1 (ko) 2021-05-10 2022-04-28 복수 개의 블록체인을 통합하여 하나의 미들 블록으로 사용자 인증을 수행하는 사용자 인증 시스템

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020210060307A KR102304046B1 (ko) 2021-05-10 2021-05-10 복수 개의 블록체인을 통합하여 하나의 미들 블록으로 api 서비스를 제공하는 방법과 장치 및 이를 이용한 신원 증명 방법
KR1020210122098A KR102329075B1 (ko) 2021-05-10 2021-09-13 복수 개의 블록체인을 통합하여 하나의 미들 블록으로 사용자 인증을 수행하는 사용자 인증 시스템

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020210060307A Division KR102304046B1 (ko) 2021-05-10 2021-05-10 복수 개의 블록체인을 통합하여 하나의 미들 블록으로 api 서비스를 제공하는 방법과 장치 및 이를 이용한 신원 증명 방법

Publications (1)

Publication Number Publication Date
KR102329075B1 true KR102329075B1 (ko) 2021-11-19

Family

ID=77926540

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020210060307A KR102304046B1 (ko) 2021-05-10 2021-05-10 복수 개의 블록체인을 통합하여 하나의 미들 블록으로 api 서비스를 제공하는 방법과 장치 및 이를 이용한 신원 증명 방법
KR1020210122097A KR102347337B1 (ko) 2021-05-10 2021-09-13 복수 개의 블록체인 네트워크를 통합 연결한 미들 블록 시스템
KR1020210122098A KR102329075B1 (ko) 2021-05-10 2021-09-13 복수 개의 블록체인을 통합하여 하나의 미들 블록으로 사용자 인증을 수행하는 사용자 인증 시스템

Family Applications Before (2)

Application Number Title Priority Date Filing Date
KR1020210060307A KR102304046B1 (ko) 2021-05-10 2021-05-10 복수 개의 블록체인을 통합하여 하나의 미들 블록으로 api 서비스를 제공하는 방법과 장치 및 이를 이용한 신원 증명 방법
KR1020210122097A KR102347337B1 (ko) 2021-05-10 2021-09-13 복수 개의 블록체인 네트워크를 통합 연결한 미들 블록 시스템

Country Status (2)

Country Link
KR (3) KR102304046B1 (ko)
WO (3) WO2022240026A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022240027A1 (ko) * 2021-05-10 2022-11-17 주식회사 시티랩스 복수 개의 블록체인을 통합하여 하나의 미들 블록으로 사용자 인증을 수행하는 사용자 인증 시스템

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102442694B1 (ko) * 2022-03-22 2022-09-08 정원우 인력 매칭 시스템

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180211202A1 (en) * 2017-01-26 2018-07-26 Eugenio S. YNION, JR. Method, system, apparatus, and program for real-time and online freight management
KR20190065345A (ko) 2017-10-20 2019-06-11 알리바바 그룹 홀딩 리미티드 증명서 및 신원 검증 방법 및 장치
KR20200061163A (ko) * 2018-11-23 2020-06-02 최운철 가상화폐를 사용하는 블록체인통합 미들웨어 시스템
KR102141771B1 (ko) * 2017-06-27 2020-08-06 알리바바 그룹 홀딩 리미티드 멀티 블록체인 네트워크 데이터 처리 방법, 장치 및 서버
KR102214647B1 (ko) * 2019-11-26 2021-02-15 부산대학교 산학협력단 이종 사물인터넷 플랫폼 장치 간 상호 연동을 위한 인터페이스 제공 방법 및 이종 사물인터넷 플랫폼 장치 간 상호 연동을 위한 인터페이스 제공 시스템

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107147704B (zh) * 2017-04-21 2019-12-13 杭州趣链科技有限公司 一种面向区块链的通用服务中间件***
KR102150210B1 (ko) * 2019-09-16 2020-09-01 (주) 모로보기 블록체인 네트워크
KR102304046B1 (ko) * 2021-05-10 2021-09-23 주식회사 시티랩스 복수 개의 블록체인을 통합하여 하나의 미들 블록으로 api 서비스를 제공하는 방법과 장치 및 이를 이용한 신원 증명 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180211202A1 (en) * 2017-01-26 2018-07-26 Eugenio S. YNION, JR. Method, system, apparatus, and program for real-time and online freight management
KR102141771B1 (ko) * 2017-06-27 2020-08-06 알리바바 그룹 홀딩 리미티드 멀티 블록체인 네트워크 데이터 처리 방법, 장치 및 서버
KR20190065345A (ko) 2017-10-20 2019-06-11 알리바바 그룹 홀딩 리미티드 증명서 및 신원 검증 방법 및 장치
KR20200061163A (ko) * 2018-11-23 2020-06-02 최운철 가상화폐를 사용하는 블록체인통합 미들웨어 시스템
KR102214647B1 (ko) * 2019-11-26 2021-02-15 부산대학교 산학협력단 이종 사물인터넷 플랫폼 장치 간 상호 연동을 위한 인터페이스 제공 방법 및 이종 사물인터넷 플랫폼 장치 간 상호 연동을 위한 인터페이스 제공 시스템

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022240027A1 (ko) * 2021-05-10 2022-11-17 주식회사 시티랩스 복수 개의 블록체인을 통합하여 하나의 미들 블록으로 사용자 인증을 수행하는 사용자 인증 시스템

Also Published As

Publication number Publication date
WO2022240027A1 (ko) 2022-11-17
KR102347337B1 (ko) 2022-01-06
WO2022240268A1 (ko) 2022-11-17
WO2022240026A1 (ko) 2022-11-17
KR102304046B1 (ko) 2021-09-23

Similar Documents

Publication Publication Date Title
US11636095B2 (en) System and method for providing a representational state transfer proxy service for a blockchain cloud service
EP3841489B1 (en) Dag based methods and systems of transaction processing in a distributed ledger
US20200151682A1 (en) Digital fiat currency
WO2021000337A1 (en) System and method for mapping decentralized identifiers to real-world entities
CN110769035B (zh) 一种区块链资产发行方法、平台、业务节点及存储介质
US20200409940A1 (en) Implementing a blockchain-based workflow
US20190251556A1 (en) Distributed ledger on-boarding system for standby guarantee resources
KR102329075B1 (ko) 복수 개의 블록체인을 통합하여 하나의 미들 블록으로 사용자 인증을 수행하는 사용자 인증 시스템
US10628807B2 (en) Techniques for transaction management
US20220303258A1 (en) Computer-implemented system and method
US20240171408A1 (en) Method, apparatus, and computer-readable medium for authentication and authorization of networked data transactions
CN111327426B (zh) 数据共享方法及相关装置、设备及***
US20200202349A1 (en) Multiple asset transactions
US20200202344A1 (en) Private asset transactions
Kulabukhova et al. Self-sovereign identity for iot devices
KR102419853B1 (ko) 블록체인에 기반한 did 인증서를 이용한 허가형 블록체인 플랫폼 인증 방법 및 시스템
Kirillov et al. Performance of the secret electronic voting scheme using hyperledger fabric permissioned blockchain
Shah Use of blockchain as a software component to send messages anonymously for a data trading platform
TW202205834A (zh) 電腦實施系統及方法
Tasdelen Fundamentals of Blockchain
Rizal et al. Optimizing Blockchain Network Creation: Automation with Ansible on Private Blockchain Hyperledger Fabric Using Simplified RAFT Consensus Method
Soni Social network application with end-to-end security and privacy

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant