컴퓨터, IT 지식/블록체인

블록체인을 이해하기 위한 배경지식 - 합의(2)

게임이 더 좋아 2021. 5. 15. 02:37
반응형
728x170

 

 

이전 글에서 다루지 못했던 작업 증명과 지분 증명을 알아보자.

 


 

 

앞서 public에서 원활하게 합의에 이를 수 있었던 이유는 

이익이 커지는 방향으로 행동한다는 가정때문이었다.

보상으로 암호화폐를 제공해서 그렇다고 말했다. 

 

그렇지만 작은 이익을 포기하고 큰 조작을 하려는 무리들이 있기 마련이다.

 

항상 가정에는 예외가 있는 법

public 환경에서는 항상 그런 무리들이 존재하기 마련이다.

 

그래서 블록체인에서는

이전에 말한 비잔티움 장애를 이용하여 합의 형성을 이끌어내는 과정을 적용하려고 한다.

BFT 알고리즘이라고 한다.

++ Bizantine Fault Tolerance의 약자다

 

퍼블릭 체인의 대표적인 비트코인은 위 알고리즘을 적용하여 합의를 잘 이끌어내고 있다.

 


 

??? BFT가 뭔데라고 할 수 있다.

 

BFT가 바로 작업 증명과 지분 증명이다.

** 즉 이 2가지 증명이 불특정 다수에 대해서 합의를 이끌어낼 수 있는 방법이다.

 

우선 작업증명부터 생각해보자.

 

노드는 트랜잭션 풀에 쌓이는 트랜잭션 데이터를 꺼내면서 이전 블록의 해시값과 타임 스탬프를 블록에 포함시킨다.

또한 논스, Nonce 라는 적당한 수를 넣으면서 해당 블록 해시값 앞에 특정 자릿수만큼 0이 있을 때까지 연산한다.

 

???? 뭐야??? 무슨소리야???

 

논스가 뭔데 집어넣는거야??

++이 내용은 그냥 받아들이자 뭐 별다를 건 없다.

 

하지만 Nonce 발견 경쟁이 작업 증명의 핵심이다.

특정 자릿수만큼 0이 있는 Nonce가 바로 그 노드는 암호화폐를 받을 수 있다.

 

사실 이것에 대해서 굳이 알아야 할 필요는 없다.

하지만 이러한 것에서 가치가 나오는구나?

즉, 신뢰할 수 있는 시스템에 일조하는 부분에서 가치가 발생하는구나?

를 알면 좋다.

 

결국, 믿을 수 있는 시스템이기에 블록체인이 현재 각광받고 있는 것이니까

 

 


 

 

그다음은 지분 증명이다.

 

작업 증명에서는 대량의 컴퓨팅 자원을 필요로 한다.

** 때문에 그래픽카드 가격이 올랐지..? ㅎㅎㅎ CPU보단 GPU가 속도가 빠르다나 뭐라나 ㅎㅎㅎ

 

 

작업장에서 그래픽카드 장착해놓고 돌리는 사진을 봤을 수 있다.

 

아무튼 작업 증명은 엄청난 전력을 소모한다.

엄청난 연산을 해야하기 때문에 그렇다.

 

그래서 새로운 합의 형성 알고리즘을 고안해냈는데

 

바로 그것이 지분 증명이다.

 

지분 증명 또한 코인(암호화폐)를 기준으로 작동한다.

 

 

지분증명은 어떻게 작동하느냐??

 

기본적으로는 아래와 같이 작동한다.

 

 

 

????? 무슨 말이지??

 

 

지분 증명을 이용하는 방식은

Coin age의 설정 값이 클수록 채굴 난이도가 낮아진다.

-> 채굴 난이도가 낮다는 말은 작업 증명 방식보다 에너지 소비량이 낮고 빠르게 채굴이 가능하다는 의미다.

 

하지만 보상 또한 Coin age에 비례해서 받게 된다.

->비트코인처럼 채굴 성공했을 때 무조건 일정액의 암호화폐가 발행되는 것이 아님

 

위의 식으로 따져봤을 때 화폐 보유량이 많으면 보상도 커지는.. 그런 결과를 초래한다.

복리의 마법같은 일이 벌어지기 때문에 Coin age 설정 값을 조정하여 보상한다.

 

 

**위의 방식은 비트코인에서 쓰이는 방식이 아니고 최근에 쓰이는 방식이다.

 

 


 

사실 보상방법이 중요한 것은 아니다.

여기서 우리가 뭐 채굴을 하기 위해 알아본 것은 아니니까 자세히는 몰라도 된다.

 

다만 합의 방식이 이렇게 진행되며

합의를 이끌어내기 위해 경제적 보상을 제공하며 올바른 시스템을 유지하기 위해 이렇게 한다

정도로만 알면 된다.

 

정리하자면

 

불특정 다수에 대해 정말 신뢰할 수 있는 시스템을 갖고자 한다면 public 환경에서 블록체인을 쓰는 것이

의미가 있겠다. 다만 합의하기는 private 보다 확실히 느릴 수 있다.

 

 

빠른 합의와 일관성이 중요하다면 리더를 정해서 private 환경을 이용하는 것이 좋을 수 있다.

다만 참여자에 대한 제한이 필요할 것이다.

 

 

즉, 무엇을 추구하느냐에 따라 합의 방식, 환경이 달라질 것이라는 얘기다.

 

 

 

반응형
그리드형