|
|
(사용자 2명의 중간 판 39개는 보이지 않습니다) |
1번째 줄: |
1번째 줄: |
− | '''합의'''(agreement, 合意)<!--agreement, 合意-->란 둘 이상의 인원이 특정 문제에 대해 서로 의견이 일치하는 것을 말한다. | + | '''합의'''(agreement, 合意)<!--agreement, 合意-->란 둘 이상의 인원이 특정 문제에 대해 서로 [[의견]]이 [[일치]]하는 것을 말한다. |
| | | |
− | ==개요== | + | == 같이 보기 == |
− | 블록체인은 [[탈중앙화]]를 추구하며 전 세계의 다양한 참여자가 [[P2P]](Peer To Peer) 네트워크 방식으로 생태계를 유지하고 있기 때문에 그 무엇보다 참여자의 의견 일치(합의)가 중요하다. [[합의 알고리즘]]은 블록체인 생태계를 구성하는데 꼭 필요한 요소이며, 다양한 블록체인 프로젝트가 다양한 합의 알고리즘을 통해 운영되고 있다.<ref>Seonho Shin, 〈[https://brunch.co.kr/@shinseonho/56 블록체인 합의 알고리즘 이해하기]〉, 《브런치》, 2019-04-09</ref> 합의 알고리즘은 블록체인 네트워크에 합의를 달성하는 매커니즘이라 정의할 수 있다. 탈중앙화된 블록체인은 [[분산화]]된 시스템으로 구성되어 있으며, 중앙 권위체에 의존하지 않기에, 분산화된 노드는 트랜잭션의 유효성에 합의가 필요하다. 이곳이 바로 합의 알고리즘이 시작되는 지점이다. 합의 알고리즘은 프로토콜 규칙이 준수되고 있는지 확인하며, 모든 [[트랜잭션]]이 신뢰할 수 있는 방식으로 진행되는 것을 보장해, 코인이 한번만 사용되도록 한다.<ref name="바이낸스 아카데미">〈[https://www.binance.vision/ko/blockchain/what-is-a-blockchain-consensus-algorithm 블록체인 합의 알고리즘이란 무엇인가요?]〉, 《바이낸스 아카데미》, 2019-11-09</ref>
| + | * [[합의서]] |
− | | |
− | ==합의 알고리즘==
| |
− | 몇 가지 유형의 [[합의 알고리즘]]이 있다. 가장 일반적인 것은 [[작업증명]](Proof of Work; PoW)과 [[지분증명]](Proof of Stake; PoS)이다. 보안성과 기능성, 확장성의 균형을 고려할 때, 각기 장단점을 갖고 있다. 또한, 합의 알고리즘은 암호 화폐 네트워크의 무결성과 보안을 유지하기 위해 중요하다. 합의 알고리즘은 [[분산화]]된 [[노드]]들이 어떤 버전의 블록체인이 진짜 버전인지 합의할 수 있게 한다. 디지털 경제 시스템이 제대로 작동하기 위해서는, 현 상태의 블록체인에 합의하는 것이 필수적이다. 작업증명 합의 알고리즘은 비잔티움 장군 문제를 해결하는 최고의 해결책으로 간주되며, 이는 비트코인을 [[비잔티움 장애 허용]] 시스템으로 탄생시켰다. 이는 비트코인 블록체인이 51% 공격(또는 다수의 공격)과 같은 공격에 매우 강력함을 뜻한다. 네트워크가 [[탈중앙화]]되어 있을 뿐만 아니라, 작업증명 알고리즘을 사용하기 때문이다. [[마이닝]] 과정에 드는 높은 비용은 마이너들이 네트워크를 방해하기 위해 자신들의 자원을 투자하는 것을 무척 어렵게 한다.<ref name="바이낸스 아카데미"></ref>{{자세히|합의 알고리즘}}
| |
− | | |
− | ===작업증명===
| |
− | [[작업증명]](Proof of Work; PoW)은 처음으로 만들어진 [[합의 알고리즘]]이다. 이는 [[비트코인]]과 많은 암호 화폐에 적용되었으며, 작업증명 알고리즘은 [[마이닝]] 과정에 필수적인 부분이다. 작업증명 마이닝은 수많은 [[해싱]] 시도를 포함하므로, 더 많은 연산 능력을 가질 수록 초당 더 많은 시도를 할 수 있다. 즉, 높은 해시 레이트를 가진 마이너일수록 다음 블록(블록 해시)에 대한 유효한 해결책을 찾을 가능성이 더 높다. 작업증명 합의 알고리즘은 [[분산화]]된 네트워크 노드가 합의를 달성할 경우에만 새로운 블록의 [[트랜잭션]]을 검증하고 이를 블록체인에 추가할 수 있도록 하며, 마이너에 의해 제공된 블록 해시가 유효한 작업 증명이라는 점에 동의하게 된다.<ref name="바이낸스 아카데미"></ref>{{자세히|작업증명}}
| |
− | | |
− | ===지분증명===
| |
− | [[지분증명]](Proof of Stake; PoS) 합의 알고리즘은 2011년, [[작업증명]]의 대안으로 개발되었다. 지분증명은 작업증명과 유사한 목표를 공유하지만, 몇 가지 근본적인 차이와 특이점이 있다. 간단히 말해서 지분증명 합의 알고리즘은 작업증명의 마이닝 과정을 참여자의 스테이크에 따라 블록을 검증하는 것으로 대체한다. 각 블록의 유효성 검사자는 할당된 연산 능력이 아닌 암호 화폐에 대한 투자에 의해 결정된다. 각 지분증명 시스템은 서로 다른 방식으로 알고리즘을 구현할 수 있지만, 일반적으로 블록체인은 노드의 부유한 정도와 코인 나이(얼마나 오래 코인이 묶여 있었는지 혹은 스테이크 되었는지)를 고려하는 임의 선출 방식과 무작위 요소를 통해 보안을 확보한다. 이더리움 블록체인은 현재 작업증명 알고리즘에 기반하고 있지만, 네트워크 확장성을 높이기 위해 작업증명을 지분증명으로 교체하는 [[캐스터]](Casper) 프로토콜이 출시될 것이다.<ref name="바이낸스 아카데미"></ref>{{자세히|지분증명}}
| |
− | | |
− | ===위임지분증명===
| |
− | [[위임지분증명]](Delegated Proof of Stake; DPoS)은 [[작업증명]] 방식의 대안으로 야심차게 등장한 [[지분증명]] 방식 또한 완전하지 못하다는 점이 드러나며, 이를 해결할 수 있는 대안으로서 EOS의 창시자 '[[댄 라리머]]'에 의해 제안 된 합의 방식이다. 이는 위임지분증명 방식으로, 지분증명과의 차이점은 권한을 소수의 대표자에게 이양한다는 것이다. 지분증명이 직접 민주주의라면 위임지분증명은 간접민주주의이다. 지분 보유자들은 지분에 비례한 투표권을 행사하여 자신들을 대신하여 블록 생성과 검증, 네트워크 유지, 합의에 대한 권한을 소수에게 위임한다. 현재 가장 성공적인 사례인 '[[스팀잇]](Steemit)' 은 이러한 위임지분증명 방식을 채택해 21명의 증인(대표자)를 통해 위임지분증명 방식과 [[퍼블릭 블록체인]]의 가능성을 증명해주고 있다.
| |
− | | |
− | 위임지분증명의 가장 큰 장점은 투표에 의해 선출 된 소수의 대표자들이 전체를 대신하여 [[블록]]을 생성한다는 점이다. 그 때문에 상대적으로 빠른 합의 속도와 비용이 적게 소요된다는 장점이 있다. 이와 동시에 전체 네트워크 관리와 프로젝트의 발전에 대해 아무런 관심이 없는 일반 이용자들은 오히려 편의성이 증가한다. 위임지분증명은 소수에 의한 효율성을 증명해냈지만, 위임지분증명을 비판하는 많은 사람들은 소수에 의해 관리되는 네트워크가 과연 [[탈중앙화]]가 맞는가에 대한 공통된 질문을 한다. 이 점에 대해서는 각자가 생각이 다르겠지만, 기술적으로만 따지자면 [[노드]]의 소수 집중적 구조는 기존 블록체인 기술이 가지고 있는 가장 큰 강점인 '탈중앙화로 인한 보안성'을 잃어버리는 단점이 있다. 모든 네트워크가 소수에 집중되면 그만큼 공격에 취약해 지는 것은 당연한 일인 뿐더러 자신의 정체를 투명하게 공개해야 하는 증인에 대한 공격은 더욱 그렇다.<ref>ROA Invention LAB, 〈[https://verticalplatform.kr/archives/9984 합의 알고리즘의 발전과 진화방향]〉, 《버티컬 플랫폼》, 2018-05-31</ref>{{자세히|위임지분증명}}
| |
− | | |
− | ===리스지분증명===
| |
− | [[리스지분증명]](Leased Proof of Stake; LPoS)은 [[지분증명]](PoS) 합의 알고리즘의 향상된 버전이다. 일반적으로 지분증명 알고리즘에서 일정량의 암호화폐을 보유한 [[노드]]는 다음 [[블록]]을 생성하여 [[블록체인]]에 추가할 수 있지만, 리스지분증명 방식에서는 사용자가 잔액을 다른 [[풀노드]](full node)에 임대할 수 있다. 리스지분증명을 사용하면, 사용자는 자신이 소유한 암호화폐를 다른 풀노드 사용자에게 임대할 수 있다. 자신이 보유하고 있는 암호화폐를 풀마이닝 노드에게 임대(리스)해서 그들이 제공하는 추가 [[채굴]]에 대한 대가로 수입을 받는 것이다. 풀노드가 받는 금액이 클수록 해당 노드가 다음 블록의 생성자로 선택될 가능성이 높아진다. 풀노드가 다음 블록의 생성자로 선택되면, 임대자는 풀노드가 획득한 [[트랜잭션]] 수수료 총액 중 자신이 임대해준 코인 수량에 비례한 액수를 보상으로 받게 된다. 이를 위해서는 먼저 지갑을 생성하고 자신이 보유하고 있는 암호화폐를 라이트 클라이언트 지갑으로 송금하고, 그 상태에서 원하는 금액만큼 임대하면 된다.<ref>"[https://docs.wavesplatform.com/en/platform-features/leased-proof-of-stake-lpos.html Leased Proof of Stake]", ''Waves Platform''</ref><ref>Waves.docs, 〈[https://docs.wavesplatform.com/ko/platform-features/leased-proof-of-stake-lpos.html Leased 지분 증명]〉, 《GitBook》</ref>{{자세히|리스지분증명}}
| |
− | | |
− | ===성능증명===
| |
− | 성능증명 합의 알고리즘은 [[탈중앙화]]와 네트워크 성능을 모두 보장하기 위해 설계되었다. 각 [[노드]]의 성능 기여도를 기반으로 하며, 이 과정에서 여러가지 변수들이 계산에 고려된다. 이 방식에서는 후보자 노드의 기존 풀에서 HP노드를 10분마다 새로 생성한다. 성능증명 방식은 아우터 레이어(Outer Layer)와 이너 레이어(Inner Layer) 두 가지 레이어를 포함하고 있는데, 아우터 레이어는 서버 성능, 네트워크 대역폭, HP노드의 수행 횟수, 지리적 위치 등 다양한 변수를 고려하여 약 10분 간격의 HP노드 로테이션을 통해 공정하고 안정적으로 HP노드를 선발한다. 이너레이어는 어떤 HP노드가 블록을 생성하는지 결정한다.<ref>"[https://www.hpb.io/static/file/whitepaper/HPB_whitepaper_kor_韩语_한국어.pdf High Performance Blockchain Whitepaper]", ''hpb.io''</ref>{{자세히|성능증명}}
| |
− | | |
− | ===담보지분증명===
| |
− | [[담보지분증명]](Bonded Proof of Stake; BPoS)은 코스모스의 지분증명이다. 담보지분증명 방식은 구현하기 훨씬 어렵고 [[마스터노드]]뿐만 아니라 [[위임지분증명]](DPoS) 프로토콜을 활용하는 [[지분증명]] 프로토콜보다 훨씬 높은 수준의 보안을 제공한다.<ref>COSMOS Korea, 〈[https://medium.com/lunamint-atlas/%EC%BD%94%EC%8A%A4%EB%AA%A8%EC%8A%A4-%EC%B5%9C%EC%8B%A0-%EC%86%8C%EC%8B%9D-%ED%95%84%EB%8F%85-10%EC%9B%94-%EC%BB%A4%EB%AE%A4%EB%8B%88%ED%8B%B0-%EC%97%85%EB%8D%B0%EC%9D%B4%ED%8A%B8-5bbf3e429de7 코스모스 최신 소식 — (필독) 10월 커뮤니티 업데이트]〉, 《미디엄》, 2018-11-14</ref> 담보지분증명 합의 알고리즘은 보상의 개념으로, 네트워크 관리, [[거버넌스]] 투표, 생태계 확장이라는 의무를 이행했을 때 보상이 이뤄진다. 담보지분증명 합의 구조의 검증인의 경우, 연속으로 [[블록]]을 자기 차례에서 일정 시간 내에 생성하지 못하면 [[패널티]]가 부과된다. 단순히 [[노드]]를 돌려놓고 보상을 받는 개념이 아니라 [[투표]]가 진행됐을 때 투표권을 행사하고 네트워크를 관리하는 등 지속적인 관리와 의무를 행해야 보상을 받게 되는 셈이다. 의무가 없으면 지속적으로 지식과 자본을 투입하기가 쉽지 않은데 의무를 규정하고 시스템적으로 패널티를 적용하면 검증인들의 자세가 바뀔 수 없다. 네트워크를 잘 운영하는 경우에는 암호화폐가 주어지고, 허브에서 이뤄지는 모든 전송 수수료가 검증인들한테 돌아간다. 보상으로 주어지는 아톰, 노드 운영을 위해서는 지식이 각각 있어야 하기 때문에 코스모스의 검증인은 지식이 동시에 필요하다.<ref>김가현 기자, 〈[https://blockinpress.com/archives/9423 '3세디 코스모스, 무엇이 다른가'...첫 코스모스 아카데미 서울서 열려]〉, 《블록인프레스》, 2018-10-03</ref> 담보지분증명을 사용하면 위임자는 보상을 받기 위해 어떤 식으로든 검증자를 신뢰할 필요가 없다. 그러나 오작동에 대한 유효성 검사의 [[슬래싱]](Slashing)도 위임자에게 영향을 주기 때문에 유효성 검사에 주의를 기울여야 한다. 담보지분증명은 [[오픈소스]] 코스모스 [[SDK]] 모듈로 구현된다.<ref>Gautier MARIN, 〈[https://blog.cosmos.network/what-does-the-launch-of-cosmos-mean-for-the-blockchain-ecosystem-952e14f67d0d What does the Launch of Cosmos mean for the Blockchain Ecosystem?]〉, 《미디엄》, 2019-06-06</ref>
| |
− | | |
− | {{각주}}
| |
− | | |
− | ==참고자료==
| |
− | * Seonho Shin, 〈[https://brunch.co.kr/@shinseonho/56 블록체인 합의 알고리즘 이해하기]〉, 《브런치》, 2019-04-09
| |
− | * 〈[https://www.binance.vision/ko/blockchain/what-is-a-blockchain-consensus-algorithm 블록체인 합의 알고리즘이란 무엇인가요?]〉, 《바이낸스 아카데미》, 2019-11-09
| |
− | * ROA Invention LAB, 〈[https://verticalplatform.kr/archives/9984 합의 알고리즘의 발전과 진화방향]〉, 《버티컬 플랫폼》, 2018-05-31 | |
− | * "[https://docs.wavesplatform.com/en/platform-features/leased-proof-of-stake-lpos.html Leased Proof of Stake]", ''Waves Platform''
| |
− | * Waves.docs, 〈[https://docs.wavesplatform.com/ko/platform-features/leased-proof-of-stake-lpos.html Leased 지분 증명]〉, 《GitBook》
| |
− | * "[https://www.hpb.io/static/file/whitepaper/HPB_whitepaper_kor_韩语_한국어.pdf High Performance Blockchain Whitepaper]", ''hpb.io''
| |
− | * COSMOS Korea, 〈[https://medium.com/lunamint-atlas/%EC%BD%94%EC%8A%A4%EB%AA%A8%EC%8A%A4-%EC%B5%9C%EC%8B%A0-%EC%86%8C%EC%8B%9D-%ED%95%84%EB%8F%85-10%EC%9B%94-%EC%BB%A4%EB%AE%A4%EB%8B%88%ED%8B%B0-%EC%97%85%EB%8D%B0%EC%9D%B4%ED%8A%B8-5bbf3e429de7 코스모스 최신 소식 — (필독) 10월 커뮤니티 업데이트]〉, 《미디엄》, 2018-11-14
| |
− | * 김가현 기자, 〈[https://blockinpress.com/archives/9423 '3세디 코스모스, 무엇이 다른가'...첫 코스모스 아카데미 서울서 열려]〉, 《블록인프레스》, 2018-10-03
| |
− | * Gautier MARIN, 〈[https://blog.cosmos.network/what-does-the-launch-of-cosmos-mean-for-the-blockchain-ecosystem-952e14f67d0d What does the Launch of Cosmos mean for the Blockchain Ecosystem?]〉, 《미디엄》, 2019-06-06
| |
− | | |
− | ==같이 보기==
| |
| * [[합의 알고리즘]] | | * [[합의 알고리즘]] |
| | | |
− | {{블록체인 기술|검토 필요}} | + | {{계약|토막글}} |
| + | {{정치}} |
| + | {{교통사고}} |