Cointime

Download App
iOS & Android

3가지 링크 서비스를 사용하여 동적 NFT를 생성하는 방법을 알려줍니다.

Validated Project

작성자 : Chainlink 2023년 7월 12

개요

난이도: 초급/중급

예상 완료 시간: 60분

이 튜토리얼에서는 Remix를 사용하여 Polygon Mumbai 테스트넷에 스마트 계약을 배포하는 방법을 배웁니다. 이 스마트 계약은 USD로 표시된 ETH 가격을 기반으로 동적으로 업데이트되는 NFT를 생성합니다.

아래에서 이를 수행하는 방법에 대한 단계별 지침을 찾을 수 있습니다.

1. 메타마스크 지갑 생성

2. Polygon Mumbai 테스트넷에서 자금 확보

3. Chainlink VRF 구독 생성

4. Remix를 사용하여 동적 NFT(dNFT) 스마트 계약 배포

5. dNFT 스마트 계약을 VRF 소비자로 추가

6. Chainlink 자동화로 NFT 자동화

7. OpenSea에서 NFT 보기 및 상호 작용

1단계: 메타마스크 지갑 생성

참고: 이미 MetaMask 지갑(또는 다른 지갑)이 있는 경우 이 단계를 건너뛰십시오.

MetaMask 지갑을 생성하려면 https://metamask.io/를 방문하여 지침에 따라 지갑을 생성하십시오.

2단계: Polygon Mumbai 테스트넷 자금 확보

A) https://faucets.chain.link/mumbai 로 이동합니다.

B) 오른쪽 상단의 "지갑 연결"을 클릭합니다.

C) Polygon Mumbai와 처음 상호 작용하는 경우 MetaMask에서 "이 사이트에서 네트워크를 추가하도록 허용하시겠습니까?"라는 메시지가 표시되면 "승인"을 클릭하십시오.

D) "네트워크 전환"을 클릭합니다.

E) "I am human" 체크박스를 체크하고 captcha를 완성합니다.

F) "요청 보내기"를 클릭합니다.

G) 트랜잭션이 완료될 때까지 기다립니다.

축하해요! 테스트넷 Polygon Mumbai MATIC 및 테스트넷 LINK를 성공적으로 신청하고 받았습니다.

축하해요! 테스트넷 Polygon Mumbai MATIC 및 테스트넷 LINK를 성공적으로 신청하고 받았습니다.

참고: Chainlink 수도꼭지의 테스트넷 MATIC을 모두 사용한 경우 Polygon Mumbai 수도꼭지를 사용하여 테스트넷 MATIC을 받으십시오. 테스트넷 LINK를 받으려면 여전히 Chainlink 수도꼭지를 사용해야 합니다.

3 단계 : VRF 구독 생성

dNFT 스마트 계약을 배포하기 전에 먼저 VRF 구독을 생성합니다. 계약에서 난수를 생성할 때 사용하는 현금 양동이라고 생각하세요. 스마트 계약을 배포하려면 구독 ID가 필요합니다.

A) https://vrf.chain.link/mumbai 로 이동합니다.

B) 오른쪽 상단의 "지갑 연결"을 클릭합니다.

C) "구독 만들기"를 클릭합니다.

D) "구독 만들기"를 다시 클릭합니다.

E) MetaMask 프롬프트가 나타납니다. "서명"을 클릭합니다.

F) MetaMask에서 "확인"을 클릭하고 트랜잭션이 확인될 때까지 기다립니다.

G) 거래가 확인되고 구독이 생성되면 "자금 추가"를 클릭합니다.

H) "자금 추가(LINK)" 입력란에 2개의 LINK를 추가한 후 "자금 추가"를 클릭합니다.

I) MetaMask에서 트랜잭션을 확인합니다.

축하해요! VRF 구독을 성공적으로 생성하고 테스트넷 LINK로 자금을 조달했습니다. 다음 단계에서 VRF 구독에 대해 논의할 것입니다.

4 단계 : Remix동적 NFT 스마트 계약 배포

Remix는 Ethereum 블록체인에서 스마트 계약을 개발하고 테스트하는 전용 온라인 통합 개발 환경(IDE)입니다. 이더리움 스마트 계약 작성, 컴파일, 배포 및 디버깅을 위한 사용자 친화적인 인터페이스와 강력한 도구 세트를 제공합니다.

이 단계에서는 새 Remix 작업 영역을 만들고 스마트 계약을 배포하는 방법을 배웁니다. 걱정하지 마십시오. 스마트 계약은 이미 작성되어 있으므로 복사하여 붙여넣기만 하면 됩니다.

이 단계에서는 새 Remix 작업 영역을 만들고 스마트 계약을 배포하는 방법을 배웁니다. 걱정하지 마십시오. 스마트 계약은 이미 작성되어 있으므로 복사하여 붙여넣기만 하면 됩니다.

A) https://remix.ethereum.org/ 로 이동합니다.

나) 화면 왼쪽 상단의 "+" 아이콘을 클릭하여 새로운 워크스페이스를 생성합니다.

C) 새 작업 공간의 이름을 입력하고 확인을 클릭합니다.

D) 왼쪽 사이드바에서 "계약"을 마우스 오른쪽 버튼으로 클릭하고 "새 파일"을 클릭합니다.

E) 파일 이름을 "demo.sol" 또는 원하는 다른 이름으로 지정하고 Enter 키를 누릅니다.

F) 이 코드를 복사합니다.

// SPDX-라이센스-식별자: MIT

// 이것은 데모용이며 프로덕션에 사용하면 안 됩니다!

pragma solidity ^0.8.10;

// 다른 계약 가져오기

import "@openzeppelin/contracts/token/ERC721/ERC721.sol";

// 다른 계약 가져오기

import "@openzeppelin/contracts/token/ERC721/ERC721.sol";

import "@openzeppelin/contracts/token/ERC721/extensions/ERC721URISTorage.sol";

import "@openzeppelin/contracts/utils/Strings.sol";

import "@openzeppelin/contracts/utils/Base64.sol";

import "@chainlink/contracts/src/v0.8/interfaces/AggregatorV3Interface.sol";

import "@chainlink/contracts/src/v0.8/interfaces/VRFCoordinatorV2Interface.sol";

import "@chainlink/contracts/src/v0.8/VRFConsumerBaseV2.sol";

// ERC721, ERC721URStorage 및 VRFConsumerBaseV2에서 상속되는 SuperDynamicNFT 계약 정의

계약 SuperDynamicNFT는 ERC721, ERC721URIStorage, VRFConsumerBaseV2 {

// ETH 가격 및 해당 이모티콘 추적을 위한 상태 변수

int256 이전 EthPrice = 0;

문자열 ethIndicatorUp = 유니코드"

G) Remix로 돌아가서 코드를 새로 만든 demo.sol 파일에 붙여넣습니다.

참고: 많은 코드를 붙여넣고 있다는 팝업 경고가 표시될 수 있습니다. 확인을 클릭합니다.

H) 왼쪽 사이드바에서 "Solidity Compiler" 아이콘을 클릭합니다.

I) "demo.sol 컴파일"을 클릭합니다.

I) "demo.sol 컴파일"을 클릭합니다.

J) 왼쪽 사이드바에서 "배포 및 트랜잭션 실행" 아이콘을 클릭합니다.

K) "Environment" 드롭다운 메뉴를 클릭하고 "Remix VM (Shanghai)"에서 "Injected Provider - MetaMask"로 변경한 다음 MetaMask의 안내에 따라 지갑을 연결합니다.

L) Polygon Mumbai 블록체인에 스마트 계약을 배포하기 전에 이전 단계에서 만든 VRF 구독의 구독 ID가 필요합니다. https://vrf.chain.link/mumbai 로 돌아가 방금 생성한 VRF 구독의 ID를 기록해 둡니다. 귀하의 ID는 예시에 있는 것과 다를 것입니다. 먼저 계약서에 구독에 대한 인식을 부여해야 합니다. 이후 단계에서 구독이 계약을 인식하도록 합니다.

M) Remix에서 주황색 "배포" 버튼 옆에 있는 입력 상자에 구독 ID를 입력합니다.

N) "배포"를 클릭하고 메타마스크에서 트랜잭션을 확인합니다.

O) 화면 아래 콘솔에 녹색 체크 표시가 보이면 축하합니다! 계약을 Polygon Mumbai 블록체인에 성공적으로 배포했습니다!

5 단계 : VRF 구독 소비자 추가

축하해요! Polygon Mumbai 블록체인에 스마트 계약을 성공적으로 배포했습니다! 스마트 계약을 성공적으로 배포했습니다. 이제 3단계에서 생성한 VRF 구독에 스마트 계약을 소비자로 추가할 차례입니다.

A) Remix에서 계약 주소를 복사합니다.

B) https://vrf.chain.link/mumbai 로 이동하여 오른쪽 상단의 "지갑 연결"을 클릭하여 지갑을 연결합니다. 지갑이 이미 연결되어 있으면 이 단계를 건너뛸 수 있습니다.

C) 3단계에서 생성한 구독 ID를 클릭합니다. "내 구독"에서 구독을 찾을 수 있습니다.

D) "소비자 추가"를 클릭합니다.

E) "소비자 주소" 입력란에 계약 주소를 붙여넣습니다. 이렇게 하면 배포하는 계약에 대해 구독에 알릴 수 있습니다.

F) "소비자 추가"를 클릭하고 MetaMask의 프롬프트를 따릅니다.

G) 거래가 확인되면 "닫기"를 클릭하고 페이지를 새로 고칩니다. 구독에 추가되는 아래 이미지와 같이 소비자가 표시되면 이 단계를 성공적으로 완료한 것입니다.

6단계: Chainlink 자동화를 사용하여 NFT 자동화

이 단계에서는 Chainlink 자동화를 사용하여 NFT의 배경색과 표현을 동적으로 업데이트하는 시간 기반 유지 관리를 생성합니다.

A) https://automation.chain.link/mumbai 로 이동하여 오른쪽 상단의 "지갑 연결"을 클릭하여 지갑을 연결합니다. 지갑이 이미 연결되어 있으면 이 단계를 건너뛸 수 있습니다.

A) https://automation.chain.link/mumbai 로 이동하여 오른쪽 상단의 "지갑 연결"을 클릭하여 지갑을 연결합니다. 지갑이 이미 연결되어 있으면 이 단계를 건너뛸 수 있습니다.

B) "새 유지보수 등록"을 클릭합니다.

C) "시간 기반"을 선택합니다.

D) 계약 주소를 붙여넣고 "다음"을 클릭합니다(계약 주소를 찾는 데 도움이 필요한 경우 5A단계 참조).

E) "ABI를 가져올 수 없습니다. 별도의 탭에서 Remix로 돌아가서 왼쪽 사이드바에서 "Solidity compiler" 탭을 선택합니다.

F) "계약" 드롭다운 메뉴에서 계약을 선택하고 "ABI 복사" 버튼을 클릭합니다.

F) "계약" 드롭다운 메뉴에서 계약을 선택하고 "ABI 복사" 버튼을 클릭합니다.

G) 유지 관리 등록으로 돌아가 입력 상자에 ABI를 붙여넣고 "다음"을 클릭합니다.

H) "Objective Function"에서 "requestRandomWords"를 선택하고 "Next"를 클릭합니다.

I) "일정 지정"에서 다음 CRON 표현식을 입력하여 2분마다 NFT의 새 배경색을 생성합니다: */2 * * * * .

J) "다음"을 클릭합니다.

K) 유지 관리에 이름을 지정하고(예: 동적 NFT 데모) 시작 잔액을 2LINK로 입력합니다.

L) "Register Upkeep"을 클릭하고 트랜잭션을 승인하여 MetaMask에서 CRON 작업 계약을 배포합니다.

L) "Register Upkeep"을 클릭하고 트랜잭션을 승인하여 MetaMask에서 CRON 작업 계약을 배포합니다.

M) 트랜잭션이 승인되면 MetaMask는 두 번째 트랜잭션 "시간 기반 유지 관리 등록 요청"을 확인하라는 메시지를 표시합니다.

N) 트랜잭션이 확인될 때까지 기다린 후 "유지 보수 보기"를 클릭합니다.

O) 새로 생성된 점검 상태에 "활성화"가 표시되면 이 단계를 성공적으로 완료한 것입니다. 축하해요!

7 단계 : OpenSea 에서 NFT 보기

A) https://testnets.opensea.io/ 로 이동하여 오른쪽 상단의 드롭다운 메뉴에서 "프로필"을 선택합니다.

B) 아래와 같이 지갑을 연결합니다. OpenSea와의 거래에 서명해야 할 수도 있습니다.

C) 프로필에서 "ETH Watching SVG"라고 표시된 NFT를 클릭합니다.

D) 오른쪽 상단 모서리에 있는 세 개의 점을 클릭하고 "Refresh Metadata"를 선택합니다.

E) 30초간 기다린 다음 페이지를 새로고침하면 새로 생성된 dNFT가 표시됩니다!

축하해요! 튜토리얼을 완료했습니다. 구독 자금이 소진될 때까지 2분마다 NFT가 ETH 가격을 확인하고 새로운 배경색을 요청합니다. 다음에 메타데이터를 새로 고치면 다른 내용이 표시됩니다.

결론적으로

여기까지 왔다면 축하합니다! Polygon Mumbai Testnet에 동적으로 업데이트되는 NFT를 성공적으로 배포했습니다. 이 NFT는 Chainlink 가격 피드를 사용하여 이더리움 가격을 추적하고, Chainlink VRF를 사용하여 임의의 배경색을 선택하고, Chainlink 자동화를 사용하여 2분마다 이미지를 업데이트합니다.

댓글

모든 댓글

Recommended for you

  • 미국 상원 은행위원회 위원장은 스테이블코인 수익률 관련 새로운 조항 초안이 이르면 이번 주에 공개될 수 있다고 밝혔습니다.

    코인타임(Cointime) 보도에 따르면, 상원 은행위원회 위원장인 팀 스콧(Tim Scott) 상원의원은 DC 블록체인 서밋에서 의원들이 이번 주 초에 최소한 스테이블코인 관련 조항을 포함한 새로운 법안 초안을 볼 수 있을 것이라고 밝혔습니다. 스콧 의원은 스테이블코인 수익률이 법안에서 가장 많이 논의된 사안이지만, 의원들은 계속해서 이 문제를 논의하고 있다고 언급했습니다. 그는 "이번 주 안에 검토할 첫 번째 초안을 받을 수 있을 것으로 생각합니다. 이번 주말까지 그렇게 된다면, 적어도 법안의 기본 틀이 마련되고 있는지 알 수 있을 것입니다. 그렇게 된다면, 우리는 더 나은 상황에 놓일 수 있을 것입니다."라고 말했습니다. 그는 또한 스테이블코인 수익률 문제에 대한 진전은 민주당 소속 앤젤라 올스브룩스(Angela Alsobrooks) 상원의원, 공화당 소속 톰 틸리스(Thom Tillis) 상원의원, 그리고 백악관 관계자인 패트릭 위트(Patrick Witt)의 노력 덕분이라고 덧붙였습니다. 그는 지난 한 달간 진행된 협상에서 도널드 트럼프 대통령과 그의 가족이 추진하는 암호화폐 사업에 대한 의원들의 우려, 주요 규제 기관의 초당적 대표성 부족, 그리고 고객확인제도(KYC) 규정 등 해결되지 않았던 다른 쟁점들도 논의되었다고 밝혔습니다. 스콧 의원은 또한 "윤리적 문제와 정족수 문제에 대한 합의에 거의 도달했다고 생각합니다. 상대방에게도 중요한 문제라는 것을 알고 있기 때문에 우리도 이 부분을 다루고 있습니다. 몇몇 인사 지명에 대해서도 진전이 있어 다행입니다. 디파이(DeFi)는 마크 워너 상원의원이 집중적으로 관심을 기울여 온 분야이며, 자금세탁방지(AML)는 매우 중요한 부분입니다. 따라서 이러한 문제들에 대해 진전이 있다고 생각합니다."라고 말했습니다.

  • 골든 모닝 브리핑 | 3월 18일 밤 주요 변동 사항

    21:00-7:00 주요 키워드: 팬텀, 스트라이프, 오토노머스, 이란 1. 이란은 미국과 이스라엘이 자국 영토를 이용하는 것을 허용하는 국가에 대해 합법적으로 공격할 수 있다고 주장했습니다. 2. 미국 상품선물거래위원회(CFTC): 팬텀 지갑은 브로커 등록이 필요하지 않습니다. 3. 애리조나 주 법무장관, 예측 마케팅 업체 칼시(Kalshi)에 대해 형사 고발 조치를 취했습니다. 4. 미국 국무부는 전 세계 모든 대사관에 "즉시" 보안 평가를 실시하도록 지시했습니다. 5. 로빈후드 벤처 캐피털, 스트라이프와 일레븐랩스에 약 3,500만 달러 투자. 6. GSR, 오토노머스와 아키텍을 5,700만 달러에 인수하여 암호화폐 펀드 운용 플랫폼 구축. 7. 미국 증권거래위원회(SEC)와 상품선물거래위원회(CFTC), 대부분의 디지털 자산은 증권이 아니라는 새로운 암호화폐 가이드라인 발표.

  • 미국 증권거래위원회(SEC)와 상품선물거래위원회(CFTC)는 암호화폐에 대한 새로운 의견을 발표하며, 대부분의 디지털 자산은 증권 범주에 속하지 않는다고 밝혔습니다.

    코인타임은 3월 18일 미국 증권거래위원회(SEC)와 상품선물거래위원회(CFTC)가 암호화폐에 대한 68페이지 분량의 가이드라인 문서를 발표했으며, 대부분의 디지털 자산은 증권이 아니라고 밝혔다고 보도했습니다. 이 새로운 설명은 스테이블코인, 디지털 상품, 그리고 "디지털 상품" 토큰의 분류를 자세히 설명하며, SEC는 이 모든 것들이 증권이 아니라고 명시했습니다. 또한 "비증권 암호화 자산"이 어떻게 증권이 될 수 있는지 설명하고, 채굴, 프로토콜 스테이킹, 에어드롭에 연방 증권법이 어떻게 적용되는지 명확히 했습니다. SEC는 또한 비증권 디지털 자산이 어떻게 투자 계약의 대상이 될 수 있는지에 대해서도 설명했습니다. SEC는 설명에서 "발행자가 투자자를 공동 사업에 투자하도록 유도하고 필요한 경영 업무를 수행하겠다는 약속이나 진술을 하며, 구매자가 그로부터 수익을 기대할 만한 이유가 있을 때, 비증권 암호화 자산은 투자 계약의 대상이 된다"고 밝혔습니다.

  • 마스터카드는 스테이블코인 회사인 BVNK를 최대 18억 달러에 인수할 계획입니다.

    코인타임(Cointime) 보도에 따르면 마스터카드(Mastercard)는 스테이블코인 인프라 스타트업인 BVNK를 최대 18억 달러(조건부 대가 3억 달러 포함)에 인수할 계획입니다. 이번 인수는 BVNK와 코인베이스(Coinbase)의 약 20억 달러 규모의 합병 협상이 결렬된 지 불과 4개월 만에 이루어졌습니다. 양사는 화요일 공동 성명을 통해 이번 거래를 공식적으로 확인했습니다.

  • 비트코인이 7만 5천 달러를 돌파했습니다.

    시장 데이터에 따르면 비트코인(BTC)이 75,000달러를 돌파하여 현재 75,033.01달러에 거래되고 있으며, 24시간 동안 2.83% 상승했습니다. 시장 변동성이 매우 크므로 투자 시 위험 관리에 유의하시기 바랍니다.

  • 비트코인이 71,500달러를 돌파했습니다.

    시장 데이터에 따르면 비트코인(BTC)이 71,500달러를 돌파하여 현재 71,510.19달러에 거래되고 있으며, 24시간 동안 1.06% 상승했습니다. 시장 변동성이 매우 크므로 투자 시 위험 관리에 유의하시기 바랍니다.

  • 이더리움(ETH)이 2100달러를 돌파했습니다.

    시장 데이터에 따르면 이더리움(ETH)이 2,100달러를 돌파하여 현재 2,100.58달러에 거래되고 있으며, 24시간 동안 0.44% 상승했습니다. 시장 변동성이 매우 크므로 투자 시 위험 관리에 유의하시기 바랍니다.

  • 미국 이더리움 현물 ETF는 어제 2,670만 달러의 순유입을 기록했습니다.

    파사이드 인베스터스가 모니터링한 데이터에 따르면, 3월 14일 미국 이더리움 현물 ETF에는 2,670만 달러의 순유입이 기록되었습니다.

  • 미국 법무부는 파월 사건 판결에 항소할 예정이며, 이로 인해 워쉬의 임명이 지연될 가능성이 있다.

    3월 14일, 한 판사가 연방준비제도(Fed)에 발부된 소환장을 기각하자, 로버트 피로 미 연방 검사는 제롬 파월 연준 의장에 대한 수사를 계속하겠다고 밝혔으며, 이는 5월 임기가 만료되는 후임 케빈 워시 의장의 임명에 차질을 빚게 할 가능성이 있다. 제임스 보스버그 미 연방 지방 판사는 정부가 연준 본부 개조 공사 및 파월 의장의 관련 발언과 관련된 소환장을 발부할 만한 증거를 제시하지 못했다고 밝혔다. 피로 검사는 "이 절차는 급진적인 판사에 의해 자의적으로 중단되었다. 절차는 순조롭게 진행되었어야 했지만, 그렇지 않았다. 이는 수치스러운 일이다."라고 말했다. 상원 은행위원회 위원인 틸리스 상원의원은 법무부의 파월 의장에 대한 수사가 계속되는 한 연준 의장 지명을 저지하겠다고 경고했다. 틸리스 의원은 "이번 판결은 파월 의장에 대한 형사 수사가 얼마나 허술하고 근거 없는지를 보여준다. 이는 연준의 독립성을 훼손하려는 실패한 공격에 불과하다."라고 말했다. "이번 항소는 케빈 워시의 차기 연준 의장 인준을 지연시킬 뿐입니다."