시가총액: $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
비디오

토큰 투자 일정에 대한 스마트 계약을 구축하는 방법은 무엇입니까?

A token vesting contract ensures gradual token release for investors and team members, promoting long-term commitment and market stability.

2025/07/12 14:01

스마트 계약에서 토큰 투자 일정을 이해합니다

토큰 투자 일정은 블록 체인 프로젝트에 사용되는 메커니즘으로, 정해진 기간 동안 투자자, 팀원 또는 고문에게 토큰을 점차적으로 공개합니다 . 이를 통해 장기적인 약속을 보장하고 토큰 가격을 불안정하게 할 수있는 갑작스런 시장 덤프를 방지합니다. 토큰 투자 일정에 대한 스마트 계약을 구축하려면 시작 시간, 절벽 지속 시간, 투자 기간 및 릴리스 빈도 와 같은 매개 변수를 정의해야합니다.

잘 구조화 된 투자 계약에는 초기에 토큰을 잠그고 사전 정의 된 조건에 따라 점진적으로 공개하는 논리가 포함되어야합니다.


올바른 블록 체인 및 도구를 선택합니다

대부분의 토큰 투자 계약은 견고성을 사용하여 이더 리움 호환 블록 체인을 기반으로하지만 Rust (Solana의 경우) 또는 Vyper와 같은 대안이 존재합니다. 이 가이드의 경우 EVM 호환 체인을위한 견고성 기반 개발 에 중점을 둡니다.

  • Hardhat 또는 Truffle과 같은 개발 프레임 워크를 선택하여 편집, 테스트 및 배포를 간소화하십시오.
  • ERC20 및 VETTING 계약의 안전하고 감사 된 구현을 위해 OpenZeppelin 라이브러리를 사용하십시오 .
  • 테스트 목적으로 가나슈 또는 연금술과 같은 도구를 사용하여 로컬 노드 환경을 설정하십시오 .

투자 계약의 구조 설계

투자 계약의 핵심 구조는 수혜자 추적, 할당 및 토큰 릴리스 일정을 중심으로 진행됩니다.

주요 구성 요소에는 다음이 포함됩니다.

  • 수혜자 주소 - 투자 된 토큰을받는 사람.
  • 릴리스 스타트 타임 스탬프 - 투자가 시작될 때.
  • 절벽 기간 - 토큰이 풀리기 전 대기 기간.
  • 투자 기간 - 토큰이 출시되는 총 시간.
  • Revocability 플래그 - 특정 조건에서 취소 할 수있는 선택적 기능.

각 수혜자의 데이터는 명확하고 효율적인 액세스를 위해 구조물에 저장해야합니다.


견고성에서 투자 논리를 구현합니다

기본 투자 계약을 구현하려면 :

  1. 필요한 OpenZeppelin 계약 , 특히 IERC20 및 SafeERC20 수입하십시오.

  2. totalAllocation , releasedAmount , startTime , cliffDuration 및 vestingDuration 과 같은 필드로 Vestingschedule Struct를 정의하십시오 .

  3. 각 수혜자의 세부 정보를 추적하기 위해 주소에서 Vestingschedule까지의 매핑을 만듭니다 .

  4. 소유자가 여러 수혜자에 대한 투자 일정을 초기화하기 위해 함수를 추가하십시오 .

  5. 시작 이후 경과 시간에 따라 철회 할 수있는 금액을 계산하는 클레임 ​​기능을 작성하십시오 .

  6. 자체 또는 역할 기반 권한을 사용하여 적절한 액세스 제어를 보장하십시오 .

간단한 코드 스 니펫은 다음과 같습니다.

 pragma solidity ^0.8.0; '@OpenZeppelin/Contracts/Token/ERC20/utils/safeerc20.sol'; import '@OpenZeppelin/contracts/access/weelable.sol';

Contract Tokenvesting은 소유 할 수 있습니다 {

using SafeERC20 for IERC20; struct VestingSchedule { uint256 totalAllocation; uint256 releasedAmount; uint256 startTime; uint256 cliffDuration; uint256 vestingDuration; } IERC20 public token; mapping(address => VestingSchedule) public vestingSchedules; constructor(address _tokenAddress) { token = IERC20(_tokenAddress); } function addVestingSchedule( address beneficiary, uint256 totalAllocation, uint256 startTime, uint256 cliffDuration, uint256 vestingDuration ) external onlyOwner { require(vestingSchedules[beneficiary].totalAllocation == 0, 'Schedule already exists'); vestingSchedules[beneficiary] = VestingSchedule({ totalAllocation: totalAllocation, releasedAmount: 0, startTime: startTime, cliffDuration: cliffDuration, vestingDuration: vestingDuration }); } function claim() external { VestingSchedule storage schedule = vestingSchedules[msg.sender]; require(schedule.totalAllocation > 0, 'No vesting schedule found'); uint256 amount = releasableAmount(msg.sender); require(amount > 0, 'Nothing to claim'); schedule.releasedAmount += amount; token.safeTransfer(msg.sender, amount); } function releasableAmount(address beneficiary) public view returns (uint256) { VestingSchedule memory schedule = vestingSchedules[beneficiary]; if (block.timestamp < schedule.startTime + schedule.cliffDuration) { return 0; } uint256 elapsedTime = block.timestamp - schedule.startTime; if (elapsedTime >= schedule.vestingDuration) { return schedule.totalAllocation - schedule.releasedAmount; } uint256 vestedAmount = (schedule.totalAllocation * elapsedTime) / schedule.vestingDuration; return vestedAmount - schedule.releasedAmount; }

}


투자 계약 테스트 및 배포

라이브 네트워크에 배포하기 전에 철저한 테스트가 필수적입니다.

  • Cliff 이전의 주장, 완전한 투자 후, 부분적인 주장과 같은 가장자리 케이스를 덮는 단위 테스트를 작성하십시오 .
  • Hardhat 's Time Helpers를 사용하여 다른 타임 스탬프를 시뮬레이션하십시오 .
  • 승인 된 당사자 만 일정을 추가 할 수 있도록 소유권 컨트롤을 확인하십시오 .
  • 스크립트를 사용하여 계약을 배포 하고 BSCSCAN 또는 Etherscan과 같은 블록 탐색기에서 확인하십시오.
  • 일정을 초기화하기 전에 적절한 수의 토큰과 계약을 체결하십시오 .

배포되면 Metamask 또는 Remix와 같은 도구를 통해 프론트 엔드 인터페이스 또는 직접 통화를 사용하여 계약과 상호 작용하십시오.


자주 묻는 질문

Q : 투자 일정을 설정 한 후에 수정 일정을 수정할 수 있습니까? A : 일반적으로 투자 일정이 추가되면 업데이트 기능으로 명시 적으로 코딩하지 않으면 수정할 수 없습니다. 대부분의 프로젝트는 신뢰의 이유로 불변성을 선호합니다.

Q : 수혜자가 지갑에 대한 접근을 잃으면 어떻게됩니까? A : 토큰은 청구 될 때까지 계약에 상태를 유지합니다. 계약에 비상 전송 기능이 포함되어 있지 않으면 회복 메커니즘이 없습니다. 이는 보안상의 이유로 권장되지 않습니다.

Q : 투자 일정을 취소 할 수 있습니까? A : 그렇습니다. 그러나 계약이 해지 로직을 지원하는 경우에만. 취소 가능한 Vesting을 사용하면 소유자는 일반적으로 프로젝트를 떠나는 팀원에게 사용되는 향후 청구를 취소 할 수 있습니다.

Q : 단일 투자 계약에서 여러 토큰 유형을 어떻게 처리합니까? A : 토큰 당 별도의 계약을 배치하거나 추가 매핑 및 각 토큰 주소에 대한 수표로 다중 점수 계약을 설계해야합니다.

부인 성명:info@kdj.com

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

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

관련 지식

BTCUSDT 선물 포지션을 보유하는 데 드는 총 비용을 계산하는 방법

BTCUSDT 선물 포지션을 보유하는 데 드는 총 비용을 계산하는 방법

2026-10-26 04:06:35

BTCUSDT 선물 포지션의 총 비용 구성요소 1. BTCUSDT 선물 포지션을 보유하는 데 드는 총 비용에는 명시적 비용과 암묵적 비용이 모두 포함됩니다. 명시적 비용은 개설 및 마감 거래 수수료로 구성되는 반면, 암묵적 비용은 주로 시간이 지남에 따라 자금 요율 지...

XRPUSDT 펀딩 비율과 미결제약정을 함께 모니터링하는 방법

XRPUSDT 펀딩 비율과 미결제약정을 함께 모니터링하는 방법

2026-10-20 18:39:42

XRPUSDT 무기한 계약의 펀딩 요율 메커니즘 1. XRPUSDT 영구 스왑의 펀딩 요율은 XRP와 USDT 표시 대출 시장 간의 프리미엄 지수와 이자율 차이를 사용하여 8시간마다 계산됩니다. 2. Binance, Bybit 및 OKX와 같은 거래소는 파생 상품 AP...

SOLUSDT 무기한 선물에 손익분기점 손실을 설정하는 방법

SOLUSDT 무기한 선물에 손익분기점 손실을 설정하는 방법

2026-10-23 09:34:18

손익분기점 손실 메커니즘 이해 1. 손익분기점 손절매는 포지션이 수익성 있게 움직일 때 위쪽으로 조정되어 실행 시 순손실이 0으로 고정되는 동적 주문입니다. 2. 거래가 미리 정의된 수익 기준점(일반적으로 초기 위험 또는 진입 수수료의 1배~2배)에 도달한 후에만 작동...

ETHUSDT 거래에 바이낸스 선물 계산기를 사용하는 방법

ETHUSDT 거래에 바이낸스 선물 계산기를 사용하는 방법

2026-10-21 02:00:11

바이낸스 선물 계산기 인터페이스 이해 1. 계산기는 주문 입력 패널 아래 ETHUSDT 영구 계약 페이지를 통해 액세스할 수 있는 바이낸스 선물 거래 인터페이스에 직접 내장되어 있습니다. 2. 사용자가 포지션 크기, 진입 가격, 레버리지 수준, 이익실현 또는 손절매 수...

선물 청산 전 BTCUSDT 표시 가격을 확인하는 방법

선물 청산 전 BTCUSDT 표시 가격을 확인하는 방법

2026-10-26 12:20:18

BTCUSDT 선물의 시장 평균 가격 이해 1. 시장평균가는 변동성이 큰 시장 상황에서 불공정한 청산을 방지하기 위해 거래소가 계산한 가격입니다. 2. 지수 가격, 펀딩 요율 등 다양한 출처에서 도출된 공정하고 안정적인 기준 가격을 반영합니다. 3. 시장 평균가는 마지...

TRUMPUSDT 무기한 계약의 레버리지를 조정하는 방법

TRUMPUSDT 무기한 계약의 레버리지를 조정하는 방법

2026-10-30 22:19:37

TRUMPUSDT 무기한 계약 메커니즘 이해 1. TRUMPUSDT는 여러 Tier-1 파생상품 거래소에 상장된 주제별 무기한 선물 계약으로, 기본 자산 펀더멘털보다는 미국 정치적 서술에 대한 가격 심리를 추적하도록 설계되었습니다. 2. USDT를 견적 및 마진 자산으...

BTCUSDT 선물 포지션을 보유하는 데 드는 총 비용을 계산하는 방법

BTCUSDT 선물 포지션을 보유하는 데 드는 총 비용을 계산하는 방법

2026-10-26 04:06:35

BTCUSDT 선물 포지션의 총 비용 구성요소 1. BTCUSDT 선물 포지션을 보유하는 데 드는 총 비용에는 명시적 비용과 암묵적 비용이 모두 포함됩니다. 명시적 비용은 개설 및 마감 거래 수수료로 구성되는 반면, 암묵적 비용은 주로 시간이 지남에 따라 자금 요율 지...

XRPUSDT 펀딩 비율과 미결제약정을 함께 모니터링하는 방법

XRPUSDT 펀딩 비율과 미결제약정을 함께 모니터링하는 방법

2026-10-20 18:39:42

XRPUSDT 무기한 계약의 펀딩 요율 메커니즘 1. XRPUSDT 영구 스왑의 펀딩 요율은 XRP와 USDT 표시 대출 시장 간의 프리미엄 지수와 이자율 차이를 사용하여 8시간마다 계산됩니다. 2. Binance, Bybit 및 OKX와 같은 거래소는 파생 상품 AP...

SOLUSDT 무기한 선물에 손익분기점 손실을 설정하는 방법

SOLUSDT 무기한 선물에 손익분기점 손실을 설정하는 방법

2026-10-23 09:34:18

손익분기점 손실 메커니즘 이해 1. 손익분기점 손절매는 포지션이 수익성 있게 움직일 때 위쪽으로 조정되어 실행 시 순손실이 0으로 고정되는 동적 주문입니다. 2. 거래가 미리 정의된 수익 기준점(일반적으로 초기 위험 또는 진입 수수료의 1배~2배)에 도달한 후에만 작동...

ETHUSDT 거래에 바이낸스 선물 계산기를 사용하는 방법

ETHUSDT 거래에 바이낸스 선물 계산기를 사용하는 방법

2026-10-21 02:00:11

바이낸스 선물 계산기 인터페이스 이해 1. 계산기는 주문 입력 패널 아래 ETHUSDT 영구 계약 페이지를 통해 액세스할 수 있는 바이낸스 선물 거래 인터페이스에 직접 내장되어 있습니다. 2. 사용자가 포지션 크기, 진입 가격, 레버리지 수준, 이익실현 또는 손절매 수...

선물 청산 전 BTCUSDT 표시 가격을 확인하는 방법

선물 청산 전 BTCUSDT 표시 가격을 확인하는 방법

2026-10-26 12:20:18

BTCUSDT 선물의 시장 평균 가격 이해 1. 시장평균가는 변동성이 큰 시장 상황에서 불공정한 청산을 방지하기 위해 거래소가 계산한 가격입니다. 2. 지수 가격, 펀딩 요율 등 다양한 출처에서 도출된 공정하고 안정적인 기준 가격을 반영합니다. 3. 시장 평균가는 마지...

TRUMPUSDT 무기한 계약의 레버리지를 조정하는 방법

TRUMPUSDT 무기한 계약의 레버리지를 조정하는 방법

2026-10-30 22:19:37

TRUMPUSDT 무기한 계약 메커니즘 이해 1. TRUMPUSDT는 여러 Tier-1 파생상품 거래소에 상장된 주제별 무기한 선물 계약으로, 기본 자산 펀더멘털보다는 미국 정치적 서술에 대한 가격 심리를 추적하도록 설계되었습니다. 2. USDT를 견적 및 마진 자산으...

모든 기사 보기

User not found or password invalid

Your input is correct