베이킹노드
베이킹노드(baking node)는 테조스(Tezos) 블록체인에서 사용하는 용어로, 코인 소유자로부터 위임받은 코인으로 베이킹(baking)을 하는 노드이다.
개요
베이킹은 테조스 블록체인에서 블록을 생성하고 블록을 입증하는 방법으로, 채굴과 동일한 의미를 가진다. 테조스 블록체인에서 채굴을 하기 위해서는 최소 8,000XTZ가 필요한 테조스 지분증명 시스템에 참여해야만 한다. 소유한 XTZ가 많을수록 블록을 생성하고 블록 생성 보상을 얻을 확률이 높아진다. 하지만 누군가 혼자서 베이킹 하기에 충분한 XTZ가 없거나 블록을 생성할 컴퓨팅 인프라를 만들고 싶지 않다면, 코인을 베이킹노드에게 위임할 수 있다. 위임은 코인 소유자가 코인을 베이킹노드에게 빌려주는 것으로, 베이킹노드가 블록을 만들고 블록 생성 보상을 얻을 가능성을 높인다. 실제로 베이킹노드는 대개 위임받은 코인에서 발생한 추가 수익을 코인 소유자와 나눈다. 이 과정은 코인 소유자가 위임된 XTZ를 마음대로 사용하거나 통제할 수 없고, 베이킹노드의 자금을 도용하지 못하게 보장한다. 코인 소유자는 셀프베이킹(self baking)을 통해 높은 수익을 얻을 수 있지만, 이를 위한 시스템을 세팅하고 안정적으로 베이킹 소프트웨어를 실행할 전문적인 기술지식과 시간이 필요하다. 테조스 코인을 위임함으로써 코인 소유자는 이 프로세스를 완전히 생략할 수 있지만 일반적으로 낮은 수익을 얻는다.
위임
누군가 (혼자서 베이킹 하기에 충분한)XTZ가 없거나 블록을 생성할(to bake) 컴퓨팅 인프라를 만들고 싶지 않다면, 코인을 베이커 (위임자, delegator)에게 위임(delegating) 할 수 있다. 위임은 코인 보유자(위임인)가 동전을 베이커(대표자)에게 빌려주고 베이커에게 블록을 만든 다음,(to bake) 블록을 보증하기 위해(endorse) 선택 될 가능성을 높인다. 실제로, 베이커는 대개 위임 받은 토큰에서 발생한 추가 수익을 코인 보유자와 나눈다. 중요한 것은 이 과정이 실제로 코인의 소유권(ownership)을 주지 않기 때문에 위임 된 XTZ를 쓰거나 통제 할 수 없고 베이커가 위임자의 자금을 도용하지 못하게 보장한다.[1]
예제
- 우분투 설치 후 test계정 생성
ubuntu@ubuntu:~$ sudo adduser test Adding user `test' ... Adding new group `test' (1001) ... Adding new user `test' (1001) with group `test' ... Creating home directory `/home/test' ... Copying files from `/etc/skel' ... Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully Changing the user information for test Enter the new value, or press ENTER for the default Full Name []: Room Number []: Work Phone []: Home Phone []: Other []: Is the information correct? [Y/n] y
/etc/sudoers 에 아래 라인 추가 test ALL=(ALL:ALL) ALL
- test 계정으로 전환
sudo su - test
- 관련 패키지 설치
sudo apt-get install -y curl patch unzip make gcc m4 git g++ aspcud bubblewrap
- opam v2 설치
- root 로 설치 필요. 설치 후 exit 하여 test계정으로 변경
sudo su - sh <(curl -sL https://raw.githubusercontent.com/ocaml/opam/master/shell/install.sh) exit opam init
- 테조스 베타넷 빌드
git clone -b betanet https://gitlab.com/tezos/tezos.git cd tezos eval $(opam env) make build-deps eval $(opam env) make
- 테조스 노드 실행
./tezos-node identity generate 26. nohup ./tezos-node run --rpc-addr :8732 &
- 블록이 모두 동기화 되었는지 아래 명령어와 tzscan.io 에서 마지막 블록 hash 정보를 비교하여 확인
./tezos-client rpc get /chains/main/blocks/head
. Activation key 입력 ./tezos-client import fundraiser secret key "my_account" ./tezos-client activate fundraiser account "my_account" with <activation key from KYC site>
- 델리게이터로 등록
./tezos-client register key "my_account" as delegate
- 베이킹/인도서 시작
- 노드 data 저장위치를
--data-dir
옵션을 사용해서 바꾸지 않았다면 아래와 같이 본인의 홈디렉토리 아래로 지정
nohup ./tezos-alpha-baker run with local node "/home/`id -nru`/.tezos-node" "my_account" & nohup ./tezos-alpha-endorser run "my_account" &
- 특정 싸이클에서 베이킹/인도싱 권한 조회 방법
- 아래는 8번째 Cycle 에서 베이킹/인도싱 권한을 획득한 주소들과 수량을 보여준다.
CYCLE="8" ./tezos-client rpc get "/chains/main/blocks/head/helpers/baking_rights?cycle=$CYCLE&max_priority=1" | jq -r '.[] | .delegate' | sort | uniq -c | sort -rnk2 ./tezos-client rpc get "/chains/main/blocks/head/helpers/endorsing_rights?cycle=$CYCLE&max_priority=1" | jq -r '.[] | .delegate' | sort | uniq -c | sort -rnk2
테조스
테조스(Tezos)는 온체인 거버넌스 기술을 바탕으로 스마트 계약과 디앱 개발용 플랫폼을 제공하는 암호화폐이다. 유동지분증명(LPoS) 방식의 합의 알고리즘을 사용한다. 오카멜(OCaml)이라는 프로그래밍 언어로 개발했다. 빠른 속도와 완벽한 보안이 장점이다. 테조스의 화폐 단위는 XTZ이다. 테지(tezzies)라고도 한다. 테조스의 창시자는 아서 브라이트만과 캐슬린 브라이트만 부부이다. 테조스는 기존의 비트코인과 이더리움의 단점을 해결함으로써, 이오스, 카르다노(에이다)와 함께 대표적인 3세대 암호화폐로 불리고 있다. 테조스는 2018년 8월 기준 시가총액 9억 8,000달러(약 1조원)로 현재 18위이다.[2]
각주
- ↑ Yongjun Ko, 〈베이킹(baking)은 무엇인가요?〉, 《테조스코리아 커뮤니티》
- ↑ 〈테조스〉, 《해시넷》
참고자료
- Yongjun Ko, 〈TQ Tezos Wiki에 오신것을 환영합니다!〉, 《테조스코리아 커뮤니티》
- Yongjun Ko, 〈베이킹(baking)은 무엇인가요?〉, 《테조스코리아 커뮤니티》
- 〈테조스〉, 《해시넷》
같이 보기