시가총액: $2.6564T -6.26%
거래량(24시간): $190.3211B 38.98%
공포와 탐욕 지수:

26 - 두려움

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

언어 선택

언어 선택

통화 선택

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

이중 통화 광업 계약을 작성하는 방법은 무엇입니까? 스마트 감사 ​​포인트

A dual currency mining contract lets users deposit stablecoins like USDT and earn rewards in another token, such as XYZToken, using Solidity-based smart contracts.

2025/06/21 22:21

이중 통화 광업 계약 이해

이중 통화 광업 계약은 암호 화폐 공간 에서, 특히 분산 된 금융 (DEFI) 및 수확 농업 프로토콜 내에서 비교적 새로운 개념입니다. 이 계약을 통해 사용자는 하나의 자산을 입금하면서 보상이나 유동성을 다른 자산으로, 종종 더 변동성있는 토큰으로받을 수 있습니다. 이 메커니즘은 많은 Defi 플랫폼에서 유동성 제공 또는 스테이 킹 활동을 장려하는 데 사용됩니다.

이중 통화 계약 에는 일반적으로 2 개의 토큰이 포함됩니다 : 예금 자산으로서 USDT 또는 USDC와 같은 안정된 스타일은 기본 거버넌스 또는 Xyztoken과 같은 보상 토큰이 출력으로 포함됩니다. 이러한 계약을 작성하려면 견고성 , 이더 리움 기반 스마트 계약을위한 프로그래밍 언어 및 보안 모범 사례에 대한 확실한 이해가 필요합니다.

스마트 감사 ​​포인트는 재창조 공격, 잘못된 산술 작업 또는 결함이있는 액세스 제어와 같은 취약점을 피하기 위해 감사 프로세스 중에 특별한주의가 필요한 코드의 중요한 영역을 나타냅니다.


개발 환경 설정

실제 계약서를 작성하기 전에 올바른 도구가 있는지 확인하십시오.

  • 리믹스 IDE- 견고 계약 작성 및 배포를위한 브라우저 기반 IDE
  • 트러플 스위트 - 고급 테스트 및 배포 워크 플로우 용
  • HardHat- 내장 작업 자동화를 갖춘 또 다른 인기있는 개발 환경
  • OpenZeppelin Contracts - 재사용 가능하고 감사 된 스마트 계약 구성 요소

이 도구를 로컬로 설치하거나 온라인 버전을 사용하십시오. 자동 오버플로 점검이 포함 된 최신 안정 버전의 견고성 (0.8.x 이상)을 사용해야합니다.


이중 통화 광업 계약의 핵심 구조

이중 통화 광업 계약의 기본 구조에는 몇 가지 주요 구성 요소가 포함됩니다.

  • 사용자 입금 : 사용자는 특정 토큰 (예 : USDT)을 입금합니다.
  • 보상 계산 : 계약은 2 차 토큰 (예 : XYZ)의 배포량을 계산합니다.
  • 보상 청구 : 사용자는 언제든지 얻은 토큰을 청구 할 수 있습니다.
  • 비상 철수 : 보상을 청구하지 않고 자금을 인출하는 안전 기능.

다음은 이것이 견고성에서 어떻게 보일 수 있는지에 대한 단순화 된 예입니다.

 pragma solidity ^0.8.0; import '@OpenZeppelin/contracts/token/erc20/ierc20.sol'; import '@OpenZeppelin/contracts/access/weelable.sol';

계약 듀얼 커런 러닝 미너는 소유 가능 {

IERC20 public depositToken; IERC20 public rewardToken; uint256 public rewardPerBlock; uint256 public lastRewardBlock; uint256 public accRewardPerShare; struct UserInfo { uint256 amount; uint256 rewardDebt; } mapping(address => UserInfo) public userInfo; constructor( address _depositToken, address _rewardToken, uint256 _rewardPerBlock ) { depositToken = IERC20(_depositToken); rewardToken = IERC20(_rewardToken); rewardPerBlock = _rewardPerBlock; lastRewardBlock = block.number; } function deposit(uint256 _amount) external { UserInfo storage user = userInfo[msg.sender]; updatePool(); if (user.amount > 0) { uint256 pending = user.amount * accRewardPerShare / 1e12 - user.rewardDebt; if (pending > 0) safeTransfer(msg.sender, pending); } if (_amount > 0) { depositToken.transferFrom(msg.sender, address(this), _amount); user.amount += _amount; } user.rewardDebt = user.amount * accRewardPerShare / 1e12; } function updatePool() public { if (block.number <= lastRewardBlock) return; uint256 blockReward = (block.number - lastRewardBlock) * rewardPerBlock; accRewardPerShare += blockReward * 1e12 / totalSupply; lastRewardBlock = block.number; } function safeTransfer(address _to, uint256 _amount) internal { uint256 balance = rewardToken.balanceOf(address(this)); if (_amount > balance) _amount = balance; rewardToken.transfer(_to, _amount); }

}

이것은 기본 골격 이며 추가 개선 및 감사없이 생산에 사용해서는 안됩니다.


보안 고려 사항 및 감사 지점

이중 통화 광업 계약서를 작성할 때는 악용을 방지하기 위해 특정 감사 지점을 엄격하게 점검해야합니다.

  • Reentrancy Protection : OpenZeppelin의 Reentrancy Guard Modifier를 사용하여 재귀 통화가 자금을 배수하는 것을 방지합니다.
  • 안전한 수학 사용 : Soludity 0.8+는 내장 오버플로 체크가 있지만 산술을 수행하기 전에 항상 입력 값을 검증합니다.
  • 액세스 제어 : 소유자 만 보상 요금 설정 또는 계약 일시 중지와 같은 민감한 기능을 호출 할 수 있는지 확인합니다.
  • 토큰 승인 : 사용자에게 전화하기 전에 계약을 승인해야합니다 ()
  • 보상 분포 로직 : 보상이 공정하게 계산되고 얼리 어답터를 불균형 적으로 선호하지 않는 이중 확인
  • 긴급 기능 : 예상치 못한 행동 또는 계약 동결의 경우 사용자가 자금을 검색 할 수있는 방법을 포함시킵니다.

감사하는 동안 토큰의 흐름과 많은 수와 관련된 계산 정확도에주의를 기울여 정수 오버플로 또는 언더 플로를 쉽게 이끌어 낼 수 있습니다.


이중 통화 광업 계약 테스트

다양한 조건에서 계약이 예상되는대로 행동하는 데 철저한 테스트가 필수적입니다.

  • 단위 테스트 : 예금, 인출 및 보상 청구를 시뮬레이션하기 위해 Hardhat 또는 Truffle을 사용하여 각 기능에 대한 테스트 작성
  • 퍼즈 테스트 : echidna와 같은 도구를 사용하여 임의의 입력을 테스트하고 에지 케이스를 발견하십시오.
  • 통합 테스트 : 계약과 외부 토큰 간의 테스트 상호 작용, 특히 전송 기능
  • 거버넌스 시뮬레이션 : 액세스 제어 작동을 올바르게 확인하기 위해 소유자 조치 시뮬레이션

Goerli 또는 Sepolia와 같은 TestNet 에 계약을 배치하고 Mainnet에서 출시하기 전에 커뮤니티 회원을 상호 작용하도록 초대 할 수도 있습니다.


자주 묻는 질문 (FAQ)

Q1 : 보상 토큰이 다 떨어지면 어떻게됩니까? 보상 토큰 공급이 소진되면 계약에 더 많은 토큰이 추가 될 때까지 더 이상 보상이 배포되지 않습니다. 시스템은 사용자에게 알리거나 보상 배포를 자동으로 일시 중지해야합니다.

Q2 : 배포 후 보상 요금을 변경할 수 있습니까? 예, 그러나 계약이 소유자 전용 기능을 통해이를 허용하는 경우에만 가능합니다. 학대를 방지하기 위해 이러한 변경에 대한 정소 또는 다중 서명 요구 사항을 항상 포함하십시오.

Q3 : 실패한 토큰 전송을 어떻게 처리합니까? SAFETRANSFER 패턴을 사용하여 양도하기 전에 잔액을 확인하고 자금이 충분하지 않은 경우 되돌아갑니다.

Q4 : 한 계약에서 다중 보상 토큰을 지원할 수 있습니까? 예, 그러나 복잡성이 증가합니다. 각 보상을 개별적으로 추적하고 여러 보상 풀 또는 동적 할당 전략을 구현해야합니다.

부인 성명:info@kdj.com

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

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

관련 지식

DePIN 채굴로 수동 소득을 얻는 방법은 무엇입니까? (뉴트렌드 2026)

DePIN 채굴로 수동 소득을 얻는 방법은 무엇입니까? (뉴트렌드 2026)

2026-02-01 12:40:27

DePIN 채굴 메커니즘 이해 1. DePIN 채굴은 컴퓨팅 해싱보다는 실제 인프라 참여에 의존합니다. 사용자는 분산형 네트워크를 지원하기 위해 무선 핫스팟, 센서 노드 또는 에지 컴퓨팅 장치와 같은 물리적 하드웨어를 배포합니다. 2. 신호 범위, 데이터 릴레이 또는 ...

게임용 데스크탑에서 Vertcoin(VTC)을 채굴하는 방법은 무엇입니까? (원클릭 채굴기)

게임용 데스크탑에서 Vertcoin(VTC)을 채굴하는 방법은 무엇입니까? (원클릭 채굴기)

2026-02-02 03:39:44

Vertcoin의 채굴 알고리즘 이해 1. Vertcoin은 의도적으로 메모리 하드이며 ASIC 지배력에 저항하도록 설계된 Verthash 알고리즘을 사용합니다. 2. Verthash는 마이닝이 시작되기 전에 전체 데이터 세트를 메모리에 로드하려면 최소 1GB의 GPU...

집에서 조용한 채굴 장비를 설치하는 방법은 무엇입니까? (소음 감소)

집에서 조용한 채굴 장비를 설치하는 방법은 무엇입니까? (소음 감소)

2026-02-01 23:00:26

음향 인클로저 설계 1. GPU 및 팬에서 발생하는 중~고주파 소음을 차단하기 위해 인클로저 벽에 MDF 또는 음향 등급 합판과 같은 단단하고 조밀한 재료를 사용합니다. 2. 음파가 챔버로 다시 반사되기 전에 흡수할 수 있도록 음향 폼이나 대량 적재 비닐로 내부 표면을...

가장 낮은 수수료로 마이닝 풀을 선택하는 방법은 무엇입니까? (수수료 비교)

가장 낮은 수수료로 마이닝 풀을 선택하는 방법은 무엇입니까? (수수료 비교)

2026-02-02 02:39:35

마이닝풀 수수료 구조 이해 1. 수영장 운영자는 인프라, 유지 관리 및 관리 비용을 충당하기 위해 수수료를 부과합니다. 이러한 수수료는 블록 보상의 일정 비율 또는 제출된 주당 고정 금액으로 나타납니다. 2. 일부 풀은 네트워크 난이도 또는 해시 비율 변동에 따라 비율...

Mac(M1/M2/M3)에서 Bitcoin을 채굴하는 방법은 무엇입니까? (소프트웨어 튜토리얼)

Mac(M1/M2/M3)에서 Bitcoin을 채굴하는 방법은 무엇입니까? (소프트웨어 튜토리얼)

2026-02-01 19:19:56

Apple Silicon에서의 Bitcoin 채굴 이해 1. Bitcoin 마이닝은 계산 능력을 사용하여 암호화 퍼즐을 푸는 데 의존하며 Apple의 M1, M2 및 M3 칩은 SHA-256 해싱에 필요한 원시 병렬 처리량보다는 효율성을 위해 구축되었습니다. 2. 이러...

사기를 당하지 않고 중고 채굴 하드웨어를 구입하는 방법은 무엇입니까?

사기를 당하지 않고 중고 채굴 하드웨어를 구입하는 방법은 무엇입니까?

2026-02-01 20:00:14

판매자의 평판을 철저히 조사하십시오. 1. Bitcoin토크 포럼, 마이닝 하드웨어 하위 레딧, CryptoMint 또는 MinerList와 같은 전문 마켓플레이스 등의 플랫폼에서 보관된 목록과 피드백을 확인하세요. 2. 해결되지 않은 분쟁이나 누락된 배송 또는 잘못된...

DePIN 채굴로 수동 소득을 얻는 방법은 무엇입니까? (뉴트렌드 2026)

DePIN 채굴로 수동 소득을 얻는 방법은 무엇입니까? (뉴트렌드 2026)

2026-02-01 12:40:27

DePIN 채굴 메커니즘 이해 1. DePIN 채굴은 컴퓨팅 해싱보다는 실제 인프라 참여에 의존합니다. 사용자는 분산형 네트워크를 지원하기 위해 무선 핫스팟, 센서 노드 또는 에지 컴퓨팅 장치와 같은 물리적 하드웨어를 배포합니다. 2. 신호 범위, 데이터 릴레이 또는 ...

게임용 데스크탑에서 Vertcoin(VTC)을 채굴하는 방법은 무엇입니까? (원클릭 채굴기)

게임용 데스크탑에서 Vertcoin(VTC)을 채굴하는 방법은 무엇입니까? (원클릭 채굴기)

2026-02-02 03:39:44

Vertcoin의 채굴 알고리즘 이해 1. Vertcoin은 의도적으로 메모리 하드이며 ASIC 지배력에 저항하도록 설계된 Verthash 알고리즘을 사용합니다. 2. Verthash는 마이닝이 시작되기 전에 전체 데이터 세트를 메모리에 로드하려면 최소 1GB의 GPU...

집에서 조용한 채굴 장비를 설치하는 방법은 무엇입니까? (소음 감소)

집에서 조용한 채굴 장비를 설치하는 방법은 무엇입니까? (소음 감소)

2026-02-01 23:00:26

음향 인클로저 설계 1. GPU 및 팬에서 발생하는 중~고주파 소음을 차단하기 위해 인클로저 벽에 MDF 또는 음향 등급 합판과 같은 단단하고 조밀한 재료를 사용합니다. 2. 음파가 챔버로 다시 반사되기 전에 흡수할 수 있도록 음향 폼이나 대량 적재 비닐로 내부 표면을...

가장 낮은 수수료로 마이닝 풀을 선택하는 방법은 무엇입니까? (수수료 비교)

가장 낮은 수수료로 마이닝 풀을 선택하는 방법은 무엇입니까? (수수료 비교)

2026-02-02 02:39:35

마이닝풀 수수료 구조 이해 1. 수영장 운영자는 인프라, 유지 관리 및 관리 비용을 충당하기 위해 수수료를 부과합니다. 이러한 수수료는 블록 보상의 일정 비율 또는 제출된 주당 고정 금액으로 나타납니다. 2. 일부 풀은 네트워크 난이도 또는 해시 비율 변동에 따라 비율...

Mac(M1/M2/M3)에서 Bitcoin을 채굴하는 방법은 무엇입니까? (소프트웨어 튜토리얼)

Mac(M1/M2/M3)에서 Bitcoin을 채굴하는 방법은 무엇입니까? (소프트웨어 튜토리얼)

2026-02-01 19:19:56

Apple Silicon에서의 Bitcoin 채굴 이해 1. Bitcoin 마이닝은 계산 능력을 사용하여 암호화 퍼즐을 푸는 데 의존하며 Apple의 M1, M2 및 M3 칩은 SHA-256 해싱에 필요한 원시 병렬 처리량보다는 효율성을 위해 구축되었습니다. 2. 이러...

사기를 당하지 않고 중고 채굴 하드웨어를 구입하는 방법은 무엇입니까?

사기를 당하지 않고 중고 채굴 하드웨어를 구입하는 방법은 무엇입니까?

2026-02-01 20:00:14

판매자의 평판을 철저히 조사하십시오. 1. Bitcoin토크 포럼, 마이닝 하드웨어 하위 레딧, CryptoMint 또는 MinerList와 같은 전문 마켓플레이스 등의 플랫폼에서 보관된 목록과 피드백을 확인하세요. 2. 해결되지 않은 분쟁이나 누락된 배송 또는 잘못된...

모든 기사 보기

User not found or password invalid

Your input is correct