Staking Design
Story Network의 스테이킹 메커니즘과 토큰노믹스에 대한 상세한 개요
목적
이 문서는 Story의 스테이킹 명세를 설명합니다. 목표는 네트워크 참여자와 기술 파트너에게 Story의 스테이킹 메커니즘이 어떻게 작동하는지, 그리고 사용자가 우리 체인과 어떻게 상호작용할 수 있는지에 대한 명확성을 제공하는 것입니다.
토큰노믹스
제네시스
Story 제네시스 할당은 10억 개의 토큰으로 구성되며, 생태계 참여자, 재단, 투자자, 그리고 핵심 팀 사이에 분배됩니다. 자세한 내용은 이 문서를 참조하세요 Token Distribution.
잠긴 토큰 vs 잠기지 않은 토큰
잠기지 않은 토큰은 제한이 없으며 가스 소비, 전송, 스테이킹에 사용할 수 있습니다.
잠기지 않은 토큰과 달리, 잠긴 토큰은 전송하거나 거래할 수 없으며 잠금 해제 일정에 따라 잠금이 해제됩니다. 그러나 잠긴 토큰도 스테이킹하여 스테이킹 보상을 받을 수 있으며, 잠긴 스테이킹 보상 비율은 잠기지 않은 토큰의 절반입니다.
스테이킹된 잠긴 토큰과 잠기지 않은 토큰은 동일한 투표력을 가집니다. 즉, 100개의 스테이킹된 잠긴 토큰을 가진 검증인은 100개의 스테이킹된 잠기지 않은 토큰을 가진 검증인과 동일한 네트워크 투표력을 가집니다.
두 유형의 토큰 모두 검증인이 슬래시되면 슬래시될 수 있습니다.
토큰 발행
첫 해에는 제네시스 시점에 재단이 결정한 고정된 수의 토큰이 발행을 위해 할당됩니다. 이후 연도에는 발행되는 토큰의 수가 거버넌스를 통해 업데이트되거나 하드 포크를 통해 변경될 수 있는 매개변수를 가진 발행 알고리즘에 의해 제어됩니다. 블록당 발행량은 다음 두 매개변수에 의해 제어됩니다:
- blocks_per_year: 10368000 블록
- 1년 동안 생성될 것으로 예상되는 블록 수
- inflations_per_year: 20,000,000 토큰
- 1년 동안 발행될 인플레이션 토큰의 총 수
새로운 발행은 두 곳으로 흐릅니다:
- 블록 보상
- 커뮤니티 풀
토큰 소각
Story는 실행 클라이언트로 geth의 포크를 사용하므로, 소각 메커니즘은 Ethereum의 EIP-1559를 따릅니다.
스테이킹
Story는 다음과 같은 스테이킹 관련 작업을 지원합니다
- 검증인 생성
- 검증인 수수료 업데이트
- 스테이킹
- 대리 스테이킹
- 언스테이킹
- 대리 언스테이킹
- 재위임
- 대리 재위임
- 출금 주소 설정
- 보상 주소 설정
- 언제일
- 대리 언제일
이러한 각 작업의 동작을 설명하기 전에, 토큰 스테이킹 유형, 검증인 세트 상태, 언본딩, 그리고 스테이킹 기간과 같은 상위 수준의 개념을 먼저 설명하겠습니다:
토큰 스테이킹 유형
잠긴 토큰과 잠기지 않은 토큰 모두에 대해 스테이킹이 가능하므로, 검증인은 지원하고자 하는 토큰 스테이킹 유형을 선택해야 합니다. 토큰 스테이킹 유형이 선택되면 검증인은 다른 유형으로 전환할 수 없습니다.
검증인 세트 상태
Story에서 검증인은 두 가지 세트 중 하나로 그룹화됩니다. (1) 합의에 참여하고 블록 보상을 받는 활성(본딩된) 검증인 세트, 또는 (2) 합의 과정에 기여하지 않는 비활성(언본딩된) 검증인 세트입니다. 활성 검증인 세트의 일부로 선택되려면 검증인은 스테이킹된 토큰 수로 순위를 매겼을 때 상위 64개 검증인 중 하나여야 합니다.
언본딩
위임자의 언스테이킹은 언본딩 과정을 거칩니다. 사용자는 토큰이 계정으로 반환되기 전에 언본딩 시간을 기다려야 합니다.
이는 자신에게 자체 위임하는 검증인에게도 마찬가지입니다. 그들도 언스테이킹을 원할 때 언본딩 과정을 거쳐야 합니다.
언본딩 시간은 14일입니다. 언본딩 기간 동안 위임자/검증인은 블록 보상을 받지 않습니다. 하지만 여전히 슬래시될 수 있습니다.
각 검증인/위임자 쌍에 대해 최대 진행 중인 언본딩 트랜잭션 수는 14개입니다. 이 제한을 초과하는 언본딩 요청은 실패합니다.
스테이킹 기간
위임자는 토큰을 얼마나 유연하게, 얼마나 오래 스테이킹할지 결정할 수 있습니다. 기본적으로 잠긴 토큰과 잠기지 않은 토큰 모두에 대해 위임자는 즉시 스테이킹하고 언스테이킹할 수 있으며 언본딩 시간 후에 토큰을 돌려받을 수 있습니다. 이 문서에서는 이를 유연한 스테이킹이라고 부릅니다.
잠기지 않은 토큰의 경우, 90일, 360일, 540일의 몇 가지 고정 스테이킹 기간도 지원됩니다. 이 경우 사용자는 스테이킹 기간이 만료된 후에만 언스테이킹을 요청할 수 있습니다. 만료일 이전에 요청하면 무시됩니다. 만료된 스테이킹 기간에서의 언스테이킹도 여전히 언본딩 과정을 거치며, 이는 사용자가 14일의 언본딩 시간 후에 스테이킹된 토큰을 돌려받는다는 것을 의미합니다.
이러한 고정 스테이킹 기간에 스테이킹하면 더 많은 보상을 받습니다. 기간이 길수록 보상 가중치 승수가 더 큽니다. 다양한 기간에 대한 보상 승수:
- 잠긴 유연 기간 - 0.5
- 유연 기간 - 1.0
- 90일 - 1.1
- 360일 - 1.5
- 540일 - 2
잠긴 토큰의 경우, 유연한 스테이킹만 허용되며 보상 승수는 0.5입니다. 사용자가 잠긴 토큰을 스테이킹 기간에 위임하면, 그것을 유연한 스테이킹 위임으로 전환합니다.
스테이킹 기간이 끝난 후, 사용자는 언스테이킹하지 않기로 선택할 수 있습니다. 이 경우, 수동으로 언스테이킹할 때까지 해당 스테이킹 기간의 보상률에 기반한 동일한 보상률로 계속 보상을 받게 됩니다. 스테이킹 기간이 끝난 후 언제든지 언스테이킹할 수 있습니다. 예를 들어, 1년 스테이킹 기간의 보상률이 블록당 0.02%라면, 1년 동안 스테이킹한 후에도 언스테이킹할 때까지 블록당 0.02%의 보상을 계속 받을 수 있습니다.
스테이크 금액의 소수점
스테이크 작업(스테이크, 언스테이크, 재위임 등)의 소수점은 9입니다. 사용자가 더 작은 값을 지정하면, 먼지(dust)는 사용자에게 환불됩니다. 또는 토큰 전송이 포함되지 않은 경우, 지정된 값은 9자리 소수점으로 내림됩니다.
스테이킹 작업
검증인 생성
검증인이 되려면, 검증인은 먼저 최신 릴리스된 story 바이너리를 기반으로 검증인 노드를 실행한 다음, 초기 스테이킹 금액, 모니커, 수수료율과 함께 CreateValidator 함수를 호출해야 합니다. 또한 최대 수수료율과 최대 수수료율 변경을 설정하여 나중에 수수료율을 극적으로 변경하지 않도록 해야 합니다. 검증인이 설정할 수 있는 최소 수수료율은 5%입니다.
초기 스테이킹 금액은 임계값인 1024 IP보다 커야 합니다. 이 금액은 호출자의 지갑에서 차감됩니다. 유연한 기간에만 스테이킹할 수 있습니다.
검증인이 두 번째로 검증인 생성 함수를 호출하려고 하면, 이는 무시됩니다.
검증인 수수료 업데이트
이 작업을 통해 검증인은 자신의 검증인 수수료율을 수정할 수 있습니다. 업데이트된 수수료율이 최대 수수료율보다 크거나 수수료율 변경 폭이 최대 수수료율 변경보다 큰 경우, 작업은 실패합니다.
스팸을 방지하기 위해 검증인 업데이트에 1 IP의 수수료가 부과됩니다. 이 수수료는 계약에 의해 소각됩니다.
수수료율은 하루에 한 번만 업데이트할 수 있습니다. 계약에서 오류를 발생시키지는 않지만, 합의 계층에서는 효과가 없을 것입니다.
스테이크
검증인과 위임자 모두 검증인에게 토큰을 스테이킹할 수 있습니다. 검증인은 자신에게 스테이킹할 수 있으며, 이를 자체 위임이라고 합니다. 사용자는 고정 스테이킹 기간으로 스테이킹할지 또는 기간 없이 스테이킹할지(유연한 스테이킹) 결정할 수 있습니다.
고정 기간을 선택한 경우, 사용자에게 위임 ID가 반환됩니다. 사용자는 이 스테이크 작업에서 토큰을 언스테이크하기 위해 이 위임 ID를 사용해야 합니다. 유연한 스테이킹을 선택한 경우, 반환된 위임 ID는 0이 됩니다.
스테이킹 금액은 임계값인 1024 IP보다 커야 합니다.
위임자가 존재하지 않는 검증인에게 위임하는 경우, 토큰은 환불되지 않습니다.
사용자가 9자리 소수점 이상의 토큰 금액을 지정하면, 실제 스테이킹 금액은 9자리 소수점으로 내림되고 나머지는 사용자에게 환불됩니다.
언스테이크
스테이킹 기간 없이 스테이킹할 때, 사용자는 언제든지 언스테이크할 수 있습니다. 토큰은 언본딩 시간 후에 사용자의 계정으로 분배됩니다.
스팸을 방지하기 위해 언스테이킹에 1 IP의 수수료가 부과됩니다. 이 수수료는 계약에 의해 소각됩니다.
스테이킹 기간으로 스테이킹할 때, 사용자는 스테이킹 기간이 만료된 후에만 언스테이크할 수 있습니다. 토큰은 언본딩 시간 후에 사용자의 계정으로 분배됩니다. 스테이킹 기간이 만료되기 전의 언스테이킹 요청은 무시됩니다.
최소 언스테이킹 금액은 1024 IP입니다. 언스테이킹 요청이 처리된 후 남은 스테이킹 금액이 1024 IP 미만인 경우, 남은 부분도 함께 언스테이킹됩니다.
언스테이킹 요청은 먼저 14일의 언본딩 과정을 거칩니다. 그 후, 언본딩된 요청은 출금 대기열로 보내져 블록당 최대 32개의 출금이 분배됩니다. 출금 대기열에 32개 이상의 출금 요청이 있는 경우, 다음 32개의 출금 요청은 다음 블록에서 처리됩니다.
위임의 부분 언스테이크가 지원됩니다. 예를 들어, 1년 장기 위임에 100만 토큰이 있는 경우, 1년 후 사용자는 이 위임에서 50만을 언스테이크하고 나머지는 계속 스테이킹하여 보상을 받을 수 있습니다.
전달된 검증인, 위임자 및 위임 ID가 올바르지 않으면 언스테이크가 실패할 수 있습니다.
또한 검증인/위임자 쌍에 대한 최대 동시 언본딩 요청(현재 14개)에 도달한 경우에도 언스테이크가 실패할 수 있습니다.
전달된 언스테이크 금액이 총 언스테이크 가능한 토큰보다 큰 경우, 현재 총 언스테이크 가능한 금액이 언스테이크됩니다. 예를 들어, 사용자가 1024 IP를 언스테이크하려고 하지만 1023 IP만 스테이크한 경우, 1023 IP가 출금됩니다.
검증인이 오프라인 상태가 되어 감금되거나 상위 64개 검증인 세트에 들어갈 만큼 충분한 스테이크가 없어 퇴출되는 경우, 위임자는 토큰이 스테이킹 기간에 있지 않거나 스테이킹 기간이 만료된 경우에만 토큰을 언스테이크할 수 있습니다. 그렇지 않으면, 위임자는 스테이킹 기간이 만료될 때까지 기다려야 언스테이크할 수 있습니다.
사용자가 9자리 소수점 이상의 토큰 금액을 지정하면, 실제 언스테이킹 금액은 9자리 소수점으로 내림됩니다.
재위임
재위임 작업을 통해 위임자는 스테이크한 토큰을 한 검증인에서 다른 검증인으로 이동할 수 있습니다. 토큰은 즉시 새 검증인에게 재위임되어 보상을 받기 시작할 수 있습니다. 그러나 원본 검증인이 활성 검증인 세트에 있거나 활성 검증인 세트에서 언본딩 중인 경우, 재위임된 토큰은 여전히 언본딩 과정의 대상이 됩니다. 이 14일의 언본딩 기간 동안, 원래 검증인이 슬래시되면 함께 슬래시됩니다.
스팸을 방지하기 위해 재위임에 1 IP의 수수료가 부과됩니다. 이 수수료는 계약에 의해 소각됩니다.
최소 재위임 금액은 1024 IP입니다. 위임자의 초기 스테이크가 1024 IP였지만 나중에 슬래시된 경우, 토큰 금액이 1024 IP 미만이더라도 여전히 다른 검증인에게 토큰을 재위임할 수 있습니다.
언스테이킹과 마찬가지로, 전달된 재위임 금액이 총 재위임 가능한 토큰보다 큰 경우, 총 재위임 가능한 금액이 재위임됩니다. 재위임 후 남은 잔액이 1024 IP 미만인 경우, 모든 남은 토큰이 함께 재위임됩니다.
재위임 후에도 위임 ID는 동일하게 유지됩니다.
재위임에는 위임자/소스 검증인/목적지 검증인 쌍당 최대 진행 중인 언본딩 트랜잭션 제한이 있으며, 이 또한 14입니다.
위임자는 토큰이 아직 미성숙 스테이킹 기간에 있더라도 다른 활성 검증인에게 토큰을 재위임할 수 있습니다. 스테이킹 기간 만료일과 보상률은 동일하게 유지됩니다.
재위임은 소스 검증인과 목적지 검증인이 동일한 토큰 유형을 지원할 때만 트리거될 수 있습니다.
사용자가 9자리 소수점 이상의 토큰 양을 지정하면, 실제 재위임된 양은 9자리 소수점으로 내림됩니다.
출금/보상 주소 설정
위임자는 스테이킹 컨트랙트를 호출하여 출금 주소를 설정할 수 있습니다. 언스테이킹된 토큰은 이 출금 주소로 전송됩니다. 마찬가지로, 위임자는 별도의 보상 주소를 설정할 수 있습니다. 모든 보상 분배는 이 주소로 전송됩니다.
스팸을 방지하기 위해 출금 주소나 보상 주소를 업데이트할 때 1 IP의 수수료가 부과됩니다. 이 수수료는 컨트랙트에 의해 소각됩니다.
주소 변경은 다음 블록에서 적용됩니다.
슬래시/언제일
슬래싱은 검증인의 스테이킹된 토큰의 일부를 삭감함으로써 나쁜 행동을 처벌합니다. Story에서는 두 가지 유형의 행동이 슬래싱될 수 있습니다: double sign 와 downtime.
- double sign: 검증인이 블록에 대해 이중 서명을 하면, 토큰의 5%가 슬래싱되고 영구적으로 제재됩니다(tombstoned라고 함).
- downtime: 검증인이 너무 오랫동안 오프라인 상태이고 과거 28,800 블록의 95%를 놓치면, 토큰의 0.02%가 슬래싱되고 제재됩니다.
검증인의 남은 자체 위임 금액이 최소 자체 위임(1024 IP)보다 작은 경우, 자체 언위임 후에도 검증인은 제재됩니다.
제재된 검증인은 합의에 참여하거나 보상을 받을 수 없습니다. 하지만 현재 10분으로 설정된 쿨다운 시간 후에 자신을 언제일할 수 있습니다. 10분 후, 스테이크가 최소 스테이크 금액(1024 IP)보다 많다면 Story의 스테이킹 컨트랙트를 호출하여 자신을 언제일할 수 있으며, 이후 여전히 상위 64개 검증인 내에 있다면 다시 합의에 참여할 수 있습니다.
제재된 검증인은 여전히 모든 스테이크를 출금할 수 있습니다.
위임자는 제재된 검증인에게 남아있는 스테이크가 있는 한 여전히 스테이크하고 언스테이크할 수 있습니다. 제재된 검증인은 남아있는 스테이크가 없을 때만 체인에서 제거됩니다(따라서 스테이크/언스테이크할 수 없게 됩니다).
스팸을 방지하기 위해 검증인을 언제일할 때 1 IP의 수수료가 부과됩니다. 이 수수료는 컨트랙트에 의해 소각됩니다.
대리 기능
대부분의 스테이킹 관련 작업은 검증인이나 위임자를 대신하여 다른 지갑에서 수행할 수 있습니다. 이러한 대리 기능의 대부분은 실제 검증인이나 위임자가 아닌 대리 작업을 호출하는 지갑에서 토큰을 사용하기 때문에 허가가 필요 없습니다.
운영자 추가
위임자가 다른 지갑이 자신을 대신하여 언스테이크하거나 재위임하도록 허용하려면, 스테이킹 컨트랙트를 호출하여 해당 지갑을 자신의 위임자에 대한 운영자로 추가해야 합니다. 그 후, 운영자는 위임자를 대신하여 위임자의 토큰을 언스테이크하고 재위임할 수 있습니다.
이는 다른 지갑이 자신을 대신하여 언제일하도록 허용하려는 검증인에게도 동일하게 적용됩니다.
운영자를 추가하는 데 1 IP의 수수료가 부과됩니다.
추가 데이터 필드
각 함수는 잠재적인 미래 변경을 수용하기 위해 추가적인 비형식data
입력 필드를 포함할 것입니다. 이는 미래에 사용자 인터페이스를 변경하지 않도록 할 수 있습니다.
검증인 키 형식
검증인 공개 키는 secp256k1 키입니다. 키는 33바이트 압축 버전과 65바이트 비압축 버전이 있습니다. Story의 스마트 컨트랙트와 상호 작용할 때는 검증인을 식별하기 위해 33바이트 압축 키가 사용됩니다.
보상
보상 풀 할당
매 블록마다, 토큰 인플레이션의 고정 비율이 보상 분배 풀로 들어가며, 이는 각 검증인의 지분 가중치에 따라 64개의 활성 검증인들 사이에 공유됩니다. 이렇게 할당된 토큰은 다음 섹션에서 설명하는 방식으로 검증인과 그의 위임자들 사이에 공유됩니다. 검증인 지분 가중치는 총 토큰 스테이킹 양과 토큰 스테이킹 유형이 잠긴 것인지 잠기지 않은 것인지에 따라 계산됩니다.
예를 들어, 검증인 보상 분배 풀에 100개의 토큰이 할당되었고 활성 검증인이 3개만 있다고 가정해 봅시다:
- 검증인A는 10개의 잠긴 토큰을 스테이킹함
- 검증인B는 10개의 잠긴 토큰을 스테이킹함
- 검증인C는 10개의 잠기지 않은 토큰을 스테이킹함
각 검증인이 받는 토큰 수를 계산하기 위해, 먼저 각각의 가중 지분을 계산합니다. 이는 스테이킹된 토큰 수에 보상 승수(잠긴 토큰을 스테이킹하면 0.5, 잠기지 않은 토큰을 스테이킹하면 1)를 곱한 값으로 정의됩니다. 이렇게 하면:
- 검증인A는 10 * 0.5 = 5 지분
- 검증인B는 10 * 0.5 = 5 지분
- 검증인C는 10 * 1 = 10 지분
가중 지분과 총 지분이 계산되면, 각 검증인에게 할당되는 총 인플레이션 토큰 수를 구할 수 있습니다:
- 검증인A는 100 * (5 / 20) = 25 토큰
- 검증인B는 100 * (5 / 20) = 25 토큰
- 검증인C는 100 * (10 / 20) = 50 토큰
검증인에게 할당되는 총 토큰 수를 계산하는 공식은 다음과 같습니다:
여기서
- R_i는 검증인 i에 대한 총 인플레이션 토큰 보상입니다
- S_i는 검증인 i에 대한 스테이킹된 토큰입니다
- M_i는 보상 승수입니다 (잠긴 토큰의 경우 0.5, 잠기지 않은 토큰의 경우 1)
- R_total은 보상 풀에 할당된 총 인플레이션 토큰입니다
검증인 및 위임자 보상
총 보상 할당 (계산 방법은 이전 섹션에 나와 있습니다)은 각 검증인과 그의 모든 위임자들 사이에 공유됩니다:
- 검증인은 자신이 설정한 고정 비율의 수수료를 가져갑니다
- 남은 보상은 위임자들의 지분 가중치에 따라 분배됩니다
위임자 보상 계산은 검증인 보상 계산과 유사하며, 각 위임자가 남은 검증인 보상에서 받는 토큰의 비율은 각 위임자의 스테이킹 승수(스테이킹 섹션에서 설명)를 기반으로 계산됩니다.
예를 들어, 검증인에게 총 100개의 보상이 할당되었고, 검증인 수수료가 20%이며, 3명의 위임자가 위임하고 있다고 가정해 봅시다:
- 위임자A는 10개의 토큰을 스테이킹하고 스테이킹 승수가 1입니다
- 위임자B는 10개의 토큰을 스테이킹하고 스테이킹 승수가 1입니다
- 위임자C는 10개의 토큰을 스테이킹하고 스테이킹 승수가 2입니다
각 위임자가 받는 토큰 수를 계산하기 위해, 먼저 각자의 가중 지분을 계산합니다. 이는 스테이킹된 토큰 수에 스테이킹 보상 승수를 곱한 값으로 정의됩니다. 결과는 다음과 같습니다:
- 위임자A는 10 * 1 = 10 지분
- 위임자B는 10 * 1 = 10 지분
- 위임자C는 10 * 2 = 20 지분
가중 지분과 총 지분을 계산한 후, 각 위임자에게 할당되는 총 인플레이션 토큰 수를 구할 수 있습니다. 위임자들 사이에 분배될 총 토큰 수는 100 - (100 * 0.20) = 80임을 주목하세요:
- 위임자A는 80 * (10 / 40) = 20 토큰
- 위임자B는 80 * (10 / 40) = 20 토큰
- 위임자C는 80 * (20 / 40) = 40 토큰
위임자 토큰 보상을 계산하는 공식은 아래에서 확인할 수 있습니다:
여기서
- D_i는 위임자 i에 대한 총 인플레이션 토큰 보상입니다
- S_i는 위임자 i에 대한 스테이킹된 토큰입니다
- M_i는 위임자 i에 대한 스테이킹 보상 승수입니다
- R_total은 검증인에게 할당된 총 인플레이션 토큰입니다
- C는 검증인의 수수료율입니다
검증인 수수료도 보상으로 취급되며 아래에서 설명하는 자동 보상 분배 규칙을 따릅니다. 최소 검증인 수수료는 5%로 설정되어 검증인들 간의 수수료율 경쟁이 과열되는 것을 방지합니다.
보상 계산 결과는 gwei 단위로 내림됩니다. 1 gwei보다 작은 값은 절삭됩니다.
자동 보상 분배
보상은 블록마다 누적되며 블록마다 분배될 수 있습니다. 그러나 보상이 특정 임계값보다 클 때만 위임자의 계정으로 자동 분배됩니다. 기본 및 최소 임계값은 8 IP로, 위임자의 보상이 8 IP 이상일 때만 위임자의 계정으로 전송됩니다.
보상 분배는 보상 분배 대기열로 이동하며, 이 대기열은 블록당 고정된 수의 보상 분배 요청만 처리합니다. 블록당 보상 분배는 32개입니다.
스테이킹 보상은 설계상 수동으로 인출할 수 없습니다.
커뮤니티 풀
매 블록에서 새로 발행된 토큰의 일정 비율이 커뮤니티 풀 계약으로 이동합니다. 재단은 이 풀로 보내진 토큰을 어떻게 사용할지 결정합니다. 설정할 수 있는 최대 커뮤니티 풀 비율은 20%입니다.
커뮤니티 풀 계약 주소: 0xcccccc0000000000000000000000000000000002
특이점
제네시스 이후 첫 1,580,851 블록을 특이점이라고 부릅니다. 이 기간 동안 누구나 검증인을 생성하고 토큰을 스테이킹할 수 있지만, 활성 검증인 세트에는 제네시스 검증인만 포함됩니다. 또한 새로운 토큰 발행이 없으므로 보상도 없습니다. 언스테이크와 재위임도 지원되지 않습니다.
제네시스 검증인 세트는 재단과 신뢰할 수 있는 스테이킹 기관이 설정한 8개의 검증인으로 구성됩니다. 이 중 4개는 잠긴 토큰을 지원하고 나머지 4개는 잠기지 않은 토큰을 지원합니다. 각 검증인은 0.001 IP의 초기 스테이크를 가집니다. 각 검증인은 수수료율을 설정합니다. 특이점 기간 동안 제네시스 검증인들은 검증인 수수료율 수정과 같은 검증인 작업을 수행하기 위해 최소 1024 IP를 자체 위임해야 합니다.
특이점 이후, 스테이크가 가장 높은 상위 64개의 검증인 노드가 합의에 참여하고 보상을 받도록 선택됩니다.
특이점 기간 동안에는 슬래싱/감옥이 발생하지 않습니다.
스테이킹 계약
Story의 스테이킹 계약은 모든 검증인/위임자 관련 작업을 처리합니다. 다음 주소에 배포됩니다: 0xcccccc0000000000000000000000000000000001
계약 인터페이스는 여기에 정의되어 있습니다: https://github.com/piplabs/story/blob/main/contracts/src/protocol/IPTokenStaking.sol