Blockchain/Cosmos(13)
-
Ethereum과 Cosmos의 genesis
※ 원글 작성 : 22년 8월 18일 Genesis는 블록체인을 처음 구동 시에 체인에 들어갈 설정들이 집약되어 있다. Cosmos의 경우는 ethereum의 그것보다 parameter도 많고 설정 시 고려해야할 부분도 많다. Ethereum의 genesis.json을 간략히 알아보고, cosmos genesis가 어떤 paramter를 가지고 있는지 확인한다. Ethereum genesis 현재 PoW 기반 ethereum의 genesis는 아래와 같다. 단계 별로 각 필드가 어떤것을 얘기하는지 보려한다. 아래 예시는 ethereum 가이드에서 확인한 genesis이다. { "config": { "chainId": 12345, "homesteadBlock": 0, "eip150Block": 0, "ei..
2023.06.15 -
Cosmos chain module 및 components
※ 원글 작성 : 22년 8월 3일 Cosmos SDK를 기반으로 생성된 체인의 경우 다양한 module 및 component가 존재한다. 각 module 들에 대해서 대략적으로 나마 살펴보려 한다. Cosmos SDK의 모듈화는 필요한 기능은 넣고, 필요없는 기능은 뺄 수 있게 설계되어 있기 때문에 각 애플리케이션 별로 원하는 맞춤형 체인을 구축할 수 있게 한다. SDK 모듈은 애플리케이션에서 발생하는 tx를 로직대로 handling하고 ABCI를 통해 tendermint core로 전달하여 consensus를 하도록 하는 중간 역할을 담당한다. Cosmos docs에서는 다양한 모듈들이 존재하는데, Ignite 등으로 생성한 체인 골격에서 app.go내에 선언되는 module 중 자주 사용되는 mod..
2023.06.14 -
Cosmos SDK 기반 체인 configuration
※ 원글 작성 : 22년 6월 29일 Cosmos SDK 기반 체인을 구성시에는 /config/ 디렉토리 내에 config 파일이 생성이 된다. 그 중 app.toml, config.toml에 대해 확인해본다. app.toml 1. Base config minimum-gas-price validator가 transaction을 처리할 때 수용하는 최소 gas price pruning default : default option default : 추가로 500번째 state 마다 100개의 state만 남기고 삭제, 10 block 간격으로 pruning nothing : state를 삭제하지 않음 (archiving node 시) everything : 모든 state 삭제 custom : 파라미터를 설..
2023.06.14 -
Cosmos SDK 기반 체인 로컬 테스트넷 구성
※ 원글 작성 : 22년 6월 22일 Cosmos SDK 기반 체인 구성 [Blockchain/Cosmos] - Cosmos SDK 기반 체인 로컬 테스트넷 구성 [Blockchain/Cosmos] - Cosmos SDK 기반 체인 다중 validator 환경 구성 Cosmos SDK나 Ignite CLI를 통해 생성한 Tendermint 기반 블록체인은 gaiad(Cosmos HUB), wasmd(CosmWasm), terrad(Terra), bnbchaind(Binance chain) 처럼 쉽게 체인을 구성할 수 있는 데몬을 제공한다. 해당 데몬들을 이용해 로컬 테스트넷 구성을 해본다. gaiad를 기반으로 구성할 것이나, 다른 데몬들도 유사한 방식을 사용하여 비슷한 명령어로 사용하면 각 체인 구성이..
2023.06.14 -
Cosmos [3] (Core, SDK, Smart contract)
※ 원글 작성 : 22년 4월 27일 Smart contract Prerequisites Rust (Cargo) Docker Set up rust rustup default stable rust target add wasm32-unknown-unknown cargo install cargo-generate --features vendored-openssl cargo install cargo-run-script Start with a template cargo generate --git https://github.com/CosmWasm/cw-template.git --branch 0.16 --name contract-test cd contract-test Build the contract # Smart c..
2023.06.13 -
Cosmos [2] (Algorithm, Protocol)
※ 원글 작성 : 22년 4월 27일 Tendermint Consensus algorithm Synchronous BFT consensus protocol, DPoS와 PBFT 개념을 섞음 아톰이라 불리는 지분 토큰(staking token)을 임의의 검증인에게 위임하여 일정한 블록 수수료(block fee)와 아톰 보상(atom rewards)를 얻을 수 있다. 위임 검증인(Delegate Validator)이 해킹 당하거나 프로토콜을 위반할 경우 처벌을 받는 리스크 존재 100의 validator를 선발하여, 아톰 지분 토큰을 validator에게 위임해서 일정한 블록 수수료와 아톰 보상을 받을 수 있다. 사용자가(delegator) 위임한 validator가 해킹 당하거나 프로토콜을 위반할 경우 처..
2023.06.13