KR20220151124A - Rdbms 기반의 분산원장 관리 시스템 및 방법 - Google Patents

Rdbms 기반의 분산원장 관리 시스템 및 방법 Download PDF

Info

Publication number
KR20220151124A
KR20220151124A KR1020220138198A KR20220138198A KR20220151124A KR 20220151124 A KR20220151124 A KR 20220151124A KR 1020220138198 A KR1020220138198 A KR 1020220138198A KR 20220138198 A KR20220138198 A KR 20220138198A KR 20220151124 A KR20220151124 A KR 20220151124A
Authority
KR
South Korea
Prior art keywords
trusted
message
transaction message
rdbms
stamp
Prior art date
Application number
KR1020220138198A
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 KR1020220138198A priority Critical patent/KR20220151124A/ko
Publication of KR20220151124A publication Critical patent/KR20220151124A/ko
Priority to KR1020240033680A priority patent/KR20240038669A/ko

Links

Images

Classifications

    • 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/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3825Use of electronic signatures
    • 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/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/11File system administration, e.g. details of archiving or snapshots
    • G06F16/122File system administration, e.g. details of archiving or snapshots using management policies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • G06F16/1834Distributed file systems implemented based on peer-to-peer networks, e.g. gnutella
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • 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/38Payment protocols; Details thereof
    • G06Q20/389Keeping log of transactions for guaranteeing non-repudiation of a transaction

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명에서는 RDBMS 기반의 분산원장 관리 시스템 및 방법을 개시한다. 본 발명은, 사용자 단말, 복수의 분산 노드, 신뢰된 순서-스탬프 서버를 포함하는 RDBMS 기반의 분산원장 관리 시스템 중 어느 하나의 분산 노드에 의해 수행되는 RDBMS 기반의 분산원장 관리방법에 있어서, 메시지 구독자가 신뢰된 순서-스탬프 서버의 서버 메시지 큐에 접속하여 추가 거래 메시지를 요청하는 단계와, 서버 메시지 큐로부터 신뢰된 순서-스탬프가 포함된 추가 거래 메시지를 수신하는 단계와, 노드 메시지 큐가 추가 거래 메시지를 저장하는 단계와, 신뢰된 RDBMS가 추가 거래 메시지 중 신뢰된 순서-스탬프를 확인하여 신뢰 무결성 검사를 한 후 데이터를 저장하는 단계를 포함한다. 본 발명에 의하면, 거래의 추적이 용이하며, 운영이 용이한 분산원장 시스템을 제공할 수 있다.

Description

RDBMS 기반의 분산원장 관리 시스템 및 방법{SYSTEM AND METHOD FOR MANAGING RDBMS-BASED DISTRIBUTED LEDGER}
본 발명은 RDBMS 기반의 분산원장 관리 시스템 및 방법에 관한 것으로, 보다 상세하게는 여러 분산 노드로부터 수집된 거래 메시지를 단일 신뢰된 순서-스탬프 서버로 집계하고, 단일한 신뢰된 순서-스탬프 서버는 메시지에 신뢰할 수 있는 순서번호를 부여하며, 신뢰된 순서번호가 부여된 메시지를 거래에 사용함으로써 거래의 추적이 용이하고 거래의 순서를 공정하게 처리가 가능하며, RDBMS에서 최종적으로 메시지를 저장하도록 함으로써 기존 시스템과 상호 운용이 가능한 RDBMS 기반의 분산원장 관리 시스템 및 방법에 관한 것이다.
분산원장은 여러 사이트나, 여러 국가 또는 여러 기관에서 공유할 수 있는 자산 데이터베이스로, 네트워크 내의 모든 참여자는 동일한 원장 사본을 가질 수 있으며, 원장에 대한 변경 사항은 모든 사본에 분(minute)또는 경우에 따라 초(second)단위로 반영된다.
분산원장은 자산 거래 시스템을 구축하는데 있어 신뢰 비용 (Cost of Trust)을 절감하고 신뢰 중앙기관의 의존도를 경감한다. 구체적으로 은행, 정부, 법조인, 공증인증 등에 대한 의존도가 완화되고 보안시스템 구축 비용을 절감하며, 프로세스 단순화를 통항 효율적인 업무를 기대할 수 있다. 이러한 신뢰는 크게 기록물 자체에 대한 신뢰와 시스템에 대한 신뢰로부터 형성된다. 기록물 자체에 대한 신뢰는 암호(Cryptography), 공유원장(Shared Leger)등의 기술이 사용되며 시스템의 신뢰는 P2P 컴퓨팅(Peer-to-Peer Computing)기술을 사용한다.
분산원장 기술은 신뢰 비용(Cost of Trust)을 절감할 수 있는 유망한 기술로 평가되고 있지만, 기밀성, 확장성, 상호운용성 등의 측면에서 기존의 중앙집중형 시스템 대비 크게 부족한 성능을 보이는 것이 현실이다. 이러한 문제는 시스템 구축비용 및 운영비용의 증가를 발생시키기 때문에, 그 효과를 상쇄하는 문제가 발생한다.
등록특허공보 제10-2081159호 “블록체인 시스템 및 블록체인 시스템에서 복수의 노드들이 메시지를 검증 및 전파하는 방법”에서는 복수의 신뢰 노드를 포함하는 적어도 하나의 논리 노드 및 적어도 하나의 공개 노드들의 분산 네트워크로 구성된 블록체인 시스템에서 복수의 노드들이 메시지를 검증 및 전파하는 방법을 개시한다. 논리 노드 내의 제1 신뢰 노드가 블록체인 네트워크 상에서 전파된 메시지를 수신하면, 메시지를 전송한 노드와의 신뢰 관계를 검증하고, 메시지를 전송한 노드가 공개 노드임이 확인되면, 제1 신뢰 노드는 제2 신뢰 노드에 의한 메시지의 유효성 검증이 확인되면 상기 블록체인 네트워크 상에 상기 메시지를 전파하는 블록체인 시스템에서 복수의 노드들이 메시지를 검증 및 전파하는 방법이 개시된다. 유효성이 검증된 후에 메시지를 전파하여 신속한 메시지 전파가 어렵다.
등록특허공보 제10-2097995호 “이중 지불 방지를 위한 전자 결제 시스템 및 그 결제 방법”에는, (a) 거래 검증 노드가 서버로부터 거래 메시지를 수신하는 단계; 및 (b) 상기 거래 검증 노드가 상기 (a) 단계에서 수신한 거래 메시지가 상기 서버에 의해 처리된 거래 메시지인 지를 확인하는 단계;를 포함하되, 상기 (a) 단계에서 상기 거래 검증 노드가 상기 서버로부터 수신한 거래 메시지는, 입금할 입금 주소; 출금할 출금 주소; 상기 입금 주소로 입금할 입금액; 상기 출금 주소의 소유자 서명; 거래 메시지에 순서를 부여하는 거래 순서 번호; 및 상기 서버의 서명;을 포함하는 전자결제 방법이 개시되어 있다. 그러나 사용자 단말은 단일의 서버를 통해서만 거래 메시지를 발생시키므로 불편한 점이 있다.
등록특허공보 제10-2081159호 “블록체인 시스템 및 블록체인 시스템에서 복수의 노드들이 메시지를 검증 및 전파하는 방법” (2020년02월19일 등록) 등록특허공보 제10-2097995호 “이중 지불 방지를 위한 전자 결제 시스템 및 그 결제 방법” (2020년04월01일 등록)
본 발명의 목적은, 거래의 추적이 용이한 RDBMS 기반의 분산원장 관리 시스템 및 방법을 제공하는 것이다.
본 발명의 다른 목적은, 선착순 거래의 우선순위를 공정하게 매길 수 있는 RDBMS 기반의 분산원장 관리 시스템 및 방법을 제공하는 것이다.
본 발명의 또다른 목적은, 통상의 RDBMS와 상호 운용이 가능하고, 교체비용이 적게 발생하는 RDBMS 기반의 분산원장 관리 시스템 및 방법을 제공하는 것이다.
본 발명의 목적은 이상에서 언급된 목적으로 제한되지 않으며, 언급되지 않은 다른 목적들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
상기 목적을 이루기 위한 하나의 양태에 따르면, 사용자 단말(100), 복수의 분산 노드(200), 신뢰된 순서-스탬프 서버(400)를 포함하는 RDBMS 기반의 분산원장 관리 시스템 중 어느 하나의 분산 노드(200)에 의해 수행되는 RDBMS 기반의 분산원장 관리방법에 있어서, (a) 메시지 구독자(231)가 신뢰된 순서-스탬프 서버의 서버 메시지 큐(440) 또는 다른 분산 노드의 노드 메시지 큐(240)에 접속하여, 추가 거래 메시지를 요청하는 단계; (b) 메시지 구독자(231)가 신뢰된 순서-스탬프 서버의 서버 메시지 큐(440) 또는 다른 분산 노드의 노드 메시지 큐(240)로부터 신뢰된 순서-스탬프가 포함된 추가 거래 메시지를 수신하는 단계; (c) 메시지 구독자(231)가 수신된 신뢰된 순서-스탬프가 포함된 추가 거래 메시지를 노드 메시지 큐(241)로 전달하는 단계; (d) 노드 메시지 큐(241)가 신뢰된 순서-스탬프가 포함된 추가 거래 메시지를 저장하고, 저장된 추가 거래 메시지를 신뢰된 RDBMS(251)로 전달하는 단계; 및 (e) 신뢰된 RDBMS(251)가 추가 거래 메시지 중 신뢰된 순서-스탬프를 확인하여 신뢰 무결성 검사를 한 후, 데이터를 저장하는 단계;를 포함한다.
상기 (a) 단계에서, 메시지 구독자(231)는 신뢰된 순서-스탬프 서버의 서버 메시지 큐(440) 또는 다른 분산 노드의 노드 메시지 큐(240)로 서비스 ID와 노드 메시지 큐의 마지막 순서번호를 전달하며 추가 거래 메시지를 요청할 수 있다.
상기 (b) 단계에서, 메시지 구독자(231)는 신뢰된 순서-스탬프 서버의 서버 메시지 큐(440) 또는 다른 분산 노드의 노드 메시지 큐(240)로부터 상기 서비스 ID에 해당하는 메시지 중 상기 마지막 순서번호보다 큰 순서번호를 가진 메시지만 추가 거래 메시지로 수신할 수 있다.
상기 (e) 단계는, (e-1) 신뢰된 RDBMS(251)가 추가 거래 메시지를 파싱하는 단계; (e-2) 입력하려는 데이터가 신뢰 테이블의 데이터인 경우, 신뢰된 RDBMS(251)가 신뢰 테이블의 테이블 스키마에 정의된 신뢰 제약조건에 따라 신뢰된 순서-스탬프를 확인하여 신뢰 무결성 검증을 실시하는 단계; (e-3) 신뢰된 RDBMS(251)가 데이터 무결성 검증을 실시하는 단계; 및 (e-4) 신뢰된 RDBMS(251)가 상기 신뢰 무결성 검증 단계와 데이터 무결성 검증 단계를 통과한 데이터만 신뢰 테이블에 저장하는 단계;를 포함한다.
RDBMS 기반의 분산원장 관리방법은, (f) 메시지 수집자(220)가 사용자 단말(100)의 거래메시지 생성부(105)에서 생성된 서비스 ID와, 사용자 전자서명이 구비된 거래문장을 포함하는 신규 거래 메시지를 수신하는 단계; (g) 메시지 수집자(220)가 수신된 신규 거래 메시지로부터 서비스 ID를 확인하고, 노드 환경설정 저장부(210)를 참조하여 신뢰된 순서-스탬프 서버(400)를 결정하는 단계; 및 (h) 메시지 수집자(220)가 상기 신뢰된 순서-스탬프 서버에 접속하여 중앙 메시지 수집자(420)에게 신규 거래 메시지를 송신하는 단계;를 더 포함할 수 있다.
상기 목적을 이루기 위한 다른 양태에 따르면, 사용자 단말(100), 복수의 분산 노드(200), 신뢰된 순서-스탬프 서버(400)를 포함하는 RDBMS 기반의 분산원장 관리 시스템 중 신뢰된 순서-스탬프 서버(400)에 의해 수행되는 RDBMS 기반의 분산원장 관리방법에 있어서, (i) 중앙 메시지 수집자(420)가 분산 노드의 메시지 수집자(220)로부터 신규 거래 메시지를 수신하는 단계; (j) 중앙 메시지 수집자(420)가 신규 거래 메시지에서 서비스 ID를 확인하는 단계; (k) 중앙 메시지 수집자(420)가 서버 메시지 큐(440)에 저장된 최종 순서번호에 1을 추가하여 신규 거래 메시지에 순서번호로 부여하고, 순서번호가 부여된 거래 메시지를 순서-스탬프 생성자(430)에게 전달하는 단계; (l) 순서-스탬프 생성자(430)가 상기 순서번호가 부여된 거래 메시지에서 순서번호와 거래 메시지의 내용에 대해 전자서명하고, 그 내용을 거래 메시지에 삽입한 신뢰된 순서-스탬프가 부여된 거래 메시지를 서버 메시지 큐(440)에 전달하는 단계; 및 (m) 서버 메시지 큐(440)가 신뢰된 순서-스탬프가 부여된 거래 메시지를 추가 거래 메시지로 저장하는 단계;를 포함한다.
상기 (k) 단계는, (k-1) 중앙 메시지 수집자(420)가 상기 서비스 ID에 대해 서버 메시지 큐(440)에 저장된 최종 순서번호를 검색하는 단계; (k-2) 중앙 메시지 수집자(420)가 상기 최종 순서번호에 1을 추가한 값을 신규 거래 메시지에 순서번호로 부여하는 단계; (k-3) 중앙 메시지 수집자(420)가 신규 순서번호를 설정한 시간을 시간스탬프로 생성하는 단계; 및 (k-4) 중앙 메시지 수집자(420)가 상기 순서번호가 부여된 거래 메시지를 순서-스탬프 생성자(430)에게 전달하는 단계;를 포함할 수 있다.
RDBMS 기반의 분산원장 관리방법은, (n) 서버 메시지 큐(440)가 분산 노드의 메시지 구독자(230)로부터 서비스 ID와 노드 메시지 큐(240)의 마지막 순서번호를 포함하는 추가 거래 메시지 요청을 수신하는 단계; (o) 서버 메시지 큐(440)가 상기 서비스 ID에 해당하는 저장된 메시지 중 상기 마지막 순서번호보다 큰 순서번호를 가진 거래 메시지를 검색하는 단계; 및 (p) 서버 메시지 큐(440)가 분산 노드의 메시지 구독자(230)에게 상기 검색된 거래 메시지를 포함하는 추가 거래 메시지 응답을 송신하는 단계;를 더 포함할 수 있다.
상기 목적을 이루기 위한 또 다른 양태에 따르면, 사용자 단말(100), 복수의 분산 노드(200), 신뢰된 순서-스탬프 서버(400)를 포함하는 RDBMS 기반의 분산원장 관리 시스템 중 RDBMS 기반의 분산원장을 관리하기 위한 어느 하나의 분산 노드(200)에 있어서, 신뢰된 순서-스탬프 서버의 서버 메시지 큐(440) 또는 다른 분산 노드의 노드 메시지 큐(240)로부터 신뢰된 순서-스탬프가 포함된 추가 거래 메시지를 수신하여 노드 메시지 큐(241)로 전달하는 메시지 구독자(231); 상기 메시지 구독자(231)로부터 전달된 신뢰된 순서-스탬프가 포함된 추가 거래 메시지를 저장하고, 신뢰된 RDBMS(251)로 신뢰된 순서-스탬프가 포함된 추가 거래 메시지를 전달하는 노드 메시지 큐(241); 및 추가 거래 메시지 중 신뢰된 순서-스탬프를 확인하여 신뢰 무결성 검사를 한 후, 데이터를 저장하는 신뢰된 RDBMS(251);를 포함한다.
상기 메시지 구독자(231)는, 신뢰된 순서-스탬프 서버의 서버 메시지 큐(440) 또는 다른 분산 노드의 노드 메시지 큐(240)에 접속하여 추가 거래 메시지를 요청하는 추가 메시지 요청부; 상기 신뢰된 순서-스탬프 서버의 서버 메시지 큐(440) 또는 다른 분산 노드의 노드 메시지 큐(240)로부터 신뢰된 순서-스탬프가 포함된 추가 거래 메시지를 수신하는 추가 메시지 수신부; 및 수신된 신뢰된 순서-스탬프가 포함된 추가 거래 메시지를 노드 메시지 큐(241)로 전달하는 추가 메시지 전달부;를 포함한다.
상기 메시지 구독자(231)는, 신뢰된 순서-스탬프 서버의 서버 메시지 큐(440) 또는 다른 분산 노드의 노드 메시지 큐(240)로 서비스 ID와 노드 메시지 큐의 마지막 순서번호를 전달하며 추가 거래 메시지를 요청하고, 신뢰된 순서-스탬프 서버의 서버 메시지 큐(440) 또는 다른 분산 노드의 노드 메시지 큐(240)로부터 상기 서비스 ID에 해당하는 메시지 중 상기 마지막 순서번호보다 큰 순서번호를 가진 메시지만 추가 거래 메시지로 수신할 수 있다.
상기 신뢰된 RDBMS(251)는, 추가 거래 메시지를 파싱하는 메시지 파싱부; 입력하려는 데이터가 신뢰 테이블의 데이터인 경우, 신뢰된 RDBMS(251)가 신뢰 테이블의 테이블 스키마에 정의된 신뢰 제약조건에 따라 신뢰된 순서-스탬프를 확인하여 신뢰 무결성 검증을 실시하는 신뢰 검증부; 데이터 무결성을 검증하는 데이터 검증부; 상기 신뢰 무결성 검증과 데이터 무결성 검증을 통과한 데이터만 신뢰 테이블에 저장하는 신뢰 테이블 저장부;를 포함할 수 있다.
상기 분산 노드는, 사용자 단말(100)의 신규 거래 메시지를 전달받아 신뢰된 순서-스탬프 서버(400)로 전달하는 메시지 수집자(220)를 더 포함하며, 상기 메시지 수집자(220)는, 사용자 단말(100)의 거래메시지 생성부(105)에서 생성된 서비스 ID와 사용자 전자서명이 구비된 거래문장을 포함하는 신규 거래 메시지를 수신하는 거래 메시지 수신부; 수신된 신규 거래 메시지로부터 서비스 ID를 확인하여 노드 환경설정 저장부(210)를 참조하여 신뢰된 순서-스탬프 서버(400)를 결정하는 스탬프서버 결정부; 및 상기 신뢰된 순서-스탬프 서버에 접속하여 중앙 메시지 수집자(420)에게 신규 거래 메시지를 송신하는 거래 메시지 송신부;를 포함할 수 있다.
상기 목적을 이루기 위한 또 다른 양태에 따르면, 사용자 단말(100), 복수의 분산 노드(200), 신뢰된 순서-스탬프 서버(400)를 포함하는 RDBMS 기반의 분산원장 관리 시스템 중 RDBMS 기반의 분산원장 관리를 위한 신뢰된 순서-스탬프 서버(400)에 있어서, 분산 노드의 메시지 수집자(220)로부터 신규 거래 메시지를 수신하고, 신규 거래 메시지에서 서비스 ID를 확인하여, 서버 메시지 큐(440)에 저장된 최종 순서번호에 1을 추가하여 신규 거래 메시지의 순서번호로 부여하고, 순서번호가 부여된 거래 메시지를 순서-스탬프 생성자(430)에게 전달하는 중앙 메시지 수집자(420); 상기 순서번호가 부여된 거래 메시지에서 순서번호와 거래 메시지의 내용에 대해 전자서명하고, 그 내용을 거래 메시지에 삽입한 신뢰된 순서-스탬프가 부여된 거래 메시지를 서버 메시지 큐(440)에 전달하는 순서-스탬프 생성자(430); 및 신뢰된 순서-스탬프가 부여된 거래 메시지를 저장하는 서버 메시지 큐(440);를 포함한다.
상기 중앙 메시지 수집자(420)는, 상기 서비스 ID에 대해 서버 메시지 큐(440)에 저장된 최종 순서번호를 검색하는 순서번호 검색부; 상기 최종 순서번호에 1을 추가한 값을 신규 거래 메시지의 순서번호로 부여하는 순서번호 부여부; 신규 거래 메시지에 순서번호를 설정한 시간을 시간스탬프로 생성하는 시간 스탬프 생성부; 및 상기 순서번호가 부여된 거래 메시지를 순서-스탬프 생성자(430)에게 전달하는 순서 메시지 전달부;를 포함할 수 있다.
상기 서버 메시지 큐(440)는, 분산 노드의 메시지 구독자(230)로부터 서비스 ID와 노드 메시지 큐(240)의 마지막 순서번호를 포함하는 추가 거래 메시지 요청을 수신하는 메시지 요청 수신부; 상기 서비스 ID에 해당하는 서버 메시지 큐(440)에 저장된 메시지 중 상기 마지막 순서번호보다 큰 순서번호를 가진 거래 메시지를 검색하는 거래 메시지 검색부; 및 분산 노드의 메시지 구독자(230)에게 상기 검색된 거래 메시지를 포함하는 추가 거래 메시지 응답을 송신하는 메시지 요청 응답부;를 포함할 수 있다.
본 발명에 따른 RDBMS 기반의 분산원장 관리 시스템 및 방법은, 여러 분산 노드로부터 수집된 거래 메시지를 단일 신뢰 순서-스탬프 서버에서 집계하고 거래 순서번호가 부여된 거래메시지를 이용하여 거래의 추적이 용이하다
본 발명에 따른 RDBMS 기반의 분산원장 관리 시스템 및 방법은, 신뢰 순서-스탬프 서버에서 순서 스탬프를 부여함으로써 선착순 거래의 우선순위를 공정하게 매길 수 있다.
본 발명에 따른 RDBMS 기반의 분산원장 관리 시스템 및 방법은, 신뢰 테이블을 RDBMS에 저장하여, 기존 시스템과 상호 운용이 가능하고, 교체 비용이 적게 발생한다.
도 1은 본 발명의 일 실시예에 따른 RDBMS 기반의 분산원장 관리 시스템의 개략적인 구성을 나타내는 개념도이다.
도 2는 본 발명의 일 실시예에 따른 RDBMS 기반의 분산원장 관리 시스템에서 분산원장을 관리하는 방법을 나타내는 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 RDBMS 기반의 분산원장 관리 시스템의 구체적인 구성을 나타내는 구성도이다.
도 4는 본 발명의 일 실시예에 따른 RDBMS 기반의 분산원장 관리 시스템에서 사용하는 거래 메시지와 순서-스탬프가 부여된 거래 메시지를 나타내는 개념도이다.
도 5는 본 발명의 일 실시예에 따른 RDBMS 기반의 분산원장 관리 시스템 중 분산 노드의 노드 환경설정 저장부에 기록되는 서비스 ID와 신뢰된 순서-스탬프 서버를 나타내는 개념도이다.
도 6은 본 발명의 일 실시예에 따른 RDBMS 기반의 분산원장 관리 시스템 중 분산 노드의 새로 발생한 거래 메시지를 관리하는 방법을 나타내는 순서도이다.
도 7은 본 발명의 일 실시예에 따른 RDBMS 기반의 분산원장 관리 시스템 중 분산 노드의 순서-스탬프가 부여된 메시지를 관리하는 방법을 나타내는 순서도이다.
도 8은 본 발명의 일 실시예에 따른 RDBMS 기반의 분산원장 관리 시스템 중 분산 노드의 메시지 구독자와 신뢰된 순서-스탬프 서버의 서버 메시지 큐 사이의 프로토콜을 나타내는 흐름도이다.
도 9는 본 발명의 일 실시예에 따른 RDBMS 기반의 분산원장 관리 시스템 중 신뢰된 순서-스탬프 서버의 관리방법을 나타내는 순서도이다.
도 10은 본 발명의 일 실시예에 따른 RDBMS 기반의 분산원장 관리 시스템 중 분산 노드의 신뢰된 RDBMS에서 사용하는 신뢰할 수 있는 테이블 스키마의 구성을 나타내는 개념도이다.
도 11은 본 발명의 일 실시예에 따른 RDBMS 기반의 분산원장 관리 시스템 중 분산 노드의 신뢰된 RDBMS에서 사용하는 신뢰할 수 있는 테이블을 선언하는 방법을 나타내는 개념도이다.
도 12는 본 발명의 일 실시예에 따른 RDBMS 기반의 분산원장 관리 시스템 중 분산 노드의 신뢰된 RDBMS에서 사용하는 신뢰할 수 있는 테이블 스키마 중 신뢰 무결성 제약조건 정의부의 구성을 나타내는 개념도이다.
도 13은 본 발명의 일 실시예에 따른 RDBMS 기반의 분산원장 관리 시스템 중 분산 노드의 신뢰된 RDBMS에서 사용하는 신뢰할 수 있는 테이블 스키마 중 신뢰관련 옵션부의 구성을 나타내는 개념도이다.
도 14는 본 발명의 일 실시예에 따른 RDBMS 기반의 분산원장 관리 시스템 중 분산 노드의 신뢰된 RDBMS에서 거래 메시지를 처리하는 방법을 나타내는 순서도이다.
이하, 첨부한 도면들 및 후술되어 있는 내용을 참조하여 본 발명의 바람직한 실시 예들을 상세히 설명한다. 그러나, 본 발명은 여기서 설명되어지는 실시 예들에 한정되지 않고 다른 형태로 구체화될 수도 있다. 오히려, 여기서 소개되는 실시예들은 개시된 내용이 철저하고 완전해질 수 있도록 그리고 당업자에게 본 발명의 사상이 충분히 전달될 수 있도록 하기 위해 제공되어지는 것이다. 명세서 전체에 걸쳐서 동일한 참조번호들은 동일한 구성요소들을 나타낸다. 한편, 본 명세서에서 사용된 용어는 실시 예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급되지 않는 한 복수형도 포함된다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소, 단계, 동작 및/또는 소자가 하나 이상의 다른 구성요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.
이하, 도면을 참조하여, 본 발명의 일 실시예에 따른 RDBMS 기반의 분산원장 관리 시스템 및 방법에 대하여 상세히 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따른 RDBMS 기반의 분산원장 관리 시스템의 개략적인 구성을 나타내는 개념도이다.
본 발명의 일 실시예에 따른 RDBMS 기반의 분산원장 관리 시스템은 사용자 단말(100), 복수의 분산 노드(200)를 구비하는 분산 노드 그룹(300), 신뢰된 순서-스탬프 서버(400)를 포함할 수 있다.
사용자 단말(100)은 분산 노드 그룹에 속하는 분산 노드 중 임의의 분산 노드(200)에 접속하여 통신할 수 있으나, 신뢰된 순서-스탬프 서버(400)에 직접 접속할 수는 없다. 사용자 단말(100)에서 발생한 신규 거래 정보는 서비스 ID를 포함하는 거래 메시지의 형태로 접속한 분산 노드로 전달된다.
사용자 단말로부터 신규 거래 메시지를 수신한 분산 노드(200)는 서비스 ID에 따라 정해진 신뢰된 순서-스탬프 서버로 신규 거래 메시지를 전달한다. 하나의 서비스 ID에는 하나의 신뢰된 순서-스탬프 서버(400)만 지정되나, 복수의 서비스 ID를 위해 신뢰된 순서-스탬프 서버(400)를 복수로 구성할 수 있다.
신규 거래 메시지를 수신한 신뢰된 순서-스탬프 서버(400)는 거래 메시지의 추적을 위해 거래 메시지에 순서번호를 부여하고, 신뢰 검증에 사용하기 위해 거래 메시지의 내용을 이용하여 전자서명한 결과를 거래 메시지에 부여하여, 순서-스탬프가 부여된 거래 메시지로 만든다. 순서-스탬프가 부여된 거래 메시지는 신뢰된 순서-스탬프 서버(400)에 저장된다. 각 서비스 ID에 대해 하나씩 지정된 신뢰된 순서-스탬프 서버(400)가 메시지에 신뢰할 수 있는 순서번호를 부여하고, 신뢰된 순서번호가 부여된 메시지를 거래에 사용함으로써 거래의 추적이 용이하고 거래의 순서를 공정하게 처리가 가능하다.
신뢰된 순서-스탬프 서버(400)에 저장된 순서-스탬프가 부여된 거래 메시지는 임의의 분산 노드(200)가 요청하는 경우 요청한 분산 노드로 전달된다. 분산 노드(200)는 거래 메시지 요청시 자신이 이미 가지고 있는 거래 메시지의 최종 순서번호를 함께 전달한다. 신뢰된 순서-스탬프 서버(400)는 최종 순서번호 이후에 추가된 거래 메시지만 전달하여 중복을 방지한다.
추가된 거래 메시지를 수신한 분산 노드(200)는 기존의 거래 메시지에 추가로 수신한 거래 메시지를 추가하여 저장한다. 분산 노드(200)는 순서-스탬프가 부여된 거래 메시지의 신뢰 정보를 검증하여 이상이 없는 경우, 거래 메시지의 데이터를 저장한다.
분산 노드(200)는 신뢰된 순서_스탬프 서버(400)와 동일한 거래 메시지를 저장하고 있으므로, 신뢰된 순서-스탬프 서버(400)에 접속하지 않고, 분산 노드(200)와 동일한 분산 노드 그룹에 속하는 다른 분산 노드(201)는 분산 노드(200)에 접속하여 추가된 거래 메시지를 전달받을 수 있다.
사용자 단말(100), 분산 노드(200), 신뢰된 순서-스탬프 서버는 모두 컴퓨터 장치, 마이컴, 하드웨어 모듈, 소프트웨어 모듈 등으로 구현할 수 있으며, 각각의 장치는 서로 유선 또는 무선 통신망을 통해 접속할 수 있다.
도 2는 본 발명의 일 실시예에 따른 RDBMS 기반의 분산원장 관리 시스템에서 분산원장을 관리하는 방법을 나타내는 흐름도이다.
사용자 단말(100)에서 거래 메시지를 생성하고(S210), 임의의 분산 노드에 접속한다(S215). 사용자 단말(100)은 접속한 분산 노드(200)에 신규 거래 메시지를 전달한다(S220).
신규 거래 메시지를 전달받은 분산 노드(200)는 거래 메시지에서 서비스 ID를 확인하고(S230), 서비스 ID에 대응하는 신뢰된 순서-스탬프 서버를 결정한다(S235). 분산 노드(200)는 신규 거래 메시지를 결정된 신뢰된 순서-스탬프 서버로 전달한다(S240)
신뢰된 순서-스탬프 서버(400)는 전달된 신규 거래 메시지의 순서번호를 기존에 저장된 최종 번호보다 1 증가시켜 순서번호를 부여한다(S2245). 순서번호와 거래 메시지의 내용에 대해 전자서명하여 순서-스탬프가 부여된 거래 메시지로 만든다(S250). 순서-스탬프가 부여된 거래 메시지를 서버 메시지 큐에 저장한다(S2255).
분산 노드(200)가 신뢰된 순서-스탬프 서버에 접속해서(S260), 추가된 순서-스탬프가 부여된 거래 메시지를 요청하면(S265), 신뢰된 순서-스탬프 서버가 추가된 거래 메시지를 전달한다(S270).
추가 거래 메시지를 전달받은 분산 노드(200)는 노드 메시지 큐에 거래 메시지를 저장한다(S275). 분산 노드의 RDBMS가 신뢰 무결성 검사하여(S280) 이상이 없는 경우 거래 정보를 저장한다(S285). RDBMS에서 최종적으로 메시지를 저장하도록 함으로써 기존 시스템과 상호 운용이 가능하다.
사용자 단말(100)에서 거래 조회 요청을 하는 경우(S290), 분산 노드(200)에서 사용자 단말(100)로 조회 결과를 전달한다(S295).
도 3은 본 발명의 일 실시예에 따른 RDBMS 기반의 분산원장 관리 시스템의 구체적인 구성을 나타내는 구성도이다.
사용자 단말(100)은 거래 메시지 생성부(105)와 거래 조회부(195)를 포함한다. 사용자로부터 입력을 받는 입력부(160), 사용자에게 결과를 표시하는 출력부(170), 분산 노드와 통신하는 통신부(180), 및 제어부(190)를 추가로 포함할 수 있다.
거래 메시지 생성부(105)는 거래 정보를 서비스 ID와 거래문장을 포함하는 거래 메시지 형태로 생성하여, 분산 노드(200)의 메시지 수집자(220)로 전달한다.
도 4(a)를 참조하면, 거래 메시지(110)는 서비스 ID(111)와 거래문장(112)으로 구성된다. 서비스 ID(111)는 DBMS 계정, DATABASE 이름, TABLE 이름을 이용하여 작성할 수 있다. 예를 들어, DBMS 계정이 “www.travel.com”이고, DATABASE 이름이 “asia”이고, TABLE 이름이 “reservation”인 경우, 서비스 ID(111)는 “www.travel.com/asia/reservation”으로 설정할 수 있다.
거래문장(112)은 SQL문으로 작성할 수 있다. 도 4(a)의 거래문장은 테이블 이름이 TABLE_NAM인 테이블의 COL1 값을 V1으로, COL2 값을 V2로 삽입하는 SQL 명령문이다. 거래문장(112)에는 순서번호(115)와 전자서명(117)을 삽입할 수 있도록 준비한다.
신규 거래 메시지(110)는 분산 노드를 통해서 신뢰된 순서-스탬프 서버(400)로 전달되고, 신뢰된 순서-스탬프 서버에서 거래문장(112)에 순서번호(115)와 전자서명(117)을 추가하여 순서-스탬프를 부여한 거래 메시지를 만들고, 순서-스탬프를 부여한 거래 메시지는 신뢰된 순서-스탬프 서버의 서버 메시지 큐(440)에 저장한다.
서버 메시지 큐(440)에 저장된 순서-스탬프가 부여된 거래 메시지는 분산 노드의 메시지 구독자(230)를 통해서 노드 메시지 큐(240)에 저장된다. 순서-스탬프가 부여된 거래 메시지는 신뢰 무결성 검사후 이상이 없으면 신뢰된 RDBMS에 의해 수행되고, 그 결과 거래 정보가 저장된다.
각 분산 노드는 서버 메시지 큐(440)에 의해 동일한 거래 메시지를 수신할 수 있으므로, 각 분산 노드의 신뢰된 RDBMS(251)에는 동일한 거래 정보가 저장된다.
사용자 단말(100)의 거래 조회부(195)는 임의의 분산 노드(201)에 접속하여, 신뢰된 RDBMS로부터 저장되어 있는 거래 정보들을 조회할 수 있다. 각 분산 노드의 신뢰된 RDBMS에 동일한 거래 정보가 저장되어 있으므로, 도 3에 나타낸 것처럼 신규 거래 메시지는 분산 노드(200)로 전송하고, 거래 조회는 다른 분산 노드(201)에 접속하여 거래 정보를 읽어올 수 있다.
거래 메시지 생성부(105) 및 거래 조회부(195)는 입력부(160), 출력부(170), 통신부(180) 및 제어부(190)의 기능을 포함하여 구성할 수 있다.
분산 노드 그룹(300)은 복수의 분산 노드를 포함한다. 도 1과 도 3에는 임의의 분산 노드(200)와 다른 분산 노드(201)가 표시되어 있다.
분산 노드(200)는 노드 환경설정 저장부(210), 메시지 수집자(220), 메시지 구독자(230), 노드 메시지 큐(240), 신뢰된 RDBMS(250)를 포함한다.
노드 환경설정 저장부(210)에는 서비스 ID(111)에 대응하는 신뢰된 순서-스탬프 서버에 대한 정보를 저장할 수 있다. 도 5를 참조하면, 서비스 ID가 “www.travel.com/asia/reservation”(510)인 경우, 신뢰된 순서-스탬프 서버는 “192.xxx.0.0.1:20001”(530)와 같이 설정할 수 있다. 동일한 분산 노드 그룹(300) 내의 모든 분산 노드(200)에 대해 동일한 환경설정을 함으로써, 분산 노드별로 수집되는 거래 메시지가 서비스 ID에 따라 단일한 신뢰된 순서-스탬프 서버(400)로 집계할 수 있다.
메시지 수집자(220)는 사용자 단말(100)의 신규 거래 메시지를 전달받아 신뢰된 순서-스탬프 서버(400)로 전달한다. 메시지 수집자(220)는 거래 메시지 수신부, 스탬프서버 결정부, 거래 메시지 송신부를 포함할 수 있다.
거래 메시시 수신부는 사용자 단말(100)의 거래메시지 생성부(105)에서 생성된 신규 거래 메시지를 수신한다. 신규 거래 메시지(110)는 서비스 ID(111)와 사용자 전자서명이 구비된 거래문장(112)을 포함한다. 스탬프서버 결정부는 수신된 신규 거래 메시지로부터 서비스 ID를 확인하여, 노드 환경설정 저장부(210)를 참조하여 신뢰된 순서-스탬프 서버(400)를 결정한다. 거래 메시지 송신부는 신뢰된 순서-스탬프 서버에 접속하여 중앙 메시지 수집자(420)에게 신규 거래 메시지를 전달한다.
메시지 구독자(230)는 신뢰된 순서-스탬프 서버의 서버 메시지 큐(440)로부터 신뢰된 순서-스탬프가 포함된 추가 거래 메시지를 수신한다. 한편, 도 3의 점선으로 도시한 것과 같이, 분산 노드(201)의 메시지 구독자(231)는 신뢰된 순서-스탬프 서버의 서버 메시지 큐(440) 뿐만 아니라, 다른 분산 노드의 노드 메시지 큐(240)로부터도 순서-스탬프가 부여된 거래 메시지를 수신할 수 있다. 수신된 뢰된 순서-스탬프가 포함된 추가 거래 메시지는 노드 메시지 큐(241)로 전달한다.
메시지 구독자(231)는 추가 메시지 요청부, 추가 메시지 수신부, 추가 메시지 전달부를 포함할 수 있다. 추가 메시지 요청부는 신뢰된 순서-스탬프 서버의 서버 메시지 큐(440) 또는 다른 분산 노드의 노드 메시지 큐(240)에 접속하여 추가 거래 메시지를 요청한다. 추가 메시지 수신부는 신뢰된 순서-스탬프 서버의 서버 메시지 큐(440) 또는 다른 분산 노드의 노드 메시지 큐(240)로부터 신뢰된 순서-스탬프가 포함된 추가 거래 메시지를 수신한다. 추가 메시지 전달부 수신된 신뢰된 순서-스탬프가 포함된 추가 거래 메시지를 노드 메시지 큐(241)로 전달한다.
메시지 구독자(231)는 신뢰된 순서-스탬프 서버의 서버 메시지 큐(440) 또는 다른 분산 노드의 노드 메시지 큐(240)로 추가 거래 메시지를 요청하는 경우, 서비스 ID와 노드 메시지 큐의 마지막 순서번호를 전달하며 추가 거래 메시지를 요청할 수 있다. 서버 메시지 큐(440) 또는 노드 메시지 큐(240)는 서비스 ID에 해당하는 거래 메시지에서 마지막 순서번호 보다 큰 순서번호를 가진 거래 메시지를 검색해서 메시지 구독자(231)에게 전달할 수 있다. 즉, 메시지 구독자(231)는 신뢰된 순서-스탬프 서버의 서버 메시지 큐(440) 또는 다른 분산 노드의 노드 메시지 큐(240)로부터 서비스 ID에 해당하는 메시지 중 마지막 순서번호보다 큰 순서번호를 가진 메시지만 추가 거래 메시지로 수신하여, 중복을 방지할 수 있다.
노드 메시지 큐(240)는 메시지 구독자(231)로부터 전달된 신뢰된 순서-스탬프가 포함된 추가 거래 메시지를 저장하고, 신뢰된 RDBMS(251)로 신뢰된 순서-스탬프가 포함된 추가 거래 메시지를 전달한다.
신뢰된 RDBMS(250)는 추가 거래 메시지 중 신뢰된 순서-스탬프를 확인하여 신뢰 무결성 검사를 한 후, 데이터를 저장할 수 있다. 신뢰된 RDBMS(251)는 메시지 파싱부, 신뢰 검증부, 데이터 검증부, 신뢰 테이블 저장부를 포함한다.
메시지 파싱부는 추가 거래 메시지를 파싱한다. 신뢰 검증부는 입력하려는 데이터가 신뢰 테이블의 데이터인 경우, 신뢰된 RDBMS(251)가 신뢰 테이블의 테이블 스키마에 정의된 신뢰 제약조건에 따라 신뢰된 순서-스탬프를 확인하여 신뢰 무결성 검증을 실시한다. 데이터 검증부는 데이터 무결성을 검증한다. 신뢰 테이블 저장부는 상기 신뢰 무결성 검증과 데이터 무결성 검증을 통과한 데이터만 신뢰 테이블에 저장한다.
신뢰된 순서-스탬프 서버(400)는 서버 환경설정 저장부(410), 중앙 메시지 수집자(420), 순서-스탬프 생성자(430), 서버 메시지 큐(440)를 포함한다.
서버 환경설정 저장부(410)는 서버가 처리해야할 서비스 ID의 리스트를 지정하는 데 사용할 수 있다.
중앙 메시지 수집자(420)는 분산 노드의 메시지 수집자(220)로부터 신규 거래 메시지를 수신하고, 신규 거래 메시지에서 서비스 ID를 확인하여, 서버 메시지 큐(440)에 저장된 최종 순서번호에 1을 추가하여 신규 거래 메시지의 순서번호로 부여하고, 순서번호가 부여된 거래 메시지를 순서-스탬프 생성자(430)에게 전달한다.
중앙 메시지 수집자(420)는 순서번호 검색부, 순서번호 부여부, 시간 스탬프 생성부, 순서 메시지 전달부를 포함할 수 있다. 순서번호 검색부는 서비스 ID에 대해 서버 메시지 큐(440)에 저장된 최종 순서번호를 검색한다. 순서번호 부여부는 최종 순서번호에 1을 추가한 값을 신규 거래 메시지의 순서번호로 부여한다. 시간 스탬프 생성부는 신규 거래 메시지에 순서번호를 설정한 시간을 시간스탬프로 생성한다. 순서 메시지 전달부는 순서번호가 부여된 거래 메시지를 순서-스탬프 생성자(430)에게 전달한다.
순서-스탬프 생성자(430)는 순서번호가 부여된 거래 메시지에서 순서번호와 거래 메시지의 내용에 대해 신뢰된 순서-스탬프 서버의 개인키로 전자서명한다. 전자서명한 결과를 거래 메시지에 삽입하여 신뢰된 순서-스탬프가 부여된 거래 메시지를 만든다. 신뢰된 순서-스탬프가 부여된 거래 메시지를 서버 메시지 큐(440)에 전달한다.
서버 메시지 큐(440)는 신뢰된 순서-스탬프가 부여된 거래 메시지를 저장한다. 서버 메시지 큐(440)는 메시지 요청 수신부, 거래 메시지 검색부, 메시지 요청 응답부를 포함할 수 있다.
메시지 요청 수신부는 분산 노드의 메시지 구독자(230)로부터 서비스 ID와 노드 메시지 큐(240)의 마지막 순서번호를 포함하는 추가 거래 메시지 요청을 수신한다. 거래 메시지 검색부는 상기 서비스 ID에 해당하는 서버 메시지 큐(440)에 저장된 메시지 중 상기 마지막 순서번호보다 큰 순서번호를 가진 거래 메시지를 검색한다. 메시지 요청 응답부는 상기 검색된 거래 메시지를 포함하는 추가 거래 메시지 응답을 분산 노드의 메시지 구독자(230)에게 송신한다.
도 4는 본 발명의 일 실시예에 따른 RDBMS 기반의 분산원장 관리 시스템에서 사용하는 거래 메시지와 순서-스탬프가 부여된 거래 메시지를 나타내는 개념도이다.
도 4(a)는 사용자 단말에서 생성된 거래 메시지(110)를 나타낸다. 거래 메시지(110)는 서비스 ID(111)와 거래문장(112)으로 구성된다. 서비스 ID(111)는 DBMS 계정, DATABASE 이름, TABLE 이름을 이용하여 작성할 수 있다. 예를 들어, DBMS 계정이 www.travel.com이고, DATABASE 이름이 asia이고, TABLE 이름이 reservation인 경우, 서비스 ID(111)는 www.travel.com/asia/reservation으로 설정할 수 있다.
거래문장(112)은 SQL문으로 작성할 수 있다. 도 4(a)의 거래문장은 테이블 이름이 TABLE_NAM인 테이블의 COL1 값을 V1으로, COL2 값을 V2로 삽입하는 SQL 명령문이다. 거래문장(112)에는 순서번호(115)를 삽입할 수 있는 “@TOS_ID” 필드와 전자서명(117)을 삽입할 수 있는 “@TOS_SIGN” 필드를 준비한다.
도 4(b)는 중앙 메시지 수집자(420)가 만든 순서가 부여된 거래 메시지를 나타낸다. 중앙 메시지 수집자(420)는 서버 메시지 큐(440)에 저장된 최종 순서번호에 1을 추가하여 신규 거래 메시지의 순서번호(425)로 부여한다. 순서번호(115) 필드 값으로 “123”(425)이 부여되어 있다.
도 4(c)는 순서-스탬프 생성자(430)가 만든 순서-스탬프가 부여된 거래 메시지를 나타낸다. 중앙 메시지 수집자는 순서번호와 거래 메시지의 내용에 대해 신뢰된 순서-스탬프 서버의 개인키로 전자서명하고, 그 결과를 거래 메시지에 삽입하여 신뢰된 순서-스탬프가 부여된 거래 메시지 또는 순서-스탬프가 포함된 거래 메시지를 만든다. 순서번호(115)의 필드값으로 “123”(425)이 부여되어 있고, 추가로 전자서명(117) 필드 값으로 “30450221008...”(437)가 부여되어 있다. 신뢰된 순서-스탬프가 부여된 거래 메시지는 서버 메시지 큐(440)에 전달된다.
도 5는 본 발명의 일 실시예에 따른 RDBMS 기반의 분산원장 관리 시스템 중 분산 노드의 노드 환경설정 저장부에 기록되는 서비스 ID와 신뢰된 순서-스탬프 서버를 나타내는 개념도이다.
노드 환경설정 저장부(210)에는 서비스 ID(111)에 대응하는 신뢰된 순서-스탬프 서버에 대한 정보를 저장할 수 있다. 서비스 ID가 “www.travel.com/asia/reservation”(510)인 경우, 신뢰된 순서-스탬프 서버는 “192.xxx.0.0.1:20001”(530)와 같이 설정할 수 있다. 동일한 분산 노드 그룹(300) 내의 모든 분산 노드(200)에 대해 동일한 환경설정을 함으로써, 분산 노드별로 수집되는 거래 메시지가 서비스 ID에 따라 단일한 신뢰된 순서-스탬프 서버(400)로 집계할 수 있다.
도 6은 본 발명의 일 실시예에 따른 RDBMS 기반의 분산원장 관리 시스템 중 분산 노드의 새로 발생한 거래 메시지를 관리하는 방법을 나타내는 순서도이다.
분산 노드(200)의 메시지 수집자(220)가 사용자 단말(100)의 거래메시지 생성부(105)에서 생성된 개래 메시지를 수신한다(S620). 거래 메시지(110)는 서비스 ID(111)와, 사용자 전자서명이 구비된 거래문장(112)을 포함한다.
메시지 수집자(220)는 수신된 신규 거래 메시지로부터 서비스 ID를 확인하고(S630), 노드 환경설정 저장부(210)를 참조하여 신뢰된 순서-스탬프 서버(400)를 결정한다(S632). 메시지 수집자(220)가 신뢰된 순서-스탬프 서버(400)에 접속하여 중앙 메시지 수집자(420)에게 사용자 단말로부터 수신받은 신규 거래 메시지를 송신한다(S640).
도 7은 본 발명의 일 실시예에 따른 RDBMS 기반의 분산원장 관리 시스템 중 분산 노드의 순서-스탬프가 부여된 메시지를 관리하는 방법을 나타내는 순서도이다.
분산 노드(200)의 메시지 구독자(231)가 신뢰된 순서-스탬프 서버의 서버 메시지 큐(440) 또는 다른 분산 노드의 노드 메시지 큐(240)에 접속하여(S760), 추가 거래 메시지를 요청한다(S765).
메시지 구독자(231)가 신뢰된 순서-스탬프 서버의 서버 메시지 큐(440) 또는 다른 분산 노드의 노드 메시지 큐(240)로부터 신뢰된 순서-스탬프가 포함된 추가 거래 메시지를 수신한다(S770). 메시지 구독자(231)가 수신된 신뢰된 순서-스탬프가 포함된 추가 거래 메시지를 노드 메시지 큐(241)로 전달한다.
노드 메시지 큐(241)가 신뢰된 순서-스탬프가 포함된 추가 거래 메시지를 저장하고(S775), 저장된 추가 거래 메시지를 신뢰된 RDBMS(251)로 전달한다.
신뢰된 RDBMS(251)가 추가 거래 메시지 중 신뢰된 순서-스탬프를 확인하여 신뢰 무결성 검사를 한(S780) 후, 데이터를 저장한다(S785).
도 8은 본 발명의 일 실시예에 따른 RDBMS 기반의 분산원장 관리 시스템 중 분산 노드의 메시지 구독자와 신뢰된 순서-스탬프 서버의 서버 메시지 큐 사이의 프로토콜을 나타내는 흐름도이다.
분산 노드(201)의 메시지 구독자(231)는 신뢰된 순서-스탬프 서버의 서버 메시지 큐(440)로 접속한다(S860). 분산 노드(201)의 메시지 구독자(231)는 신뢰된 순서-스탬프 서버의 서버 메시지 큐(440) 뿐만 아니라 다른 분산 노드(200)의 노드 메시지 큐(240)로 접속할 수 있다(S860). 이후, 추가 거래 메시지를 요청한다(S865). 이 때, 추가 거래 메세지 요청과 함께 요청PARAMETER1로 서비스 ID를, 요청PARAMETER2로 노드 메시지 큐(241)에 있는 메세지의 마지막 순서번호를 전달한다.
그 결과, 서버 메시지 큐(440)는 분산 노드의 메시지 구독자(230)로부터 서비스 ID와 노드 메시지 큐(240)의 마지막 순서번호를 포함하는 추가 거래 메시지 요청을 수신하게 된다(S865). 서버 메시지 큐(440)는 요청PARAMETER1의 서비스 ID에 해당하는 거래 메시지를 확인하고(S867), 저장된 메시지 중 요청PARAMETER2의 마지막 순서번호 보다 큰 순서번호를 가진 거래 메시지를 검색한다(S868). 서버 메시지 큐(440)가 분산 노드의 메시지 구독자(230)에게 검색된 거래 메시지를 포함하는 추가 거래 메시지 응답을 송신한다(S870).
그 결과, 메시지 구독자(231)는 신뢰된 순서-스탬프 서버의 서버 메시지 큐(440) 또는 다른 분산 노드의 노드 메시지 큐(240)로부터 상기 서비스 ID에 해당하는 메시지 중 상기 마지막 순서번호보다 큰 순서번호를 가진 메시지만 추가 거래 메시지로 수신하여 중복을 방지할 수 있다.
도 9는 본 발명의 일 실시예에 따른 RDBMS 기반의 분산원장 관리 시스템 중 신뢰된 순서-스탬프 서버의 관리방법을 나타내는 순서도이다.
신뢰된 순서-스탬프 서버(400)의 중앙 메시지 수집자(420)가 분산 노드의 메시지 수집자(220)로부터 신규 거래 메시지를 수신한다(S940). 중앙 메시지 수집자(420)가 신규 거래 메시지에서 서비스 ID를 확인한다(S943).
중앙 메시지 수집자(420)가 서비스 ID에 대해 서버 메시지 큐(440)에 저장된 최종 순서번호를 검색한다. 최종 순서번호에 1을 추가한 값을 신규 거래 메시지에 순서번호로 부여한다(S945).
중앙 메시지 수집자(420)는 신규 순서번호를 설정한 시간을 시간스탬프로 생성할 수 있다. 순서번호가 부여된 거래 메시지를 순서-스탬프 생성자(430)에게 전달한다.
순서-스탬프 생성자(430)가 상기 순서번호가 부여된 거래 메시지에서 순서번호와 거래 메시지의 내용에 대해 전자서명하고, 그 내용을 거래 메시지에 삽입하여 신뢰된 순서-스탬프가 부여된 거래 메시지를 생성한다(S950). 신뢰된 순서-스탬프가 추가된 거래 메시지를 서버 메시지 큐(440)에 전달한다.
서버 메시지 큐(440)가 신뢰된 순서-스탬프가 부여된 거래 메시지를 추가 거래 메시지로 저장한다(S955).
도 10은 본 발명의 일 실시예에 따른 RDBMS 기반의 분산원장 관리 시스템 중 분산 노드의 신뢰된 RDBMS에서 사용하는 신뢰할 수 있는 테이블 스키마의 구성을 나타내는 개념도이다.
신뢰된 RDBMS(250)는 종래의 RDBMS가 수행하는 데이터의 논리적 무결성 정의 및 강제, 검증 기능 뿐만 아니라, 데이터 위변조 등에 대한 신뢰 무결성의 정의 및 강제, 검증 기능까지 지원되는 RDBMS로 동작하는 특징이 있다. 신뢰된 RDBMS(250)는 구체적으로 다음의 3원칙을 데이터 무결성 관리에 적용함으로써 데이터 자체에 대한 신뢰를 검증할 수 있다.
[제1조건 레코드 신뢰 무결성]
“거래 레코드의 속성에는 반드시 이 레코드의 신뢰 무결성을 검증하기 위한 전자서명 값을 갖는 속성을 반드시 포함해야 하며, 포함된 전자서명의 값이 해당 테이블의 스키마에서 지정한 전자서명 방법에 따라 검증되는 경우에만 신뢰할 수 있다”
[제2조건 참조 신뢰 무결성]
“제1규칙이 적용된 테이블이 참조하는 테이블 또한 제1규칙이 적용되어야 한다.”
[제3조건 갱신 불가]
“생성된 거래메시지는 삭제되거나 갱신 될 수 없다”
이상의 세 가지 조건은 스키마로 정의 할 수 있으며, 세 가지 신뢰 무결성 제약조건의 정의를 포함한 스키마는 신뢰할 수 있는 스키마(1000)이다.
도 10은 신뢰할 수 있는 테이블 스키마(1000)의 구성을 나타낸다. 신뢰할 수 있는 테이블 스키마(1000)는 테이블의 이름 타입, 생성조건 등을 정의하는 선언부(1100), 테이블의 구조와 컬럼의 속성 그리고 컬럼별 제약조건을 정의하는 몸통부(1200), 기타 테이블의 옵션을 정의하는 테이블 옵션부(1300)를 포함한다.
도 11은 본 발명의 일 실시예에 따른 RDBMS 기반의 분산원장 관리 시스템 중 분산 노드의 신뢰된 RDBMS에서 사용하는 신뢰할 수 있는 테이블을 선언하는 방법을 나타내는 개념도이다.
도 11(a)는 신뢰 무결성 제약조건을 받지 않는 테이블의 선언을 나타낸다.
도 11(b)는 신뢰 무결성 제약조건을 따르는 테이블의 선언을 나타낸다. CREATE 명령어 뒤에 TRUSTED 키워드(1105)를 사용하여 신뢰 테이블임을 선언한다. 신뢰 무결성 제약조건을 받는 경우 별도의 키워드를 사용하여, 기존 시스템의 신뢰 무결성 제약조건을 받지 않는 테이블과 상호 운용이 가능하다.
도 12는 본 발명의 일 실시예에 따른 RDBMS 기반의 분산원장 관리 시스템 중 분산 노드의 신뢰된 RDBMS에서 사용하는 신뢰할 수 있는 테이블 스키마 중 신뢰 무결성 제약조건 정의부의 구성을 나타내는 개념도이다.
도 10에서 테이블 몸통부(1200)는 컬럼정의부(1210), 논리적 무결성 제약조건 정의부(1220), 신뢰 무결성 제약조건 정의부(1230)를 포함한다.
컬럼정의부(1210)는 테이블을 구성하는 컬럼과 컬럼의 데이터 타입을 정의한다. 논리적 무결성 제약조건 정의부(1220)는 PRIMARY KEY, UNIQUE, FOREIGN KEY 등과 같은 논리적 무결성 제약조건을 정의한다. 신뢰 무결성 제약조건 정의부(1230)는 전자서명 검증에 관련된 신뢰 무결성 제약조건을 정의한다.
도 12(a)는 신뢰 무결성 제약조건 정의부의 구성을 나타내며, 도 12(b)는 도 12(a)에 대응하는 제약조건을 굵게 표시한 것이다.
레코드 신뢰성 제약조건(1331)과 순서-스탬프 제약조건(1232) 등을 정의하여 신뢰 무결성에 위배되는 레코드가 생성되지 않도록 데이터베이스를 강제한다.
도 12(a)에서, 레코드 신뢰성 제약조건(1231)은 “CONSTRAINT SIGNATURE(COL4) INPUT(COL2) VERIFY KEY(COL3)” 부분을 나타내고, 신뢰된 순서-스탬프 제약조건(1232)은 “CONSTRAINT TOS_NO(COL1) SIGNATURE(COL5)” 부분을 나타낸다.
도 13은 본 발명의 일 실시예에 따른 RDBMS 기반의 분산원장 관리 시스템 중 분산 노드의 신뢰된 RDBMS에서 사용하는 신뢰할 수 있는 테이블 스키마 중 신뢰관련 옵션부의 구성을 나타내는 개념도이다.
도 10에서 테이블 옵션부(1300)는, 테이블에 입력데이터의 국가별 언어 인코딩규칙을 정의하는 인코딩 옵션부(1310), 데이터베이스 엔진을 선택하는 DB엔진 옵션부(1320), 기타 성능이나 최대 레코드 개 수등 다양한 옵션을 설정하는 기타 테이블 옵션부(1330), 및 신뢰 관련한 다양한 옵션을 선택할 수 있는 신뢰 관련 옵션부(1340)를 포함한다.
도 13(a)에서, 테이블 옵선부(1300) 중 신뢰 관련 옵션부(1340)는, 암호화 기법에서 필요한 설정값을 정의하기 위한 전자서명 옵션(1341), 테이블 발행자를 확인하고 스키마 정보의 무결성을 검증하기 위하여 사용되는 테이블 발행자 공개키(1342), 자식(Child)관계를 갖는 테이블을 지정하기 위한 테이블 참조 공개키(1343), 순서-스탬프의 전자서명을 검증하기 위한 키를 지정하기 위한 신뢰된 순서-스탬프 서버 공개키(1344), 및 테이블 시크마의 무결성 검증을 위한 테이블 스키마 전자서명(1345)을 포함한다.
도 13(b)에서, 전자서명 옵션(1341)은 “SECP256K1”, 테이블 발행자 공개키(1342)는 “010203 ...”, 테이블 참조 공개키(1343)는 “020304 ...”, 신뢰된 순서-스탬프 서버 공개키(1344)는 “030405 ...”, 테이블 스키마 전자서명(1345)은 “040506 ...”로 설정된 것을 나타낸다.
도 14는 본 발명의 일 실시예에 따른 RDBMS 기반의 분산원장 관리 시스템 중 분산 노드의 신뢰된 RDBMS에서 거래 메시지를 처리하는 방법을 나타내는 순서도이다.
신뢰된 RDBMS(251)가 추가 거래 메시지의 SQL문을 파싱한다(S1410).
신뢰된 RDBMS(251)는 파싱된 SQL명령어에 대응한 작업을 수행한다.
파싱된 SQL명령이 CREATE인 경우(S1420), TABLE 스키마 정보를 저장한다(S1425). TABLE 스키마 정보로는 TABLE 구조, 속성의 타입, 제약조건, 신뢰 제약조건 등이 있다. 정상적으로 테이블이 생성된 경우 처리결과를 반환한다(S1480).
파싱된 SQL명령인 INSERT인 경우(S1430), TABLE 스키마 정보를 조회한다(S1435). TABLE 스키마 정보로는 TABLE 구조, 속성의 타입, 제약조건, 신뢰 제약조건 등이 있다.
입력하려는 데이터가 신뢰 테이블의 데이터인 경우(S1440), 신뢰된 RDBMS(251)가 신뢰 테이블의 테이블 스키마에 정의된 신뢰 제약조건에 따라 신뢰된 순서-스탬프를 확인하여 신뢰 무결성 검증을 실시한다(S1445).
신뢰 테이블이 아니거나, 신뢰 무결성 검증을 통과한 경우, 신뢰된 RDBMS(251)가 데이터 무결성 검증을 실시한다(S1450). 신뢰 테이블이 아닌 경우 신뢰 무결성 검증 없이, 신뢰 테이블인 경우 신뢰 무결성 검증을 추가하여 RDBMS를 운영할 수 있으므로, 신뢰 테이블이 없는 기존 시스템과 상호 운용이 가능하다.
데이터 무결성 검증을 통과한 경우, 신뢰된 RDBMS(251)가 데이터를 저장하고(S1460), 처리결과를 반환한다(S1480).
신뢰 테이블에 저장하기 위해서는 신뢰 무결성 검증과와 데이터 무결성 검증을 모두 통과해야 하므로, 신뢰된 RDBMS(251)는 두 검증을 모두 통과한 데이터만 신뢰 테이블에 저장한다.
신뢰 무결성 검증 및 데이터 무결성 검증에서 오류가 발생한 경우, 오류를 반환한다(S1470).
100 : 사용자 단말(100)
200 : 분산 노드(200)
210 : 노드 환경설정 저장부(210)
220 : 메시지 수집자(220)
230 : 메시지 구독자(230)
240 : 노드 메시지 큐(240)
250 : 신뢰된 RDBMS(250)
300 : 분산 노드 그룹(300)
400 : 신뢰된 순서-스탬프 서버(400)
410 : 서버 환경설정 저장부(410)
420 : 중앙 메시지 수집자(420)
430 : 순서 스탬프 생성자(430)
440 : 서버 메시지 큐(440)

Claims (6)

  1. 사용자 단말(100), 복수의 분산 노드(200), 신뢰된 순서-스탬프 서버(400)를 포함하는 분산원장 관리 시스템에서 수행되는 RDBMS 기반의 분산원장 관리방법에 있어서,
    분산 노드(200)가 사용자 단말(100)로부터 수집한 거래 메시지(110)를 신뢰된 순서-스탬프 서버(400)에 전달하는 단계;
    신뢰된 순서-스탬프 서버(400)가 수집한 거래 메시지(110)에 순서-스탬프(425, 437)를 발행하는 단계;
    신뢰된 순서-스탬프 서버(400)가 신뢰된 순서-스탬프가 포함된 거래 메시지(431)를 분산노드(200)에 구비된 신뢰된 RDBMS(250)로 전달하는 단계; 및
    신뢰된 RDBMS(250)가 신뢰된 순서-스탬프가 추가된 거래 메시지를 수신하고, 거래 메시지를 분석하여 거래가 저장되어야 할 목적 테이블을 구분하고, 상기 테이블의 스키마(1000) 내의 신뢰 무결성 제약조건(1230)에 따라 신뢰 무결성 조건을 만족하는 경우에 한하여 거래 메시지를 저장하는 단계;
    를 포함하는 것을 특징으로 하는 RDBMS 기반의 분산원장 관리방법.
  2. 제 1 항에 있어서,
    상기 신뢰된 순서-스탬프는,
    신뢰된 순서-스탬프 서버(400)가 수집한 거래 메시지(110)를 수집한 순서에 따라 순서번호(425)를 부여하고,
    수집된 거래메시지(110) 내용에 순서를 결합하여 신뢰된 순서-스팸프 서버(400)의 개인키로 전자서명 (427)한 정보를 포함하는 것
    을 특징으로 하는 RDBMS 기반의 분산원장 관리방법.
  3. 제 1 항에 있어서,
    분산 노드(200)가 사용자 단말(100)에서 수집한 거래 메시지를 신뢰된 순서-스탬프 서버(400)로 전달하기 위하여, 서비스 ID와(111), 사용자 전자서명이 구비된 거래문장(112)을 포함하는 신규 거래 메시지(110)를 수신하는 단계;
    분산 노드(200)가 수신된 신규 거래 메시지로부터 서비스 ID(111)를 확인하고, 서비스 ID에 대응하는 순서-스탬프 서버에 대한 정보(510,530)를 참조하여 특정 신뢰된 순서-스탬프 서버(400)를 결정하는 단계; 및
    분산노드(200)가 상기 신뢰된 순서-스탬프 서버에 접속하여 신규 거래 메시지를 송신하는 단계;
    를 더 포함하는 것을 특징으로 하는 RDBMS 기반의 분산원장 관리방법.
  4. 제 1 항에 있어서,
    분산 노드(200)가 신뢰된 순서-스탬프 서버 (400) 또는 다른 분산노드(201)로부터 신뢰된 순서-스탬프가 부여된 신규 거래 메시지(431)를 중복없이 수신하기 위하여, 신뢰된 순서-스탬프 서버(400) 또는 다른 분산 노드(201)에 서비스 ID(111)와 마지막 순서번호(425)를 전달하여 신규 거래 메시지의 전달을 요청하는 단계;
    분산 노드(200)가 신뢰된 순서-스탬프 서버(400)또는 다른 분산 노드(201)로부터 신규 거래 메시지를 수신하는 단계; 및
    분산 노드(200)가 수신한 신규 거래 메시지의 순서번호(425)를 참조하여 분산 노드가 보유한 해당 서비스의 마지막 순서번호(425)보다 큰 순서번호를 가진 메시지만 정상 메시지로 선별하는 단계;
    를 더 포함하는 것을 특징으로 하는 RDBMS 기반의 분산원장 관리방법.
  5. 분산 노드(200)와 연결되어 신뢰된 순서-스탬프가 포함된 거래 메시지(431)를 수신하고, 거래 메시지를 분석하여 RDBMS(관계형데이터관리시스템) 고유의 논리적 무결성을 검증하는 것 이외에 신뢰된 순서-스탬프에 포함된 전자서명(437)및 거래 메시지 내의 전자서명을 검증하는 방법으로 거래 메시지의 무결성을 검증할 수 있는 기능을 수행하는 신뢰된 RDBMS(250) 기반의 분산원장 관리방법에 있어서,
    신뢰된 RDBMS(250)가 거래 메시지를 분석하여 목표 테이블을 찾아내는 단계;
    신뢰된 RDBMS(250)가 목표 테이블의 메타정보테이블 스키마를 분석하는 단계;
    신뢰된 RDBMS(250)가 메타정보테이블 스키마(1000) 내의 신뢰에 관련된 제약조건(1230)에 따라, 거래 메시지 내의 전자서명을 검증하는 단계; 및
    신뢰된 RDBMS(250)가 메타정보테이블 스키마의 제약조건에 위배되지 않는 경우 거래 메시지를 저장하는 단계;
    를 포함하며,
    상기 신뢰에 관련된 제약조건은, 순서-스탬프의 검증 및 거래 메시지 내용에 대한 무결성 검증을 포함하는 것
    을 특징으로 하는 RDBMS 기반의 분산원장 관리방법.
  6. 제 5 항에 있어서,
    신뢰된 순서-스탬프 서버(400)가 분산 노드(200)로부터 거래 메시지(110)를 수집하는 단계;
    신뢰된 순서-스탬프 서버(400)가 수집된 순서에 따라 신뢰된 순서-스탬프를 생성하는 단계; 및
    신뢰된 순서-스탬프 서버(400)가 분산 노드(200)에 신뢰된 순서-스탬프가 추가된 거래 메시지를 전달하는 단계;
    를 더 포함하는 것을 특징으로 하는 RDBMS 기반의 분산원장 관리방법.
KR1020220138198A 2020-06-30 2022-10-25 Rdbms 기반의 분산원장 관리 시스템 및 방법 KR20220151124A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020220138198A KR20220151124A (ko) 2020-06-30 2022-10-25 Rdbms 기반의 분산원장 관리 시스템 및 방법
KR1020240033680A KR20240038669A (ko) 2020-06-30 2024-03-11 Rdbms 기반의 분산원장 관리 시스템 및 방법

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020200079874A KR102460432B1 (ko) 2020-06-30 2020-06-30 Rdbms 기반의 분산원장 관리 시스템 및 방법
KR1020220138198A KR20220151124A (ko) 2020-06-30 2022-10-25 Rdbms 기반의 분산원장 관리 시스템 및 방법

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020200079874A Division KR102460432B1 (ko) 2020-06-30 2020-06-30 Rdbms 기반의 분산원장 관리 시스템 및 방법

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020240033680A Division KR20240038669A (ko) 2020-06-30 2024-03-11 Rdbms 기반의 분산원장 관리 시스템 및 방법

Publications (1)

Publication Number Publication Date
KR20220151124A true KR20220151124A (ko) 2022-11-14

Family

ID=79347897

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020200079874A KR102460432B1 (ko) 2020-06-30 2020-06-30 Rdbms 기반의 분산원장 관리 시스템 및 방법
KR1020220138198A KR20220151124A (ko) 2020-06-30 2022-10-25 Rdbms 기반의 분산원장 관리 시스템 및 방법
KR1020240033680A KR20240038669A (ko) 2020-06-30 2024-03-11 Rdbms 기반의 분산원장 관리 시스템 및 방법

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020200079874A KR102460432B1 (ko) 2020-06-30 2020-06-30 Rdbms 기반의 분산원장 관리 시스템 및 방법

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020240033680A KR20240038669A (ko) 2020-06-30 2024-03-11 Rdbms 기반의 분산원장 관리 시스템 및 방법

Country Status (1)

Country Link
KR (3) KR102460432B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102511570B1 (ko) 2022-10-12 2023-03-16 박정훈 블록체인 네트워크의 프로세스를 처리하기 위한 방법, 장치, 시스템, 방법 및 컴퓨터 판독가능 저장매체

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102081159B1 (ko) 2018-11-08 2020-02-25 엔에이치엔 주식회사 블록체인 시스템 및 블록체인 시스템에서 복수의 노드들이 메시지를 검증 및 전파하는 방법
KR102097995B1 (ko) 2018-08-17 2020-04-07 주식회사 트러스트디비 이중 지불 방지를 위한 전자 결제 시스템 및 그 결제 방법

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190079324A (ko) * 2017-12-27 2019-07-05 에이치닥테크놀로지 주식회사 한국영업소 블록체인 시스템을 이용한 데이터베이스의 무결성 강화 방법 및 시스템
CN110827008B (zh) * 2018-08-08 2023-07-18 华为技术有限公司 一种区块链节点和交易方法
CA3057395A1 (en) * 2019-03-18 2019-05-31 Alibaba Group Holding Limited System and method for ending view change protocol

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102097995B1 (ko) 2018-08-17 2020-04-07 주식회사 트러스트디비 이중 지불 방지를 위한 전자 결제 시스템 및 그 결제 방법
KR102081159B1 (ko) 2018-11-08 2020-02-25 엔에이치엔 주식회사 블록체인 시스템 및 블록체인 시스템에서 복수의 노드들이 메시지를 검증 및 전파하는 방법

Also Published As

Publication number Publication date
KR20240038669A (ko) 2024-03-25
KR102460432B1 (ko) 2022-10-27
KR20220001644A (ko) 2022-01-06

Similar Documents

Publication Publication Date Title
US20220209958A1 (en) Systems and methods for state of data management
US10754848B2 (en) Method for registration of data in a blockchain database and a method for verifying data
US20210232555A1 (en) A method for registering of data as a digital file in a blockchain database
US8572043B2 (en) Method and system for storage of unstructured data for electronic discovery in external data stores
US20080005086A1 (en) Certificate-based search
US20080005024A1 (en) Document authentication system
JP2022504348A (ja) ブロックチェーン・リソースを格納するブロックチェーン通知ボード
KR20240038669A (ko) Rdbms 기반의 분산원장 관리 시스템 및 방법
CN111796968A (zh) 受数据库交易保证的提交
US10671709B2 (en) Data isolation in distributed hash chains
CN113065961A (zh) 一种电力区块链数据管理系统
US11983711B1 (en) Hierarchy-based blockchain
CN109886675A (zh) 基于区块链的资源访问令牌的分发和资源使用监控方法
US20230069247A1 (en) Data sharing solution
CN112084186A (zh) 拆分和合并存储
Härer et al. Decentralized attestation and distribution of information using blockchains and multi-protocol storage
EP4254247A1 (en) Atomic multi-unit transfer of single-instance data units in sharded blockchain
Aden et al. A fault-tolerant cryptographic protocol for patient record requests
KR102273960B1 (ko) 블록체인 기술에 기초하여 문서 데이터를 관리하기 위한 시스템
JP4439997B2 (ja) P2pファイル共有方法及びシステム
Yinka et al. Improving the data access control using blockchain for healthcare domain
US11928677B2 (en) Hierarchy-based distributed ledger
CN115062349A (zh) 数据资产管理系统及方法、装置、存储介质及电子设备
CN117121440A (zh) 统一资源标识符
Zhu et al. An Open Sharing Method for Digital Heritage Assets Based on Self-Sovereign Identity Technology

Legal Events

Date Code Title Description
A107 Divisional application of patent
E902 Notification of reason for refusal
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)