시가총액: $2.6065T 1.56%
거래량(24시간): $68.1613B 6.30%
공포와 탐욕 지수:

35 - 두려움

  • 시가총액: $2.6065T 1.56%
  • 거래량(24시간): $68.1613B 6.30%
  • 공포와 탐욕 지수:
  • 시가총액: $2.6065T 1.56%
암호화
주제
암호화
소식
cryptostopics
비디오
최고 암호화

언어 선택

언어 선택

통화 선택

암호화
주제
암호화
소식
cryptostopics
비디오

NFT에 대한 스마트 계약을 작성하는 방법은 무엇입니까? (솔리디티 기본)

ERC-721 is Ethereum’s NFT standard, ensuring uniqueness via `tokenId`, enforcing ownership with `ownerOf`/`transferFrom`, and supporting metadata through `tokenURI`.

2026/02/27 05:40

ERC-721 표준 이해

1. ERC-721은 대체 불가능한 토큰을 위해 특별히 설계된 널리 채택된 이더리움 토큰 표준입니다.

2. 고유한 자산 소유권을 관리하기 위해 ownerOf , transferFrom , Approve 등의 핵심 기능을 정의합니다.

3. 모든 ERC-721 계약은 IERC721 인터페이스를 구현하고 전송 및 승인 과 같은 표준화된 이벤트를 내보내야 합니다.

4. tokenURI 기능을 통한 메타데이터 지원을 통해 각 NFT를 이름, 설명 및 이미지 URL이 포함된 JSON 파일에 연결할 수 있습니다.

5. 표준은 동일한 계약 내의 모든 토큰에 고유한 uint256 tokenId를 할당하여 고유성을 강화합니다.

개발 환경 설정

1. Node.js 및 npm을 설치하여 종속성을 관리하고 Hardhat 또는 Truffle과 같은 로컬 도구를 실행합니다.

2. npm init를 사용하여 새 프로젝트를 초기화하고 npm install @openzeppelin/contracts를 사용하여 OpenZeppelin Contracts를 설치합니다.

3. npx hardhat 로 Hardhat 프로젝트를 구성하고 상용구 파일을 생성하는 샘플 프로젝트 옵션을 선택합니다.

4. contract/ 아래에 Solidity 파일을 생성하고 이름을 MyNFT.sol 로 지정한 다음 OpenZeppelin의 ERC721 구현을 가져옵니다.

5. Hardhat Network를 사용하여 로컬 테스트 네트워크를 설정하거나 Alchemy 또는 Infura API 키를 통해 Sepolia와 같은 공개 테스트넷에 연결합니다.

핵심 계약 논리 작성

1. 필수 기능과 메타데이터 저장을 상속받기 위해 MyNFT가 ERC721, ERC721URIStorage 라는 계약을 체결했다고 선언합니다.

2. 이름 및 기호 인수를 상위 ERC721 생성자에 전달하고 소유자 주소를 설정하는 생성자를 정의합니다.

3. _safeMint를 사용하여 지정된 주소에 새 tokenId를 할당하고 _setTokenURI를 통해 해당 URI를 저장하는 mint 함수를 구현합니다.

4. OpenZeppelin의 Ownable 수정자를 사용하여 계약 소유자만 mint 를 호출할 수 있도록 액세스 제어를 추가합니다.

5. 개인 uint256 변수로 총 공급량을 추적하고 한도가 초과되면 되돌려 발행 한도를 적용합니다.

테스트 및 배포 고려 사항

1. Hardhat의 내장 에테르 라이브러리를 사용하여 JavaScript 또는 TypeScript로 테스트 스크립트를 작성하여 토큰 생성, 전송 및 쿼리를 시뮬레이션합니다.

2. ownerOf가 올바른 주소를 반환하고 tokenURI가 예상 메타데이터 경로와 일치하는지 확인하는 어설션으로 동작을 확인합니다.

3. 네트워크 자격 증명을 구성한 후 Hardhat의 npx hardhat run scripts/deploy.js --network sepalia 명령을 사용하여 계약을 배포합니다.

4. 공개 투명성을 위해 Etherscan의 검증 도구를 사용하여 소스 코드, 컴파일러 버전 및 생성자 인수를 제출합니다.

5. 모든 토큰 URI를 IPFS 또는 Arweave와 같은 분산형 인프라에 저장하여 영구적이고 변조 방지된 메타데이터 가용성을 보장합니다.

자주 묻는 질문

Q: 발행 후 tokenURI를 변경할 수 있나요? A: 예, 계약이 ERC721URIStorage를 상속하고 _setTokenURI를 호출하기 위한 적절한 액세스 제어 기능을 구현하는 경우입니다.

Q: 두 토큰이 동일한 계약에서 동일한 tokenId를 갖는 경우 어떻게 됩니까? A: 불가능합니다. ERC-721에서는 각 tokenId가 ​​계약 내에서 전역적으로 고유해야 한다고 요구합니다. 중복 할당은 되돌려집니다.

Q: 자체 supportInterface 함수를 작성해야 합니까? A: 아니요 - OpenZeppelin의 ERC721 구현에는 0x80ac58cd(ERC-721) 및 0x5b5e139f(ERC-721Metadata)에 대해 true를 반환하는 호환 supportInterface가 포함되어 있습니다.

Q: 승인 상태를 확인하지 않고 transferFrom을 사용해도 안전한가요? A: OpenZeppelin ERC721 구현은 모든 승인 검증을 내부적으로 처리합니다. transferFrom을 직접 호출하는 것은 올바르게 사용될 경우 안전합니다.

부인 성명:info@kdj.com

제공된 정보는 거래 조언이 아닙니다. kdj.com은 이 기사에 제공된 정보를 기반으로 이루어진 투자에 대해 어떠한 책임도 지지 않습니다. 암호화폐는 변동성이 매우 높으므로 철저한 조사 후 신중하게 투자하는 것이 좋습니다!

본 웹사이트에 사용된 내용이 귀하의 저작권을 침해한다고 판단되는 경우, 즉시 당사(info@kdj.com)로 연락주시면 즉시 삭제하도록 하겠습니다.

관련 지식

공개 발행 전에 NFT 프로젝트를 평가하는 방법은 무엇입니까?

공개 발행 전에 NFT 프로젝트를 평가하는 방법은 무엇입니까?

2026-10-16 23:19:39

Bitcoin 반감기 메커니즘 1. Bitcoin의 프로토콜은 블록 보상을 통해 새로운 단위가 도입되는 2,100만 코인의 고정 공급 한도를 시행합니다. 2. 210,000블록마다(대략 4년마다) 블록 보상이 절반으로 줄어듭니다. 이 프로세스를 절반으로 줄입니다. 3....

가장 활동적인 구매자가 있는 NFT 마켓플레이스를 추적하는 방법은 무엇입니까?

가장 활동적인 구매자가 있는 NFT 마켓플레이스를 추적하는 방법은 무엇입니까?

2026-10-17 13:39:44

Bitcoin 반감기 메커니즘 1. 210,000블록마다 Bitcoin 채굴자에 대한 블록 보상이 절반으로 삭감됩니다. 2. 이 이벤트는 대략 4년마다 발생하며 Bitcoin 프로토콜에 하드코딩되어 있습니다. 3. 가장 최근의 반감기에서는 블록당 보상이 6.25 BTC...

NFT 에어드랍을 찾고 적격성을 확인하는 방법은 무엇입니까?

NFT 에어드랍을 찾고 적격성을 확인하는 방법은 무엇입니까?

2026-10-17 01:20:28

시장 변동성 패턴 1. 24시간 이내에 15%를 초과하는 가격 변동은 2021년 이후 Bitcoin 거래일의 68% 이상에서 발생했습니다. 2. 이더리움은 유동성이 낮은 기간, 특히 UTC 02:00~06:00 사이에 Bitcoin보다 더 높은 일중 변동성을 보여주었습...

NFT 경품이 진짜인지 사기인지 확인하는 방법은 무엇입니까?

NFT 경품이 진짜인지 사기인지 확인하는 방법은 무엇입니까?

2026-10-30 01:00:04

시장 변동성 패턴 1. 24시간 이내에 15%를 초과하는 가격 변동은 2021년 이후 Bitcoin 거래일의 68% 이상에서 발생했습니다. 2. 이더리움은 유동성이 낮은 기간, 특히 UTC 02:00~06:00 사이에 Bitcoin보다 더 높은 일중 변동성을 보여주었습...

무료 NFT 민트를 찾고 숨겨진 수수료를 피하는 방법은 무엇입니까?

무료 NFT 민트를 찾고 숨겨진 수수료를 피하는 방법은 무엇입니까?

2026-10-17 14:19:42

무료 NFT 민트 이해 1. 프리 민트는 사용자가 마켓플레이스에서 직접 구매 대금을 지불하지 않고 NFT를 청구할 수 있는 프로세스를 의미합니다. 2. 이러한 민트는 Ethereum, Base, Arbitrum, Optimism 또는 Polygon 네트워크에 배포된 스...

Ethereum과 Polygon 간에 NFT를 전송하는 방법은 무엇입니까?

Ethereum과 Polygon 간에 NFT를 전송하는 방법은 무엇입니까?

2026-10-29 03:00:13

크로스체인 NFT 전송 메커니즘 이해 1. NFT는 특정 블록체인에 존재하며 중개 프로토콜 없이는 기본적으로 체인 간에 이동할 수 없는 대체 불가능한 토큰입니다. 2. Ethereum과 Polygon은 서로 다른 상태 루트, 합의 메커니즘 및 가스 가격 책정 모델을 갖...

공개 발행 전에 NFT 프로젝트를 평가하는 방법은 무엇입니까?

공개 발행 전에 NFT 프로젝트를 평가하는 방법은 무엇입니까?

2026-10-16 23:19:39

Bitcoin 반감기 메커니즘 1. Bitcoin의 프로토콜은 블록 보상을 통해 새로운 단위가 도입되는 2,100만 코인의 고정 공급 한도를 시행합니다. 2. 210,000블록마다(대략 4년마다) 블록 보상이 절반으로 줄어듭니다. 이 프로세스를 절반으로 줄입니다. 3....

가장 활동적인 구매자가 있는 NFT 마켓플레이스를 추적하는 방법은 무엇입니까?

가장 활동적인 구매자가 있는 NFT 마켓플레이스를 추적하는 방법은 무엇입니까?

2026-10-17 13:39:44

Bitcoin 반감기 메커니즘 1. 210,000블록마다 Bitcoin 채굴자에 대한 블록 보상이 절반으로 삭감됩니다. 2. 이 이벤트는 대략 4년마다 발생하며 Bitcoin 프로토콜에 하드코딩되어 있습니다. 3. 가장 최근의 반감기에서는 블록당 보상이 6.25 BTC...

NFT 에어드랍을 찾고 적격성을 확인하는 방법은 무엇입니까?

NFT 에어드랍을 찾고 적격성을 확인하는 방법은 무엇입니까?

2026-10-17 01:20:28

시장 변동성 패턴 1. 24시간 이내에 15%를 초과하는 가격 변동은 2021년 이후 Bitcoin 거래일의 68% 이상에서 발생했습니다. 2. 이더리움은 유동성이 낮은 기간, 특히 UTC 02:00~06:00 사이에 Bitcoin보다 더 높은 일중 변동성을 보여주었습...

NFT 경품이 진짜인지 사기인지 확인하는 방법은 무엇입니까?

NFT 경품이 진짜인지 사기인지 확인하는 방법은 무엇입니까?

2026-10-30 01:00:04

시장 변동성 패턴 1. 24시간 이내에 15%를 초과하는 가격 변동은 2021년 이후 Bitcoin 거래일의 68% 이상에서 발생했습니다. 2. 이더리움은 유동성이 낮은 기간, 특히 UTC 02:00~06:00 사이에 Bitcoin보다 더 높은 일중 변동성을 보여주었습...

무료 NFT 민트를 찾고 숨겨진 수수료를 피하는 방법은 무엇입니까?

무료 NFT 민트를 찾고 숨겨진 수수료를 피하는 방법은 무엇입니까?

2026-10-17 14:19:42

무료 NFT 민트 이해 1. 프리 민트는 사용자가 마켓플레이스에서 직접 구매 대금을 지불하지 않고 NFT를 청구할 수 있는 프로세스를 의미합니다. 2. 이러한 민트는 Ethereum, Base, Arbitrum, Optimism 또는 Polygon 네트워크에 배포된 스...

Ethereum과 Polygon 간에 NFT를 전송하는 방법은 무엇입니까?

Ethereum과 Polygon 간에 NFT를 전송하는 방법은 무엇입니까?

2026-10-29 03:00:13

크로스체인 NFT 전송 메커니즘 이해 1. NFT는 특정 블록체인에 존재하며 중개 프로토콜 없이는 기본적으로 체인 간에 이동할 수 없는 대체 불가능한 토큰입니다. 2. Ethereum과 Polygon은 서로 다른 상태 루트, 합의 메커니즘 및 가스 가격 책정 모델을 갖...

모든 기사 보기

User not found or password invalid

Your input is correct