KR101727525B1 - 블록체인 기반 분산 저장 방법 및 이를 이용한 장치 - Google Patents

블록체인 기반 분산 저장 방법 및 이를 이용한 장치 Download PDF

Info

Publication number
KR101727525B1
KR101727525B1 KR1020160113774A KR20160113774A KR101727525B1 KR 101727525 B1 KR101727525 B1 KR 101727525B1 KR 1020160113774 A KR1020160113774 A KR 1020160113774A KR 20160113774 A KR20160113774 A KR 20160113774A KR 101727525 B1 KR101727525 B1 KR 101727525B1
Authority
KR
South Korea
Prior art keywords
block
delay time
nodes
write delay
measurement
Prior art date
Application number
KR1020160113774A
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 KR1020160113774A priority Critical patent/KR101727525B1/ko
Application granted granted Critical
Publication of KR101727525B1 publication Critical patent/KR101727525B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network-specific arrangements or communication protocols supporting networked applications
    • H04L67/10Network-specific arrangements or communication protocols supporting networked applications in which an application is distributed across nodes in the network
    • H04L67/1097Network-specific arrangements or communication protocols supporting networked applications in which an application is distributed across nodes in the network for distributed storage of data in a network, e.g. network file system [NFS], transport mechanisms for storage area networks [SAN] or network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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
    • G06F17/30194
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Application independent communication protocol aspects or techniques in packet data networks
    • H04L69/22Header parsing or analysis

Abstract

본 발명은 블록체인 기반 분산 저장 방법 및 이를 이용한 장치에 관한 발명으로서, 보다 자세하게는 블록체인 기술을 이용하여 하나 이상의 노드들간에 거래내역을 유지하는 방법에 있어서, 네트워크 트래픽을 감소하고 지연 시간을 조절하는 방법을 제공하기 위한 발명이다.
상기 목적을 달성하기 위한 본 발명에 따른 블록체인 기반 분산 저장 방법은 블록체인을 기반으로 하여 블록을 하나 이상의 노드들간에 분산저장하는 방법에 있어서, 블록생성 주기에 해당하면, 해당하는 하나 이상의 트랜잭션들을 하나의 블록으로 생성하는 단계 -상기 블록은 블록헤더와 실제 트랜잭션 내용을 포함하는 블록내용으로 구성됨-; 및 상기 블록헤더를 매개변수로 하여서, 상기 하나 이상의 노드들간에 합의를 수행하는 단계를 포함한다.

Description

블록체인 기반 분산 저장 방법 및 이를 이용한 장치 {BLOCK CHAIN BASED DISTRIBUTED STORAGE METHOD AND DEVICE THEREOF}

본 발명은 블록체인 기반 분산 저장 방법 및 이를 이용한 장치에 관한 발명으로서, 보다 자세하게는 블록체인 기술을 이용하여 하나 이상의 노드들 간에 거래내역을 유지하는 방법에 있어서, 네트워크 트래픽을 감소하고 지연 시간을 조절하는 방법을 제공하기 위한 발명이다.

최근 들어 다양한 종류의 가상화폐가 쏟아져 나오고 있으며, 그 중에서도 비트코인이 가장 유명하다. 비트코인은 시스템을 통제하는 서버가 없이 P2P 방식으로 완전히 분산화된 형태로 작동하게 설계되었다. 또한 화폐를 사용할 수 있는 사용자를 따로 등록하는 기관을 두지 않고 누구나 시스템을 사용할 수 있게 했다. 등록하는 서버가 없으므로, 각각의 사용자는 공개키를 일종의 일회용 계좌번호처럼 사용한다. A라는 사용자가 특정 메시지에 자신만이 알고 있는 개인키로 서명하면, 제삼자는 공개키를 이용해 그 서명이 이 공개키의 짝에 해당하는 비밀키로 서명한 것인지(다시 말해 A라는 사용자가 작성한 것이 맞는지) 인증할 수 있는 것이다.

예를 들어 A가 B에게 돈을 전달하는 경우, 기존의 은행 시스템에서는 B는 먼저 은행에 계좌를 개설하고, A에게 은행 이름과 계좌번호를 알려 준다. A는 자신의 은행을 통해 B의 계좌로 돈을 송금하고 이 거래는 양쪽 은행이 보증한다. 그러나 비트코인에서는 B는 공개키와 개인키를 생성해서 A에게 공개키를 전달하고 개인키는 자신의 컴퓨터에 안전하게 보관한다. A는 B의 공개키를 수신자로 하는 수표를 하나 작성해 P2P 네트워크 전체에 전송한다. 모든 비트코인 사용자가 이 수표를 받지만 나중에 이 수표를 사용할 수 있는 사람은 B의 개인 키를 가지고 있는 사람뿐이다. B가 이 수표를 받게 될 사람이라는 건 앞서 언급한 공개키 암호화 알고리즘을 이용해 누구나 검증할 수 있다.

비트코인이란 시스템에서 가장 중요한 부분은 바로 이렇게 돈을 주고받는 거래(transaction)다. 비트코인을 생성해서 통화를 공급하고 비트코인을 개인끼리 주고받을 수 있게 하는 것이 비트코인 시스템의 전부라고 볼 수 있다. 비트코인의 거래 내역은 어느 주소에 있는 돈을 어느 주소로 보낸다는 내용을 담고 있는 일종의 수표이며, 이 수표는 누구나 발행할 수 있기 때문에 은행이 필요하지 않고 누가 수표의 주인인지도 은행이 확인해 줄 필요가 없다. 비트코인이란 가상 화폐 시스템에는 은행도 없고 은행 계좌도 없으며 오로지 개인끼리 주고받는 수표만 존재한다.

과거에 발행된 모든 수표, 즉 모든 거래 내역을 담고 있는 저장소를 비트코인에서는 블록체인이라 부른다. 블록체인은 P2P 네트워크의 모든 피어(peer, P2P 네트워크의 컴퓨터 또는 사용자)가 각자 가지고 있다. 이 블록체인에 모든 거래 내역이 포함되어 있다면 블록체인을 확인해 수표 발행자가 잔고가 있는지, 즉 수표를 발행할 자격이 있는지 확인할 수 있을 것이다.

내가 누군가에게 수표를 발행할 수 있으려면 이전에 어디선가 그 금액만큼의 수표를 받아서 보유하고 있어야 한다. 따라서 비트코인에서 발행하는 수표는 이전 수표를 참조하는 링크를 포함하고 있고, 사용자는 그 링크를 따라가서 이전 수표가 포함하는 금액이 신규 수표가 발행하는 금액보다 큰지 확인한다. 모든 비트코인 사용자는 P2P 네트워크에 접속해 똑같은 거래장부 사본을 나눠 보관한다. 새로 생긴 거래내역을 거래장부에 써넣는 일도 사용자 몫이다. 이들은 10분에 한 번씩 모여 거래장부를 최신 상태로 갱신한다.

최근 거래내역을 적어 넣었으면, 새로 만든 거래장부를 다시 모든 비트코인 사용자가 나눠 가져간다. 이런 작업을 대략 10분에 한 번씩 반복한다. 이때 10분에 한 번씩 만드는 거래내역 묶음을 "블록(block)"이라고 부른다. 블록체인은 블록이 모인 거래장부 전체를 가리킨다. 비트코인은 처음 만들어진 2009년 1월부터 지금까지 이뤄진 모든 거래내역을 블록체인 안에 쌓아두고 있다. 지금도 전세계 비트코인 사용자는 10분에 한 번씩 비트코인 네트워크에서 만나 블록체인을 연장하고 있다.

문제는 기존의 비트코인의 블록체인 기술을 이용할시에, 거래가 증가함에 따라 이러한 거래내역 묶음을(이하 블록)을 관리하기 위한 컴퓨팅 파워 및 네트워크의 사용량이 기하급수적으로 늘어난다는 점에 있다.

또한 실제 금융기관등에서 이용시, 이러한 블록의 처리속도가 매우 중요한데, 기존의 기술로는 이러한 속도를 제어할 수 있는 방법이 없다는 점에서도 문제가 있다.

상기 목적을 달성하기 위한 본 발명에 따른 블록체인 기반 분산 저장 방법은 블록체인을 기반으로 하여 블록을 하나 이상의 노드들간에 분산저장하는 방법에 있어서, 블록생성 주기에 해당하면, 해당하는 하나 이상의 트랜잭션들을 하나의 블록으로 생성하는 단계 -상기 블록은 블록헤더와 실제 트랜잭션 내용을 포함하는 블록내용으로 구성됨-; 및 상기 블록헤더를 매개변수로 하여서, 상기 하나 이상의 노드들간에 합의를 수행하는 단계를 포함한다.

또한 상기 합의를 수행하는 단계는 상기 하나 이상의 노드들 중에서 주노드가 자신을 제외한 다른 노드들에 사전준비 메시지를 멀티캐스트하는 사전준비 단계; 상기 사전준비 메시지를 받은 노드들이 각각 자신을 제외한 다른 노드들에 준비 메시지를 전송하는 준비 단계; 및 상기 하나 이상의 노드들이 각각 합의 실행을 수행하는 실행 단계;를 포함하는 것이 바람직하다.

그리고 상기 실제 트랜잭션 내용을 포함하는 블록내용을 상기 하나 이상의 노드들에 전송하는 내용전송 단계;를 더 포함하는 것이 바람직하다.

또한 상기 블록헤드는 바로 앞에 위치하는 블록의 블록 해쉬값을 나타내는 previousblockhash; 및 개별 거래 정보의 거래 해쉬를 트리 형태로 구성할 때, 트리 루트에 위치하는 해쉬값을 나타내는 merklehash를 포함하는 것이 바람직하다.

그리고 상기 하나 이상의 노드들 중에서 장애가 발생한 장애노드가 상기 시스템에 다시 접속을 수행하면, 장애 노드가 자신을 제외한 다른 노드들 중 하나 이상의 노드로부터 블록헤드를 수신받는 단계; 상기 수신한 블록헤더로부터 블록해쉬를 계산하는 단계; 상기 계산한 블록해쉬와 자신의 디스크에 저장된 블록해쉬를 비교하는 단계; 비교 결과 일치하지 않는 경우, 누락된 블록들을 상기 다른 노드들 중 하나 이상의 노드로부터 수신받는 단계; 및 상기 수신받은 블록을 이용하여 복구를 수행하는 단계;를 더 포함하는 것이 바람직하다.

그리고 상기 장애노드가 상기 수신받은 블록들의 데이터를 분석하여, 합의를 이루었다는 증명데이터를 확인하는 단계; 및 상기 확인된 경우에만 수신받은 블록들을 이용하여 복구를 수행하는 것이 바람직하다.

또한 블록생성 주기와 최대허용 블록기록 지연시간을 입력받는 입력단계; 트랜잭션들이 블록을 생성되어 상기 하나 이상의 노드들간의 합의를 거친 후 디스크에 저장되기까지의 시간에 해당하는 측정 블록기록 지연시간을 측정하는 측정단계; 상기 측정 블록기록 지연시간이 최대허용 블록기록 지연시간의 오차범위내에 포함되는지 검사하는 검사 단계; 상기 검사결과 측정 블록기록 지연시간이 최대허용 블록기록 지연시간보다 오차범위이상 크면, 상기 블록생성 주기를 감축하고, 측정단계부터 다시 반복하는 단계; 및 상기 검사결과 측정 블록기록 지연시간이 최대허용 블록기록 지연시간보다 오차범위이상 작으면, 상기 블록생성 주기를 증가시키고, 측정단계부터 다시 반복하는 단계를 더 포함하는 것이 바람직하다.

그리고 상기 블록생성 주기를 감축하는 것은 블록생성 주기에 0,5를 곱하는 것이 바람직하다.

또한 상기 블록생성 주기를 증가시키는 것은 블록생성 주기에 1.5를 곱하는 것이 바람직하다.

그리고 상기 블록생성 주기는 시간값이고, 상기 시간값 이내에 새로 생성된 트랜잭션이 없는 경우에는 트랜잭션이 없는 상태로 블록이 생성되는 것이 바람직하다.

또한 상기 블록생성 주기는 트랜잭션의 갯수인 것이 바람직하다.

그리고 상기 블록생성 주기는 트랜잭션의 갯수와 시간값의 조합인 것이 바람직하다.

상기 목적을 달성하기 위한 본 발명에 따른 블록체인 기반 분산 저장 노드는 블록체인을 기반으로 블록을 분산저장하는 노드에 있어서, 블록생성 주기에 해당하면, 해당하는 하나 이상의 트랜잭션들을 하나의 블록으로 생성하는 생성 모듈 -상기 블록은 블록헤더와 실제 트랜잭션 내용을 포함하는 블록내용으로 구성됨-; 및; 상기 블록헤더를 매개변수로 하여서, 상기 하나 이상의 노드들간에 합의를 수행하는 합의 모듈을 포함하는 것이 바람직하다.

상기 목적을 달성하기 위한 본 발명에 따른 프로그램이 기재된 컴퓨터로 판독 가능한 저장 매체는 상기 블록체인 기반 분산 저장 방법의 어느 한 항에 기재된 모든 단계를 수행하는 프로그램을 기재하는 것이 바람직하다.

또한 상기 목적을 달성하기 위한 본 발명에 따른 프로그램은 상기 블록체인 기반 분산 저장 방법의 어느 한 항에 기재된 모든 단계를 수행하고, 컴퓨터로 판독 가능한 저장매체에 저장되는 것이 바람직하다.

이상에서 살펴본 바와 같이, 본 발명에 따른 블록체인 기반 분산 저장 방법을 이용하면, 거래가 증가하더라도 블록을 추가하는데 필요한 네트워크 부하가 기하급수적으로 늘어나지 않으며, 또한 이 기술을 활용시에 블록이 저장되는 속도를 상황에 따라 조절할 수 있는 효과가 있다.

도 1은 본 발명의 일 실시예에 따른 블록체인하에서의 노드들간의 구성도,
도 2는 본 발명의 일 실시예에 따른 블록의 헤더를 나타내는 도면,
도 3은 본 발명의 일 실시예에 따른 노드간의 합의를 이루는 과정에 대한 일 실시예를 나타낸 도면이고,
도 4는 본 발명의 일 실시예에 따른 블록을 생성하는 주기를 자동으로 조절하는 방법에 관한 흐름도이다.

블록체인은 최초의 블록(Genesis Block)부터 시작해서 바로 앞의 블록에 대한 링크를 가지고 있는 링크드 리스트다. 블록체인은 여러 노드에 걸쳐 분산되어 저장 및 관리되며, 블록에는 거래 정보(트랜잭션)가 포함되어 있으므로, 블록의 집합체인 블록체인은 모든 거래 정보를 포함하는 거대한 분산 장부라고 할 수 있다. 즉 블록은 블록체인의 원소로서 개념적으로는 다수의 거래 정보(트랜잭션)의 묶음을 의미한다. 블록은 블록 헤더와 거래 정보, 기타 정보로 구성된다.

도 1은 본 발명의 일 실시예에 따른 블록체인하에서의 노드들간의 구성도이다. 상술한 바와 같이, 블록체인은 분산 기술을 사용하는 바, P2P(Peer to Peer) 기술을 이용해 거래에 참여하는 다수의 PC(본 실시예에서는 노드0 부터 3)에 보관된다. 이들 노드간에 체인처럼 연결된 상태로 블록을 공유하고 있으므로, 거래를 위조하려면 상기 노드들의 상당수를 해킹해야만 한다. 또한 상기 거래(트랜잭션)이 일정이상 쌓이면, 상기 노드들은 서로간의 합의라는 과정을 거쳐서 거래 내용들이 서로 동일하게 축적하게 된다.

예를 들어, 블록이 기정해진 주기에 해당하면, 노드 0이 해당 트랜잭션들을 하나의 블록으로 생성한다. 이 블록은 블록헤더와 실제 트랜잭션 내용을 포함하는 블록내용으로 구성된다. 이렇게 생성된 블록중에서 블록헤더를 매개변수로 하여서 노드 1 내지 3과 서로 합의 과정을 거치게 된다.

도 2는 본 발명의 일 실시예에 따른 블록의 헤더를 나타내는 도면이다. 블록 헤더는 version, previousblockhash, merklehash, time, bits, nonce 이렇게 6개의 정보로 구성된다.

1번째 version은 소프트웨어/프로토콜 버전이고, 2번째 previousblockhash는 블록 체인에서 바로 앞에 위치하는 블록의 블록 해쉬값, 3번째 merklehash는 개별 거래 정보의 거래 해쉬를 트리 형태로 구성할 때, 트리 루트에 위치하는 해쉬값이다. 여기서 상기 트리는 주로 2진 트리 또는 3진 트리를 이용한다. 그리고 4번째 time은 블록이 생성된 시간, 5번째 bits는 난이도 조절용 수치이고, 마지막으로 6번째 nonce는 최초 0에서 시작하여 조건을 만족하는 해쉬값을 찾아낼때까지의 1씩 증가하는 계산 회수이다. 그러나, 이 값은 컴퓨팅 파워를 기반으로 합의를 이루는 비트코인 블록체인에는 사용되지만, 본 발명의 방식에 따른 합의 방식을 이용하는 블록체인에서는 사용할 필요가 없다. 일반적으로는 주로 0으로 쓴다

블록 해쉬는 블록의 식별자 역할을 하는 값으로서, 상기 블록 해쉬는 6가지의 블록 헤더 정보를 입력값에 SHA256 해쉬 함수를 2회 적용해서 계산되는 값으로, 32바이트의 숫자값이다. 이름은 블록 해쉬이지만 그 값은 블록 전체를 해쉬한 값이 아니라, 블록 헤더를 해쉬한 값이다.

거래 정보의 해쉬값은 해당 거래가 포함된 블록의 merklehash 계산에 입력값으로 사용되고, merklehash는 블록 해쉬의 계산에 입력값으로 사용된다. 블록 해쉬는 다음 블록의 previousblockhash 값으로 저장되며, previousblockhash은 이전 블록의 블록 헤더 정보로서, 다음 블록의 블록 해쉬를 계산하는데 입력값으로 사용된다.

따라서, 거래 정보가 변경되면 merklehash가 변경되고, merklehash가 변경되면 블록 해쉬가 변경되고, 블록 해쉬의 변경은 다음 블록의 블록 해쉬 변경으로 연쇄적으로 이어지게 된다.

앞서도 상술한 바와 같이 블록 체인은 여러 노드에 걸쳐 분산되어 저장 및 관리되며, 트랜잭션이 일어날 때마다 분산 관리되는 것이 아니며, 트랜잭션이 기정해진 조건에 해당하면 이들을 하나의 블록으로 묶은 다음에, 이러한 블록들에 대해서 여러개의 노드들이 서로간의 합의(즉 상기 블록을 서로 동일하게 추가)를 이루게 된다.

도 3은 본 발명의 일 실시예에 따른 클라이언트가 4개의 노드(노드0 부터 노드3)에 합의를 요청한 후, 합의를 이루는 과정에 대한 일 실시예를 나타낸 도면이다.

클라이언트가 노드들간의 합의를 요청하면, 노드 0 내지 3은 서로간의 합의를 수행할 준비를 한다. 우선 첫번째 사전준비 단계에서는, 클라이언트로부터 합의 요청을 수신받은 주노드(노드0)가 자신을 제외한 다른 모든 노드들에 사전준비 메시지를 멀티캐스트한다. 참고로 본 실시예에서는 설명의 편의를 위하여 클라이언트를 별도로 도시 및 설명하고 있으나, 실제로는 클라이언트가 별개일 수도 있고 또는 상기 노드 0 내지 3 중 하나인 경우도 무방하다.

준비단계에서, 상기 사전준비 메시지를 받은 상기 다른 노드들은 다시 자신을 제외한 다른 모든 노드들에(예를 들어 노드 1은 노드0,2,3에) 준비 메시지를 전송한다. 따라서 모든 노드들은 자신을 제외한 다른 노드들로부터 준비 메시지를 받게 된다.

실행단계에서, 각 노드들은 각각 합의 실행을 수행하고(동시에 도시된 바와 같이 노드들에 메시지를 전송하면서), 합의를 요청한 클라이언트로 응답 메시지를 보냄으로써, 상기 합의 과정을 마치게 되고, 합의과 완료된 노드들은 클라이언트에 완료되었음을 통지하게 된다.

본 실시예에서는 설명의 편의를 위하여 노드 0 부터 3까지 단지 4개의 노드를 예를 들었으나, 실제 사용시에는 수많은 노드들이 사용될 수 있다. 이렇게 합의를 수행할 때, N개의 노드 각각이 나머지 노드들(N-1개)에 메시지를 보내게 되는데, 이 경우 시스템 복잡도는 O(N2)에 해당하고, N의 수가 커질수록 네트워크의 부하 역시 매우 커지게 된다.

그런데, 기존의 다른 알고리즘에서는 합의를 수행시에 블록을 매개변수로 이용하여 수행하고 있었다. 그런데, 대략 2000건의 트랜잭션을 하나의 블록으로 모은다고 가정할 때, 대략 헤더는 약 80바이트이고, 블록전체는 1MB 정도가 된다. 이때 1MB의 블록 그 자체로 상기 합의 알고리즘에 적용하게 된다면, 이는 네트워크 트래픽에 큰 부담이 적용하게 된다.

따라서 본 발명에서는 블록 데이터 전체를 상기 메시지에 넣어서 처리하는 것이 아니고, 블록의 요약본인 헤더메시지만을 넣어서 네트워크의 트래픽을 최소하하는 것을 주요 특징으로 한다. 즉 사전준비,준비 및 실행 단계에서 블록헤더만을 추가하여 노드들간의 합의를 이루게 하고, 블록전체는 한번만 노드들에 전파하여, 노드들이 동일한 블록을 유지하도록 한다.

물론 이러한 블록 헤더만으로 한정하는 것은 아니고, 상기 블록을 가리킬 수 있는 데이터(이하에서는 블록 참조 데이터로 명명)를 넣음으로서 동일한 효과를 유지할 수 있음은 물론이다. 이러한 상기 블록 참조 데이터는 상기 블록 헤더, 상기 블록 헤더로 생성한 해시 데이터, 블록 헤더의 일부 데이터로 생성한 해시 데이터, 트랜잭션 데이터로 생성한 해시, 또는 상기 블록을 식별할 수 있는 데이터등이 가능하다. 또한 상기 상기 블록을 식별할 수 있는 데이터는 블록의 높이인 것을 특징으로 한다.

한편, 이러한 분산방식에서 이상적인 경우는 모든 노드들이 실시간으로 서로 합의를 이루어서 데이터를 동일하게 유지하는 것이지만, 시스템 장애, 서버 다운, 네트워크 끊김 등 다양한 변수로 일부 노드가 일정 시간동안 접속을 못하는 경우도 가능하다.

예를 들어, 노드2가 100번째 블록까지 적재한 이후에 장애가 발생하고, 그 동안 나머지 노드들 노드 0,1,3은 150번째 블록까지 생긴 경우를 가정하자. 일정시간 시스템에 끊겼다가 다시 접속한 노드2는, 우선 다른 노드들(노드0, 1 및 3)로부터 헤더를 수신한다. 상기 노드2는 상기 수신한 헤더로부터 블록해쉬를 계산하고, 자신의 디스크에 저장된 블록해쉬와 비교한다. 비교결과 동일하면 복구과정을 종료하고, 동일하지 않다면 상기 누락된 블록들을 다른 노드들로부터 수신한 후, 복구를 수행하게 된다.

한편, 본 발명에서 모든 데이터 처리는 일정 개수의 트랜잭션들을 모은 블록단위로 처리되는데, 기존의 이러한 블록단위 처리 알고리즘에서는 이러한 블록의 크기에 대한 고려가 없었다. 상기 블록단위 처리 알고리즘을 사용하는 대표적인 예로 비트코인 등이 있는데, 기존의 비트코인은 블록크기를 2MB라던가 정해진 크기로 정해서 사용하고 있다.

그러나 본 발명에서는 이러한 기술을 금융권의 계좌이체등에서 사용하는 것이 주요 목적이고, 이 때 이러한 블록생성 지연시간은 고객의 서비스 만족도와 직결되는 사안으로 임의로 정해서 매우 중요한 사안이다. 그러나 이러한 블록생성 지연시간은 블록에 포함되는 트랜잭션의 유입시간, 이렇게 생성된 트랜잭션들의 모음인 블록들을 다수의 노드들간에 합의를 수행하는 시간, 그리고 이 블록을 디스크에 저장하는 시간등이 포함되므로, 블록의 생성주기를 미리 정해놓기보다는 그때그때 상황에 따라 유동적으로 변할 수 있도록 하는 것이 바람직하다.

도 4는 본 발명의 일 실시예에 따른 블록을 생성하는 주기를 자동으로 조절하는 방법에 관한 흐름도이다.

블록생성 주기는 얼만큼의 트랜잭션마다 블록을 생성할지를 나타내는 기준값이다. 이 주기는 트랜잭션의 개수가 될 수도 있고, 시간이 될수도 있다. 즉 A개의 트랜잭션이 쌓일때마다 블록을 생성하도록 설정할 수도 있으며, A초 마다 트랜잭션을 모아서 블록을 생성하도록 설정할 수도 있다.

또한 트랜잭션의 갯수와 시간값의 조합으로 하는 것도 가능하다. 예를 들어 블록을 10ms마다 만들고 싶은데, 그렇다고 트랜잭션이 하나도 없는 빈 블록을 만들고 싶지 않은 경우가 있을 수 있다. 이 경우, 블록은 10ms마다 만들지만 그 시간안에 트랜잭션이 없으면 생성하지 않고, 그 시간안에 트랜잭션이 있는 경우에만 만드는 것이다. 즉 트랜잭션의 생성조건은 "시간>10ms & 트랜잭션 > 1(물론 여기서 10ms나 1개는 단순한 일 예일 뿐이고 이에 한정되는 것은 아니다)"과 같이 할수도 있는 것이다.

블록기록 지연시간은 트랜잭션이 시스템에 유입된 시점부터 트랜잭션들이 블록으로 생성되어, 이렇게 생성된 블록들이 노드들간의 합의를 거쳐서 실제 디스크에 저장되기까지의 시간을 나타낸다. 이중에서 최대허용 블록기록 지연시간은 사용자가 원하는 블록기록 지연시간이고, 측정 블록기록 지연시간(EstB)는 블록생성 주기에 따라 실제로 측정된 블록기록 지연시간을 의미한다.

우선 사용자가 최대허용 블록기록 지연시간(MaxB)과, 초기 블록생성 주기(A)를 입력한다(S410). 앞서도 말한 바와 같이, A값은 트랜잭션의 개수일 수도 있고, 시간값일 수도 있다. 우선 본 실시예에서는 MaxB는 10초, A값은 4초로 입력했다고 가정한다.

이후 4초단위로 블록이 생성되어, 최초 디스크에 저장되기까지 시간 즉 측정 블록기록 지연시간(EstB)를 측정한다(S420).

상기 단계에서, 측정된 EstB값이 MaxB의 허용범위 내인지를 검사한다(S430). 허용범위 역시 사용자가 임의로 정할 수 있으며, 본 예에서는 10%라고 가정한다. 그렇다면, 이 경우, EstB값이 11초에서 9초사이에 들어가면(S430-Y), 사용자가 원하는 MaxB값에 근접하므로, 더이상의 절차를 수행할 필요 없이 바로 종료한다.

그렇지 않은 경우, EstB값이 11초보다 크다면(S440-Y), 블록생성 주기(A)를 줄인다(S450). 본 실시예에서는 A값은 반으로 나눈 값을 새로운 A값으로 설정하나, 꼭 이 식에 한정되는 것은 아니다. 이렇게 새로 생성된 A값을 가지고, 다시 S420 단계부터 반복해서 수행을 한다.

또한, EstB값이 9초보다 작으면(S440-N), 블록생성 주기(A)를 늘인다(S455). 본 실시예에서는 A값에 1.5를 곱한 값을 새로운 A값으로 설정하나, 꼭 이 식에 한정되는 것은 아니다. 이 경우도 마찬가지로 새로 생성된 A값을 가지고, 다시 S420 단계부터 반복해서 수행을 한다.

지금까지 바람직한 실시예에 따른 블록체인 기반으로 하나 이상의 노드들에 블록을 분산 저장하는 방법 및 이를 이용한 시스템에 대해서 설명하였다.

이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.

본 발명에 따른 블록체인 기반 분산 저장 방법 및 이를 이용한 장치에 관한 발명은, 블록체인 기술을 바탕으로 기존의 금융기관의 서버에서 계좌 이체등의 금융거래를 관리하는 대신에, P2P 방식으로 관리할 수 있도록 하는 방법으로서, 대부분의 인터넷 금융산업에서 바로 실시할 수 있다는 점에서 현실적으로 명백하게 실시할 수 있는 정도이므로 산업상 이용가능성이 있는 발명이다.

Claims (17)

  1. 블록체인을 기반으로 하여 블록을 하나 이상의 노드들간에 분산저장하는 방법에 있어서,
    블록생성 주기에 해당하면, 해당하는 트랜잭션들을 하나의 블록으로 생성하는 단계 -상기 블록은 블록헤더와 실제 트랜잭션 내용을 포함하는 블록내용으로 구성됨-; 및
    상기 블록의 참조 데이터인 블록 참조 데이터를 매개변수로 하여서, 상기 하나 이상의 노드들간에 합의를 수행하는 단계;를 포함하며,
    상기 블록생성 주기는
    블록생성 주기와 최대허용 블록기록 지연시간을 입력받는 입력단계;
    트랜잭션들이 측정 블록기록 지연시간을 측정하는 측정 단계 -상기 측정 블록기록 지연시간은 블록이 생성되어 상기 하나 이상의 노드들간의 합의를 거친 후 저장매체에 저장되기까지의 시간-;
    상기 측정 블록기록 지연시간이 최대허용 블록기록 지연시간의 오차범위내에 포함되는지 검사하는 검사 단계;
    상기 검사결과 측정 블록기록 지연시간이 최대허용 블록기록 지연시간보다 오차범위이상 크면, 상기 블록생성 주기를 감축하고, 측정단계부터 다시 반복하는 단계; 및
    상기 검사결과 측정 블록기록 지연시간이 최대허용 블록기록 지연시간보다 오차범위이상 작으면, 상기 블록생성 주기를 증가시키고, 측정단계부터 다시 반복하는 단계를 이용하여 생성되는 것을 특징으로 하는
    블록체인 기반 분산 저장 방법.
  2. 제1항에 있어서,
    상기 블록 참조 데이터는
    상기 블록 헤더, 상기 블록 헤더로 생성한 해시 데이터, 블록 헤더의 일부 데이터로 생성한 해시 데이터, 트랜잭션 데이터로 생성한 해시, 또는 상기 블록을 식별할 수 있는 데이터 중 어느 하나인 것을 특징으로 하는
    블록체인 기반 분산 저장 방법.
  3. 제2항에 있어서,
    상기 블록을 식별할 수 있는 데이터는
    블록의 높이인 것을 특징으로 하는
    블록체인 기반 분산 저장 방법.
  4. 제1항에 있어서,
    상기 합의를 수행하는 단계는
    상기 하나 이상의 노드들 중에서 주노드가 자신을 제외한 다른 노드들에 사전준비 메시지를 멀티캐스트하는 사전준비 단계;
    상기 사전준비 메시지를 받은 노드들이 각각 자신을 제외한 다른 노드들에 준비 메시지를 전송하는 준비 단계; 및
    상기 하나 이상의 노드들이 각각 합의 실행을 수행하는 실행 단계;를 포함하는 것을 특징으로 하는 블록체인 기반 분산 저장 방법.
  5. 제4항에 있어서,
    상기 실제 트랜잭션 내용을 포함하는 블록내용을 상기 하나 이상의 노드들에 전송하는 내용전송 단계;를 더 포함하는 블록체인 기반 분산 저장 방법.
  6. 제1 항에 있어서,
    상기 블록헤더는
    바로 앞에 위치하는 블록의 블록 해쉬값을 나타내는 previousblockhash; 및
    개별 거래 정보의 거래 해쉬를 트리 형태로 구성할 때, 트리 루트에 위치하는 해쉬값을 나타내는 merklehash를 포함하는 것을 특징으로 하는 블록체인 기반 분산 저장 방법.
  7. 제1항에 있어서,
    상기 하나 이상의 노드들 중에서 장애가 발생한 장애노드가 다시 접속을 수행하면, 장애 노드가 자신을 제외한 다른 노드들 중 하나 이상의 노드로부터 블록헤더를 수신받는 단계;
    상기 수신한 블록헤더로부터 블록해쉬를 계산하는 단계;
    상기 계산한 블록해쉬와 자신의 디스크에 저장된 블록해쉬를 비교하는 단계;
    비교 결과 일치하지 않는 경우, 누락된 블록들을 상기 다른 노드들 중 하나 이상의 노드로부터 수신받는 단계; 및
    상기 수신받은 블록을 이용하여 복구를 수행하는 단계;를 더 포함하는 것을 특징으로 하는 블록체인 기반 분산 저장 방법.
  8. 제7항에 있어서,
    상기 장애노드가 상기 수신받은 블록들의 데이터를 분석하여, 합의를 이루었다는 증명데이터를 확인하는 단계; 및
    상기 확인된 경우에만 수신받은 블록들을 이용하여 복구를 수행하는 것을 특징으로 하는
    블록체인 기반 분산 저장 방법.
  9. 삭제
  10. 청구항 1에 있어서,
    상기 블록생성 주기를 감축하는 것은
    블록생성 주기에 0.5를 곱하는 것을 특징으로 하는 블록체인 기반 분산 저장 방법.
  11. 청구항 1에 있어서,
    상기 블록생성 주기를 증가시키는 것은
    블록생성 주기에 1.5를 곱하는 것을 특징으로 하는 블록체인 기반 분산 저장 방법.
  12. 제1항에 있어서,
    상기 블록생성 주기는
    시간값이고,
    상기 시간값 이내에 새로 생성된 트랜잭션이 없는 경우에는
    트랜잭션이 없는 상태로 블록이 생성되는 것을 특징으로 하는
    블록체인 기반 분산 저장 방법.
  13. 제1항에 있어서,
    상기 블록생성 주기는
    트랜잭션의 갯수인 것을 특징으로 하는
    블록체인 기반 분산 저장 방법.
  14. 제1항에 있어서,
    상기 블록생성 주기는
    트랜잭션의 갯수와 시간값의 조합인 것을 특징으로 하는
    블록체인 기반 분산 저장 방법.
  15. 블록체인을 기반으로 블록을 분산저장하는 노드에 있어서,
    블록생성 주기에 해당하면, 해당하는 트랜잭션들을 하나의 블록으로 생성하는 생성 모듈 -상기 블록은 블록헤더와 실제 트랜잭션 내용을 포함하는 블록내용으로 구성됨-; 및;
    상기 블록의 참조 데이터인 블록 참조 데이터를 매개변수로 하여서, 상기 노드가 상기 블록체인을 통해 연관된 다른 노드들과 합의를 수행하는 합의 모듈을 포함하는
    상기 블록생성 주기는
    블록생성 주기와 최대허용 블록기록 지연시간을 입력받는 입력단계;
    트랜잭션들이 측정 블록기록 지연시간을 측정하는 측정 단계 -상기 측정 블록기록 지연시간은 블록이 생성되어 상기 하나 이상의 노드들간의 합의를 거친 후 저장매체에 저장되기까지의 시간-;
    상기 측정 블록기록 지연시간이 최대허용 블록기록 지연시간의 오차범위내에 포함되는지 검사하는 검사 단계;
    상기 검사결과 측정 블록기록 지연시간이 최대허용 블록기록 지연시간보다 오차범위이상 크면, 상기 블록생성 주기를 감축하고, 측정단계부터 다시 반복하는 단계; 및
    상기 검사결과 측정 블록기록 지연시간이 최대허용 블록기록 지연시간보다 오차범위이상 작으면, 상기 블록생성 주기를 증가시키고, 측정단계부터 다시 반복하는 단계를 이용하여 생성되는 것을 특징으로 하는
    를 포함하는 블록체인 기반 분산 저장 노드.
  16. 상기 청구항 1항 내지 8, 10 내지 14항 중 어느 한 항에 기재된 모든 단계를 수행하는 프로그램이 기재된 컴퓨터로 판독 가능한 저장 매체.
  17. 상기 청구항 1항 내지 8, 10 내지 14항 중 어느 한 항에 기재된 모든 단계를 수행하는 컴퓨터로 판독 가능한 저장 매체에 저장된 컴퓨터 프로그램.

KR1020160113774A 2016-09-05 2016-09-05 블록체인 기반 분산 저장 방법 및 이를 이용한 장치 KR101727525B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160113774A KR101727525B1 (ko) 2016-09-05 2016-09-05 블록체인 기반 분산 저장 방법 및 이를 이용한 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160113774A KR101727525B1 (ko) 2016-09-05 2016-09-05 블록체인 기반 분산 저장 방법 및 이를 이용한 장치

Publications (1)

Publication Number Publication Date
KR101727525B1 true KR101727525B1 (ko) 2017-04-17

Family

ID=58703121

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160113774A KR101727525B1 (ko) 2016-09-05 2016-09-05 블록체인 기반 분산 저장 방법 및 이를 이용한 장치

Country Status (1)

Country Link
KR (1) KR101727525B1 (ko)

Cited By (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107169125A (zh) * 2017-05-31 2017-09-15 北京小米移动软件有限公司 多媒体资源的投放统计数据获取方法及装置
CN108280628A (zh) * 2018-02-01 2018-07-13 泰康保险集团股份有限公司 基于区块链技术的核赔方法、装置、介质及电子设备
WO2018207974A1 (ko) * 2017-05-12 2018-11-15 주식회사 써트온 블록체인 시스템 및 블록체인을 이용한 데이터 관리 방법
WO2018217804A1 (en) * 2017-05-22 2018-11-29 Visa International Service Association Network for improved verification speed with tamper resistant data
KR101937090B1 (ko) 2018-04-20 2019-01-11 주식회사 시그마체인 블록체인 기반 블록 검증 방법
WO2019013413A1 (ko) * 2017-07-14 2019-01-17 한국과학기술원 블록체인을 활용한 사용자 개인정보 활용 파악을 위한 방법 및 시스템
KR20190008163A (ko) * 2018-11-27 2019-01-23 한국과학기술원 블록체인을 활용한 사용자 개인정보 활용 파악을 위한 방법 및 시스템
KR20190009958A (ko) 2017-07-20 2019-01-30 주식회사 더블체인 확장형 블록체인 시스템 및 블록체인 확장방법
KR101946195B1 (ko) * 2018-03-26 2019-02-08 그래프 블록체인 리미티드 프라이빗 블록체인 기반 시스템을 관제하는 관제시스템 및 관제방법
KR20190012969A (ko) 2017-07-31 2019-02-11 서강대학교산학협력단 블록체인을 기반으로 한 데이터 접근 관리 시스템 및 데이터 접근 관리 방법
KR101949711B1 (ko) 2018-06-29 2019-02-19 (주) 와이즈엠글로벌 복수의 블록체인을 사용하여 다수의 토큰을 하나의 통합토큰으로 통합하는 방법
KR101949712B1 (ko) 2018-06-29 2019-02-19 (주) 와이즈엠글로벌 계층화되고 확률적인 대표자 선출에 의한 노드증명방식의 합의과정과 대가 배분과정을 가지는 블록체인 생성 방법
KR20190048227A (ko) 2017-10-31 2019-05-09 삼성에스디에스 주식회사 블록체인 기반 데이터 관리 방법 및 그 장치
KR20190050163A (ko) 2017-11-02 2019-05-10 주식회사 케이티 블록체인 기반 상호금융플랫폼 및 그 실현방법
KR20190055666A (ko) 2017-11-15 2019-05-23 한전케이디엔주식회사 블록체인을 이용한 스마트그리드 이종 데이터 보안 저장 방법
CN109872139A (zh) * 2019-01-31 2019-06-11 杭州复杂美科技有限公司 交易替换方法、设备和存储介质
WO2019112193A1 (ko) * 2017-12-08 2019-06-13 인제대학교 산학협력단 블록 체인 시스템 아키텍쳐 및 방법
WO2019124610A1 (ko) * 2017-12-21 2019-06-27 문인식 블록체인을 이용한 개인정보 분리 후 분산 저장 및 조합을 통한 인증 방법
KR20190074177A (ko) * 2017-12-19 2019-06-27 주식회사 이글루시스템즈 블록체인 기반의 데이터 보안 시스템 및 블록체인 기반의 데이터 보안 방법
WO2019125081A1 (ko) * 2017-12-21 2019-06-27 문인식 블록체인을 이용한 일회성 접근 권한 부여 시스템
WO2019125041A1 (ko) * 2017-12-21 2019-06-27 바스아이디 랩 재팬 컴퍼니 리미티드 블록체인을 이용한 개인정보 분리 후 분산저장을 통한 인증 시스템
WO2019125069A1 (ko) * 2017-12-21 2019-06-27 바스아이디 랩 재팬 컴퍼니 리미티드 블록체인을 이용한 개인정보 분리 후 조합을 통한 인증 시스템
KR20190088530A (ko) * 2017-05-31 2019-07-26 알리바바 그룹 홀딩 리미티드 Method and device for block chain aggregation
WO2019168606A1 (en) * 2018-03-01 2019-09-06 Intuit Inc. Summary chains in distributed systems
KR20190108020A (ko) * 2018-03-13 2019-09-23 주식회사 웨이투빗 블록체인을 이용한 트랜잭션 처리 방법 및 이를 이용한 트랜잭션 서버
KR20190108019A (ko) 2018-03-13 2019-09-23 주식회사 웨이투빗 블록체인을 이용한 트랜잭션 처리 방법 및 이를 이용한 트랜잭션 관리 서버
KR101995349B1 (ko) * 2018-10-12 2019-10-01 주식회사 한국블록체인거래소 블록체인 네트워크에서 유실된 암호화폐를 회수하는 방법
KR20190125874A (ko) * 2018-04-30 2019-11-07 마성태 전자상품권을 이용한 지불결제 처리시스템
KR20190136245A (ko) * 2018-05-30 2019-12-10 한국과학기술연구원 블록체인 기반 컨텐츠 관리 방법 및 상기 방법을 수행하는 시스템
KR20190140687A (ko) * 2018-06-12 2019-12-20 주식회사 호윤 블록체인을 이용한 트랜잭션 일괄처리 시스템 및 방법
KR20200010905A (ko) * 2018-07-23 2020-01-31 주식회사 더볼터 PoP 기반 블록체인에서의 동적 시간 지연 기반의 체인 연결 방법 및 시스템
US10586062B1 (en) 2015-11-23 2020-03-10 United Services Automobile Association (Usaa) Systems and methods to track, store, and manage events, rights and liabilities
KR20200031461A (ko) 2018-09-14 2020-03-24 류근웅 병렬형 블록체인 기반 정보 관리 및 운영 시스템
KR20200038043A (ko) * 2018-10-02 2020-04-10 한국항공대학교산학협력단 멀티블록 구조를 갖는 블록체인 기반 트랜잭션 처리 장치 및 방법
CN110992040A (zh) * 2020-03-03 2020-04-10 支付宝(杭州)信息技术有限公司 交易处理方法、装置及设备
KR20200039132A (ko) * 2018-10-05 2020-04-16 서강대학교산학협력단 블록체인 네트워크에서의 데이터 저장 용량 확장 방법
KR102104750B1 (ko) 2019-06-10 2020-04-24 홍익대학교세종캠퍼스산학협력단 블록체인을 위한 rsp 합의 방법
WO2020085825A1 (ko) * 2018-10-24 2020-04-30 삼성전자 주식회사 트랜잭션을 관리하기 위한 방법, 디바이스, 컴퓨터 판독가능 매체, 및 시스템
WO2020101788A1 (en) * 2018-11-16 2020-05-22 Advanced Messaging Technologies, Inc. Systems and methods for distributed data storage and delivery using blockchain
KR102130900B1 (ko) 2018-11-15 2020-07-06 주식회사 스마트코어 블록체인 시스템에서의 고속 합의 방법
WO2020172881A1 (zh) * 2019-02-28 2020-09-03 云图有限公司 区块生成方法、装置、计算机设备和存储介质
US10818170B1 (en) 2016-01-20 2020-10-27 United Services Automobile Association Systems and methods for traffic management via inter-party resource allocation

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160217532A1 (en) 2015-01-23 2016-07-28 Sure, Inc. Securing Claim Data via Block-Chains for a Peer to Peer Platform

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160217532A1 (en) 2015-01-23 2016-07-28 Sure, Inc. Securing Claim Data via Block-Chains for a Peer to Peer Platform

Cited By (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10586062B1 (en) 2015-11-23 2020-03-10 United Services Automobile Association (Usaa) Systems and methods to track, store, and manage events, rights and liabilities
US10818170B1 (en) 2016-01-20 2020-10-27 United Services Automobile Association Systems and methods for traffic management via inter-party resource allocation
WO2018207974A1 (ko) * 2017-05-12 2018-11-15 주식회사 써트온 블록체인 시스템 및 블록체인을 이용한 데이터 관리 방법
WO2018217804A1 (en) * 2017-05-22 2018-11-29 Visa International Service Association Network for improved verification speed with tamper resistant data
KR20190088530A (ko) * 2017-05-31 2019-07-26 알리바바 그룹 홀딩 리미티드 Method and device for block chain aggregation
KR102140414B1 (ko) 2017-05-31 2020-08-03 알리바바 그룹 홀딩 리미티드 Blockchain consensus method and device
CN107169125A (zh) * 2017-05-31 2017-09-15 北京小米移动软件有限公司 多媒体资源的投放统计数据获取方法及装置
US10706023B2 (en) 2017-05-31 2020-07-07 Alibaba Group Holding Limited Blockchain consensus method and device
WO2019013413A1 (ko) * 2017-07-14 2019-01-17 한국과학기술원 블록체인을 활용한 사용자 개인정보 활용 파악을 위한 방법 및 시스템
KR20190009958A (ko) 2017-07-20 2019-01-30 주식회사 더블체인 확장형 블록체인 시스템 및 블록체인 확장방법
KR20190012969A (ko) 2017-07-31 2019-02-11 서강대학교산학협력단 블록체인을 기반으로 한 데이터 접근 관리 시스템 및 데이터 접근 관리 방법
KR20190048227A (ko) 2017-10-31 2019-05-09 삼성에스디에스 주식회사 블록체인 기반 데이터 관리 방법 및 그 장치
KR20190050163A (ko) 2017-11-02 2019-05-10 주식회사 케이티 블록체인 기반 상호금융플랫폼 및 그 실현방법
KR20190055666A (ko) 2017-11-15 2019-05-23 한전케이디엔주식회사 블록체인을 이용한 스마트그리드 이종 데이터 보안 저장 방법
WO2019112193A1 (ko) * 2017-12-08 2019-06-13 인제대학교 산학협력단 블록 체인 시스템 아키텍쳐 및 방법
KR102008757B1 (ko) 2017-12-19 2019-10-21 주식회사 이글루시스템즈 블록체인 기반의 데이터 보안 시스템 및 블록체인 기반의 데이터 보안 방법
KR20190074177A (ko) * 2017-12-19 2019-06-27 주식회사 이글루시스템즈 블록체인 기반의 데이터 보안 시스템 및 블록체인 기반의 데이터 보안 방법
WO2019125081A1 (ko) * 2017-12-21 2019-06-27 문인식 블록체인을 이용한 일회성 접근 권한 부여 시스템
WO2019124610A1 (ko) * 2017-12-21 2019-06-27 문인식 블록체인을 이용한 개인정보 분리 후 분산 저장 및 조합을 통한 인증 방법
WO2019125041A1 (ko) * 2017-12-21 2019-06-27 바스아이디 랩 재팬 컴퍼니 리미티드 블록체인을 이용한 개인정보 분리 후 분산저장을 통한 인증 시스템
WO2019125069A1 (ko) * 2017-12-21 2019-06-27 바스아이디 랩 재팬 컴퍼니 리미티드 블록체인을 이용한 개인정보 분리 후 조합을 통한 인증 시스템
CN108280628A (zh) * 2018-02-01 2018-07-13 泰康保险集团股份有限公司 基于区块链技术的核赔方法、装置、介质及电子设备
WO2019168606A1 (en) * 2018-03-01 2019-09-06 Intuit Inc. Summary chains in distributed systems
KR102024005B1 (ko) 2018-03-13 2019-09-24 주식회사 웨이투빗 블록체인을 이용한 트랜잭션 처리 방법 및 이를 이용한 트랜잭션 서버
KR20190108020A (ko) * 2018-03-13 2019-09-23 주식회사 웨이투빗 블록체인을 이용한 트랜잭션 처리 방법 및 이를 이용한 트랜잭션 서버
KR20190108019A (ko) 2018-03-13 2019-09-23 주식회사 웨이투빗 블록체인을 이용한 트랜잭션 처리 방법 및 이를 이용한 트랜잭션 관리 서버
KR101946195B1 (ko) * 2018-03-26 2019-02-08 그래프 블록체인 리미티드 프라이빗 블록체인 기반 시스템을 관제하는 관제시스템 및 관제방법
WO2019203387A1 (ko) * 2018-04-20 2019-10-24 주식회사 시그마체인 블록체인 기반 블록 검증 방법
KR101937090B1 (ko) 2018-04-20 2019-01-11 주식회사 시그마체인 블록체인 기반 블록 검증 방법
KR20190125874A (ko) * 2018-04-30 2019-11-07 마성태 전자상품권을 이용한 지불결제 처리시스템
KR102108822B1 (ko) 2018-04-30 2020-05-11 마성태 전자상품권을 이용한 지불결제 처리시스템
KR20190136245A (ko) * 2018-05-30 2019-12-10 한국과학기술연구원 블록체인 기반 컨텐츠 관리 방법 및 상기 방법을 수행하는 시스템
KR102084674B1 (ko) 2018-05-30 2020-03-05 한국과학기술연구원 블록체인 기반 컨텐츠 관리 방법 및 상기 방법을 수행하는 시스템
KR20190140687A (ko) * 2018-06-12 2019-12-20 주식회사 호윤 블록체인을 이용한 트랜잭션 일괄처리 시스템 및 방법
KR101949711B1 (ko) 2018-06-29 2019-02-19 (주) 와이즈엠글로벌 복수의 블록체인을 사용하여 다수의 토큰을 하나의 통합토큰으로 통합하는 방법
KR101949712B1 (ko) 2018-06-29 2019-02-19 (주) 와이즈엠글로벌 계층화되고 확률적인 대표자 선출에 의한 노드증명방식의 합의과정과 대가 배분과정을 가지는 블록체인 생성 방법
KR102077397B1 (ko) * 2018-07-23 2020-02-13 주식회사 더볼터 PoP 기반 블록체인에서의 동적 시간 지연 기반의 체인 연결 방법 및 시스템
KR20200010905A (ko) * 2018-07-23 2020-01-31 주식회사 더볼터 PoP 기반 블록체인에서의 동적 시간 지연 기반의 체인 연결 방법 및 시스템
KR20200031461A (ko) 2018-09-14 2020-03-24 류근웅 병렬형 블록체인 기반 정보 관리 및 운영 시스템
KR20200038043A (ko) * 2018-10-02 2020-04-10 한국항공대학교산학협력단 멀티블록 구조를 갖는 블록체인 기반 트랜잭션 처리 장치 및 방법
KR102110138B1 (ko) * 2018-10-02 2020-05-13 한국항공대학교산학협력단 멀티블록 구조를 갖는 블록체인 기반 트랜잭션 처리 장치 및 방법
KR102132391B1 (ko) * 2018-10-05 2020-07-09 서강대학교 산학협력단 블록체인 네트워크에서의 데이터 저장 용량 확장 방법
KR20200039132A (ko) * 2018-10-05 2020-04-16 서강대학교산학협력단 블록체인 네트워크에서의 데이터 저장 용량 확장 방법
KR101995349B1 (ko) * 2018-10-12 2019-10-01 주식회사 한국블록체인거래소 블록체인 네트워크에서 유실된 암호화폐를 회수하는 방법
WO2020085825A1 (ko) * 2018-10-24 2020-04-30 삼성전자 주식회사 트랜잭션을 관리하기 위한 방법, 디바이스, 컴퓨터 판독가능 매체, 및 시스템
KR102130900B1 (ko) 2018-11-15 2020-07-06 주식회사 스마트코어 블록체인 시스템에서의 고속 합의 방법
WO2020101788A1 (en) * 2018-11-16 2020-05-22 Advanced Messaging Technologies, Inc. Systems and methods for distributed data storage and delivery using blockchain
KR102051231B1 (ko) * 2018-11-27 2020-01-08 한국과학기술원 블록체인을 활용한 사용자 개인정보 활용 파악을 위한 방법 및 시스템
KR20190008163A (ko) * 2018-11-27 2019-01-23 한국과학기술원 블록체인을 활용한 사용자 개인정보 활용 파악을 위한 방법 및 시스템
CN109872139A (zh) * 2019-01-31 2019-06-11 杭州复杂美科技有限公司 交易替换方法、设备和存储介质
CN109872139B (en) * 2019-01-31 2020-10-23 杭州复杂美科技有限公司 Transaction replacement method, apparatus and storage medium
WO2020172881A1 (zh) * 2019-02-28 2020-09-03 云图有限公司 区块生成方法、装置、计算机设备和存储介质
KR102104750B1 (ko) 2019-06-10 2020-04-24 홍익대학교세종캠퍼스산학협력단 블록체인을 위한 rsp 합의 방법
KR102172903B1 (ko) 2019-12-09 2020-11-02 (주)트러스트체인파트너스위드하모니 블록체인 기술 기반 데이터 베이스 관리 시스템
CN110992040A (zh) * 2020-03-03 2020-04-10 支付宝(杭州)信息技术有限公司 交易处理方法、装置及设备

Similar Documents

Publication Publication Date Title
Luu et al. A secure sharding protocol for open blockchains
Bashir Mastering blockchain
Bashir Mastering Blockchain: Distributed ledger technology, decentralization, and smart contracts explained
Decker et al. Bitcoin meets strong consistency
EP3268914B1 (en) Determining a common secret for the secure exchange of information and hierarchical, deterministic cryptographic keys
Singh et al. Blockchain: Future of financial and cyber security
CN105976232B (zh) 资产交易方法和装置
WO2018059334A1 (zh) 区块链网络、分支节点、区块链网络应用方法及存储介质
US20180255031A1 (en) Manicoding for communication verification
KR101974060B1 (ko) 분산 해시 테이블과 피어투피어 분산 대장을 사용하여 디지털 자산의 소유권을 검증하기 위한 방법 및 시스템
Miller et al. The honey badger of BFT protocols
KR20190004309A (ko) 블록체인 iot장치를 위한 동작 시스템
KR20180115764A (ko) 블록체인에서 교환을 구현하기 위한 토큰화 방법 및 시스템
CN110300973A (zh) 联盟区块链网络的建立
US20160342977A1 (en) Device, method and system for virtual asset transactions
Judmayer et al. Blocks and chains: introduction to bitcoin, cryptocurrencies, and their consensus mechanisms
AU2017222469A1 (en) System and method for controlling asset-related actions via a blockchain
Vishnumurthy et al. Karma: A secure economic framework for peer-to-peer resource sharing
US7694329B2 (en) Secure delegation using public key authentication
US10284462B2 (en) Verification of data processes in a network of computing resources
CN108055138B (zh) 基于区块链的应用分发记录方法和系统
KR101569818B1 (ko) 개체 네트워크 변환
KR102050129B1 (ko) 블록 검증을 위한 복수의 일방향 함수를 지원하는 블록 체인
CN109845220A (zh) 用于提供区块链参与者身份绑定的方法和装置
CN104580253A (zh) 一种处理用户数据的方法及装置

Legal Events

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