검수요청.png검수요청.png

"브랜치블록"의 두 판 사이의 차이

위키원
이동: 둘러보기, 검색
잔글 (같이 보기)
 
(사용자 4명의 중간 판 18개는 보이지 않습니다)
1번째 줄: 1번째 줄:
'''브랜치블록'''(Branch of Block)<!--브랜치 블록, 브랜치 블록체인, 분기 블록체인, 블록체인의 분기-->은 어떠한 두 채굴 노드가 동시에 Nonce를 찾게 되었을 시 블록체인이 분기되는 것을 말한다.<ref name="오픈튜토리얼스">이타인, 〈[https://opentutorials.org/course/2865/16973 채굴 3 - 블락체인의 분기]〉, 《오픈튜토리얼스》, 2017-07-25</ref>
+
'''브랜치블록'''(Branch of Block)<!--브랜치 블록, 브랜치 블록체인, 분기 블록체인, 블록체인의 분기-->은 어떠한 두 채굴 노드가 동시에 [[논스]](nonce)를 찾게 되었을 시 블록체인이 분기되는 것을 말한다.<ref name="오픈튜토리얼스">이타인, 〈[https://opentutorials.org/course/2865/16973 채굴 3 - 블락체인의 분기]〉, 《오픈튜토리얼스》, 2017-07-25</ref>
  
 
==개요==
 
==개요==
브랜치블록은 브랜치(분기)와, 블록(블록체인)의 합성어로 '블록체인의 분기'를 의미한다. 블록체인 네트워크는 분기가 발생하였을 때 블록의 길이가 긴 것을 선택하도록 되어있고 블록의 길이가 짧은 분기는 사라지게 된다.<ref name="오픈튜토리얼스"></ref>
+
브랜치블록은 브랜치(분기)와, 블록(블록체인)의 합성어로 '블록체인의 분기'를 의미한다. 블록체인에 연결한 새로운 블록이 거의 동시에 2개 혹은 여러개가 생길 때 발생하며 분기가 발생해서 충돌이 일어날 어느 블록체인을 믿을 것인가에 대한 기준이 마련되어 있다. 그렇지 않으면 분산되어 있는 장부 내용의 동기화가 깨지기 때문이다. 이에 대한 기준은 더 많은 작업증명이 수행되어 블록의 길이가 긴 것을 선택하도록 되어있고 블록의 길이가 짧고, 누적 난이도의 값이 작은 분기는 사라지게 된다.<ref name="오픈튜토리얼스"></ref><ref>HomoEfficio, 〈[https://homoefficio.github.io/2017/11/19/%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8-%ED%95%9C-%EB%B2%88%EC%97%90-%EC%9D%B4%ED%95%B4%ED%95%98%EA%B8%B0/ 블록체인 한 번에 이해하기]〉, 《Github》, 2017-11-19</ref><ref>niipoong, 〈[https://steemit.com/kr/@niipoong/bitcoin-blockchain-branch 비트코인 블록체인의 분기 Bitcoin Blockchain Branch]〉, 《steemit》, 2018-03-12</ref>
  
 +
==예시==
 +
Block 55 다음에 두 개의 각기 다른 블록 Block 56-1, Block 56-2가 생성되었다. 블록체인 네트워크는 이 상태를 유지한다. 분기한 Block 56-1과 Block 56-2는 각각 블록의 길이가 1이라 동등하기 때문이다. 그러나 다음 채굴과정에서 Block 57이 Block 56-2의 해시값으로 만들어졌다. Block 57의 [[이전블록해시]]는 Block 56-2의 해시값으로 되어 있다는 의미이다. 따라서 블록체인이 아래 그림과 같이 되었을 때, 분기된 블록의 길이가 달라지게 된다. 그리고 2차 체인으로 분리된 56-1 블록은 [[고아블록]]이라고 하며, 버려지게 된다. 56-1 블록을 채굴한 사람은 당연히, 채굴 보상을 받을 수 없다. 기록은 있으나 메인체인에 유지되지 않은 기록은 아무 의미 없기 때문이다.<ref name="오픈튜토리얼스"></ref>
  
== 특징==
+
{| width=550 style="color:black; text-align: center; background-color:#ffffff; margin: auto;"
: {| width=550 style="color:balck; text-align: center; background-color:#ffffff; margin: auto;"
+
|colspan="6"|  
|colspan="6"|
+
|
|
+
|<code><del>Block 56-1</del></code>||
|<code><del>Block 56</del></code>||
 
 
|-
 
|-
|<code>Block 53</code>||||<code>Block 54</code>||||<code>Block 55</code>
+
|<code>Block 53</code>||||<code>Block 54</code>||||<code>Block 55</code>
 
|-
 
|-
 
| colspan="6" |
 
| colspan="6" |
|
+
|
|<code>Block 57</code>||||<code>Block 58</code>
+
|<code>Block 56-2</code>||||<code>Block 57</code>
 
|-
 
|-
|}
+
|}  
 
 
 
 
Block 55 다음에 두 개의 각기 다른 블록 Block 56, Block 57이 생성되었다. 블록체인 네트워크는 이 상태를 유지한다. 분기한 Block 56과 Block 57은 각각 블록의 길이가 1이라 동등하기 때문이다. 그러나 다음 채굴과정에서 Block 58이 Block 57의 해쉬값으로 만들어졌다. Block 58의 [[이전블록해쉬]]는 Block 57의 해쉬값으로 되어 있다는 의미이다. 따라서 블록체인이 위 그림과 같이 되었을 때, 분기된 블록의 길이가 달라지게 된다. 이제 블록체인은 블록의 길이가 긴 것을 남기고 블록의 길이가 짧은 것은 없애버린다.<ref name="오픈튜토리얼스"></ref>
 
 
 
  
 +
두 개의 가지중에 한 가지만 선택되므로, 56-1 블록에 포함되는 트랜잭션은 유실되는게 아닌가 하고 생각할 수도 있는데, 56-1 블록과 56-2 블록은 같은 기간동안 모아진 트랜잭션에 대해 블록을 생성한 것이기 때문에 어차피 56-1에 있는 트랜잭션의 내용은 56-2 블록 또는 57 블록 어딘가에는 포함이 되어 있을 것이다. 때문에, 56-1 블록을 버리더라도 그 안의 트랜잭션은 56-2 블록에 똑같이 존재할 확률이 크다. 물론 트랜잭션이 네트워크에 전파되는 시간이 있기 때문에 56-1 블록과 56-2 블록의 트랜잭션 내용이 완전히 같다고 할 수는 없지만, 56-2 블록에 포함되지 못한 블록은 그 다음 블록인 57 블록에는 존재하게 될 것이다. <ref>SIMJAE 심심재, 〈[https://simsimjae.tistory.com/187 블록체인의 분기]〉, 《티스토리》, 2018-01-15</ref>
  
 
{{각주}}
 
{{각주}}
28번째 줄: 26번째 줄:
 
==참고자료==
 
==참고자료==
 
* 이타인, 〈[https://opentutorials.org/course/2865/16973 채굴 3 - 블락체인의 분기]〉, 《오픈튜토리얼스》, 2017-07-25
 
* 이타인, 〈[https://opentutorials.org/course/2865/16973 채굴 3 - 블락체인의 분기]〉, 《오픈튜토리얼스》, 2017-07-25
 +
* HomoEfficio, 〈[https://homoefficio.github.io/2017/11/19/%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8-%ED%95%9C-%EB%B2%88%EC%97%90-%EC%9D%B4%ED%95%B4%ED%95%98%EA%B8%B0/ 블록체인 한 번에 이해하기]〉, 《Github》, 2017-11-19
 +
* niipoong, 〈[https://steemit.com/kr/@niipoong/bitcoin-blockchain-branch 비트코인 블록체인의 분기 Bitcoin Blockchain Branch]〉, 《steemit》, 2018-03-12
 +
* SIMJAE 심심재, 〈[https://simsimjae.tistory.com/187 블록체인의 분기]〉, 《티스토리》, 2018-01-15
  
==같이보기==
+
==같이 보기==
 
+
* [[논스]]
 
+
* [[포크]]
 
+
* [[이전블록해시]]
  
 
{{블록체인 기술|검토 필요}}
 
{{블록체인 기술|검토 필요}}

2019년 9월 18일 (수) 03:28 기준 최신판

브랜치블록(Branch of Block)은 어떠한 두 채굴 노드가 동시에 논스(nonce)를 찾게 되었을 시 블록체인이 분기되는 것을 말한다.[1]

개요[편집]

브랜치블록은 브랜치(분기)와, 블록(블록체인)의 합성어로 '블록체인의 분기'를 의미한다. 블록체인에 연결한 새로운 블록이 거의 동시에 2개 혹은 여러개가 생길 때 발생하며 분기가 발생해서 충돌이 일어날 때 어느 블록체인을 믿을 것인가에 대한 기준이 마련되어 있다. 그렇지 않으면 분산되어 있는 장부 내용의 동기화가 깨지기 때문이다. 이에 대한 기준은 더 많은 작업증명이 수행되어 블록의 길이가 긴 것을 선택하도록 되어있고 블록의 길이가 짧고, 누적 난이도의 값이 작은 분기는 사라지게 된다.[1][2][3]

예시[편집]

Block 55 다음에 두 개의 각기 다른 블록 Block 56-1, Block 56-2가 생성되었다. 블록체인 네트워크는 이 상태를 유지한다. 분기한 Block 56-1과 Block 56-2는 각각 블록의 길이가 1이라 동등하기 때문이다. 그러나 다음 채굴과정에서 Block 57이 Block 56-2의 해시값으로 만들어졌다. Block 57의 이전블록해시는 Block 56-2의 해시값으로 되어 있다는 의미이다. 따라서 블록체인이 아래 그림과 같이 되었을 때, 분기된 블록의 길이가 달라지게 된다. 그리고 2차 체인으로 분리된 56-1 블록은 고아블록이라고 하며, 버려지게 된다. 56-1 블록을 채굴한 사람은 당연히, 채굴 보상을 받을 수 없다. 기록은 있으나 메인체인에 유지되지 않은 기록은 아무 의미 없기 때문이다.[1]

Block 56-1
Block 53 Block 54 Block 55
Block 56-2 Block 57

두 개의 가지중에 한 가지만 선택되므로, 56-1 블록에 포함되는 트랜잭션은 유실되는게 아닌가 하고 생각할 수도 있는데, 56-1 블록과 56-2 블록은 같은 기간동안 모아진 트랜잭션에 대해 블록을 생성한 것이기 때문에 어차피 56-1에 있는 트랜잭션의 내용은 56-2 블록 또는 57 블록 어딘가에는 포함이 되어 있을 것이다. 때문에, 56-1 블록을 버리더라도 그 안의 트랜잭션은 56-2 블록에 똑같이 존재할 확률이 크다. 물론 트랜잭션이 네트워크에 전파되는 시간이 있기 때문에 56-1 블록과 56-2 블록의 트랜잭션 내용이 완전히 같다고 할 수는 없지만, 56-2 블록에 포함되지 못한 블록은 그 다음 블록인 57 블록에는 존재하게 될 것이다. [4]

각주[편집]

  1. 1.0 1.1 1.2 이타인, 〈채굴 3 - 블락체인의 분기〉, 《오픈튜토리얼스》, 2017-07-25
  2. HomoEfficio, 〈블록체인 한 번에 이해하기〉, 《Github》, 2017-11-19
  3. niipoong, 〈비트코인 블록체인의 분기 Bitcoin Blockchain Branch〉, 《steemit》, 2018-03-12
  4. SIMJAE 심심재, 〈블록체인의 분기〉, 《티스토리》, 2018-01-15

참고자료[편집]

같이 보기[편집]


  검수요청.png검수요청.png 이 브랜치블록 문서는 블록체인 기술에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.