메인 콘텐츠로 건너뛰기

x/genutil

Concepts

genutil 패키지는 블록체인 애플리케이션 내에서 사용하기 위한 다양한 genesis 유틸리티 기능을 포함합니다. 구체적으로:
  • Genesis 트랜잭션 관련 (gentx)
  • gentx 수집 및 생성을 위한 명령어
  • gentx의 InitChain 처리
  • Genesis 파일 생성
  • Genesis 파일 검증
  • Genesis 파일 마이그레이션
  • CometBFT 관련 초기화
    • app genesis를 CometBFT genesis로 변환

Genesis

Genutil은 애플리케이션 genesis를 정의하는 데이터 구조를 포함합니다. 애플리케이션 genesis는 consensus genesis(예: CometBFT genesis)와 애플리케이션 관련 genesis 데이터로 구성됩니다.
reference
애플리케이션 genesis는 consensus 엔진을 올바른 형식으로 변환할 수 있습니다:
reference
reference

Client

CLI

genutil 명령어는 genesis 하위 명령어 아래에서 사용할 수 있습니다.

add-genesis-account

genesis.json에 genesis 계정을 추가합니다. 자세한 내용은 여기를 참조하세요.

collect-gentxs

genesis tx를 수집하고 genesis.json 파일을 출력합니다.
이렇게 하면 모든 검증인의 데이터를 포함하는 새로운 genesis.json 파일이 생성됩니다(단일 검증인 genesis 파일과 구별하기 위해 “super genesis 파일”이라고도 합니다).

gentx

자체 위임을 포함하는 genesis tx를 생성합니다.
이렇게 하면 새 체인의 genesis 트랜잭션이 생성됩니다. 여기서 amount는 최소 1000000000stake여야 합니다. 너무 많거나 너무 적으면 노드 시작 시 오류가 발생합니다.

migrate

genesis를 지정된 대상(SDK) 버전으로 마이그레이션합니다.
:::tip migrate 명령어는 확장 가능하며 MigrationMap을 사용합니다. 이 맵은 대상 버전에서 genesis 마이그레이션 함수로의 매핑입니다. 기본 MigrationMap을 사용하지 않는 경우에도 체인의 SDK 버전에 해당하는 기본 MigrationMap을 호출하고 자체 genesis 마이그레이션을 앞뒤에 추가하는 것이 좋습니다. :::

validate-genesis

기본 위치 또는 인수로 전달된 위치의 genesis 파일을 검증합니다.
:::warning validate genesis는 genesis가 현재 애플리케이션 바이너리에서 유효한지만 검증합니다. 이전 버전의 애플리케이션에서 genesis를 검증하려면 migrate 명령어를 사용하여 genesis를 현재 버전으로 마이그레이션하세요. :::
마지막 수정일 2026년 3월 30일