Ephemeral SPL Token Program
온체인 Ephemeral SPL Token 프로그램
프라이빗 결제 예제
프라이빗 결제 애플리케이션과 API 흐름 예제를 살펴보세요
개요
Ephemeral SPL Token API는 Solana와 MagicBlock ephemeral rollups 전반에서 입금, 전송, 출금, swap, mint 초기화를 위한 미서명 SPL token 트랜잭션을 생성합니다. 잔액 조회, mint 초기화 상태, stealth pool, 프라이빗 데이터를 읽기 위한 bearer token을 발급하는 지갑 challenge/login 흐름도 제공합니다. 공식 공개 레퍼런스는 payments.magicblock.app/reference에서 확인할 수 있습니다.메타
인증
SPL
- SPL Token 입금 - Solana에서 ephemeral rollup으로 들어가는 미서명 입금 트랜잭션을 생성합니다
- SPL Token 전송 - 미서명 공개 또는 프라이빗 SPL 전송을 생성합니다
- SPL Token 출금 - Solana로 되돌리는 미서명 출금 트랜잭션을 생성합니다
- Ephemeral ATA 위임 해제 - mint에 대한 지갑의 eATA 위임을 해제하는 미서명 트랜잭션을 생성합니다
- Mint 초기화 - mint용 validator-scoped transfer queue를 초기화하는 미서명 트랜잭션을 생성합니다
- Transfer Queue Crank 실행 보장 - mint의 transfer queue를 검증하고 crank를 한 번 강제로 시도합니다
- 잔액 - 주소의 base-chain SPL token 잔액을 가져옵니다
- 프라이빗 잔액 - 주소의 ephemeral-rollup SPL token 잔액을 가져옵니다(인증 필요)
- Mint 초기화 여부 - mint가 ephemeral RPC에 validator-scoped transfer queue를 가지고 있는지 확인합니다
Stealth Pool
- Stealth Pool 생성 - 프라이빗 전송을 위해 handle을 목적지 key에 매핑합니다(인증 필요)
- Stealth Pool 상태 조회 - handle의 stealth pool이 존재하는지 확인합니다
Swap
MCP
- MCP - stateless Streamable HTTP MCP endpoint에 접근합니다
인증 흐름
Private Ephemeral Rollup 내부의 프라이빗 데이터를 읽는 엔드포인트는 bearer 토큰이 필요합니다:GET /v1/spl/challenge?pubkey=<wallet>이challenge문자열을 반환합니다- 지갑이 challenge에 서명합니다
POST /v1/spl/login에{ pubkey, challenge, signature }를 보내면token이 반환됩니다/v1/spl/private-balance(필수)와 Private Ephemeral Rollup 연결이 필요한/v1/spl/transfer요청 (선택)에Authorization: Bearer <token>을 전달합니다
응답 형식
트랜잭션 생성 엔드포인트가 성공하면 미서명 트랜잭션 페이로드를 반환합니다:- API를 호출합니다
transactionBase64를 디코딩합니다- 필요하면 클라이언트가 트랜잭션을 조정합니다
- 필요한 지갑으로 서명합니다
sendTo가 가리키는 RPC ("base"또는"ephemeral")로 전송합니다

