-
bitcoin $77711.849241 USD
0.53% -
ethereum $2262.146329 USD
0.88% -
tether $0.998733 USD
-0.01% -
bnb $704.156855 USD
0.57% -
xrp $1.250177 USD
0.27% -
usd-coin $0.999665 USD
0.00% -
solana $95.259968 USD
-0.59% -
tron $0.309949 USD
-3.90% -
hyperliquid $87.588842 USD
-0.87% -
zcash $1239.978441 USD
-2.49% -
dogecoin $0.075607 USD
0.41% -
monero $602.415031 USD
1.28% -
chainlink $11.720400 USD
2.37% -
unus-sed-leo $9.385895 USD
-0.63% -
cardano $0.192948 USD
-0.21%
이중 통화 광업 계약을 작성하는 방법은 무엇입니까? 스마트 감사 포인트
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)로 연락주시면 즉시 삭제하도록 하겠습니다.
- 초기 비트코인 투자자 통찰력: XRP 예측 및 자산 관리 변화 풀기
- 2026-11-02 04:35:01
- 금과 비트코인이 폭락하다: 2026년 자산의 변동성 있는 환경 탐색
- 2026-11-01 00:35:01
- 체이널리시스 위반: AI 도구로 인한 고객 데이터 노출로 암호화폐 업계에 경보 발생
- 2026-10-31 16:35:02
- 바이낸스 해킹, 태국 조사 및 암호화폐 관련 보안: 디지털 자산 안전에 관한 뉴욕 회의록
- 2026-10-31 12:45:01
- 월스트리트 분석가들의 의견: 바이낸스 해킹, 시장 변동성 속에서 암호화폐 주식에 대한 논쟁 촉발
- 2026-10-31 12:45:01
- Bitwise Bitcoin, Pepeto 및 Pepe Record: 암호화폐의 난폭한 여정에 대한 뉴욕의 순간
- 2026-10-31 04:35:01
관련 지식
제한된 전력으로 Bitcoin 채굴 수익을 극대화하는 방법은 무엇입니까?
2026-11-01 00:00:29
전략적 풀 할당 1. 전력 예산이 제한된 채굴자는 가장 낮은 수수료 구조와 가장 높은 지불 일관성을 제공하는 풀을 우선시해야 합니다. 99.3% 가동 시간을 제공하는 0.8% 수수료 풀은 30일 수익 주기에 걸쳐 측정했을 때 92% 신뢰성으로 0.5% 수수료 풀보다 성...
총 채굴 이익과 순 채굴 이익의 차이점은 무엇입니까?
2026-11-01 19:40:27
총 채굴 이익 정의 1. 총 채굴 이익은 채굴된 디지털 자산 판매로 발생한 수익에서 추출과 관련된 직접 비용을 뺀 금액을 나타냅니다. 2. 직접 비용에는 전력 소비, 해시율 출력과 관련된 하드웨어 감가상각, 블록 검증 중에 직접 발생하는 풀 수수료가 포함됩니다. 3. ...
Bitcoin 채굴 난이도 조정은 어떻게 이루어지나요?
2026-11-02 01:40:04
난이도 조정의 핵심 원리 1. Bitcoin의 채굴 난이도는 2016블록마다 조정되어 평균 블록 시간 10분을 유지합니다. 2. 조정 알고리즘은 2016 블록 창에서 첫 번째 블록과 마지막 블록 간의 타임스탬프 차이를 검사합니다. 3. 실제 기간이 2주를 초과하면 그에...
2026년에 중고 ASIC 채굴 하드웨어를 구매할 가치가 있나요?
2026-11-01 15:19:56
Bitcoin 반감기 메커니즘 1. Bitcoin의 프로토콜은 약 210,000블록마다 블록 보상이 절반으로 줄어드는 고정된 발행 일정을 시행합니다. 2. 이 이벤트는 대략 4년마다 발생하며 블록당 유통되는 새로운 BTC의 수를 직접적으로 줄입니다. 3. 채굴자는 20...
1,000TH/s로 얼마나 Bitcoin 채굴할 수 있나요?
2026-11-02 06:40:11
Bitcoin 반감기 메커니즘 1. Bitcoin의 프로토콜은 약 210,000블록마다 블록 보상이 절반으로 줄어드는 고정된 발행 일정을 시행합니다. 2. 이 이벤트는 대략 4년마다 발생하며 블록당 유통되는 새로운 BTC의 수를 직접적으로 줄입니다. 3. 채굴자는 20...
Bitcoin 채굴에서 PPS, FPPS, PPLNS란 무엇입니까?
2026-11-01 21:39:47
Bitcoin 반감기 메커니즘 1. Bitcoin의 프로토콜은 약 210,000블록마다 블록 보상이 절반으로 줄어드는 고정된 발행 일정을 시행합니다. 2. 이 이벤트는 대략 4년마다 발생하며 유통되는 새로운 BTC의 수를 직접적으로 줄입니다. 3. 채굴자는 2020년 ...
제한된 전력으로 Bitcoin 채굴 수익을 극대화하는 방법은 무엇입니까?
2026-11-01 00:00:29
전략적 풀 할당 1. 전력 예산이 제한된 채굴자는 가장 낮은 수수료 구조와 가장 높은 지불 일관성을 제공하는 풀을 우선시해야 합니다. 99.3% 가동 시간을 제공하는 0.8% 수수료 풀은 30일 수익 주기에 걸쳐 측정했을 때 92% 신뢰성으로 0.5% 수수료 풀보다 성...
총 채굴 이익과 순 채굴 이익의 차이점은 무엇입니까?
2026-11-01 19:40:27
총 채굴 이익 정의 1. 총 채굴 이익은 채굴된 디지털 자산 판매로 발생한 수익에서 추출과 관련된 직접 비용을 뺀 금액을 나타냅니다. 2. 직접 비용에는 전력 소비, 해시율 출력과 관련된 하드웨어 감가상각, 블록 검증 중에 직접 발생하는 풀 수수료가 포함됩니다. 3. ...
Bitcoin 채굴 난이도 조정은 어떻게 이루어지나요?
2026-11-02 01:40:04
난이도 조정의 핵심 원리 1. Bitcoin의 채굴 난이도는 2016블록마다 조정되어 평균 블록 시간 10분을 유지합니다. 2. 조정 알고리즘은 2016 블록 창에서 첫 번째 블록과 마지막 블록 간의 타임스탬프 차이를 검사합니다. 3. 실제 기간이 2주를 초과하면 그에...
2026년에 중고 ASIC 채굴 하드웨어를 구매할 가치가 있나요?
2026-11-01 15:19:56
Bitcoin 반감기 메커니즘 1. Bitcoin의 프로토콜은 약 210,000블록마다 블록 보상이 절반으로 줄어드는 고정된 발행 일정을 시행합니다. 2. 이 이벤트는 대략 4년마다 발생하며 블록당 유통되는 새로운 BTC의 수를 직접적으로 줄입니다. 3. 채굴자는 20...
1,000TH/s로 얼마나 Bitcoin 채굴할 수 있나요?
2026-11-02 06:40:11
Bitcoin 반감기 메커니즘 1. Bitcoin의 프로토콜은 약 210,000블록마다 블록 보상이 절반으로 줄어드는 고정된 발행 일정을 시행합니다. 2. 이 이벤트는 대략 4년마다 발생하며 블록당 유통되는 새로운 BTC의 수를 직접적으로 줄입니다. 3. 채굴자는 20...
Bitcoin 채굴에서 PPS, FPPS, PPLNS란 무엇입니까?
2026-11-01 21:39:47
Bitcoin 반감기 메커니즘 1. Bitcoin의 프로토콜은 약 210,000블록마다 블록 보상이 절반으로 줄어드는 고정된 발행 일정을 시행합니다. 2. 이 이벤트는 대략 4년마다 발생하며 유통되는 새로운 BTC의 수를 직접적으로 줄입니다. 3. 채굴자는 2020년 ...
모든 기사 보기














