





cosmwasm(5)
-
IBC를 통한 외부 CosmWasm 실행하기
CosmWasm 컨트랙트는 Cosmos의 IBC를 통하여 서로 다른 블록체인 간의 컨트랙트 실행(execution)을 수행할 수 있다. 이번 글에서는 Golang IBC relayer를 사용하여 체인 A의 CosmWasm 컨트랙트를 실행하여서 체인 B의 CosmWasm 컨트랙트를 동작시키는 방식 환경을 구성하고 실행하는 방법을 확인한다.환경 구성테스트로 사용될 블록체인은 Wasm 모듈이 포함되어 있는 Juno와 Wasmd를 사용한다. 두 체인을 로컬에 설치하는데, CometBFT RPC 포트를 동일하게 26657을 사용하여, Wasmd는 docker로 ubuntu를 띄워 동작시킨다.IBC 연결을 위한 CW 컨트랙트는 https://github.com/0xekez/cw-ibc-example에 등록된 예시 ..
2025.04.21 -
CosmWasm 컨트랙트 CLI로 배포/실행/조회하기
이전 글을 오랜만에 확인해보니 CosmWasm 컨트랙트 코드 분석과 배포한 결과만 올려 놓은것을 보았다. Wasmd를 설치하고, 제공되는 CLI를 이용해 CosmWasm을 배포하고 실행하는 과정을 보려한다.준비Rust 및 cargoCosmWasm은 Rust로 구현되니, 가장 먼저 Rust를 설치한다. 설치 방법은 여기에 존재한다.Rust와 Cargo(Rust 패키지 관리자)가 설치된 사람들은 아래 명령으로 Cargo 버전을 최신 stable 버전으로 업데이트 가능하다.$ rustup update stableCosmWasm에서 제공하는 optimizer를 사용하기 위해 cargo-make도 함께 설치한다. Make file을 통해 빌드를 할 수 있도록 되어 있다. 테스트에 사용된 cargo의 버전은 1.8..
2025.04.16 -
CosmWasm 기본 개념 및 구조
CosmWasm은 Cosmos 기반 블록체인에서 사용하는 web assembly 기반 smart contract이다. Cosmos-SDK 기반 체인에서 CosmWasm contract를 운용하기 위해서는 wasmvm 사용이 필요하여 wasm module이 포함되어야 한다. 따라서 app chain에 wasm module이 없는 chain의 경우에는 cosmwasm contract가 동작할 수 없다. 이번 글에서는 CosmWasm 대한 기초적인 분석을 진행할 것이며, 이 컨트랙트를 처음 접하는 사람도 기본적인 내용은 얻을 수 있도록 해볼것이다. Features 가장 먼저 ComsWasm의 창시자 Ethan Frey가 게시한 CosmWasm과 Cosmos-SDK, solidity의 비교표를 확인하면 좋을것 ..
2023.07.06 -
CosmWasm Contract Migration
※ 원글 작성 : 22년 11월 24일Migration?Contract를 통한 서비스를 운영하다 보면 버그가 발견거나, 기능이 업데이트 되야 하거나 하는 이슈로 인해 contract를 수정해야만 하는 상황이 발생할 수도 있다. 이때 기존 contract의 state는 유지하면서 contract 코드만 수정하는 방법이 "migration"이다. CosmWasm은 이런 migration이 굉장히 편하고 쉽게 되어 있다. Wasm 모듈이 포함되어 있는 cosmos sdk 기반 블록체인에서 이 migrate를 지원하니, contract 운영이 쉬워질 것이라 생각한다.Migration codeMigration을 하기 위해서는 우선 CW contract 내에 contract version이 관리되고 있어야 한다. ..
2023.06.15 -
CosmWasm smart contract 배포하기
※ 원글 작성 : 22년 5월 10일 Terra에 CW smart contract를 배포해보려 한다. NFT contract는 CosmWasm NFT를 참고로 작성할 것이다. Store NFT images IPFS를 설치하여 ipfs add IMAGE_NAME.jpg로 등록을 할 수 있지만 편의를 위해 NFT를 위한 file 등록 사이트를 사용하여 NFT image를 저장한다. Image를 등록하면 위 그림과 같이 CID가 생성되고, CID를 통해 IPFS 내의 이미지 or 파일을 확인할 수 있다. https://ipfs.io/ipfs/[your_image_CID]로 파일 확인이 가능하다. NFT 등록을 위해서는 JSON 형식의 Metadata도 필요하다. Metadata 형식은 표준화 되어 있으며 Op..
2023.06.14