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

지분작업증명

해시넷
Asadal (토론 | 기여)님의 2019년 8월 12일 (월) 21:58 판 (같이 보기)
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)
이동: 둘러보기, 검색

지분작업증명(PoSW; Proof of Stake and Work)란 작업증명(PoW) 방식과 지분증명(PoS) 방식을 혼합한 하이브리드 방식의 합의 알고리즘이다. 활동증명(PoA, Proof of Activity)이라고도 한다. 디크레드, 애터니티, 하이퍼캐시, 해피코인, 쿼크체인 등이 이 방식을 사용하고 있다.[1]

개요[편집]

지분작업증명 방식의 기본 아이디어는 채굴자가 모든 해시파워네트워크에 제공하려고 하는 경우 채굴자는 이에 비례하는 토큰 수를 스테이킹 해야 한다. 즉, 이중지불 공격을 수행하려면 공격자가 네트워크의 해시 전력의 51% 이외에 토큰을 보유해야 한다. 또한 풀 소유자가 풀에서 수집한 모든 해시파워의 효율성을 최대화하기 위해 충분한 지분을 확보해야 하므로 채굴풀에게 더 많은 비용이 소요된다.

등장배경[편집]

지분작업증명 방식은 작업증명 방식과 지분증명 방식의 장점을 혼합한 합의 알고리즘이다. 이 방식에서 채굴자는 네트워크에 기여할 수 있는 해시파워를 극대화하기 위해 네트워크의 해시파워 비율에 비례하여 일부 지분을 확보해야 한다.

기존 퍼블릭 블록체인의 주요 합의 알고리즘은 작업증명과 지분증명, 위임지분증명(DPoS)이었다. 사토시 나카모토(Satoshi Nakamoto)의 백서에서 등장한 이래로 작업증명은 강력한 보안성을 보여주었다. 그러나 속도와 확장성의 한계로 그다지 효율적이지 못하다는 문제점이 있었다. 지분증명 방식은 에너지 자원 측면에서 보다 효율적이나 보안문제가 아직 해결되지 않고 있다. 작업증명과 지분증명 방식의 이점을 모두 얻기 위해서는 대시(Dash)와 디크레드(Decred) 같은 하이브리드 합의 알고리즘이 제안되었다.

대시는 사용자에게 1000DASH를 스테이킹 하도록 하여 마스터노드를 설정하도록 유도하고 InstantSend를 통해 대단히 빠른 트랜잭션을 허용한다. 그러나 대시는 여전히 51%의 이중지불 공격으로 어려움을 겪고 있다. 디크레드에서는 모든 작업증명 채굴 블록체인에 추가되기 전에 여러 지분 보유자들이 서명을 해야 하므로 지분 보유자가 충분히 분산되어 있을 때 51% 공격에 대해 더 나은 보안을 얻는다.

특징[편집]

하이브리드 지분작업 증명 시스템의 목적은 각각의 접근 방식의 이점을 파악하고 이를 통해 서로의 취약점을 보완한다. 디크레드(Decred)는 작업 증명과 지분 증명을 모두 활용하고 이를 통합해 다중요소 또는 하이브리드 합의 메커니즘을 도출하는 몇 안되는 암호화폐 중 하나이다.

"마스터노드 코인"은 어떤 의미에서 하이브리드인데, 비트코인과 유사한 역할을 하는 인지할 수 있는 작업 증명 구성 요소를 갖고 있으며, 특별한 노드를 위한 부가적인 역할을 하기 때문이다. 이처럼 특별한 노드는 보통 일정 금액의 통화를 담보로 보유해야 하는 데, 이는 지분 증명의 입증 근거와 유사하다. 대시(Dash)는 정통적인 마스터노드 코인이며, 이러한 모델을 가리켜 서비스 증명(Proof of Service)이라 한다.

지분작업증명은 기본적으로 POW 합의 알고리즘을 바탕으로 많은 해시 파워를 동원하여 연산을 수행하고 블록을 생성하지만 이것에 더하여 POS 합의 알고리즘에 따라 해시 파워에 비례하여 상당한 양의 코인을 스테이킹하고 있어야만 실제로 그 해시 파워가 블록 채굴에 있어 적용되는 시스템이라고 할 수 있다. 예를 들어 간단하게 어떤 노드가 100 해시 파워를 소유하고 있다고 할 때 기존의 POW 합의 알고리즘에 따르면 이 해시 파워가 그대로 채굴에 반영되어 채굴 보상이 주어졌다고 한다면 PoSW에서는 100 해시 파워를 소유하고 있더라도 코인을 스테이킹 하지 않으면 블록 생성에 참여할 할 수 없다. 또한 코인을 100개 스테이킹 했을 때 해시파워가 60까지 적용되고 200개 스테이킹 했을 때 80이 적용되는 것과 같이 어느 정도까지 코인을 많이 스테이킹하면 할수록 해시 파워가 더 많이 적용되는 방식이다. 이렇게 함으로써 얻을 수 있는 장점은 POS의 경우 다음 블록 생성자를 무작위로 추첨할 때 바로 이전 블록 생성자에 의해 무작위 변수가 조작될 수 있다는 문제점이 있다고 할 때 POW 방식에 따라 블록 생성자를 공정하게 선택하게 된다는 점이 있다. 또한 기존의 POW 방식이 채굴의 집중화 문제를 겪을 수 있다는 점에 비해 POW 방식에 따른 해시 파워의 확보와 함께 POS 방식에 따른 코인까지 그에 비례하여 어느 정도 많은 양을 스테이킹 해야 한다는 부담이 마이닝 노드들에게 추가되기 때문에 상대적으로 채굴의 집중화 문제가 완화되는 효과를 얻을 수 있게 된다.[2]

활용[편집]

디크레드[편집]

디크레드 네트워크의 트랜잭션은 지분작업증명 방식을 통해 검증된다. 작업증명 채굴은 컴퓨터하드웨어와 리소스를 커밋하여 네트워크 트랜잭션을 처리하고 디크레드 네트워크에서 블록체인을 구성하는 블록을 구축하는 작업이다. 컴퓨터의 연산능력을 사용하여 네트워크에서 송금의 유효성을 검사함으로써 새로 생성되는 디크레드 코인을 받는다. 이때, 트랜잭션은 블록으로 그룹화 된다.[3]

또한 디크레드는 중요한 네트워크 개발 안건에 대해 투표하고 작업증명을 검증하는데 지분증명 방식을 사용한다. 작업증명과 달리 지분증명은 컴퓨터 리소스가 거의 필요하지 않다. 네트워크에서 투표권을 구입하기 위해 지출된 자금이 사용되기 때문이다. 지분증명은 디크레드에 분권화 계층을 추가하고 사용자가 제안된 네트워크 변경 사항을 투표할 수 있도록 한다. 디크레드에서 지분증명 방식이 흥미로운 점은 의제에 대한 투표 능력이다. 블록 유효성 검사는 투표로 간주될 수 있기 때문에, 시스템은 타겟에 추가 투표비트 구성요소를 추가하여 일련의 블록에 대한 표를 추적하고 셀 수 있다.[3]

작업증명 채굴자들은 무작위로 선택된 지분증명 검증자들이 블록을 메인체인에 추가하기 전에 검증해야 하는 블록을 생성한다. 이렇듯 지분작업증명 합의 알고리즘은 네트워크 운영에 있어 다양한 이해관계자들에게 정보를 제공한다. 지분증명 검증자는 작업증명 채굴자들에 대한 명확한 검증 역할을 한다. 지분증명 검증자는 잘못된 블록이나 토큰 보유자가 선호하지 않는 소프트웨어 버전을 사용한 블록을 거부할 수 있다. 이 블록 보상은 채굴자, 토큰 보유자, 개발 풀 사이에서 60:30:10으로 나누어진다. 만약 블록이 무작위로 선택된 5명의 지분증명 검증자에 의해 승인되지 않은 경우, 60%의 작업증명 채굴자 보상은 비례적으로 줄어든다. 지분증명 프로세스에 대한 참여는 티켓 시스템을 통해 자발적으로 이루어진다.[3] 가기.png 디크레드에 대해 자세히 보기

디크레드의 작업 증명 구성 요소는 다른 작업 증명 기반 프로젝트와 유사하게 작동하며 Blake-256 해시 함수를 사용한다. 디크레드의 지분 증명 요소와 체인에 직조된 방식은 매우 독특하여 추가적으로 설명이 필요하다.

디크레드 지분 증명에 참여하기 위해서 "티켓"을 사려면 지분 보유자들은 DCR을 일정 시간 동결시켜야 한다. 개별 티켓 가격은 시장 메커니즘과 유사하게 결정되는데, 시스템은 정해진 수의 라이브 티켓(40,960)을 목표로 한다. 목표 숫자보다 많은 경우 가격이 오르고, 더 적은 경우 가격이 내려가게 된다. 누군가가 티켓을 구매할 때, 그들이 사용한 DCR은 투표를 위해 무작위로 호출되거나, 약 142일 후에 만료될 때까지 동결(예를 들어, 그들은 이를 사용할 수 없음)된다. 이는 지분 증명 유권자들의 관심을 촉구하며 네트워크의 가장 큰 이익을 위해 행동하게끔 하는 지분 증명 기회 비용을 도입한다.

지분 증명 참여자(유권자 또는 지분 보유자라고도 함)는 세 가지 고유한 역할을 수행한다. 즉, 블록 투표, 합의 규칙 변경 투표, Politeia 제안 시스템을 통한 프로젝트 단계 관리 투표이다. 이 중 첫 번째, "블록 투표"는 지분 증명 유권자들이 합의를 유지하는데 가장 직접적으로 관여하는 방법이다.[4]

블록 투표[편집]

작업 증명 마이너가 유효한 블록을 찾으면 해당 블록을 네트워크로 전송하지만, 해당 블록이 유효한 것으로 간주하려면, 무작위로 선택된 티켓 5개 중 3개 이상의 투표를 포함해야 한다. 지분 증명 유권자는 티켓이 호출될 때 지갑을 열어두고 투표할 준비를 한다.(또는 투표 서비스 제공업체와 계약을 맺어 이를 대신합니다). 지분 증명 티켓이 투표를 위해 호출될 때, 보유자는 보상을 지급받는다.

티켓이 호출되면 이전 블록의 정규 트랜잭션을 수락하거나 거부한다. 네트워크 노드는 최소 3표를 포함해야 새 블록을 유효한 것으로 인식할 수 있다. 대다수의 티켓이 이전 블록의 트랜잭션을 거부하면, 이는 멤풀(Mempool)로 돌아간다. 이러한 정규 트랜잭션은 작업 증명 마이너들의 보상이 포함되지만, 지분 증명 투표자들의 보상은 포함되지 않는다.

따라서, 지분 증명 유권자들은 자신들의 보상에 영향을 끼치지 않고 마이너들의 보상을 받을 수 있는 힘을 가지고 있다. 이는 지분 보유자들에 의해 투표된 네트워크의 합의 규칙 변경을 거부할 수 있는 작업 증명 마이너들의 힘을 제한한다. 실제로, 지분 증명 유권자들은 악의적이거나 비효율적인 행동이 감지될 때 "아니오"라고 투표하는 정책을 채택함으로써 그들이 선호하지 않는 모든 종류의 마이너들의 행동을 거부할 수 있다. 이는 악의적인 작업 증명 마이너들이 트랜잭션을 기록하고 보상을 받는 것을 방지한다.

이처럼 다층적인 지분 증명 검증은 네트워크의 보안과 다수의 공격에 대한 저항성을 크게 향상시킨다. 다수의 이중 지출 공격을 수행하는 일반적인 방법은 대체 체인을 비밀리에 채굴한 후 일정 기간 후에 이를 해제하여, "이전의" 체인 거래 무효화(예를 들어, 자신들의 입력값을 이중 지출)를 통해 블록체인을 재작성 하는 것이다. 디크레드 블록들은 유효한 것으로 간주하기 위해 무작위로 선택된 티켓으로부터의 입력값을 필요로 하며, 해당 입력값을 수신할 때까지 작업 증명 마이너들이 블록을 형성할 수 없기 때문에, 작업 증명 마이너들이 라이브 티켓의 상당 부분을 통제하지 않는 한 비밀리에 채굴하는 것이 불가능하다.

하이브리드 작업/지분 증명 설계에서 공격자는 두 개의 구별된 시스템을 우회해야 하기 때문에 네트워크 공격 비용을 크게 증가시킨다. 특히 지분 증명 구성 요소는 상당히 느린 속도로만 티켓을 획득할 수 있게 구성된다. 각 블록/간격에서 한정된 수의 티켓을 구매할 수 있으며, 최대 개수를 구매하면 가격이 급격히 상승하게 된다. 또한, 해당 티켓들을 구매한 다음부터는, 이를 구매하는 데 사용되는 자금이 일정 기간 동결되어 공격자는 공격으로 인해 동결된 코인의 평가절하를 경험하게 될 것이다.

각 블록이 무작위로 선택된 지분 보유자에 의해 투표되도록 요구하는 것은 마이닝 될 때 블록체인이 모든 참여자와 공유되어야 한다는 것을 의미하며, 네트워크의 보안을 강화한다. 디크레드의 하이브리드 시스템은 지분 보유자들이 작업 증명 마이너들에 대한 통제권을 갖도록 설계되었다.[4]

합의 변경 투표[편집]

디크레드는 처음부터 지분 증명 지분 보유자들을 블록체인 거버넌스의 지배적인 의사결정 세력으로 만들고자 했다. 합의 규칙에 작성되는 것은 모든 네트워크 합의 규칙 변경이 투표 과정을 거쳐야만 시행될 수 있게 하는 업그레이드 비준 절차이다. 투표 티켓의 75% 이상이 승인한 경우에만 변경할 수 있다. 이 과정은 특정 비율의 마이너(95%)와 유권자(75%)가 규칙에 대한 잠재적 변경 사항과 함께 업그레이드된 소프트웨어를 실행하고 있을 때 시작된다. 4주간의 투표기간 후 75%의 지지를 받은 제안은 받아들여지고, 그렇지 않으면 거부되며, 압도적 다수표가 없으면 재투표가 시작된다. 제안이 수락되면 변경된 규칙은 한 달 후에 활성화된다.[4]

프로젝트 관리: Politeia[편집]

디크레드의 블록 보상은 작업 증명 마이너(60%), 지분 증명 유권자(30%), 그리고 프로젝트 목표 달성을 위한 오픈 소스 소프트웨어 개발에 투자하기 위해 재단(10%)에 분배된다. 티켓 소유자들은 해당 기금이 어떻게 사용되고, 어떤 기능이 추가되어야 하는지 투표하고, Politeia 플랫폼을 통한 정책을 결정할 수 있는 주권을 가지고 있다.[4]

애터니티[편집]

애터니티는 지분작업증명 합의 알고리즘을 사용하며 메모리를 효율적으로 사용하는 작업증명 기반의 쿠쿠사이클 알고리즘(Cuckoo Cycle Algorithm)을 통해 블록 생성이 이루어진다.[5] 쿠쿠사이클 알고리즘은 새로운 작업증명 알고리즘으로 전력 소모가 적고, 메모리 효율이 높아 스마트폰 등 모든 저전력 기기에서도 채굴이 가능하다.[6] 블록생성 시간은 10초 이내로 채굴하는 경우 엔비디아(NVIDIA) 180Ti같은 GPU를 권장하고 있다. 또한 각 계정에서 보유하고 있는 지분에 따라 투표수가 정해지며 이를 통해 투표를 한다. 가기.png 애터니티에 대해 자세히 보기

하이퍼캐시[편집]

하이퍼캐시는 기존의 전형적인 작업증명과 지분증명 합의 알고리즘이 가지고 있던 고질적인 문제점을 보완하는 한편 장점들은 강화하기 위해 두 방식을 동시에 접목했다. 기존의 작업증명 합의 알고리즘의 경우 채굴작업에 소모되는 전기량이 대략 15개 소국가의 전기 소모량보다 높은 수치를 보이는 등 심각한 환경오염 문제를 야기하고 있다. 게다가 지분증명 합의 알고리즘의 경우 과도한 중앙 집권화의 우려가 있어 시스템의 보안과 청정성이 위험에 노출될 가능성이 크다. 이런 문제점들을 해결하기 위해 하이퍼캐시는 지분증명 메커니즘을 유지하여 안정적인 보안을 유지한다. 동시에 지분증명 분배 메커니즘을 통해 ICO 투자자들이 시스템을 중앙집권화 하는 것을 방지한다. 작업증명 매커니즘을 거버넌스에 적용하여 모든 코인 이용자가 시스템 내 결정권을 나눠갖게 되어 탈중앙화 시스템을 구축할 수 있다.[7] 가기.png 하이퍼캐시에 대해 자세히 보기

각주[편집]

  1. 유지수 기자, 〈THEblockchain: 블록체인 합의 프로토콜 기초서〉, 《토큰포스트》, 2017-03-07
  2. erc20, 〈Q. 지분/작업 증명 하이브리드 (PoS/PoW hybrid)는 무엇인가요?〉, 《아하 지식인》, 2019-06-17
  3. 3.0 3.1 3.2 디크레드 공식 홈페이지 - https://www.decred.org/
  4. 4.0 4.1 4.2 4.3 Richard Red, 디크레드(Decred) 기고자, 〈하이브리드 작업/지분 증명 합의 설명〉, 《바이낸스》, 2019-08-08
  5. 친절한 유건아빠, 〈암호화폐 거래소 빗썸 상장코인: 애터니티(Aeternity, AE)〉, 《티스토리》, 2018-11-27
  6. tera byte, 〈애터니티에 대해 알아보자.!〉, 《네이버 블로그》, 2018-06-07
  7. tera byte, 〈에이치쉐어 에 대해 알아보자.!〉, 《네이버 블로그》, 2018-05-05

참고자료[편집]

같이 보기[편집]


  검수요청.png검수요청.png 이 지분작업증명 문서는 합의 알고리즘에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.