튜토리얼: Magma Protocol SDK를 사용해 자산을 Liquid Stake하기
발행: (2026년 1월 6일 오후 09:06 GMT+9)
2 min read
원문: Dev.to
Source: Dev.to
Step 1: Magma Liquid Staking 흐름 이해하기
핵심 개념은 간단합니다:
- 사용자가 PoS 자산(예: ETH)을 Magma 스마트 계약에 예치합니다.
- 프로토콜이 해당 자산을 검증인 노드 네트워크에 스테이킹합니다.
- 사용자는 액체 토큰(예:
mETH)을 지갑으로 받게 됩니다. mETH토큰은 가치가 자동으로 스테이킹 보상을 누적합니다.- 사용자는 언제든지 원래 ETH와 누적된 보상을 포함해
mETH를 교환할 수 있습니다.
Step 2: SDK 통합하기
아래는 Ethers.js와 (가상의) Magma SDK를 사용한 JavaScript 환경을 위한 고수준 예시입니다.
import { ethers } from "ethers";
import { magmaSDK } from "@magmaprotocol/sdk"; // Hypothetical SDK
// Connect to the user's wallet
const provider = new ethers.providers.Web3Provider(window.ethereum);
const signer = provider.getSigner();
// Initialize the Magma SDK
const magma = new magmaSDK(signer);
async function stakeAndReceiveLiquidToken(amount) {
// Convert the amount of ETH to wei
const stakeAmount = ethers.utils.parseEther(amount);
try {
console.log(`Staking ${amount} ETH...`);
// The core 'stake' function handles the transaction
const tx = await magma.stake({ value: stakeAmount });
await tx.wait();
const mTokenBalance = await magma.getLiquidTokenBalance();
console.log(`Success! You now have ${mTokenBalance} mETH.`);
console.log(
"This token represents your staked position and earns rewards."
);
} catch (err) {
console.error("Staking failed:", err);
}
}
// Example usage
stakeAndReceiveLiquidToken("1.0");
SDK는 스테이킹 풀 계약 및 기본 스테이킹 로직과 직접 상호작용하는 복잡성을 추상화하여, 사용자가 자금을 잠그지 않고도 dApp에서 스테이킹 기능을 제공할 수 있게 합니다.
자세한 API 레퍼런스, 계약 주소 및 고급 기능에 대해서는 공식 Magma Protocol 문서를 참고하십시오.