testnet
GitHub EN

제네시스 설정

mechanism core

계정, 파라미터, 모듈 설정을 포함한 마루 블록체인의 초기 상태를 정의합니다.

제네시스 설정은 마루 네트워크의 시작 상태를 명시하는 JSON 파일(genesis.json)입니다. 이것은 첫 번째 블록이 생성되는 기초적인 청사진입니다. 이 설정은 초기 토큰 분배와 검증인 집합부터 EVM, 수수료 시장, 그리고 마루의 커스텀 PCL 및 OKRW 모듈과 같은 핵심 모듈의 기본 파라미터에 이르기까지 모든 것을 결정합니다.

`genesis.json`의 구조

genesis.json 파일은 최상위 키가 애플리케이션에 등록된 모듈의 이름에 해당하는 큰 JSON 객체입니다. 각 키의 값은 해당 특정 모듈의 초기 상태를 나타내는 또 다른 JSON 객체입니다. 예를 들어, bank 키는 초기 계정 잔액을 보유하고, staking 키는 초기 검증인 집합을 정의합니다.

마루 고유의 기본값

app/genesis.go 파일은 마루 생태계에 맞게 조정된 핵심 모듈의 기본 제네시스 상태를 생성하는 함수를 제공합니다:
  • NewEVMGenesisState: EVM 모듈을 설정합니다. 결정적으로, 사용 가능한 모든 정적 프리컴파일을 활성화하여 스마트 컨트랙트가 체인 시작 첫날부터 PCL 및 신원과 같은 마루의 핵심 기능에 접근할 수 있도록 합니다.
  • NewFeeMarketGenesisState: EIP-1559 수수료 시장을 설정합니다. 마루는 BaseFee 활성화로 운영됩니다 — 발신자가 base fee (소각됨)와 priority tip (검증인에게 지급)을 모두 aokrw로 지불합니다. 표준 EVM 툴이 별도 설정 없이 올바른 값을 계산합니다. 전체 메커니즘은 feemarket-module 참조.
  • NewMintGenesisState: mint_denomaokrw로 설정하여, OKRW 스테이블코인을 새로운 블록 보상 민팅에 사용되는 토큰으로 지정합니다.
  • NewOkrwGenesisState & NewPclGenesisState: 마루의 커스텀 모듈을 기본 파라미터로 초기화하여, 체인이 시작되자마자 작동할 수 있도록 준비합니다.

생성 및 수정

기본 genesis.jsonmarood init 명령을 사용하여 생성할 수 있습니다. 개발자와 노드 운영자는 네트워크를 시작하기 전에 이 파일을 수정하여 테스트넷을 위해 특정 계정에 토큰을 할당하거나 다른 거버넌스 파라미터를 설정하는 등 초기 상태를 사용자 정의할 수 있습니다.
소스: maroo
ESC
검색어를 입력하세요