Blockchain/Testnet

Taiko A2 테스트넷 컨트랙트 배포 가이드

lowsec 2023. 3. 30. 01:20

안녕하세요. 오늘 포스팅에서는 Taiko A2 테스트넷에서 컨트랙트를 배포하는 방법을 알려드리겠습니다.

 

사진. Taikio A2 테스트넷 운영 중

 

Taiko는 이더리움의 수장인 비탈릭이 직접 샤라웃한 zkEVM 기반 레이어 2 프로젝트입니다. 이더리움과의 호환성에 포커스를 맞춘 프로젝트로 트랜잭션 처리 속도는 아직 아쉬운 수준입니다.

 

지난 알파-1 테스트넷에 이어 2번째 알파 테스트넷을 현재 운영 중입니다. 이번 테스트넷에서는 레이어2 상태 전환의 유효성을 증명하기 위한 유효성 증명(Validity proof)을 생성하는 기능이 추가되었습니다. 다만 모든 상태 전환을 증명하는 게 아니라 트랜잭션 목록과 같은 일부 데이터에만 적용이 되었고 테스트 참가자는 유효성 증명을 만드는 증명자(Prover) 역할을 수행할 수 있습니다. 최소사양의 컴퓨팅 파워만 만족하면 누구나 증명자로서 테스트에 참여해 실제 보상을 받을 수 있습니다. Prover로 참여하기 위한 하드웨어 요구사항은 다소 높은 편입니다. 보상으로 지급되는 테스트 토큰은 테스트넷 보상 기간이 끝날 때 USDC로 교환할 수 있고 보상 기간은 약 30만 번째 블록이 생성될 때까지, 즉 69일 동안 지속된다고 합니다.

 

위 내용은 https://www.bonmedia.kr/news/articleView.html?idxno=548 을 참고하였습니다.

 

Prover 노드 운영 이외 테스트넷 참여에 대한 보상이 명시되어 있지는 않지만 트랜잭션은 남겨봐야죠. 본 가이드에서는 컨트랙트 배포를 위한 절차로 'faucet 받기 > 브릿지 > 컨트랙트 배포'까지의 내용을 담아보았습니다.

 

Sepolia > Taiko A2 브릿지

 

(이미 브릿징을 완료한 분들이라면 이 파트는 스킵해주세요.)

 

이더리움의 새로운 테스트넷인 Sepolia에서 faucet을 받아줍니다.  

 

https://sepoliafaucet.com/ 에 접속합니다. Alchemy 계정이 있는 분들은 로그인 하시고 메마 주소를 입력하여 Sepolia 네트워크에 faucet을 받아줍니다.

 

Sepolia Faucet

A fast and reliable Ethereum Sepolia testnet faucet for blockchain developers.

sepoliafaucet.com

 

https://bridge.a2.taiko.xyz/에 접속합니다. 메마 지갑으로 Sepolia 네트워크에 접속하고 Taiko A2 네트워크로 브릿징할 수량을 입력합니다.

 

Bridge

 

bridge.a2.taiko.xyz

 

브릿징은 Sepolia에서 한 번 일어나고, Taiko A2에서 릴레이 트랜잭션이 승인되어야 브릿징한 자산을 Taiko A2에서 확인할 수 있습니다. Taiko A2에 처음 연결한 분이라면 잔액이 없기 때문에 재단이 운영하는 릴레이어가 트랜잭션을 릴레이해줄 때까지 기다려야 합니다. (시간이 좀 걸릴 수 있습니다.)

 

아래 사진 처럼 브릿징 트랜잭션 상태가 "Claimed"로 변경되었고 Taiko A2 네트워크에서 잔액이 잘 확인된다면 컨트랙트 배포 파트로 넘어갑니다.

 

사진. 브릿지 상태 확인

 

컨트랙트 배포

 

https://remix.ethereum.org/ 에 접속합니다.

 

Remix - Ethereum IDE

 

remix.ethereum.org

 

Files > New File 을 클릭하여 새 컨트랙트를 생성합니다. 저는 Taiko.sol로 지정하였습니다.

 

사진. New File

 

Taiko.sol을 열고 아래 소스코드를 복사하여 붙여넣기 합니다.

 

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;


contract ProfitMafia{

    address public owner;
    mapping (address => uint) public payments;

    constructor() {
        owner = msg.sender;
    }

    function Donate() public payable {
        payments[msg.sender] = msg.value;
    }

    function MoneyBack() public {
        address payable _to = payable(owner);
        address _thisContract = address(this);
        _to.transfer(_thisContract.balance);
    }
}

 

아래 사진처럼 좌측 Solidity Compiler 메뉴를 클릭합니다. 컴파일러 버전을 가장 상위 버전으로 선택한 뒤 Compile Taiko.sol 버튼을 클릭하여 컨트랙트를 컴파일 합니다. 정상적으로 컴파일되면 녹색 V 표시가 표시됩니다.

 

사진. 컨트랙트 컴파일

 

컴파일이 완료되면 좌측 Deploy & Run transactions 메뉴에 들어갑니다. 

 

Environment > Injected Provider를 선택하여 Takio A2 네트워크에 연결된 메타마스크 지갑을 연동해줍니다. 자신의 메마 주소가 Account 파트에 표시되는지 반드시 확인하고 Deploy 버튼을 클릭합니다.

 

사진. 컨트랙트 배포

 

메타마스크에서 배포 트랜잭션을 승인하고 해당 트랜잭션이 확정될 때까지 기다립니다. 빠른 확정을 위해서 Gwei를 올려서 트랜잭션을 실행하시길 추천드립니다.

 

사진. 배포 트랜잭션 승인

 

배포 트랜잭션이 완료되면 아래 콘솔창에 트랜잭션이 담긴 블록 번호와 함께 txid를 확인할 수 있습니다. 중간이 잘려서 안보이니 메타마스크의 활동 메뉴를 이용하거나 Taiko A2 익스플로러에서 자신의 메마 주소로 검색하여 트랜잭션 정보를 확인합니다.

사진. 배포 성공

 

Taiko A2 테스트넷에 컨트랙트를 배포하였습니다. 따라해보시고 안되는 부분이 있거나 궁금하신 점이 있으면 언제든 Telegram 채널에 오셔서 질문 부탁드리겠습니다. 감사합니다.

 


본 포스팅을 재미있게 읽으셨다면 "❤️"도 눌러주시길 부탁드립니다. 그리고!! 트레이딩에 관심이 있으신 분 + 신규 거래소나 증정금 이벤트를 찾고 계시는 분이라면 bingx 형퍼럴로 가입 부탁드립니다. 컨텐츠 제작에 큰 힘이 됩니다.

 

bingx 거래소 무조건 100달러 받기 이벤트 진행중 (입금 0원, 가입링크)

 

- 회원가입/핸드폰 등록 50 USDT

- KYC 인증 50 USDT

- 500불 입금후 7일유지 / 50 USDT

> 입금없이 받은 증정금만으로도 거래량 이벤트를 달성할수 있습니다. 

- 거래량 10k / 10 USDT

- 거래량 50k / 40 USDT

- 거래량 150k / 100 USDT 

제 레퍼럴로 가입하신 분들은 블로그 댓글이나 텔레그램 채널을 통해 꼭 알려주세요. 아래와 같은 혜택을 드립니다. 추가적인 혜택도 드릴 수 있도록 열심히 노력하겠습니다.

1️⃣ 퀀트를 통한 개별 코인 트레이딩 시그널 (매일 최소 3회 이상 제공, Entry/TP/SL 포함)
2️⃣ 시장에 따른 실시간 매수/매도 전략
3️⃣ 리스크 관리를 위한 자금 운용 전략
4️⃣ 일일 크립토 시황/국제 경제 브리핑