技术透明

代码公开透明

我们承诺所有奖励发放完全自动化,由代码执行,无人工干预。以下是核心代码逻辑,供社区监督验证。

安全说明

资金池私钥安全存储在服务器环境变量中,代码中仅使用 process.env.POOL_WALLET_PRIVATE_KEY 引用, 永不硬编码、永不暴露给前端。所有转账操作仅在服务端API中执行。

公开地址

奖励资金池地址

0xa9d969910fd93d087ec08905ae056bfed0a6ba5a

所有BNB奖励从此地址自动发放,可在BSCScan上查看所有转账记录

代币合约地址

0x06b846a16a58254101cb96a71fe919e5be837777

用于验证用户是否持有100万枚代币的资格

核心发放逻辑

以下是奖励发放API的核心代码(已脱敏),展示了完整的验证和转账流程:

// /app/api/claim-reward/route.ts

export async function POST(request: Request) {
  const { walletAddress, score, examId } = await request.json()

  // 1. 验证钱包地址格式
  if (!walletAddress || !/^0x[a-fA-F0-9]{40}$/.test(walletAddress)) {
    return { error: '无效的钱包地址' }
  }

  // 2. 验证考试分数 (必须 >= 90分)
  if (score < 90) {
    return { error: '考试未及格,无法领取奖励' }
  }

  // 3. 验证代币持有量 (必须 >= 1,000,000 枚)
  const tokenBalance = await checkTokenBalance(walletAddress)
  if (tokenBalance < 1000000) {
    return { error: '代币持有不足' }
  }

  // 4. 检查今日是否已领取 (每天仅限一次)
  if (hasClaimedToday(walletAddress)) {
    return { error: '今日已领取,明天再来' }
  }

  // 5. 检查资金池余额是否充足
  const poolBalance = await getPoolBalance()
  if (poolBalance < 0.1 + 0.001) { // 奖励 + Gas费
    return { error: '奖池余额不足,请稍后重试' }
  }

  // 6. 执行转账 (服务端自动执行)
  const wallet = new ethers.Wallet(
    process.env.POOL_WALLET_PRIVATE_KEY, // 私钥仅在服务端
    provider
  )
  
  const tx = await wallet.sendTransaction({
    to: walletAddress,
    value: ethers.parseEther('0.1'), // 固定0.1 BNB
    gasLimit: 21000n,
  })

  // 7. 等待交易确认
  const receipt = await tx.wait()
  
  // 8. 记录领取记录,防止重复领取
  recordClaim(walletAddress)

  return { 
    success: true, 
    txHash: receipt.hash,
    amount: '0.1 BNB'
  }
}
代币验证逻辑

用户持币验证通过BSC RPC直接调用代币合约的balanceOf方法:

// /app/api/check-token-balance/route.ts

const TOKEN_CONTRACT = '0x06b846a16a58254101cb96a71fe919e5be837777'
const MIN_REQUIRED = 1000000 // 100万枚

async function checkTokenBalance(walletAddress: string) {
  // 调用ERC20标准的balanceOf方法
  const data = '0x70a08231' + walletAddress.slice(2).padStart(64, '0')
  
  const response = await fetch(BSC_RPC_URL, {
    method: 'POST',
    body: JSON.stringify({
      jsonrpc: '2.0',
      method: 'eth_call',
      params: [{ to: TOKEN_CONTRACT, data }, 'latest'],
      id: 1,
    }),
  })

  const result = await response.json()
  const balanceWei = BigInt(result.result)
  const balance = Number(balanceWei) / 1e18 // 18位小数
  
  return balance >= MIN_REQUIRED
}
验证流程图
1
连接钱包

用户连接MetaMask/Binance钱包

2
代币验证

自动查询链上代币余额,验证是否持有≥100万枚

3
完成考试

用户答题,系统计算得分

4
分数验证

验证得分≥90分(及格线)

5
防重复检查

检查该钱包今日是否已领取

6
余额检查

确认资金池有足够BNB发放

7
自动转账

服务端使用ethers.js发起链上转账

8
交易确认

等待BSC网络确认,返回txHash

我们的承诺
  • 所有奖励发放100%自动化,无人工干预
  • 私钥安全存储于服务器环境变量,代码中绝不硬编码
  • 所有转账记录可在BSCScan上公开查询验证
  • 代码逻辑公开透明,接受社区监督
  • 每日每钱包仅限领取一次,防止滥用
  • 双重验证机制:前端+后端同时验证代币持有量

自行验证所有转账记录: