-
bitcoin $87959.907984 USD
1.34% -
ethereum $2920.497338 USD
3.04% -
tether $0.999775 USD
0.00% -
xrp $2.237324 USD
8.12% -
bnb $860.243768 USD
0.90% -
solana $138.089498 USD
5.43% -
usd-coin $0.999807 USD
0.01% -
tron $0.272801 USD
-1.53% -
dogecoin $0.150904 USD
2.96% -
cardano $0.421635 USD
1.97% -
hyperliquid $32.152445 USD
2.23% -
bitcoin-cash $533.301069 USD
-1.94% -
chainlink $12.953417 USD
2.68% -
unus-sed-leo $9.535951 USD
0.73% -
zcash $521.483386 USD
-2.87%
OpenZeppelin 계약을 사용하는 방법은 무엇입니까?
OpenZeppelin Contracts provides secure, reusable smart contracts for Ethereum, enabling developers to build tokens and dApps efficiently with standards like ERC-20 and ERC-721.
2025/07/21 05:35
OpenZeppelin 계약 이해
OpenZeppelin Contracts는 이더 리움 및 견고성을 지원하는 기타 블록 체인 플랫폼을위한 재사용 가능하고 안전한 스마트 계약 라이브러리입니다. 이 계약은 분산 된 응용 프로그램 (DAPP) 및 토큰 시스템 개발에 널리 사용됩니다. 이 라이브러리는 ERC-20, ERC-721 및 ERC-1155 와 같은 표준 구현과 함께 소유 가능, 일시 정지 및 안전과 같은 보안 관련 유틸리티를 제공합니다. 개발자는 OpenZeppelin을 사용하여 휠을 재창조하지 않고 스마트 계약이 감사하고 광범위하게 테스트 된 기초에 구축되도록합니다.
구현하기 전에 계약을 구조화하는 방법과 프로젝트에이를 가져 오는 방법을 이해하는 것이 중요합니다. 계약은 모듈 식이므로 필요한 것만 가져올 수 있습니다. 이 모듈성은 가스 비용을 줄이고 유지 관리를 향상시키는 데 도움이됩니다.
개발 환경 설정
OpenZeppelin 계약을 사용하려면 먼저 개발 환경을 설정해야합니다. JavaScript 패키지를 관리하는 데 필수적인 Node.js 및 NPM을 설치하여 시작하십시오. 설치되면 다음을 사용하여 새 프로젝트를 초기화하십시오.
npm init -y다음으로, 인기있는 이더 리움 개발 프레임 워크 인 트러플을 설치하거나 널리 사용되는 또 다른 도구 인 Hardhat :
npm install -g truffle또는NPM 설치-사브 데브 하드 하트
프레임 워크를 설정 한 후 NPM을 통해 OpenZeppelin 계약을 설치하십시오.
npm install @openzeppelin/contracts이 명령은 OpenZeppelin 라이브러리를 프로젝트의 node_modules 디렉토리에 설치합니다. 이제 개별 계약 또는 유틸리티 기능을 Solidity 파일로 직접 가져올 수 있습니다.
OpenZeppelin 계약 수입 및 연장
설치되면 OpenZeppelin 계약을 견고성 파일로 가져 오기 시작할 수 있습니다. 예를 들어 ERC-20 토큰을 구축하는 경우 ERC20.SOL 계약을 가져올 수 있습니다.
pragma solidity ^0.8.0;import '@OpenZeppelin/contracts/token/erc20/erc20.sol';계약 mytoken은 erc20 {
constructor(uint256 initialSupply) ERC20('MyToken', 'MTK') { _mint(msg.sender, initialSupply); }}
이 코드는 ERC20 계약을 OpenZeppelin에서 연장하는 새로운 토큰을 만듭니다. 생성자는 초기 공급 장치를 사용하여 _MINT 함수를 사용하여 배치자 주소에 할당합니다. 이것은 보일러 플레이트 코드를 작성하지 않고 토큰을 만드는 안전하고 테스트 된 방법입니다.
일시 정지성 또는 소유권 관리 와 같은 추가 기능이 필요한 경우 다른 계약을 수입하고 연장 할 수 있습니다.
import '@openzeppelin/contracts/access/Ownable.sol'; import '@openzeppelin/contracts/security/Pausable.sol';Contract MyPausableToken은 ERC20, 소유 가능, 일시 정지 가능 {constructor(uint256 initialSupply) ERC20('MyToken', 'MTK') { _mint(msg.sender, initialSupply); } function pause() public onlyOwner { _pause(); } function unpause() public onlyOwner { _unpause(); }}
이 접근 방식을 사용하면 안전하고 전투 테스트 구성 요소 로 계약을 작성할 수 있습니다.
OpenZeppelin과 계약을 배치합니다
계약이 작성되면 다음 단계는 배포입니다. 트러플을 사용하는 경우 마이그레이션/ 디렉토리에서 마이그레이션 파일을 만듭니다.
const MyPausableToken = artifacts.require('MyPausableToken'); module.exports = function (deployer) { deployer.deploy (MypausableToken, 1000000); };이 스크립트는 1,000,000 토큰 의 초기 공급으로 계약을 배치합니다. 다음을 사용하여 마이그레이션을 실행하십시오.
truffle migrate --networkHardHat을 사용하는 경우 스크립트/ 폴더에서 배포 스크립트를 만듭니다.
async function main() { const MyPausableToken = await ethers.getContractFactory('MyPausableToken'); const myToken = await MyPausableToken.deploy(1000000); await myToken.deployed();Console.log ( 'MyPausableToken 배포 :', myToken.address); }main (). catch ((오류) => { Console.error (오류); process.exitcode = 1; });
그런 다음 다음을 사용하여 배포합니다.
npx hardhat run scripts/deploy.js --networkTruffle-Config.js 또는 Hardhat.config.js 파일에 자금을 조달 한 Ethereum 계정과 올바른 네트워크 구성이 있는지 확인하십시오.
배포 된 계약과 상호 작용합니다
배포 후 Remix IDE , Metamask 또는 Ethers.js 와 같은 도구를 사용하여 계약과 상호 작용할 수 있습니다. ethers.js를 사용하는 경우 다음과 같이 계약에 연결하십시오.
const { ethers } = require('ethers');const provider = new ethers.providers.jsonrpcprovider ( 'https://mainnet.infura.io/v3/your_infura_project_id'); const 서명자 = new ethers.wallet ( 'your_private_key', 제공자); const contractAddress = 'your_contract_address'; const abi = 요구 사항 ( './ mypausabletoken.json'). abi;const contract = new ethers.contract (ContractAddress, ABI, 서명자);
비동기 함수 pausecontract () { const tx = await contract.pause (); TX.WAIT ()를 기다리고 있습니다. Console.log ( '계약 일시 정지'); }
서명자에게 가스 비용을 지불하기에 충분한 자금이 있는지 확인하십시오. Web3.js 또는 Etherscan 과 같은 블록 체인 탐험가를 사용하여 계약과 상호 작용할 수도 있습니다.
자주 묻는 질문
Q : OpenZeppelin 계약을 직접 수정할 수 있습니까? A : 계약을 기술적으로 수정할 수는 있지만 권장되지 않습니다 . 대신 필요한 경우 계약을 확장 하고 기능을 재정의해야합니다. 원래 계약을 수정하면 보안 취약점을 도입하거나 향후 업데이트와의 호환성을 중단 할 수 있습니다.
Q : OpenZeppelin으로 구축 된 계약을 어떻게 업그레이드합니까? A : OpenZeppelin은 송로 버섯 및 hardHat의 업그레이드 플러그인 을 제공하여 업그레이드 가능한 계약을 배포하고 관리합니다. 이 도구를 사용하면 상태를 잃지 않고 계약을 프록시 하고 논리를 업데이트 할 수 있습니다.
Q : OpenZeppelin Contracts는 Solidity 버전과 0.8.x 이상의 호환됩니까? A : 그렇습니다. OpenZeppelin 계약은 적극적으로 유지 관리되며 Soludity 0.8.x 이상을 지원합니다. 그러나 가져 오기 전에 항상 공식 문서 또는 NPM 에서 버전 호환성을 확인하십시오.
Q : 생산에서 OpenZeppelin 계약을 사용하는 것이 안전합니까? A : 그렇습니다. OpenZeppelin 계약은 생산 환경에서 널리 사용 되며 여러 제 3자가 감사했습니다. 그러나 Mainnet에 배포하기 전에 항상 자신의 감사 및 테스트를 수행하십시오.
부인 성명:info@kdj.com
제공된 정보는 거래 조언이 아닙니다. kdj.com은 이 기사에 제공된 정보를 기반으로 이루어진 투자에 대해 어떠한 책임도 지지 않습니다. 암호화폐는 변동성이 매우 높으므로 철저한 조사 후 신중하게 투자하는 것이 좋습니다!
본 웹사이트에 사용된 내용이 귀하의 저작권을 침해한다고 판단되는 경우, 즉시 당사(info@kdj.com)로 연락주시면 즉시 삭제하도록 하겠습니다.
- Bitcoin, eCash Fork 및 Airdrop Dynamics: 암호화폐의 최신 논란에 대한 심층 분석
- 2026-05-03 12:55:01
- 2026년 마이애미 컨센서스: Web3, 블록체인, 암호화폐, NFT, 메타버스, 컨퍼런스, 5월 5일 — 월스트리트가 디지털 프론티어를 만나는 곳
- 2026-05-02 12:45:01
- 연준은 금리를 안정적으로 유지하여 지정학적 긴장 속에서 비트코인 가격 하락을 촉발했습니다
- 2026-05-01 06:45:01
- 비트코인 채굴자들이 전력망을 전기화하다: 오하이오 가스 공장 인수로 디지털 금의 새로운 시대가 열리다
- 2026-05-01 00:45:01
- MegaETH의 MEGA 토큰이 빅 애플을 강타했습니다: 실시간 블록체인을 위한 새로운 성능 벤치마크 설정
- 2026-05-01 00:55:01
- 솔라나의 미끄러운 경사: 가격 예측은 저항 손실 및 추가 하락 가능성을 지적합니다.
- 2026-05-01 06:45:01
관련 지식
펀딩 비율 플립이란 무엇입니까? 시장 심리 변화를 나타내는 경우가 많은 이유
2026-06-14 03:57:05
시장 변동성 패턴 1. Bitcoin 가격 변동은 주요 거시 경제 발표가 진행되는 동안 24시간 이내에 10%를 초과하는 경우가 많습니다. 2. 이더리움의 변동성 지수는 Merge 이벤트 동안 95 이상으로 급등했는데, 이는 레이어 1 및 레이어 2 생태계 전반에 걸친...
암호화폐 선물 시장에서 시장 조작 신호를 식별하는 방법
2026-06-12 17:26:02
Bitcoin 반감기 메커니즘 1. Bitcoin의 프로토콜은 약 210,000블록마다 블록 보상이 절반으로 줄어드는 고정된 발행 일정을 시행합니다. 2. 이 이벤트는 대략 4년마다 발생하며 블록당 유통되는 새로운 BTC의 수를 직접적으로 줄입니다. 3. 채굴자는 20...
레버리지 트래핑이란 무엇입니까? 소매업자가 종종 적발되는 이유
2026-06-12 23:53:36
시장 변동성 패턴 1. Bitcoin 가격 변동은 ETF 승인 발표 또는 주요 거래소 중단과 같은 유동성이 높은 이벤트 중에 24시간 이내에 5%를 초과하는 경우가 많습니다. 2. 이더리움의 변동성 급증은 특히 새로운 롤업이 메인넷에 출시되고 급속한 사용자 증가를 경험...
브레이크아웃 거래란 무엇입니까? 선물 거래자가 큰 가격 변동을 포착하는 방법
2026-06-13 05:19:40
암호화폐 선물의 돌파 메커니즘 이해 1. Bitcoin 또는 알트코인 가격이 지속적인 거래량 급증으로 확고한 저항 수준을 결정적으로 위반할 때 브레이크아웃이 발생하며, 종종 레버리지 매수 포지션에 걸쳐 계단식 청산이 촉발됩니다. 2. 무기한 선물 시장에서 돌파는 자금 ...
레버리지가 높은 선물 포지션을 위한 최고의 손절매 전략은 무엇입니까?
2026-06-14 14:19:32
고레버리지 선물 거래의 손절매 메커니즘 1. 손절매 배치는 임의의 백분율 임계값이 아닌 가격 확산의 통계적 특성에 맞춰 조정되어야 합니다. 에너지 선물 스프레드와 같은 평균 회귀 시장에서 최적의 손절매 수준은 Ornstein-Uhlenbeck 역학에 따른 최초 종료 시...
주요 경제 발표 중 암호화폐 선물을 거래하는 방법
2026-06-12 22:50:44
시장 변동성 패턴 1. Bitcoin 가격 변동은 반감기 발표 또는 주요 거래소 상장과 같은 유동성이 높은 이벤트 중에 단일 24시간 창 내에 5%를 초과하는 경우가 많습니다. 2. BTC와의 알트코인 상관관계는 지난 36개월 동안 평균 0.78 이상으로, Bitcoi...
펀딩 비율 플립이란 무엇입니까? 시장 심리 변화를 나타내는 경우가 많은 이유
2026-06-14 03:57:05
시장 변동성 패턴 1. Bitcoin 가격 변동은 주요 거시 경제 발표가 진행되는 동안 24시간 이내에 10%를 초과하는 경우가 많습니다. 2. 이더리움의 변동성 지수는 Merge 이벤트 동안 95 이상으로 급등했는데, 이는 레이어 1 및 레이어 2 생태계 전반에 걸친...
암호화폐 선물 시장에서 시장 조작 신호를 식별하는 방법
2026-06-12 17:26:02
Bitcoin 반감기 메커니즘 1. Bitcoin의 프로토콜은 약 210,000블록마다 블록 보상이 절반으로 줄어드는 고정된 발행 일정을 시행합니다. 2. 이 이벤트는 대략 4년마다 발생하며 블록당 유통되는 새로운 BTC의 수를 직접적으로 줄입니다. 3. 채굴자는 20...
레버리지 트래핑이란 무엇입니까? 소매업자가 종종 적발되는 이유
2026-06-12 23:53:36
시장 변동성 패턴 1. Bitcoin 가격 변동은 ETF 승인 발표 또는 주요 거래소 중단과 같은 유동성이 높은 이벤트 중에 24시간 이내에 5%를 초과하는 경우가 많습니다. 2. 이더리움의 변동성 급증은 특히 새로운 롤업이 메인넷에 출시되고 급속한 사용자 증가를 경험...
브레이크아웃 거래란 무엇입니까? 선물 거래자가 큰 가격 변동을 포착하는 방법
2026-06-13 05:19:40
암호화폐 선물의 돌파 메커니즘 이해 1. Bitcoin 또는 알트코인 가격이 지속적인 거래량 급증으로 확고한 저항 수준을 결정적으로 위반할 때 브레이크아웃이 발생하며, 종종 레버리지 매수 포지션에 걸쳐 계단식 청산이 촉발됩니다. 2. 무기한 선물 시장에서 돌파는 자금 ...
레버리지가 높은 선물 포지션을 위한 최고의 손절매 전략은 무엇입니까?
2026-06-14 14:19:32
고레버리지 선물 거래의 손절매 메커니즘 1. 손절매 배치는 임의의 백분율 임계값이 아닌 가격 확산의 통계적 특성에 맞춰 조정되어야 합니다. 에너지 선물 스프레드와 같은 평균 회귀 시장에서 최적의 손절매 수준은 Ornstein-Uhlenbeck 역학에 따른 최초 종료 시...
주요 경제 발표 중 암호화폐 선물을 거래하는 방법
2026-06-12 22:50:44
시장 변동성 패턴 1. Bitcoin 가격 변동은 반감기 발표 또는 주요 거래소 상장과 같은 유동성이 높은 이벤트 중에 단일 24시간 창 내에 5%를 초과하는 경우가 많습니다. 2. BTC와의 알트코인 상관관계는 지난 36개월 동안 평균 0.78 이상으로, Bitcoi...
모든 기사 보기














