[이더리움 기초상식편]#2. 이더리움 32개면 내가 직접 스테이킹(Solo-Staking)할 수 있을까?
얼마전 친구가 “난 이더리움은 딱 32개만 모을 거야!”라고 말한적 있다. 아마 이더리움2.0에 관심이 있었다면 왜 저런 말을 했는지 충분히 짐작이 갈 것이다. 혹시 비슷한 생각을 해보았다면 아랫글을 살펴보자.
Written by web3vibe.eth
1. 이더리움 스테이킹이란?
이더리움2.0, 비콘체인은 지분증명(PoS) 합의 알고리즘으로 작동하며, 검증인에 참여하기 위해서는 최소 32개의 이더리움을 예치해야 한다. (32ETH보다 더 예치한다고 보상은 늘어나지 않는다.) 또한, 현재 이율(APY)는 약 4.59% 이며 아래 사이트에서 확인 가능하다.
검증인은 이더리움 체인 내에서 트랜잭션 처리, 증명 집계, 데이터 저장, 블록 추가 등을 담당하기 때문에, 스테이킹에 참여한다는 것은 이더리움 네트워크 안정성과 탈중앙성에 기여한다고 볼 수 있으며, 이에 대한 대가를 지급받는다.
이더리움2.0 스테이킹은 여러 가지 방법을 통해 참여할 수 있는데, 그중 가장 보편적인 방식은 각종 중앙화 거래소에서 제공하는 이더리움2.0 스테이킹 서비스나 리도(Lido)와 같은 스테이킹 플랫폼에 수수료를 지급하고 이용하는 방식이다.
하지만, 자신이 직접 스테이킹하는 방식인 ‘솔로 스테이킹’에 대한 PROS & CONS는 무엇일까? 많은 사람이 한 번쯤 생각해보고 계획은 있지만, 자세히 알지 못하며 대부분의 스테이킹 세부 사항(specification)은 영문으로 작성되어있어 진입장벽이 높은 편이다.
‘솔로 스테이킹’이란 타 플랫폼을 통해 이더리움2.0 스테이킹에 참여하는 방식이 아닌, 자신이 직접 하드웨어(컴퓨터)를 운영하여 이더리움 노드를 실행하고 32ETH 예치를 통해 검증인을 활성화하는 방식을 의미한다.
개인 투자자의 입장에서 본다면, 솔로 스테이킹의 가장 큰 장점은 세 가지로 설명할 수 있는데 :
1) 자신의 운용 자산(이더리움)에 대한 완벽한(Full) 통제권을 가질수 있으며 2) 검증인으로써 이더리움 네트워크에 기여한다는 뿌듯함을 느낄 수 있고?
3) 이더리움을 가장 빠르게 이해할 수 있다
그 외에는 사실 책임감을 느끼고 고려해야 할 사항들이 너무나도 많다 :
1) 비콘노드 및 밸리데이터 셋업, 운영, 유지보수와 관련된 지식
2) 365일(24/7/365) 연중무휴로 검증인을 유지하기 위한 무한한 헌신력
3) 기본적인 운영체제(Operating System) 스킬
a) 이더리움 노드 소프트웨어는 상시 인터넷에 연결되어야 함
이더리움 노드는 기본적으로 합의 및 실행 레이어 위에 검증인, 비콘체인, 실행의 총 3개 클라이언트를 구축하게 되는데 이는 각각 블록 생성, 증명, 검증인 셔플링, 비콘체인 상태, 그리고 검증인 예금 관리 등을 담당한다.
해당 클라이언트를 연중무휴 운영하며 얻게 되는 검증인 보상은 온라인 상태를 유지하여 증명을 진행한 시간에 비례한다. 그러나, 오프라인(다운타임)이 발생하는 경우 비활성화에 대한 페널티가 부과된다.
오프라인 상태인 검증인수와 페널티는 비례한다는 점을 명시해야 한다. 예시로 1/3 이상의 검증인이 비활성화되는 극한의 상황이 발생할 경우 높은 페널티를 부과(Inactivity Leak 발생)하여 빠르게 검증인 보유 수량을 16ETH 이하로 낮춰 검증인 풀에서 자동으로 제외해 네트워크를 복구한다.
b) 기본적인 하드웨어 세팅을 위한 컴퓨터 지식과 지속적인 관리 필요
간혹 발생하는 컴퓨터 에러, 네트워크 오류, 필수 노드 클라이언트 업그레이드 등 하드웨어와 소프트웨어는 꾸준한 모니터링과 관리가 필요하다.
예시로 노드 운영을 위한 권장 하드웨어 설정은 다음과 같다
* 운영 체제 : 64비트 Linux(Ubuntu 20.04 LTS 서버 또는 데스크탑)
* 프로세서 : 쿼드 코어 CPU, Intel Core i7–4770 또는 AMD FX-8310 이상
* 메모리 : 16GB RAM 이상
* 저장용량 : 2TB SSD 이상
* 인터넷 : 10Mbps 이상의 속도
컴퓨터(하드웨어) 요구 사양 자체가 높은 편은 아니지만, 이더리움 스테이킹에 선호되는 운영체제(OS)인 리눅스(Linux)는 윈도우나 맥을 사용하는 개발자가 아닌 일반인에게 친숙하지 않다. 또한, 올바르지 않은 클라이언트 선택 및 관리는 ‘슬래싱’을 초래할 수도 있다.
슬래싱(Slashing)이란 악의적인 행동을 한 검증인의 예치금을 차감하는 개념으로 검증인의 올바른 행동을 유도하기 위해 도입되었지만, 실제 잘못된 노드 구성(misconfiguration)으로 무지를 통해 발생할 수도 있기 때문이다.
2. 마무리
현재로서는 비콘체인에 스테이킹 된 이더리움과 보상을 출금할 수 없다. 이더리움 출금 기능은 이전 포스팅에서 설명한 대로 머지 이후 상하이(Shanghai) 업그레이드를 통해 활성화될 예정이며 일정은 미정인 상태이다. 이는 이전 게시글을 살펴보도록 하자.
따라서, 현재 다양한 플랫폼들은 스테이킹되어 장기간 락업 된 이더리움에 대한 유동성을 제공하기 위해 비콘 이더리움을 발행하여 제공하고 있다. 그 예시로는 바이낸스의 Beacon ETH(bETH) 그리고 리도의 Staked 이더리움(stETH)이 대표적이다.
하지만, 실제 부딪혀 보는 것만큼 이더리움 그 자체를 빠르게 이해하고 생태계에 기여할 방법은 없다. 따라서, 다음 편에는 누구든 이더리움 노드를 구축하고 스테이킹을 돌릴 수 있도록 스텝 by 스텝 가이드를 제공하도록 하겠다.