BTC
ETH
HTX
SOL
BNB
시장 동향 보기
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt

Binance Smart Chain에서 안전한 데이터 입력으로 dApp 구축

Chainlink
特邀专栏作者
이 기사는 약 2919자로, 전체를 읽는 데 약 5분이 소요됩니다
이 기술 튜토리얼에서는 Binance Smart Chain, BNB 토큰 및 Chainlink 오라클을 사용하는 방법을 설명합니다. Ethereum 개발 경험이 없더라도 BSC(Binance Smart Chain) 스마트 계약에서 외부 연결 구축을 빠르게
AI 요약
펼치기
이 기술 튜토리얼에서는 Binance Smart Chain, BNB 토큰 및 Chainlink 오라클을 사용하는 방법을 설명합니다. Ethereum 개발 경험이 없더라도 BSC(Binance Smart Chain) 스마트 계약에서 외부 연결 구축을 빠르게

2019년 4월 유명한 암호화폐 거래소 바이낸스(Binance)가 출범했습니다.바이낸스 체인), 자산의 빠른 교환을 위해 구축되고 최적화된 네트워크이며 BNB 토큰이 탄생한 곳입니다. 바이낸스 체인에서 할 수 있는 일

  • BNB 토큰 보내기 및 받기

  • 새 토큰 발행

  • 토큰 보내기, 받기, 굽기/민트 및 동결/고정 해제

  • 두 개의 서로 다른 토큰 사이에 거래 쌍 생성 제안

  • 온체인에서 생성된 거래 쌍을 통해 자산 구매 및 판매 주문 보내기

바이낸스 체인은 더 ​​빠른 거래를 원하는 사용자에게 적합합니다. 그러나 설계상 EVM과 호환되지 않으며 스마트 계약을 지원하지 않습니다. 스마트 계약을 생성할 수 있도록 Binance 팀은 또한 생성했습니다.바이낸스 스마트체인(BSC)는 PoSA(Proof of Stake Authorization) 합의 알고리즘을 사용하고 EVM과 호환되는 네트워크로, 스마트 계약 개발자가 기본적으로 Binance Chain과 통합되는 프로그래밍 가능한 dApp을 구축할 수 있도록 합니다.

한편으로 이 이중 체인 아키텍처는 자산 교환 측면에서 빠른 거래를 가능하게 하고 다른 한편으로는 스마트 계약도 지원합니다. 바이낸스 팀은 실제로 "CeDeFi"라는 용어를 만들었거나 이 하이브리드 접근 방식을 설명하기 위해 "중앙화 분산 금융"이라고 부릅니다. 이 하이브리드 접근 방식은 덜 분산된 아키텍처를 사용하는 것과 절충하여 더 큰 거래 처리량을 달성하는 동시에 개발자가 무허가 환경에서 애플리케이션을 배포할 수 있도록 합니다. 솔리디티(Solidity) 및체인링크 가격 피드。

바이낸스 스마트 체인 체인링크 가격 피드첫 번째 레벨 제목

보조 제목

우리가 사용할 도구

BSC는 EVM과 호환되므로 다음과 같이 Solidity 개발 환경에서 사용하는 것과 동일한 도구 세트를 사용할 수 있습니다.Truffle,Hardhat,MetaMask기다리다. 이 튜토리얼에서는 Python 스마트 계약 개발 프레임워크를 사용합니다.Brownie바이낸스 테스트넷은 현재 체인링크 가격 피드를 지원하지 않고 브라우니 프레임워크에는 로컬에서 사용할 수 있는 강력한 포크 체인 기능이 있기 때문에 BSC에서 개발되었습니다.

브라우니 대신 바이낸스 스마트 체인에서 트러플 및 안전모 개발을 사용하는 데 관심이 있는 경우 다음을 확인할 수 있습니다.ganache-cli의 포크 체인 기능보조 제목

필요하다

  • python3

  • nodejs

  • ganache-cli

  • brownie

시작 가이드

이제 모든 설정이 완료되었으므로 언박싱으로 이동합니다.브라우니의 체인링크 믹스. 이것은 Chainlink 스마트 계약을 사용하기 위한 상용구 템플릿입니다. 더 알고 싶다면 다음에서 읽을 수 있습니다.블로그 게시물에서 Python을 사용하여 모든 블록체인에 스마트 계약을 배포하는 방법。

바이낸스 스마트 체인의 메인넷이나 테스트넷을 사용하려면 일반적으로 BNB 토큰이 필요하며 이는 이더리움 블록체인에서 ETH를 사용하는 것과 유사합니다. 스마트 계약을 배포할 때 BNB 토큰이 필요합니다.

우리는 모든 것을 100% 로컬에서 수행할 것이므로 시작하는 데 ETH, LINK 또는 BNB와 같은 테스트넷 토큰이 필요하지 않습니다.

먼저 브라우니 믹스 프로젝트를 만들어야 합니다.

brownie bake chainlink-mixcd

chainlink

이제 프로젝트에 들어갑니다. ls 명령을 실행하면 디렉토리의 내용을 볼 수 있습니다.

  • 빌드: 배포된 스마트 계약 및 컴파일된 계약을 추적하기 위해 프로젝트에서 사용하는 폴더입니다.

  • 계약: 일반적으로 Solidity 또는 Vyper 언어로 작성된 계약의 소스 코드

  • 인터페이스: 배포된 계약과 상호 작용하는 데 필요한 인터페이스 폴더입니다. 계약과의 모든 상호 작용에는 ABI와 계약 주소가 필요합니다. 인터페이스는 계약의 ABI를 얻는 좋은 방법입니다.

  • 스크립트: 계약 프로세스를 자동화하기 위해 만든 스크립트

  • 테스트: 테스트

  • brownie-config.yaml: 이 파일은 브라우니에게 스마트 계약 처리 방법을 이해하는 데 필요한 모든 정보를 제공합니다. 어떤 블록체인 네트워크에 배포하고 싶습니까? 특별한 매개변수를 설정해야 합니까? 이 모든 것은 이 구성 파일에 설정됩니다.

requirements.txt , README.md , LICENSE ,.gitignore와 같은 파일은 이제 무시할 수 있습니다. 연습 중에 그것들이 무엇을 위해 사용되는지 배우게 될 것입니다.

보조 제목

분기된 네트워크 추가

Binance Chain을 사용하려면RPC(원격 프로시저 호출) 링크또는 호스트 필드. 바이낸스 스마트체인에 연결하기 위해 API 호출을 하는 연결입니다. 관심이 있다면 자신의 코인을 실행할 수도 있습니다.스마트 체인 노드그리고 해당 노드에 연결합니다.

우리는 할 수 있습니다Binance Chain 문서에서 찾을 수 있습니다.RPC 링크입니다. ChainID도 필요합니다. 이제 다음을 사용합니다.

host=https://bsc-dataseed.binance.org/ chainid=56

마지막으로 Chainlink 가격 피드를 사용하려면 특정 계약 주소가 필요합니다. Brownie의 chainlink-mix 프로젝트는 Binance ETH/USD 가격 피드와 함께 사전 설치되어 제공되지만 Binance의 모든 Chainlink 가격 피드 목록을 원하는 경우 Binance 또는 Chainlink 문서에서 자세한 내용을 확인할 수 있습니다. brownie-config.yaml 파일을 보면 네트워크 필드에 binance-fork라는 섹션이 있습니다. 다음은 바이낸스 포크 체인을 사용하는 데 필요한 모든 변수입니다.

이제 브라우니에게 바이낸스 체인에 연결하라고 말하지만 체인을 분기할 것입니다. 체인을 분기한다는 것은 체인을 복사하고 로컬에서 실행하는 것을 의미하므로 가스 비용을 지불하지 않고 테스트에서 빠르게 반복할 수 있습니다. 그러나 이는 포크된 체인이 오프라인 상태가 되면 모든 데이터가 삭제된다는 의미이기도 합니다! 다음 명령을 사용하여 Binance Chain의 포크를 Brownie 네트워크에 추가할 수 있습니다.

그러면 localhost의 포트 8545에서 로컬 ganache-cli 체인이 실행됩니다. 배포할 때 사용됩니다.https://bsc-dataseed1.binance.org포크 소스로. 올바르게 완료되면 다음과 같이 표시됩니다.

보조 제목

계약 전개

이제 모든 것이 설정되었으므로 로컬 ganache 포크에서 계약을 배포하고 읽을 수 있습니다. 존재하다 scripts폴더가 있습니다.deploy_price_consumer_v3.py스크립트. 다음 명령으로 실행할 수 있습니다.



다음과 유사한 출력이 표시되어야 합니다.

그래서 우리는 방금 했습니다:

  1. 바이낸스 체인을 포크하고 로컬에서 실행

  2. 스마트 계약을 배포하십시오.

  3. 그리고 그것에서 ETH의 가격을 읽으십시오

The current price of ETH is 135462000000

보조 제목

더 나아가

이제 바이낸스 스마트 체인을 사용하여 스마트 계약을 배포하는 방법을 알았으므로 BSC를 더 깊이 파고들거나 Matic, xDai 및 기타 레이어 2 네트워크와 같은 다른 사이드 체인을 사용할 수도 있습니다. Hardhat 및 Truffle 프레임워크를 선호하는 경우 해당 프레임워크에서 ganache-cli 명령을 실행하고 일부 로컬 테스트를 실행할 수 있는지 확인하십시오. 많은 해커톤이 예정되어 있으므로 해당 분야의 다른 인재와 협업하고 상을 받고 실제 계약 개발자로 자신을 개발할 수 있는 기회에 참여하십시오.

스마트 계약의 기능을 계속 확장하려면 다음을 방문하십시오.체인링크 개발자 문서가입Discord에서 기술 토론. Binance Smart Chain, Brownie, Truffle, Hardhat 또는 기타 Chainlink 통합을 사용하여 멋진 프로젝트를 구축하는 경우 @chainlink 태그를 지정하여 여러분이 수행한 멋진 작업을 볼 수 있도록 하십시오!

안전
바이낸스
Odaily 공식 커뮤니티에 가입하세요