Polkadot은 NPoS 합의하에 스테이킹 경제를 혁신합니다.
Wetez
2019-04-19 02:37
本文约3805字,阅读全文需要约15分钟
이번에 Polkadot이 가져온 NPoS는 상당히 혁신적이며 PoS의 기존 문제를 어느 정도 해결합니다.

작년 말 베이징에서 열린 Polkadot 모임에 참가한 후 Staking에 대한 공식적인 경제 및 거버넌스 계획을 기대해 왔습니다.아직 최종 계획이 확정되지는 않았지만 Web3의 연구 문서는 상당히 완성된 것 같습니다. 전체 디자인이 저를 놀라게 했습니다. PoS를 합의로 사용하는 많은 프로젝트를 읽은 후 스테이킹 경제의 디자인이 다르다는 것을 느꼈습니다. 새로운 프로젝트는 항상 과거 프로젝트에서 배울 것입니다. 이번에 Polkadot이 가져온 NPoS는 상당히 혁신적이고 현재 PoS 문제를 어느 정도 해결하는 데 문제가 있습니다.

Polkadot이 쓸 수 있는 것들이 많이 있습니다.이 기사는 주로 Staking 부분과 NPoS 공식에 의한 검증자 노드를 선택하는 방법에 중점을 둘 것입니다.이 두 가지 측면은 토큰 보유자의 수입 및 축제와 매우 밀접한 관련이 있습니다.

폴카닷의 배경을 모르신다면 저를 먼저 보시면 됩니다지난 기사, 주제를 직접 시작하겠습니다.

PoS 합의 프로젝트의 전체 블록 생성 프로세스를 간략하게 검토합니다.

1. 팀이 노드를 실행합니다.

2. 검증인으로 등록

(기본 임계값 통과)

3. 스테이킹 프로세스

(토큰 보유자는 노드에 위탁하거나 Staking 위탁을 위한 팀 프리 토큰)

4. 검증인 선출

(시스템은 특정 알고리즘을 통해 블록 생산자 또는 검증 노드의 각 라운드를 선택합니다. 이 기사는 Polkadot의 NPoS 선거 알고리즘에 대해 자세히 설명합니다.)

5. 패키지 거래, 브로드캐스트 거래, 검증자가 일련의 과정을 확인

6. 보상 받기
보조 제목

통화 보유자의 관점에서 PoS를 이해하는 것이 더 쉽습니다.

Token Holder는 PoS를 합의로 한 Token Moon을 소유하고, Moon을 좋아하는 노드에 스테이킹을 맡기고, 노드는 Token Holder를 대신하여 블록을 생성하고 보상을 받으며, 그 보상은 Staking 비율에 따라 분배된다. (스테이킹 비율 = 보유자가 스테이킹에 참여한 문 수 / 전체 스테이킹에 참여한 문 수)


위에서 언급한 것은 일반적인 PoS 프로젝트에 대한 보상 계산 방법입니다.

Polkadot은 NPoS를 제안했습니다. 원래 의도는 과거 PoS 운영 후 발생하는 문제를 해결하는 것이었습니다. 보상과 Staking 양 사이의 양의 상관 관계가 풍부한 노드를 더 풍부하게 만들고 토큰의 분배가 중앙 집중화되는 경향이 있기 때문입니다.


NPoS에서 최종 보상 결과는 스테이킹 금액이 아니라 실제로 블록을 생성한 선택된 각 노드의 작업 부하를 기준으로 계산됩니다. 블록 또는 블록 검증이 동일함), NPoS는 일부 대형 노드가 많은 양의 스테이킹으로 인해 더 많은 보상을 받지만 일부 대형 노드의 이익을 손상시키는 문제를 해결할 것입니다.

보조 제목


폴카닷은 어떻게 했습니까?

NPoS는 기존의 PoS 프로젝트와 다르기 때문에 스테이킹 가중치가 높을수록 블록 생성 확률이 높아지는 것은 아니므로 검증자를 선출하는 NPoS의 알고리즘에 대해 자세히 설명하겠습니다.

보조 제목

NPoS 합의 알고리즘 히스토리

NPoS는 19세기 말 스웨덴의 수학자 Lars Edvard Phragmén이 제안한 선거 방식을 의미합니다. 투표가 더 공정해질 수 있습니다. 소규모 파티는 과거에 얻을 수 없었던 좌석을 얻을 수 있습니다. Polkadot 팀은 둘이 디자인 개념에서 유사하다고 생각합니다. 개선 후 지금 우리가 보는 것은 NPoS입니다.

보조 제목

선거 알고리즘에는 세 가지 객관적인 목표가 있습니다.

1. 균형 균형

선거인단이 결정되면 추천인의 스테이킹 금액은 선택된 각 유효성 검사자에게 가능한 한 균등하게 분배됩니다.
추신: 토큰 보유자는 여러 선거인을 선택할 수 있으므로 시스템 재할당의 여지가 있습니다.


2. 최대 지원 지원

선거인단이 선출되고 위원회의 검증인이 받는 스테이킹 금액은 총 통화 보유자 지명자의 스테이킹 금액과 최대한 가까워야 합니다.

3. 공정한 표현

토큰 보유자 추천인의 투표권이 과도하거나 과소 대표되지 않는 선거인단을 선출하십시오.

추신: 토큰 소유자는 여러 노드를 선택할 수 있습니다.공평성의 가장 간단한 표현은 각 토큰 소유자에 해당하는 노드가 하나 이상 선택되고 현실적인 조건(코인 보유 상태 및 시스템이 선택해야 하는 노드 수), 일부 노드입니다. 제거되지만 특정 스테이킹 가중치를 가진 홀더가 적어도 하나의 노드에 해당할 수 있도록 노력하십시오.


이 3가지 원칙에 따라 걸러지는 검증단(선거인위원회)이 여럿 있을 수 있습니다 결국 시스템은 가장 합리적인 위원회(선거인위원회)의 그룹을 선택하여 블록을 생성하게 됩니다 매우 복잡하고 혼란스러울 것 같습니다. 시작하는 데 오랜 시간이 걸렸고 다음 토큰 소유자의 예를 사용하여 검증인을 선출할 것입니다.누구나 더 명확한 이해를 갖게 될 것입니다.이 예를 빨리 읽은 다음 위의 세 선거인의 객관적인 목표를 일치시키는 것이 좋습니다. 읽기 프로세스 중 알고리즘 , 마지막으로 예제를 자세히 살펴보십시오.

이것은 Medium의 공식 담당자의 예입니다 (더 잘 이해하도록 도와 드리겠습니다)

5개의 토큰 보유자(왼쪽)와 5개의 노드(오른쪽)가 있다고 가정하고 그 중 4개의 노드를 블록 생성을 위해 선택합니다.모델을 단순화하기 위해 먼저 노드 자체의 스테이킹 양을 무시합니다.

다음은 선거 결과의 예입니다(하나씩 설명하겠습니다).

첫 번째 사진(가장 왼쪽)

그림의 첫 번째 홀더는 10Dot의 가중치를 가지고 있고 다섯 번째 홀더는 3Dot의 가중치만 가지고 있지만 결국 그가 지원하는 노드와 일치하지 않기 때문에 공정한 표현의 목표를 충족하지 못합니다. 공정한 대표의 목적을 충족하고 일정한 스테이킹 가중치를 가진 토큰 보유자는 적어도 하나의 노드에 해당합니다(현재 상황에서 첫 번째 토큰 보유자는 보상되지 않습니다).

두 번째 사진

Fair Representation의 목적에 따라 E노드를 선택하고 B노드를 선택하지 않는 이유에 대해 의아해 하시는 분들이 계실텐데요, 이는 다음에 예시할 재분배 알고리즘과 관련이 있습니다. 보유자는 동시에 3개의 노드를 지원하며, 시스템은 그가 지원하는 노드 중 적어도 하나가 선출되도록 보장해야 합니다(여기서 그가 지원하는 노드 중 2개가 선출되고 두 번째 보유자의 모든 스테이킹 금액은 이 두 노드)를 유지하면서 다섯 번째 토큰 보유자도 지원하는 노드 E는 Polkadot과 같은 선거 결과에 대한 가능성 중 하나입니다.

세 번째 사진

Fair Representation의 목표에 따라 두 번째 그림과 상충되는 부분이 있느냐고 의문을 제기할 수도 있습니다 목표는 각 토큰 보유자에 대해 적어도 하나의 지원 노드를 선택하는 것이며 다섯 번째 토큰 보유자는 지원 노드가 선택되지 않았기 때문입니다 전체 시스템은 4개의 노드만 선택하면 되므로 스테이킹 가중치가 낮은 5번째 홀더가 지원하는 노드가 선택되지 않았을 가능성이 있는 결과 중 하나입니다.

다음은 공정성의 원칙을 충족하는 위의 두 선거위원회의 가능한 결과입니다.선거위원회 구성 후 시스템은 Staking 가중치의 재분배를 거칩니다.

 

Polkadot 시스템은 매번 더 공정하고 안전한 결과를 선택할 것입니다.이 예에서는 오른쪽이 평균 분포가 더 좋기 때문에 선택되었으며 오른쪽 노드의 평균 스테이킹 가중치가 가장 낮은 것은 9입니다.


위는 Polkadot의 선거 알고리즘에 대한 소개입니다.위의 논리는 매우 복잡하고 그 배후의 수학은 더욱 복잡합니다.공식적인 예는 간단한 경우입니다.실제 상황을 100 노드로 확대하면 각 토큰 보유자 Staking 가중치가 다르고, 동시에 여러 노드에 맡기면 상당히 복잡해집니다.몇 번 생각하면 됩니다.위에서 언급한 세 가지 목표에 따라 각 목표를 표준으로 테스트할 수 있으며, 더 잘 이해하십시오.


선거 알고리즘인 NPoS는 토큰 보유자의 Staking 가중치를 동적으로 할당하고 몇 가지 규칙에 따라 최종 선택된 노드를 선택하므로 기존 PoS 생태계에 약간의 차이가 발생했습니다.

1. 코인 보유자가 여러 노드를 선택할 수 있는 조건에서 대형 노드는 커뮤니티 지지를 얻기 위해 열심히 노력하지 않고 알고리즘 하에서 제외될 기회를 가짐(그림 2 중앙의 B 노드)

2. 스테이킹 금액의 균형을 맞추는 목표 아래 자본이 없는 소규모 노드가 더 유리합니다. 왜냐하면 커뮤니티에서 더 많은 사람들이 선택하는 한 시스템의 스테이킹 금액 할당 메커니즘에 따라 선택한 블록에 대한 보상 확률이 높아지기 때문입니다. 더 높습니다(그림 2 오른쪽 D 노드 참조).

3. 균형 잡힌 스테이킹 볼륨이라는 목표 아래 대형 노드의 수익은 상대적으로 압축되며, 대형 노드는 더 많은 수익을 얻기 위해 자신의 코인을 맡길지 여부를 고민해야 합니다.

보조 제목

Polkadot이 기존 PoS를 해결하고자 하는 문제는 무엇입니까?

1. 피할 수 없는 중앙화 문제의 일부

2. 수입은 노드의 작업량에 따라 달라지기 때문에 낮은 취급 수수료는 미래에 무한정 스테이킹을 유치하지 않을 것입니다.
(이제 Cosmos에는 많은 수의 토큰 소유자를 끌어들이는 수수료가 없는 노드가 있습니다. Polkadot에서는 이렇게 높은 스테이킹 가중치를 가진 노드와 일반 스테이킹 가중치를 가진 노드가 동일한 이점을 얻습니다)

3. 토큰 보유자는 분산화를 촉진하면서 다른 노드를 선택하여 자신의 이익을 극대화할 수 있습니다.

(토큰 보유자를 위한 다양한 위탁 전략이 있습니다. 나는 안전하고 신뢰할 수 있는 노드를 선택할 수 있으며, 작지만 신뢰할 수 있는 노드를 선택하여 더 높은 수익률을 얻을 수도 있습니다.)

폴카닷의 전체 매커니즘은 사실 굉장히 복잡하고 제가 놓친 부분이 있을 수 있는데 그런 매커니즘을 어떻게 공격할지, 패키지 연동 선거 알고리즘에 악용될 수 있는 허점이 있는지 모두 전문가들이 많은 에너지를 투자해야 합니다. 특수 연구 분야이므로 여기서는 다루지 않겠습니다. .

Polkadot 메커니즘을 설명하는 첫 번째 기사이며, 앞으로 공식 매개변수 및 테스트넷이 공개된 후 더 많은 예제가 제공될 것입니다.

Wetez
作者文库