Blockchain

Blockchain의 기술적 요소와 합의 알고리즘

computerchild 2024. 8. 31. 15:00
728x90
반응형

다시 돌아온 컴린이 입니다. 오늘은 블록체인의 기술적 요소와 합의 알고리즘에 대해서 공부해보겠습니다!

 

 

자 먼저 기술적 요소에 경우 크게 4가지로 구분 가능합니다. 분산원장, 합의 알고리즘, 노드(Peer), P2P network로 정의해보겠습니다.

 

먼저 분산원장은 앞서 여러번 말씀드렸듯이, 복제, 공유, 동기화를 다수의 node들이 유지하는 탈중앙화 기록 시스템입니다.

합의 알고리즘은 컴퓨터 과학에서 정의한 것을 따르면, 시스템이 분산화 되어있을 때 시스템 간 특정 data에 대한 동일 값을 유지하기 위한 프로세스입니다. 블록체인에서 사용하는 다양한 합의 알고리즘은 뒤에서 다시 말씀드리겠습니다!

 

노드 즉  Peer라고도 하는 존재는, 블록체인 네트워크에 참여하고 있는 참여자이자 운영 및 유지를 하는 관리자이기도 합니다. 블록체인에서 구분하는 다양한 노드의 종류는 이후 자세히 설명드리도록 하겠습니다.

 

P2P network는 인터넷에 연결 된 다수의 개별 사용자들이 중개기관을 거치지 않고 직접 데이터를 주고받는 방식으로서, 

아래와 같은 그림처럼 일반적인 네트워크는 A가 C에게 data를 전달하려면 중앙서버를 거쳐서 데이터를 보내야하는 방식이지만, P2P는 네트워크에 연결된 모든 컴퓨터들이 서로 대등한 입장에서 데이터나 주변장치 등을 공유할 수 있는 방식이다. P2P 개념은 1979년 USENET이라는 메시지, 뉴스 리딩 시스템이 최초로서, 일반적으로 파일 공유 등 서비스에 많이 이용된다. 

P2P network 설명

 

자 다음은 블록체인에서 활용되는 합의 알고리즘에 대해 알아보도록 하겠습니다. 대표적인 합의 알고리즘은 PoW, PoS가 있습니다. PoW는 Proof of Work, PoS는 Proof of Stake의 약자입니다. 한가지씩 설명드리겠습니다.

PoW는 비트코인, 이더리움 클래식등에서 사용되는 합의 알고리즘으로서, 작업증명이라고도 불리는데, 무언가에 대한 일을 하고 그 일이 제대로 성공했는지에 대한 증명을 하는 것입니다.

비트코인에서의 작업증명은 반복적인 과정을 통해 무작위로 특정한 조건보다 낮은 값, 목표값보다 낮은 해시값을 찾아내는 것입니다. 이를 채굴이라고 표현합니다. 채굴에 성공해서 메인체인에 연결이 된다면, 보상으로 비트코인을 받게 됩니다. 쉽게 예를 들면, 1부터 1,000까지 숫자가 주어지고, 50 이하의 숫자를 먼저 뽑는 사람이 이기는 것이라고 한다면, 이때 최대한 빨리 50 이하의 숫자를 뽑아야만 보상을 받을 수 있다. 50 이하의 숫자를 뽑아야한다 라는 조건이 difficulty level 난이도이다. 이렇게 최대한 빨리 해당 값을 찾아야 하기에 최대한 많은 컴퓨팅 파워가 필요한 것입니다.

 

PoS는 PoW와 다르게 컴퓨팅 파워가 크게 필요하지 않습니다. 자신의 지분, staking한 자산을 통해 블록을 생성할 수 있는 기회를 얻습니다. PoS는 네트워크 참여자 모두가 블록을 검증할 수 있고, 대표적인 PoS이더리움에 경우 32ETHstaking 해야합니다만, 이때 staking 한 지분이 많을수록 검증기회를 얻을 확률이 높아지게 됩니다.  새로운 블록을 생성할 때 지분 보유 기간, 지분 규모등을 확인하여, 블록을 생성 할 기회를 얻는 것이다. 예를 들어 2명의 네트워크 참여자 중 A는 지분이 10만원 B는 지분이 5만원이라면 A가 만든 블록이 메인체인에 연결될 것이다. 물론 금액이 같다면 지분을 staking한 기간에 따라 기회가 주어지게 됩니다.

 

이외에도 여러 알고리즘이 존재하는데, DPoS, PoA등이 있습니다. 

DPoS는 Delegated proof of stake의 약자로 위임지분증명이라고 합니다. 위임지분증명은 PoS를 기반으로 하여 지분 보유자들이 각자의 지분에 비례한 투표권을 행사하여 대표자를 선정 후, 대표자들이 투표를 통해 의사결정을 내리는 대의민주주의 방식이라고 할 수 있습니다. 이 방식은 기존 PoS방식은 지분을 많이 보유한 사람이 의사결정 기회를 많이 얻는 독과점 우려가 생기기에, 고안되었습니다. 현존하는 합의 알고리즘 중 가장 빠른 TPS를 보여주고 있고, 대부분 전송수수료를 무료로 하고 제공합니다. 물론 다른비용이 발생하긴 합니다.

 

또 PoA는 proof of autority로서 권한증명이라고도 하며, 권한증명에서는 신뢰할 수 있는 검증자들이 블록을 생성 및 검증하는 역할을 맡습니다. 검증자들은 자신의 신원을 공개하고, 네트워크에서 요구하는 조건을 만족할 시 자격을 얻을 수 있습니다. 이 또한 빠른 트랜잭션 처리 속도, 낮은 에너지 소모등이 장점이지만, 검증자에게 모든 것을 맡겨야 하기에 중앙화가 될 우려가 항상 존재하는 방식입니다.

 

오늘은 블록체인의 기술적요소와 합의 알고리즘에 대해 공부해보았습니다. 다음 시간에는 블록 관련 내용을 공부해서 오도록 하겠습니다~ 다음시간에 봐요

728x90
반응형