KR20200028110A - 폐쇄형 블록체인 관리 서버 및 이의 데이터 처리방법 - Google Patents
폐쇄형 블록체인 관리 서버 및 이의 데이터 처리방법 Download PDFInfo
- Publication number
- KR20200028110A KR20200028110A KR1020180106347A KR20180106347A KR20200028110A KR 20200028110 A KR20200028110 A KR 20200028110A KR 1020180106347 A KR1020180106347 A KR 1020180106347A KR 20180106347 A KR20180106347 A KR 20180106347A KR 20200028110 A KR20200028110 A KR 20200028110A
- Authority
- KR
- South Korea
- Prior art keywords
- block
- closed
- management server
- private
- blockchain network
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic 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/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/04—Payment circuits
- G06Q20/06—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
- G06Q20/065—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/36—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
- G06Q20/367—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1044—Group management mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- H04L2209/38—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/56—Financial cryptography, e.g. electronic payment or e-cash
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Computer Networks & Wireless Communication (AREA)
- Theoretical Computer Science (AREA)
- Finance (AREA)
- Physics & Mathematics (AREA)
- Signal Processing (AREA)
- General Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Computer Security & Cryptography (AREA)
- Power Engineering (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
본 출원은 폐쇄형 블록체인 관리 서버 및 이의 데이터 처리방법에 관한 것으로서, 본 발명의 일 실시예에 의한 폐쇄형 블록체인 관리 서버는, 생성주기 동안 상기 클라이언트 단말들로부터 수신한 데이터를 취합하고, 상기 취합한 데이터를 프라이빗 블록 내에 기록하여, 상기 생성주기마다 상기 프라이빗 블록을 생성하는 프라이빗 블록 생성부; 및 상기 프라이빗 블록에 대응하는 해시값을 생성하고, 상기 해시값을 연계된 공개형 블록체인 네트워크(Public Blockchain Network)의 공개 블록 내에 기록하는 해시등록부를 포함할 수 있다.
Description
본 출원은 폐쇄형 블록체인 관리 서버 및 이의 데이터 처리방법에 관한 것으로서, 특히 데이터 변조를 방지할 수 있는 폐쇄형 블록체인 관리 서버 및 이의 데이터 처리방법에 관한 것이다.
최근 다양한 형태의 암호체계를 이용한 디지털 화폐(crypto currency)가 속속 등장하면서 관심을 끌고 있다. 지난 2009년 가장 먼저 생기고 규모도 최대인 비트 코인(bit coin) 외에도 라이트 코인(lite coin), 피어 코인(peer coin), 네임 코인(name coin) 등이 있다. 2009년 1월 사토시 나카모토라는 필명의 프로그래머가 개발한 비트 코인은 실제 생활에서 쓰이는 화폐가 아니라, 온라인 거래상에서 쓰이는 가상화폐이다. 비트 코인은 2008년 사토시 나카모토라는 정체불명의 인물이 각국의 중앙은행이 화폐 발행을 독점하고 자의적인 통화정책을 펴는 것에 대한 반발로 고안해 낸 것으로 알려져 있다. 컴퓨터가 제시하는 매우 난해한 수학 문제를 풀면 그 대가로 비트 코인을 지급하는 작동방식으로, MIT 라이선스를 적용해 오픈 소스로 공개했다. 컴퓨터 운영체제(OS)인 리눅스처럼 비트 코인 역시 프로그래밍 설계도가 공개되어 있어서 개발자라면 누구나 프로그래밍 업그레이드에 참여할 수 있다.
위와 같은 비트 코인을 온라인 상에서 처리하는 과정에서 블록과 블록체인은 핵심적인 역할을 수행한다. 블록체인은 트랜잭션 정보를 담은 하나의 블록이 이전의 블록과 다음의 블록을 고유 값으로 상호 참조하도록 하여 체인처럼 연결된 구조를 갖는 것으로, P2P네트워크에 참여한 피어들 또는 트랜잭션을 생성하기 위한 참여자들이 P2P네트워크에서 생성된 모든 블록을 저장함으로써 누구나 거래내역의 조회가 가능하고 특유의 작업 증명 방식으로 작업을 증명한 자에게 자체적으로 발행한 재화를 보상하는 절차와 대차 형태의 잔액 가감 절차를 사용하는 전문 형식의 성격을 띄고 있는 기술이다.
현재 대중적으로 사용되는 블록체인 기술은 비트 코인을 발행하는 블록체인으로서 전세계 슈퍼컴퓨터를 합친 연산 능력보다 더 강력한 수준으로 해시화된 블록 체계를 가지고 있으며 특유의 보안성을 지니고 있다.
이와 관련, 비트코인과 같은 종래의 기술은 P2P네트워크를 통하여 전파되는 블록에 대해 피어 각각이 모든 블록을 저장하기 때문에 중앙 집중화된 데이터 저장소와 비교하였을 때 비교적 데이터 소실로부터 안전하며 또한 누구나 전파되는 블록 또는 트랜잭션을 수신할 수 있기 때문에 투명한 데이터 전파체계를 가지고 있다. 특히 종래의 기술은 해싱 파워 발전에 맞추어 보안성이 증대되고 위변조로부터 안전한 기술로 인정받고 있다.
본 출원은, 데이터 변조 방지의 수준을 공개형 블록체인 네트워크(Public Blockchain Network)의 수준으로 높일 수 있는 폐쇄형 블록체인 관리 서버 및 이의 데이터 처리방법을 제공하고자 한다.
본 출원은, 폐쇄형 블록체인 네트워크(Private Blockchain Network)의 데이터 변조 방지의 수준을 향상시키는 동시에, 데이터 저장용량과 처리속도를 향상시킬 수 있는 폐쇄형 블록체인 관리 서버 및 이의 데이터 처리방법을 제공하고자 한다.
본 발명의 일 실시예에 의한 폐쇄형 블록체인 관리 서버는, 복수의 클라이언트 단말들을 포함하는 폐쇄형 블록체인 네트워크(Private Blockchain Network)를 형성하는 폐쇄형 블록체인 관리서버에 관한 것으로서, 생성주기 동안 상기 클라이언트 단말들로부터 수신한 데이터를 취합하고, 상기 취합한 데이터를 프라이빗 블록 내에 기록하여, 상기 생성주기마다 상기 프라이빗 블록을 생성하는 프라이빗 블록 생성부; 및 상기 프라이빗 블록에 대응하는 해시값을 생성하고, 상기 해시값을 연계된 공개형 블록체인 네트워크(Public Blockchain Network)의 공개 블록 내에 기록하는 해시등록부를 포함할 수 있다.
본 발명의 일 실시예에 의한 폐쇄형 블록체인 관리 서버의 데이터 처리방법은, 복수의 클라이언트 단말들을 포함하는 폐쇄형 블록체인 네트워크(Private Blockchain Network)를 형성하는 폐쇄형 블록체인 관리서버의 데이터 처리방법에 관한 것으로서, 생성주기 동안 상기 클라이언트 단말들로부터 수신한 데이터를 취합하고, 상기 취합한 데이터를 프라이빗 블록 내에 기록하여, 상기 생성주기마다 상기 프라이빗 블록을 생성하는 프라이빗 블록 생성단계; 및 상기 프라이빗 블록에 대응하는 해시값을 생성하고, 상기 해시값을 연계된 공개형 블록체인 네트워크(Public Blockchain Network)의 공개 블록 내에 기록하는 해시등록단계를 포함할 수 있다.
덧붙여 상기한 과제의 해결수단은, 본 발명의 특징을 모두 열거한 것이 아니다. 본 발명의 다양한 특징과 그에 따른 장점과 효과는 아래의 구체적인 실시형태를 참조하여 보다 상세하게 이해될 수 있을 것이다.
본 발명의 일 실시예에 의한 폐쇄형 블록체인 관리 서버 및 이의 데이터 처리방법에 의하면, 폐쇄형 블록체인 네트워크의 데이터 변조 방지 수준을 공개형 블록체인 네트워크의 수준으로 높일 수 있다. 즉, 폐쇄형 블록체인 네트워크에서 생성한 프라이빗 블록의 해시값을 공개형 블록체인 네트워크의 공개 블록에 등록함으로써, 프라이빗 블록의 무결성을 입증하는 것이 가능하다.
본 발명의 일 실시예에 의한 폐쇄형 블록체인 관리 서버 및 이의 데이터 처리방법에 의하면, 폐쇄형 블록체인 네트워크의 데이터 변조 방지 수준을 향상시키는 동시에, 데이터 저장용량과 처리속도를 향상시키는 것이 가능하다.
또한, 본 발명의 일 실시예에 의한 폐쇄형 블록체인 관리 서버 및 이의 데이터 처리방법은 ASP(Application Service Provider) 형태로 서비스를 제공하는 것이 가능하다.
다만, 본 발명의 실시예들에 따른 폐쇄형 블록체인 관리 서버 및 이의 데이터 처리방법이 달성할 수 있는 효과는 이상에서 언급한 것들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도1은 본 발명의 일 실시예에 의한 이종 블록체인 네트워크를 연계하는 폐쇄형 블록체인 관리서버를 나타내는 개략도이다.
도2는 본 발명의 일 실시예에 의한 폐쇄형 블록체인 관리서버를 나타내는 블록도이다.
도3은 본 발명의 일 실시예에 의한 공개형 블록체인 네트워크의 공개 블록 생성을 나타내는 개략도이다.
도4는 본 발명의 일 실시예에 의한 폐쇄형 블록체인 관리서버의 공개 블록 내 프라이빗 블록의 해시값 기록을 나타내는 개략도이다.
도5는 본 발명의 일 실시예에 의한 폐쇄형 블록체인 관리서버의 데이터 처리방법을 나타내는 순서도이다.
도2는 본 발명의 일 실시예에 의한 폐쇄형 블록체인 관리서버를 나타내는 블록도이다.
도3은 본 발명의 일 실시예에 의한 공개형 블록체인 네트워크의 공개 블록 생성을 나타내는 개략도이다.
도4는 본 발명의 일 실시예에 의한 폐쇄형 블록체인 관리서버의 공개 블록 내 프라이빗 블록의 해시값 기록을 나타내는 개략도이다.
도5는 본 발명의 일 실시예에 의한 폐쇄형 블록체인 관리서버의 데이터 처리방법을 나타내는 순서도이다.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 즉, 본 발명에서 사용되는 '부'라는 용어는 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, '부'는 어떤 역할들을 수행한다. 그렇지만 '부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 '부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '부'들로 결합되거나 추가적인 구성요소들과 '부'들로 더 분리될 수 있다.
또한, 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시 예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
도1은 본 발명의 일 실시예에 의한 이종 블록체인 네트워크를 연계하는 폐쇄형 블록체인 관리서버를 나타내는 개략도이다.
도1을 참조하면, 폐쇄형 블록체인 관리서버(100)는 복수의 클라이언트 단말(1)들을 포함하는 폐쇄형 블록체인 네트워크(Private Blockchain Network)를 형성할 수 있으며, 형성한 폐쇄형 블록체인 네트워크를 별도의 공개형 블록체인 네트워크(Public Blockchain Network, 200)와 연계시킬 수 있다. 여기서, 공개형 블록체인 네트워크에는 비트코인(bitcoin)이나 이더리움(Ethereum) 등의 네트워크가 포함될 수 있다.
블록체인(Blockchain security technology)은, 블록(block)에 데이터를 담아 체인 형태로 연결한 후, 수많은 컴퓨터에서 동시에 이를 복제하여 저장하도록 하는 분산형 데이터 저장 기술이다. 즉, 중앙집중형 서버에 거래기록을 보관하지 않고 거래에 참여하는 모든 거래 참여자들에게 거래 내역을 보내주며, 이를 이용하여 거래 때마다 모든 거래 참여자들이 정보를 공유하고 이를 대조할 수 있다. 따라서, 거래에 참여하는 모든 거래 참여자들을 해킹하지 않는 이상 블록체인에 기록된 데이터의 위조나 변조하는 것이 불가능하다.
여기서 블록은 데이터를 저장하는 단위로, 도3에 도시한 바와 같이, 체인형태로 연결될 수 있다. 즉, 블록은 헤더(header, a)와 바디(body, b)로 구분할 수 있으며, 헤더(a)에는 이전 블록헤더의 해시값, 머클루트(Merkle Root)나 넌스(nounce) 등의 암호코드가 저장될 수 있으며, 바디(b)에는 거래 내역(transaction)이 저장될 수 있다. 각각의 블록은 일정한 생성주기(예를들어, 10분)마다 생성될 수 있으며, 생성주기 동안 발생한 거래 기록들을 취합하여 블록 내에 기록할 수 있다. 이때, 블록들은 각각의 신뢰성을 검증하면서, 이전 블록과 연결하여 블록체인을 형성할 수 있다.
한편, 블록체인은 일반적으로 누구나 참여 가능한 공개형 블록체인 네트워크(Public Blockchain Network)와 제한된 특정 주체만 참여 가능한 폐쇄형 블록체인 네트워크(Private Blockchain Network)로 구분할 수 있다.
폐쇄형 블록체인 네트워크의 경우 제한된 특정 주체만이 참여가능하므로, 데이터의 외부 노출 등을 막을 수 있으며, 네트워크 내 데이터 전송속도나 데이터 용량 등을 필요에 따라 다양한 형태로 변형하는 것이 가능하다. 따라서, 기업 등의 내부 데이터에 적용하는 경우에는 폐쇄형 블록체인 네트워크 등의 활용을 선호할 수 있다. 다만, 폐쇄형 블록체인 네트워크의 경우, 보안성이 공개형 블록체인 네트워크에 비하여 현저하게 떨어지는 등의 문제점이 존재한다. 즉, 소수의 제한된 참여주체만이 네트워크에 참여하므로, 일부 참여주체들이 합의하는 경우 임의로 데이터를 변조하거나 위조하는 것이 가능하다는 점에서 위험성이 존재한다.
반면에, 공개형 블록체인 네트워크의 경우, 다수의 참여자들이 존재하므로, 데이터의 위, 변조가 사실상 불가능하다는 점에서 보안성 측면에서 유리하지만, 다수의 참여자들이 이용가능하여야 하므로, 처리속도와 처리가능한 데이터 용량에 한계가 있다.
이를 해결하기 위하여, 본 발명의 일 실시예에 의한 폐쇄형 블록체인 관리서버(100)는, 폐쇄형 블록체인 네트워크와 공개형 블록체인 네트워크를 연계시킬 수 있다. 즉, 폐쇄형 블록체인 네트워크에서 생성한 프라이빗 블록의 해시값을 공개형 블록체인 네트워크의 공개 블록에 등록시킬 수 있다. 이를 통하여, 대용량의 데이터 처리 및 처리속도 향상을 구현하는 동시에, 프라이빗 블록의 무결성을 입증하는 것이 가능하다. 이하, 본 발명의 일 실시예에 의한 폐쇄형 블록체인 관리서버(100)를 설명한다.
도2는 본 발명의 일 실시예에 의한 폐쇄형 블록체인 관리서버(100)를 나타내는 블록도이다.
도2를 참조하면, 본 발명의 일 실시예에 의한 폐쇄형 블록체인 관리서버(100)는 API(Application Programming interface) 인터페이스부(110), 데이터 검증부(120), 프라이빗 블록 생성부(130), 해시등록부(140) 및 지갑관리부(150)를 포함할 수 있다.
이하 도2를 참조하여 본 발명의 일 실시예에 의한 폐쇄형 블록체인 관리서버(100)를 설명한다.
API 인터페이스부(110)는 클라이언트 단말(1)과 통신을 수행할 수 있으며, 클라이언트 단말(1)로부터 데이터를 입력받을 수 있다. 폐쇄형 블록체인 네트워크에는 제한된 수의 클라이언트 단말(1)들이 포함될 수 있으며, 각각의 클라이언트 단말(1)들은 폐쇄형 블록체인 관리서버(100)에게 데이터를 전송할 수 있다. 예를들어, 클라이언트 단말(1)들 사이의 물품이나 대금 지급 등의 거래 내역이나, 개인정보나 의료기록 등의 전달내역 등을 비롯하여 다양한 데이터들이 API 인터페이스부(110)를 통하여 입력될 수 있다.
여기서, 폐쇄형 블록체인 네트워크에는 하나의 노드(node)만이 형성될 수 있으며, 폐쇄형 블록체인 관리서버(100)가 노드로 동작할 수 있다. 따라서, API 인터페이스부(110)는, 각각의 클라이언트 단말(1)들이 폐쇄형 블록체인 네트워크 내에서 수행하는 거래내역들에 대한 데이터를 취합할 수 있다. 여기서, API 인터페이스부(110)가 클라이언트 단말(1)로부터 전송받는 데이터 포맷에는 특별한 제한이 없으며, 실시예에 따라 다양하게 설정할 수 있다. 즉, 폐쇄형 블록체인 관리서버(100)는 임의로 폐쇄형 블록체인 네트워크 내에서 사용되는 데이터 포맷이나 데이터 크기 등을 설정할 수 있다.
데이터 검증부(120)는 API 인터페이스부(110)로부터 수신한 데이터들의 정합성을 검증할 수 있으며, 정합성이 인정되지 않는 데이터들은 제외시킬 수 있다. 즉, 클라이언트 단말(1)들이 전송하는 데이터들 중에서 검증에 통과된 데이터들만을 추출할 수 있으며, 이후 검증에 통과된 데이터들만을 프라이빗 블록에 기록할 수 있다. 여기서, 데이터 검증부(120)에서 사용하는 데이터 검증로직의 종류는 제한되지 않으며, 실시예에 따라 다양한 종류의 데이터 검증로직 등이 적용될 수 있다.
프라이빗 블록생성부(130)는 일정한 생성주기마다 프라이빗 블록을 생성할 수 있다. 프라이빗 블록생성부(130)는 생성주기 동안 클라이언트 단말(1)들로부터 수신한 데이터들을 취합할 수 있으며, 취합한 데이터들을 해당 생성주기에 생성하는 프라이빗 블록 내에 기록할 수 있다. 또한, 프라이빗 블록 생성시, 직전 생성주기에 생성된 프라이빗 블록의 해시값을 프라이빗 블록 내에 더 포함하여, 프라이빗 블록들의 체인을 형성할 수 있다. 여기서, 해시값은 프라이빗 블록에 포함된 데이터들을 해시 함수(hash function)에 입력하여 얻을 수 있으며, SHA-256 등 다양한 종류의 해시함수들을 활용하여 생성할 수 있다.
일반적으로, 공개형 블록체인 네트워크 등의 경우에는 마이닝(mining) 등의 복잡한 과정을 통하여 블록을 생성하며, 이때 블록의 크기는 비교적 작은 값으로 고정될 수 있다. 반면에, 폐쇄형 블록체인 관리서버(100)는 클라이언트 단말(1)들 사이에 폐쇄형 블록체인 네트워크를 형성하므로, 별도의 마이닝 등의 과정을 거칠 필요없이 일정한 생성주기마다 프라이빗 블록을 생성할 수 있으며, 이때 프라이빗 블록의 크기 등에 대한 별도의 제한은 없다. 따라서, 프라이빗 블록생성부(130)는 프라이빗 블록을 필요에 따라 임의의 크기로 설정하여 생성할 수 있으며, 대용량의 블록을 생성하는 것도 가능하다.
해시등록부(140)는 프라이빗 블록에 대응하는 해시값을 생성할 수 있으며, 도4에 도시한 바와 같이, 생성한 해시값을 연계된 공개형 블록체인 네트워크(n1)의 공개 블록 내에 기록할 수 있다. 공개형 블록체인 네트워크의 경우, 생성된 공개 블록에 대한 위조나 변조 등이 불가능하므로, 공개 블록 내에 기록된 데이터를 항구적으로 보존할 수 있다. 따라서, 해시등록부(140)는, 프라이빗 블록의 해시값을 공개형 블록체인의 공개 블록에 기록하여, 위조 또는 변조의 위험없이 보존할 수 있다.
예를들어, 프라이빗 블록의 해시값을 공개 블록 내에 기록한 이후에, 상기 프라이빗 블록을 변조하여 새로운 해시값을 다시 등록하는 부정행위(이하, 해시 재등록)가 발생할 수 있다. 이 경우, 외부 검증자는 공개형 블록체인 네트워크의 공개 블록에 기록된 모든 블록 해시값들과, 폐쇄형 블록체인 네트워크의 프라이빗 블록에 기록된 모든 블록 해시값을 비교하는 방식으로, 해시 재등록이 있었는지를 검증할 수 있다.
또한, 프라이빗 블록의 변조여부를 검증하기 위하여, 프라이빗 블록의 원본과 복사본을 비교하는 것도 가능하다. 프라이빗 블록의 복사본은 클라이언트 단말(1)이나 폐쇄형 블록체인 관리서버(100) 등에 각각 저장되어 있을 수 있으며, 원본과 복사본이 서로 다른 경우에는, 복사본의 해시값이 공개형 블록체인 네트워크의 공개 블록 내에 등록되어 있는지를 확인하여 변조여부를 확인하는 것이 가능하다.
이외에도, 해시 재등록이 발생하는 경우에는, 변조된 블록이 등록된 이후에 등록된 모든 블록들의 해시값도 변경되므로, 이에 대한 재등록도 함께 수행될 수 있다. 즉, 해시 재등록은 하나의 블록에 대하여 발생하기보다는, 여러 개의 블록에 대하여 한꺼번에 발생하는 패턴을 가지게 된다. 이 경우, 여러 개의 프라이빗 블록에 대한 해시값들이, 공개형 블록체인 네트워크의 하나의 공개 블록에 몰려서 등록될 수 있다. 따라서, 이를 통하여 해시재등록의 발생여부를 손쉽게 모니터링하는 것이 가능하다.
한편, 해시등록부(140)는, 공개 블록 내에 해시값의 기록시, 해시값 기록을 위한 수수료를 공개형 블록체인 네트워크의 가상화폐로 지급할 수 있다. 해시등록부(140)는 공개형 블록체인 네트워크의 노드(node)와 연결될 수 있으며, 해당 노드를 통하여 수수료 지급 및 거래내역 기록 등을 수행할 수 있다. 여기서, 프라이빗 블록의 해시값은 공개 블록 내에 거래내역(transaction)으로 기록될 수 있으며, 실시예에 따라서는 공개 블록 내에 별도로 설정된 영역 내에 기록하는 것도 가능하다.
또한, 해시등록부(140)는 해시값의 기록시, 수수료를 지급하는 지갑주소를 공개 블록 내에 더 포함하여 기록할 수 있다. 실시예에 따라서는, 각각의 폐쇄형 블록체인 네트워크를 구축한 복수의 폐쇄형 블록체인 관리서버들이 존재할 수 있으며, 이들이 동일한 공개형 블록체인 네트워크 내에 각각 프라이빗 블록의 해시값들을 기록하는 경우가 있을 수 있다. 이 경우, 각각의 폐쇄형 블록체인 네트워크들을 구별할 필요가 있으므로, 해시등록부(140)는 이를 위한 지갑주소를 공개 블록 내에 더 포함하여 기록할 수 있다. 여기서, 지갑주소는 공개형 블록체인 네트워크에 참여하는 주체들의 가상화폐가 저장되는 것으로, 이를 이용하여 각각의 주체들을 특정하는 것이 가능하다. 따라서, 해시등록부(140)는 공개 블록 내에 해시값과 함께 지갑주소를 더 포함하여 기록함으로써, 해당 해시값은 특정 폐쇄형 블록체인 네트워크에서 기록한 것으로 표시할 수 있다. 이때, 폐쇄형 블록체인 관리 서버(100)는, 해당 지갑주소를 공개형 블록체인 네트워크 내에서 사용하는 것으로, 미리 공중에 공개할 수 있다.
지갑관리부(150)는 수수료 지급 및 지갑주소를 관리할 수 있다. 즉, 해시값 등록시 지불하는 수수료와, 폐쇄형 블록체인 관리 서버(100)에서 사용하는 지갑주소 등을 관리하여, 해시등록부(140)에서 가상화폐 등의 지불이 용이하게 진행되도록 할 수 있다.
추가적으로, 본 발명의 일 실시예에 의한 폐쇄형 블록체인 관리서버(100)는 클라우드 서버 등에 가상화하여 구현하는 것도 가능하다. 즉, 폐쇄형 블록체인 관리서버(100)는 ASP(Application Service Provider) 서비스의 형태로 제공될 수 있으며, 클라이언트 단말(1)들은 클라우드 서버를 통하여 ASP 서비스에 접근하여 폐쇄형 블록체인 네트워크 서비스를 제공받을 수 있다.
실시예에 따라서는, 별도의 ASP 운영업체 등이 클라우드 서버 상에 상기 폐쇄형 블록체인 관리서버(100)를 가상화하여 구축할 수 있으며, 기업 등은 폐쇄형 블록체인 관리서버(100)의 기능을 ASP 서비스의 형태로 제공받을 수 있다. 즉, 폐쇄형 블록체인 네트워크를 형성하고자 하는 기업 등의 운영주체들은, 자체적으로 폐쇄형 블록체인 관리서버(100) 등을 구축할 필요없이, ASP 운영업체가 제공하는 ASP 서비스를 통하여, 본 발명의 일 실시예에 의한 폐쇄형 블록체인 네트워크를 구현할 수 있다.
종래에는, 외부로부터의 접근을 차단하고, 데이터의 위조 또는 변조를 방지하기 위하여, 기업 등의 운영주체들이 자체적으로 내부에 관리서버 등을 구비하여 폐쇄형 블록체인 네트워크를 구축하였다. 그러나, 본 발명의 일 실시예에 의한 폐쇄형 블록체인 관리서버(100)은, 공개형 블록체인 네트워크와 연계하여, 폐쇄형 블록체인 네트워크의 데이터들에 대한 위, 변조 여부를 검증할 수 있으며, ASP 운영주체도 해당 데이터를 임의로 위조 또는 변조하는 것이 불가능하다. 따라서, ASP 운영업체가 운영하는 클라우드 서버에 폐쇄형 블록체인 관리서버(100)를 구축한 후, 기업 등의 운영주체에게 폐쇄형 블록체인 관리서버(100)의 기능을 ASP 서비스로 제공하는 등의 실시예가 가능하다.
도5는 본 발명의 일 실시예에 의한 폐쇄형 블록체인 관리서버의 데이터 처리방법을 나타내는 순서도이다.
도5를 참조하면 본 발명의 일 실시예에 의한 폐쇄형 블록체인 관리서버의 데이터 처리방법은, 데이터수신 단계(S10), 데이터 검증 단계(S20), 프라이빗 블록 생성 단계(S30), 해시등록단계(S40) 및 지갑관리단계(S50)를 포함할 수 있다.
이하 도5을 참조하여 본 발명의 일 실시예에 의한 폐쇄형 블록체인 관리서버의 데이터 처리방법을 설명한다.
데이터수신 단계(S10)에서는, 폐쇄형 블록체인 관리서버가 클라이언트 단말들과 통신을 수행할 수 있으며, 클라이언트 단말로부터 데이터를 입력받을 수 있다. 폐쇄형 블록체인 네트워크에는 제한된 수의 클라이언트 단말들이 포함될 수 있으며, 각각의 클라이언트 단말들은 거래내역 등의 데이터를 전송할 수 있다. 여기서, 폐쇄형 블록체인 네트워크에는 하나의 노드(node)만이 형성될 수 있으며, 폐쇄형 블록체인 관리서버가 노드로 동작할 수 있다. 따라서, 폐쇄형 블록체인 관리서버는, 각각의 클라이언트 단말들이 폐쇄형 블록체인 네트워크 내에서 수행하는 거래내역들에 대한 데이터를 취합할 수 있다. 여기서, 폐쇄형 블록체인 관리서버가 클라이언트 단말로부터 전송받는 데이터 포맷에는 특별한 제한이 없으며, 실시예에 따라 다양하게 설정할 수 있다.
데이터 검증 단계(S20)에서는, 폐쇄형 블록체인 관리서버가 수신한 데이터들의 정합성을 검증할 수 있으며, 정합성이 인정되지 않는 데이터들은 제외시킬 수 있다. 즉, 클라이언트 단말들이 전송하는 데이터들 중에서 검증에 통과된 데이터들만을 추출할 수 있으며, 이후 검증에 통과된 데이터들만을 프라이빗 블록에 기록할 수 있다.
프라이빗 블록 생성단계(S30)에서는, 생성주기 동안 클라이언트 단말들로부터 수신한 데이터를 취합하고, 취합한 데이터를 프라이빗 블록 내에 기록하여, 생성주기마다 프라이빗 블록을 생성할 수 있다. 또한, 프라이빗 블록 생성시, 직전 생성주기에 생성된 프라이빗 블록의 해시값을 프라이빗 블록 내에 더 포함하여, 프라이빗 블록들의 체인을 형성할 수 있다. 여기서, 해시값은 프라이빗 블록에 포함된 데이터들을 해시 함수(hash function)에 입력하여 얻을 수 있으며, SHA-256 등을 활용할 수 있다. 폐쇄형 블록체인 관리서버는 별도의 마이닝 등의 과정을 거칠 필요없이 일정한 생성주기마다 프라이빗 블록을 생성할 수 있으며, 프라이빗 블록을 필요에 따라 임의의 크기로 설정하여 생성할 수 있다.
해시등록단계(S40)에서는, 프라이빗 블록에 대응하는 해시값을 생성하고, 해시값을 연계된 공개형 블록체인 네트워크(Public Blockchain Network)의 공개 블록 내에 기록할 수 있다. 공개형 블록체인 네트워크의 경우, 생성된 공개 블록에 대한 위조나 변조 등이 불가능하므로, 공개 블록 내에 기록된 데이터를 항구적으로 보존할 수 있다. 따라서, 프라이빗 블록의 해시값을 공개형 블록체인의 공개 블록에 기록하여, 위조 또는 변조의 위험없이 보존할 수 있다.
한편, 해시등록단계(S40)에서는, 공개 블록 내에 해시값의 기록시, 해시값 기록을 위한 수수료를 공개형 블록체인 네트워크의 가상화폐로 지급할 수 있다. 폐쇄형 블록체인 관리서버는 공개형 블록체인 네트워크의 노드(node)와 연결될 수 있으며, 해당 노드를 통하여 수수료 지급 및 거래내역 기록 등을 수행할 수 있다. 여기서, 프라이빗 블록의 해시값은 공개 블록 내에 거래내역(transaction)으로 기록될 수 있으며, 실시예에 따라서는 공개 블록 내에 별도로 설정된 영역 내에 기록하는 것도 가능하다.
또한, 폐쇄형 블록체인 관리서버는 해시값의 기록시, 수수료를 지급하는 지갑주소를 공개 블록 내에 더 포함하여 기록할 수 있다. 실시예에 따라서는, 각각의 폐쇄형 블록체인 네트워크를 구축한 복수의 폐쇄형 블록체인 관리서버들이 존재할 수 있으며, 이들이 동일한 공개형 블록체인 네트워크 내에 각각 프라이빗 블록의 해시값들을 기록하는 경우가 있을 수 있다. 이 경우, 각각의 폐쇄형 블록체인 네트워크들을 구별할 필요가 있으므로, 폐쇄형 블록체인 관리서버는 이를 위한 지갑주소를 공개 블록 내에 더 포함하여 기록할 수 있다. 여기서, 지갑주소는 공개형 블록체인 네트워크에 참여하는 주체들의 가상화폐가 저장되는 것으로, 이를 이용하여 각각의 주체들을 특정하는 것이 가능하다. 이때, 폐쇄형 블록체인 관리 서버는, 해당 지갑주소를 공개형 블록체인 네트워크 내에서 사용하는 것으로, 미리 공중에 공개할 수 있다.
지갑관리단계(50)에서는, 수수료 지급 및 지갑주소를 관리할 수 있다. 즉, 해시값 등록시 지불하는 수수료와, 폐쇄형 블록체인 관리 서버에서 사용하는 지갑주소 등을 관리하여, 가상화폐 등의 지불이 용이하게 진행되도록 할 수 있다.
전술한 본 발명은, 프로그램이 기록된 매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 매체는, 컴퓨터로 실행 가능한 프로그램을 계속 저장하거나, 실행 또는 다운로드를 위해 임시 저장하는 것일 수도 있다. 또한, 매체는 단일 또는 수개 하드웨어가 결합된 형태의 다양한 기록수단 또는 저장수단일 수 있는데, 어떤 컴퓨터 시스템에 직접 접속되는 매체에 한정되지 않고, 네트워크 상에 분산 존재하는 것일 수도 있다. 매체의 예시로는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등을 포함하여 프로그램 명령어가 저장되도록 구성된 것이 있을 수 있다. 또한, 다른 매체의 예시로, 애플리케이션을 유통하는 앱 스토어나 기타 다양한 소프트웨어를 공급 내지 유통하는 사이트, 서버 등에서 관리하는 기록매체 내지 저장매체도 들 수 있다. 따라서, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.
본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다. 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 본 발명에 따른 구성요소를 치환, 변형 및 변경할 수 있다는 것이 명백할 것이다.
1: 클라이언트 단말
100: 폐쇄형 블록체인 관리서버
110: API 인터페이스부 120: 데이터 검증부
130: 프라이빗 블록 생성부 140: 해시등록부
150: 지갑관리부
200: 공개형 블록체인 네트워크(Public Blockchain Network)
S10: 데이터수신단계 S20: 데이터 검증단계
S30: 프라이빗 블록 생성단계 S40: 해시등록단계
S50: 지갑관리단계
110: API 인터페이스부 120: 데이터 검증부
130: 프라이빗 블록 생성부 140: 해시등록부
150: 지갑관리부
200: 공개형 블록체인 네트워크(Public Blockchain Network)
S10: 데이터수신단계 S20: 데이터 검증단계
S30: 프라이빗 블록 생성단계 S40: 해시등록단계
S50: 지갑관리단계
Claims (10)
- 복수의 클라이언트 단말들을 포함하는 폐쇄형 블록체인 네트워크(Private Blockchain Network)를 형성하는 폐쇄형 블록체인 관리서버에 있어서,
생성주기 동안 상기 클라이언트 단말들로부터 수신한 데이터를 취합하고, 상기 취합한 데이터를 프라이빗 블록 내에 기록하여, 상기 생성주기마다 상기 프라이빗 블록을 생성하는 프라이빗 블록 생성부; 및
상기 프라이빗 블록에 대응하는 해시값을 생성하고, 상기 해시값을 연계된 공개형 블록체인 네트워크(Public Blockchain Network)의 공개 블록 내에 기록하는 해시등록부를 포함하는 폐쇄형 블록체인 관리서버.
- 제1항에 있어서,
상기 클라이언트단말과 통신을 수행하며, 상기 클라이언트단말로부터 상기 데이터를 입력받는 API(Application Program Interface) 인터페이스부; 및
상기 API 인터페이스부로부터 수신한 상기 데이터들의 정합성을 검증하고, 상기 정합성이 인정되지 않는 데이터들을 제외시키는 데이터 검증부를 더 포함하는 폐쇄형 블록체인 관리서버.
- 제1항에 있어서, 상기 프라이빗 블록 생성부는
상기 프라이빗 블록 생성시, 직전 생성주기에 생성된 프라이빗 블록의 해시값을 상기 프라이빗 블록 내에 더 포함하여 기록하는 것을 특징으로 하는 폐쇄형 블록체인 관리서버.
- 제1항에 있어서, 상기 해시등록부는
상기 공개 블록 내에 상기 해시값의 기록시, 상기 해시값 기록을 위한 수수료를 상기 공개형 블록체인 네트워크의 가상화폐로 지급하는 것을 특징으로 하는 폐쇄형 블록체인 관리서버.
- 제4항에 있어서, 상기 해시등록부는
상기 수수료를 지급하고, 상기 해시값을 상기 공개 블록 내에 거래내역(transaction)으로 기록하는 것을 특징으로 하는 폐쇄형 블록체인 관리서버.
- 제1항에 있어서, 상기 해시등록부는
상기 해시값의 기록시, 상기 수수료를 지급하는 지갑주소를 상기 공개 블록 내에 더 포함하여 기록하는 것을 특징으로 하는 폐쇄형 블록체인 관리서버.
- 제6항에 있어서, 상기 지갑주소는
상기 폐쇄형 블록체인 관리 서버가, 상기 공개형 블록체인 네트워크 내에서 사용하는 것으로 공개된 것을 특징으로 하는 폐쇄형 블록체인 관리서버.
- 제6항에 있어서,
상기 수수료 지급 및 상기 지갑주소를 관리하는 지갑관리부를 더 포함하는 것을 특징으로 하는 폐쇄형 블록체인 관리서버.
- 제1항 내지 제8항 중 어느 한 항의 폐쇄형 블록체인 관리서버를 가상화하여, ASP(Application Service Provider) 서비스로 제공하는 클라우드 서버.
- 복수의 클라이언트 단말들을 포함하는 폐쇄형 블록체인 네트워크(Private Blockchain Network)를 형성하는 폐쇄형 블록체인 관리서버의 데이터 처리방법에 있어서,
생성주기 동안 상기 클라이언트 단말들로부터 수신한 데이터를 취합하고, 상기 취합한 데이터를 프라이빗 블록 내에 기록하여, 상기 생성주기마다 상기 프라이빗 블록을 생성하는 프라이빗 블록 생성단계; 및
상기 프라이빗 블록에 대응하는 해시값을 생성하고, 상기 해시값을 연계된 공개형 블록체인 네트워크(Public Blockchain Network)의 공개 블록 내에 기록하는 해시등록단계를 포함하는 폐쇄형 블록체인 관리서버의 데이터 처리방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180106347A KR20200028110A (ko) | 2018-09-06 | 2018-09-06 | 폐쇄형 블록체인 관리 서버 및 이의 데이터 처리방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180106347A KR20200028110A (ko) | 2018-09-06 | 2018-09-06 | 폐쇄형 블록체인 관리 서버 및 이의 데이터 처리방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20200028110A true KR20200028110A (ko) | 2020-03-16 |
Family
ID=69948683
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180106347A KR20200028110A (ko) | 2018-09-06 | 2018-09-06 | 폐쇄형 블록체인 관리 서버 및 이의 데이터 처리방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20200028110A (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102348072B1 (ko) * | 2021-05-31 | 2022-01-06 | 조민규 | 양방향 소셜 블록체인 플랫폼 및 이를 이용한 소셜코인 발행 및 결제방법 |
-
2018
- 2018-09-06 KR KR1020180106347A patent/KR20200028110A/ko not_active IP Right Cessation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102348072B1 (ko) * | 2021-05-31 | 2022-01-06 | 조민규 | 양방향 소셜 블록체인 플랫폼 및 이를 이용한 소셜코인 발행 및 결제방법 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220239470A1 (en) | Cross-blockchain data processing method and apparatus, device, and computer storage medium | |
JP7411011B2 (ja) | セキュアな投票及び配布に利用されるブロックチェーンが実装された計数システム及び方法 | |
Belotti et al. | A vademecum on blockchain technologies: When, which, and how | |
Komalavalli et al. | Overview of blockchain technology concepts | |
US11669811B2 (en) | Blockchain-based digital token utilization | |
Lai et al. | Blockchain–from public to private | |
Scherer | Performance and scalability of blockchain networks and smart contracts | |
Acharjamayum et al. | Blockchain: a tale of peer to peer security | |
Jani | Smart contracts: Building blocks for digital transformation | |
US11664973B2 (en) | Trust-varied relationship between blockchain networks | |
CN111383114A (zh) | 基于区块链的资产信息管理方法和装置 | |
US20230070625A1 (en) | Graph-based analysis and visualization of digital tokens | |
TW201935299A (zh) | 用於處理金融資產之策略模型腳本之區塊鏈系統、節點伺服器及其方法 | |
CN111402033A (zh) | 基于区块链的资产信息管理方法和装置 | |
CN111340628A (zh) | 基于区块链的资产信息管理方法和装置 | |
WO2021224428A1 (en) | Blockchain | |
Wüst et al. | Bitcontracts: Supporting smart contracts in legacy blockchains | |
KR20200028110A (ko) | 폐쇄형 블록체인 관리 서버 및 이의 데이터 처리방법 | |
Bagchi | Using blockchain technology and smart contracts for access management in IoT devices | |
Cai et al. | Advanced Blockchain Technology: Frameworks and Enterprise-Level Practices | |
Linus et al. | BitVM2: Bridging Bitcoin to Second Layers | |
Sathya et al. | Blockchain Technology: The trust-free systems | |
Stampernas | Blockchain technologies and smart contracts in the context of the Internet of Things | |
Antal et al. | Distributed Ledger Technology Review and Decentralized Applications Development Guidelines. Future Internet 2021, 13, 62 | |
Urbančok | Blockchain open-source software comparison |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
X091 | Application refused [patent] | ||
AMND | Amendment | ||
X601 | Decision of rejection after re-examination |