Skip to main content

概要

Ephemeral SPL Token を使うと、MagicBlock エフェメラルロールアップ(ER) 内で、ほかの委任済み状態と同じ低レイテンシで SPL token を保持・移動し、その後 Solana の base layer に決済できます。これは MagicBlock のプライベート決済を支える token プリミティブ ですが、用途は汎用的で、送金は公開にもプライベートにもできます。 すべては、MIMD 0013 を実装するオンチェーンの Ephemeral SPL Token プログラムSPLxh1LVZzEkX99H6rqYizhytLWPZVV296zyYDPagv2)によって動作します。

Ephemeral SPL Token プログラム

オンチェーンプログラム + ホステッド API。SPLxh1LV…

クイックスタート

token account の委任、ER 上での送金、出金までをエンドツーエンドで実行します。

予測市場や取引プロトコルを構築していますか?

token custody と session key、価格オラクル、crank、決済を組み合わせる方法を確認します。

モデル

通常の SPL token account は Solana の base layer 上にあります。token を ER の速度で移動するため、 Ephemeral SPL Token プログラムは 2 種類のアカウントを導入します。

Ephemeral ATA (eATA)

ephemeral ATA(eATA)[owner, mint] から導出されるプログラム所有の PDA で、単一の u64 残高を保持します。これは実際の SPL token account ではなく、ER に委任して高速に 更新できる軽量な残高レコードです。

Global Vault

実際の token は mint ごとの Global Vault にカストディされます。これは [mint] から導出される PDA で、その mint のすべての eATA を裏付ける SPL token account を所有します。入金では 実際の token が vault に移され、eATA の u64 残高が加算されます。出金ではその逆を行います。
eATA は残高を追跡し、Global Vault は実際の token を保持します。1 つの vault が特定 mint の すべての eATA を裏付けます。

委任ライフサイクル

eATA は標準の Ephemeral Rollup ライフサイクルに従います:
1

入金して委任

実際の token が mint の Global Vault に移され、eATA の残高が加算されます。その後、 ER 内で更新できるように eATA を MagicBlock validator に委任します。
2

ER 上で取引

rollup 内の eATA 間で低レイテンシに送金します。送金は公開またはプライベートvisibility)にできます。
3

委任解除してコミット

eATA をコミットして委任を解除し、base layer に戻します。
4

出金

token を Global Vault から標準の base-layer SPL token account に戻します。

公開とプライベート

このプリミティブは両方に対応します:
  • 公開 — ER 上の eATA 間で行う通常の高速送金です。
  • プライベート(プライベート決済) — プライベートな visibility、暗号化/キュー型決済、 stealth handlealice@magicblock.id のように 1 つ以上の送信先 key に解決される 読みやすい名前)によって送信先と決済を保護します。詳しくは プライベート決済ガイドを参照してください。

2 つの統合方法

オンチェーン / SDK

@magicblock-labs/ephemeral-rollups-sdk を使って独自の Anchor プログラムとクライアントに 直接統合し、token account の委任、ER 上での送金、出金を行います。

ホステッド REST / MCP API

ホステッド API に入金、送金、出金、残高照会、swap、プライベート決済用の未署名 トランザクションを構築させます。