메인 콘텐츠로 건너뛰기

Documentation Index

Fetch the complete documentation index at: https://docs.stablenet.network/llms.txt

Use this file to discover all available pages before exploring further.

StableNet은 두 가지 핵심 차이점이 있는 EIP-1559 스타일 수수료를 사용합니다: 기본 수수료가 소각되는 대신 밸리데이터에게 지급되고, 우선순위 수수료는 시장이 아닌 거버넌스로 결정됩니다.

수수료 구성요소

모든 트랜잭션은 두 가지 구성요소를 지불합니다:
구성요소설명결정 주체
기본 수수료네트워크 사용률에 따른 최소 수수료프로토콜
우선순위 수수료 (가스 팁)밸리데이터를 위한 추가 수수료GovValidator 컨트랙트
일반 계정(비인증 계정)의 경우, 트랜잭션에 지정한 maxPriorityFeePerGas는 거버넌스 적용 가스 팁으로 재정의됩니다. 최솟값 이상을 포함해야 하며 — 임계값 미만의 트랜잭션은 멤풀 단계에서 거부됩니다.

기본 수수료 조정

StableNet은 이더리움의 ±12.5% 조정 대신 이중 임계값 시스템을 사용합니다:
가스 사용률기본 수수료 변화
20% 초과블록당 +2%
6% – 20%변동 없음
6% 미만블록당 -2%
기본 수수료는 프로토콜 최솟값 아래로 내려가지 않으며, 급격한 급등을 방지하기 위해 증가폭에 상한이 있습니다. 이더리움과 달리, 기본 수수료는 소각되지 않고 밸리데이터에게 분배됩니다. 이는 스테이블코인의 1:1 법정화폐 담보를 유지하기 위함입니다 (소각은 법정화폐 상환 시점에만 발생).

트랜잭션에서 수수료 설정

EIP-1559 트랜잭션(타입 0x02)에서는 두 필드를 모두 설정하세요:
const tx = await wallet.sendTransaction({
  to: recipient,
  value: ethers.parseEther("1.0"),
  maxPriorityFeePerGas: ethers.parseUnits("27600", "gwei"),
  maxFeePerGas: ethers.parseUnits("80000", "gwei"),
});
Foundry cast sendforge script에서는 --priority-gas-price 27600000000000을 전달하세요.
거버넌스 적용 최소 우선순위 수수료는 GovValidator 컨트랙트가 설정합니다. 이 값보다 낮은 maxPriorityFeePerGas를 가진 트랜잭션은 블록 포함 전에 거부됩니다.

수수료 위임 (타입 0x16)

StableNet은 별도 계정 — 수수료 지불자 — 이 가스 비용을 대신 납부하는 수수료 위임 트랜잭션 타입(0x16)을 추가합니다. 발신자 계정은 전송 가치만 보유하면 됩니다.
역할납부
발신자전송 가치만
수수료 지불자gasLimit × gasPrice
미사용 가스는 발신자가 아닌 수수료 지불자에게 환불됩니다.

가스 추정

전송 전에 eth_estimateGas로 트랜잭션의 가스 한도를 구하세요. RPC 엔드포인트는 가스 유닛을 반환하며, 실효 가스 가격을 곱하면 WKRC 단위 총 수수료가 됩니다.
const gasEstimate = await provider.estimateGas({
  to: contractAddress,
  data: encodedCalldata,
});

개발자 이점

  • 예측 가능한 수수료 — 기본 수수료가 블록당 ±12.5% 대신 ±2%씩 변동
  • KRW 기준 비용 — 수수료 추정이 법정화폐 기준으로 안정적
  • 수수료 위임 — 컨트랙트 로직 변경 없이 사용자 가스를 대신 납부 가능

관련 문서