의견.png

"블록생성자"의 두 판 사이의 차이

해시넷
이동: 둘러보기, 검색
1번째 줄: 1번째 줄:
'''블록생성자'''<!--블록 생성자-->(BP; Block Producer)란 블록체인에서 체인의 맨 끝에 새로운 블록을 생성하여 추가할 수 있는 사람을 말한다. 간략히 '''BP'''(비피)라고도 한다.
+
'''블록생성자'''<!--블록 생성자-->(BP; Block Producer)<!--BP, block producer-->란 블록체인에서 체인의 맨 끝에 새로운 블록을 생성하여 추가할 수 있는 사람을 말한다. 간략히 '''BP'''(비피)라고도 한다.
  
 
== 개요 ==
 
== 개요 ==
8번째 줄: 8번째 줄:
 
== 활용 ==
 
== 활용 ==
 
===합의 알고리즘===
 
===합의 알고리즘===
 +
합의 알고리즘은 블록체인 프로젝트의 심장과 마찬가지로 블록생성자가 악의적으로 이중지불을 용인하거나, 가짜(transaction)을 만들어 내면 블록체인의 신뢰는 무너지고 프로젝트는 위험에 빠진다. 그만큼 합의 알고리즘은 매우 중요하고, 많은 선택지들이 있는데 초기 블록체인 프로젝트들이 작업증명(PoW), 지분증명(PoS)을 선택했다면, 요즘은 프랙티컬 비잔틴 장애 허용(PBFT)과 위임 지분증명(DPoS)가 주로 선택지로 고려된다.
 +
# '''작업증명'''(PoW) : 다른 마이너들과 특정 넌스(Nounce) 값을 찾아내는 연산을 하여 블록을 생성하는 경쟁을 하며 전력 소모가 크다.
 +
# '''지분증명'''(PoS) : 지분의 스테이킹(Staking)한 검증인들이 블럭을 생성하고, 검증하는 방식이다.
 +
# '''위임 지분증명'''(DPoS) : 토큰홀더로 부터 투표를 받아 일정수의 블록생성자를 정하고 선출된 이들이 블럭을 생성하고, 검증을 진행한다.
 +
# '''프랙티컬 비잔틴 장애 허용'''(PBFT) : 블록생성자가 특정 기준으로 선정되고, 지정된 블록생성자가 블록을 생성한다.
  
 +
[[파일:DCS삼각형.PNG]]
 +
 +
합의 알고리즘을 선택할 때는 DCS 삼각형을 고려해야 하는데, DCS 삼각형은 블록체인 프로젝트가 가질 수 있는 3가지 속성을 가르키는 것으로, 각각 탈중앙화(Decentralization), 데이터 정합성(Consistent), 확장성(Scalability)를 가르킨다. 탈중앙화는 얼마나 많은 노드들이 데이터를 검증할 수 있는가, 확장성은 제한된 시간내에 얼마나 많은 거래를 처리할 수 있는가, 데이터 정합성은 모든 노드가 같은 데이터를 갖고 있는가 를 나타낸다. DCS 삼각형에서 포기할 수 없는 두 가지를 선택하는것이 보통 프로젝트의 성격을 규정할 수 있다. 예를들어, 이더리움(Ethereum)과 비트코인(Bitcoin)은 CD(Cinsistent, Decentralized)로 표현될 수 있다. 데이터 정합성과 탈중앙화를 선택하는 비트코인과 이더리움은 필연적으로 거래를 확정(finality) 하는데 오랜 시간이 걸린다. 반면 [[IPFS]]는 속도와 탈중앙화는 이뤘지만, 각 노드간 데이터의 정합성은 일부 포기하는 구조이다. 비잔틴 장애 허용 계열의 합의 알고리즘이 합쳐진 텐더민트(Tendermint) 또한 좋은 선택지가 될 수 있다. 탈중앙화는 비싸고 어렵다. 궁극적으론 이더리움과 같이 완전히 탈중앙화를 이룬 프로젝트가 가장 이상적이지만, 아직 비즈니스에 사용되기에는 적합하지 않다. 하지만 이더리움이 확장성을 개선할 수 있는 플리즈마(Plasma) 혹은 샤딩을 구현한다면 이런 논의가 무의미해질지도 모른다.<ref>WK, 〈[https://brunch.co.kr/@bitcoin/10, 블록체인 프로젝트 설계의 이해]〉, 《브런치》, 2018-08-26 </ref> {{자세히|합의 알고리즘}}
  
 
{{각주}}
 
{{각주}}

2019년 9월 19일 (목) 11:40 판

블록생성자(BP; Block Producer)란 블록체인에서 체인의 맨 끝에 새로운 블록을 생성하여 추가할 수 있는 사람을 말한다. 간략히 BP(비피)라고도 한다.

개요

블록생성자란 블록체인에서 체인의 맨 끝에 새로운 블록을 생성하여 추가할 수 있는 사람을 말하며, 채굴자비트코인작업증명(PoW) 방식을 따르는 암호화폐의 경우, 블록생성자는 목표값 이하의 해시를 가장 빨리 찾은 사람이 선택된다. 즉, 다수의 채굴 노드 가운데 가장 빨리 목표값보다 작은 해시값을 찾은 노드가 블록생성자가 된다. 작업증명 방식의 합의 알고리즘을 따르는 블록체인의 경우, 채굴자가 블록생성자가 된다. 암호화폐 보유자는 카르다노지분증명(PoS) 방식을 따르는 암호화폐의 경우, 일정한 개수 이상의 암호화폐를 소유한 사람들 가운데, 랜덤하게 블록생성자가 선택되어, 보유 지분이 많으면 많을수록, 블록생성자로 선택될 확률이 높아진다. 마지막으로 대표자는 이오스위임지분증명(DPoS) 방식에 따르는 암호화폐의 경우, 코인 소유자들의 전자 투표를 통해, 미리 정해진 숫자의 대표자(또는 증인)을 선출하고, 이 중에서만 새로운 블록을 생성하는 BP가 선택된다. 이 대표자를 부르는 이름은 각 암호화폐별로 조금씩 다른데, 스팀증인이라고 부르고, 네오(NEO)의 경우 북키퍼(BookKeeper)라고 부른다. 대표자, 슈퍼대표자 또는 증인의 숫자는 개별 암호화폐의 종류에 따라 조금씩 다른데, 비트셰어는 101명, 스팀은 21명, 이오스도 21명, 트론은 27명으로 미리 정해져 있다. 블록생성자에게는 새로운 블록을 생성한 것에 대한 대가로 일정한 개수의 암호화폐가 보상으로 주어진다.

특징

활용

합의 알고리즘

합의 알고리즘은 블록체인 프로젝트의 심장과 마찬가지로 블록생성자가 악의적으로 이중지불을 용인하거나, 가짜(transaction)을 만들어 내면 블록체인의 신뢰는 무너지고 프로젝트는 위험에 빠진다. 그만큼 합의 알고리즘은 매우 중요하고, 많은 선택지들이 있는데 초기 블록체인 프로젝트들이 작업증명(PoW), 지분증명(PoS)을 선택했다면, 요즘은 프랙티컬 비잔틴 장애 허용(PBFT)과 위임 지분증명(DPoS)가 주로 선택지로 고려된다.

  1. 작업증명(PoW) : 다른 마이너들과 특정 넌스(Nounce) 값을 찾아내는 연산을 하여 블록을 생성하는 경쟁을 하며 전력 소모가 크다.
  2. 지분증명(PoS) : 지분의 스테이킹(Staking)한 검증인들이 블럭을 생성하고, 검증하는 방식이다.
  3. 위임 지분증명(DPoS) : 토큰홀더로 부터 투표를 받아 일정수의 블록생성자를 정하고 선출된 이들이 블럭을 생성하고, 검증을 진행한다.
  4. 프랙티컬 비잔틴 장애 허용(PBFT) : 블록생성자가 특정 기준으로 선정되고, 지정된 블록생성자가 블록을 생성한다.

DCS삼각형.PNG

합의 알고리즘을 선택할 때는 DCS 삼각형을 고려해야 하는데, DCS 삼각형은 블록체인 프로젝트가 가질 수 있는 3가지 속성을 가르키는 것으로, 각각 탈중앙화(Decentralization), 데이터 정합성(Consistent), 확장성(Scalability)를 가르킨다. 탈중앙화는 얼마나 많은 노드들이 데이터를 검증할 수 있는가, 확장성은 제한된 시간내에 얼마나 많은 거래를 처리할 수 있는가, 데이터 정합성은 모든 노드가 같은 데이터를 갖고 있는가 를 나타낸다. DCS 삼각형에서 포기할 수 없는 두 가지를 선택하는것이 보통 프로젝트의 성격을 규정할 수 있다. 예를들어, 이더리움(Ethereum)과 비트코인(Bitcoin)은 CD(Cinsistent, Decentralized)로 표현될 수 있다. 데이터 정합성과 탈중앙화를 선택하는 비트코인과 이더리움은 필연적으로 거래를 확정(finality) 하는데 오랜 시간이 걸린다. 반면 IPFS는 속도와 탈중앙화는 이뤘지만, 각 노드간 데이터의 정합성은 일부 포기하는 구조이다. 비잔틴 장애 허용 계열의 합의 알고리즘이 합쳐진 텐더민트(Tendermint) 또한 좋은 선택지가 될 수 있다. 탈중앙화는 비싸고 어렵다. 궁극적으론 이더리움과 같이 완전히 탈중앙화를 이룬 프로젝트가 가장 이상적이지만, 아직 비즈니스에 사용되기에는 적합하지 않다. 하지만 이더리움이 확장성을 개선할 수 있는 플리즈마(Plasma) 혹은 샤딩을 구현한다면 이런 논의가 무의미해질지도 모른다.[1] 가기.png 합의 알고리즘에 대해 자세히 보기

각주

  1. WK, 〈블록체인 프로젝트 설계의 이해〉, 《브런치》, 2018-08-26

참고자료

같이 보기


  의견.png 이 블록생성자 문서는 블록체인 기술에 관한 토막글입니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 이 문서의 내용을 채워주세요.