Solidity에서 ETH, BTC 및 기타 암호화폐의 현재 가격을 얻는 방법

Chainlink의 가격 피드를 사용하여 가격 데이터 얻기
Chainlink 오라클을 통해 외부 API를 사용하여 가격 데이터 가져오기
첫 번째 레벨 제목
스마트 계약에서 정확하고 신뢰할 수 있는 가격 데이터의 필요성
DeFi 프로토콜은 올해 폭발적인 성장을 경험했으며 DeFi의 총 잠금 가치는 1월 6억 8천만 달러에서 현재 140억 달러로 급증했습니다. 이러한 DeFi 프로토콜은 블록체인이 로컬에서 외부 데이터에 직접 액세스할 수 없기 때문에 외부 가격 데이터를 데이터 소스로 사용합니다. 또한 이러한 애플리케이션은 가격 오라클 공격 및 기타 공격과 같은 악용으로부터 애플리케이션을 보호하기 위해 데이터 보증을 제공해야 합니다.
Chainlink 가격 피드는 여러 고품질 데이터 공급자로부터 집계된 데이터를 제공하고 Chainlink 네트워크의 분산된 오라클을 통해 온체인 데이터를 공급함으로써 이러한 공격의 위험을 완화합니다. Chainlink의 탈중앙화 오라클 메커니즘은 최종 가격 데이터가 광범위한 시장 정보를 반영하도록 보장합니다. 즉, 최종 가격 데이터는 전체 시장의 다양한 가격 데이터를 집계한 후 결정됩니다. 거래량 및 유동성과 같은 요인.
첫 번째 레벨 제목
Chainlink를 사용하여 Ethereum에서 가격 피드
첫 번째 레벨 제목
스마트 계약 생성
첫 번째 단계는 스마트 계약에 대한 가스 수수료로 테스트넷의 ETH를 얻는 것입니다. 약간의 ETH를 얻은 후 Chainlink를 사용하여 가격을 제공하는 스마트 계약을 구축하는 가장 쉬운 방법은 표준 가격 소비자 계약으로 시작하는 것입니다. 이것은 Chainlink에 대한 가격 피드 요청을 시작하는 데 사용되는 기본 계약입니다. 이 부분은 데모용으로 표준 가격 소비자 계약에 이미 정의된 ETH/USD 가격 피드를 사용하지만 작동 방식을 이해할 수 있도록 코드의 이 부분을 자세히 설명합니다.
먼저 AggregatorV3Interface 계약 인터페이스를 가져온 것을 볼 수 있습니다. 이러한 방식으로 우리의 스마트 계약은 Kovan 테스트 네트워크에 배포된 가격 피드 계약을 참조할 수 있습니다. 다음으로 계약 인스턴스를 생성하고 로컬 변수에 저장합니다.

다음으로 생성자에서 가격 피드 참조 계약이 초기화된 것을 볼 수 있습니다. Kovan 테스트넷의 ETH/USD 가격 피드 참조 계약은 주소 0x9326BFA02ADD2366b30bacB125260Af641031331에 배포됩니다.

첫 번째 레벨 제목

스마트 계약 배포 및 테스트
이제 계약을 배포하고 테스트할 준비가 되었습니다. Remix에서 컨트랙트 컴파일 후 "Deploy" 옵션에서 환경을 "Injected Web3"으로 변경하고 아래 지갑 주소가 메타마스크 지갑에서 앞서 ETH를 획득한 지갑 주소인지 확인하고 배포 버튼을 클릭하고, 그냥 작동 단계를 따릅니다. 최종 결과는 스마트 계약을 Kovan 테스트넷에 배포한 것입니다. Remix 콘솔에서 트랜잭션 출력을 통해 기록된 배포된 컨트랙트 주소를 기록해야 합니다.
이미지 설명
첫 번째 레벨 제목
Solidity에서 추가 가격 데이터 얻기
Chainlink 가격 피드는 상위 DeFi 가격 쌍에 대한 대량의 가격 데이터를 제공합니다. 특정 주식의 가격과 같이 기존 가격 피드 계약에서 다루지 않는 자산 가격 데이터가 스마트 계약에 필요한 경우 외부 API를 호출하도록 Chainlink 오라클을 사용자 정의할 수 있습니다. Chainlink 오라클을 사용하여 외부 가격 데이터를 얻는 가장 쉬운 방법은 표준 Chainlink APIConsumer 계약으로 시작하는 것입니다. 이것은 Chainlink 오라클을 통해 외부 데이터에 대한 요청을 시작하는 표준화된 계약입니다.
APIConsumer 계약을 생성한 후 가격 데이터를 가져오려는 API를 찾을 수 있습니다. 예를 들어 Alpha Vantage API를 사용하여 IBM 주식의 현재 가격을 찾을 수 있습니다.
API 엔드포인트가 있으면 계약에 올바른 매개변수를 설정하고 체인링크 오라클에 요청을 보내기만 하면 됩니다. 이에 대한 자세한 내용과 표준 APIConsumer 계약을 사용하는 방법은 Chainlink 문서에서 확인할 수 있습니다.
요약하다
요약하다
Chainlink 가격 피드는 고품질 비트코인, 이더리움 및 기타 암호화폐 가격 데이터를 Solidity 스마트 계약으로 가져오는 신뢰할 수 있는 방법을 제공합니다. 또한 Chainlink의 오라클 프레임워크는 주식, 상품 및 기타 자산과 같은 다른 가격 데이터를 빠르고 쉽게 얻을 수 있는 유연성을 제공합니다.


