본문 바로가기
개발 학습/블록체인

S4: EVM과 Geth로 스마트컨트랙트 배포

by StelthPark 2021. 11. 24.

솔리디티 코드를 solc로 evm이 읽을수 있는 이진코드로 만들기

더보기
solc --optimize --bin simpleStorage.sol

solc --bin {컴파일할 sol파일 이름} 은 솔리디티 파일을 이진 형식으로 컴파일하는 명령어입니다.

--optimize 옵션은 컴파일 전, 작성한 솔리디티 코드가 약 200회 실행된다고 가정했을 때를 기준으로 컨트랙트를 최적화합니다.

 

ABI만들기

ABI(Application Binary Interface)는 스마트 컨트랙트 코드에 대한 설명이 담긴 JSON 형식의 인터페이스입니다.

컨트랙트내 함수에 어떤인자를 넣고 사용해야하는지 어떤작업을 수행해야 하는지 알려준다.

더보기
solc --abi simpleStorage.sol

 

Geth로 스마트컨트랙트 빌드하기

 

solc --abi --bin simpleStorage.sol=>Abi와 바이트코드 만들기

 

var simpleBytecode = "0x바이트코드" 할당var simpleAbi = Abi 할당

 

var simpleContract = eth.contract(simpleAbi)

=> ABI설정

var simpleTransferObject = {from: eth.accounts[0], data: simpleBytecode, gas: 2000000} 할당

var contractObj = simpleContract.new(simpleTransferObject);

=> 컨트랙트 정보 얻기고 배포

'개발 학습 > 블록체인' 카테고리의 다른 글

S4: ERC-20  (0) 2021.11.26
S4: Solidity 기본 문법  (0) 2021.11.25
S3: dApp  (0) 2021.11.18
S3: 암호화 기술과 보안  (0) 2021.11.17
S3: 데이터와 인프라 아키텍처  (0) 2021.11.16

댓글