블록생성자 편집하기

이동: 둘러보기, 검색

경고: 로그인하지 않았습니다. 편집을 하면 IP 주소가 공개되게 됩니다. 로그인하거나 계정을 생성하면 편집자가 아이디(ID)으로 기록되고, 다른 장점도 있습니다.

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

해시넷에서의 모든 기여는 다른 기여자가 편집, 수정, 삭제할 수 있다는 점을 유의해 주세요. 만약 여기에 동의하지 않는다면, 문서를 저장하지 말아 주세요.
또한, 직접 작성했거나 퍼블릭 도메인과 같은 자유 문서에서 가져왔다는 것을 보증해야 합니다 (자세한 사항은 해시넷:저작권 문서를 보세요). 저작권이 있는 내용을 허가 없이 저장하지 마세요!

취소 | 편집 도움말 (새 창에서 열림)