メインコンテンツまでスキップ

「ガイド」タグの記事が2件件あります

全てのタグを見る

PYUSD on Solana: 実践的統合ガイド(BlockEden.xyz RPC付き)

· 約8分
Dora Noda
Software Engineer

PayPal USD (PYUSD) が Solana に上場し、デジタル決済にとって重要なマイルストーンとなりました。このガイドは、エンジニアが Solana 上のウォレット、dApp、商取引プラットフォームに PYUSD を統合するための、実装志向のステップバイステップ walkthrough を提供します。

すべての例は最新の Token-2022 対応コードを使用し、BlockEden.xyz の低遅延 Solana RPC エンドポイントとシームレスに動作するよう設計されています。

TL;DR

  • 概要: PayPal USD (PYUSD) は Solana 上のネイティブ Token-2022 SPL トークンとなり、世界的に認知されたステーブルコインの高速・低手数料決済を実現します。
  • 主要パラメータ: Mint 2b1kV6DkPAnxd5ixfnxCpjxmKwqjjaYmCZfHsFu24GXo、小数点以下 6、トークンプログラム Token-2022
  • 機能セット: Solana Token Extensions (Token-2022) を活用。Transfer Hook は初期化済みですが現在は null プログラムで非アクティブ。機密転送機能やその他拡張も備えています。
  • クロスチェーン: 公式 LayerZero 統合により、Ethereum と Solana 間で安全なバーン&ミント方式で PYUSD を移動可能。従来のブリッジを回避します。
  • アクション: 本ガイドをテンプレートとして使用し、BlockEden.xyz の信頼性の高い Solana RPC でアプリケーションに PYUSD サポートを追加してください。

なぜ Solana 上の PYUSD が重要か

PayPal のブランドと Solana のパフォーマンスが組み合わさり、デジタルドルの新たなレールが誕生します。

  1. 消費者信頼と暗号 UX の融合: PYUSD は規制された信託会社 Paxos により発行され、PayPal と Venmo に深く統合されています。ユーザーは慣れ親しんだ資産を保有でき、Ethereum または Solana の外部ウォレットへ引き出すことも可能です。チェーンの複雑さを抽象化します。
  2. 決済対応レール: Solana のアーキテクチャはサブ秒のトランザクション確定と数センチの手数料を実現。PYUSD はこの効率的な決済ネットワーク上に安定した単位を提供し、決済、商取引、送金に最適です。
  3. 機関向けコントロール: Token-2022 トークンとしてリリースすることで、機密転送、リッチメタデータ、永続デリゲートなどの組み込み拡張を利用可能。高度なコンプライアンスと機能を、監査が容易な形で実装できます。

必須項目(必ず確認)

コードを書き始める前に、以下のパラメータを確実にロックしてください。信頼できるエクスプローラで Mint アドレスを必ず検証し、詐欺トークンとの取引を防ぎます。

  • Mint(メインネット): 2b1kV6DkPAnxd5ixfnxCpjxmKwqjjaYmCZfHsFu24GXo
  • 小数点以下: 6(1 PYUSD = 1,000,000 基本単位)
  • トークンプログラム: Token-2022(Program ID: TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb
  • 使用されているトークン拡張(Mint 時点):
    • メタデータ & メタデータポインタ
    • 永続デリゲート
    • Transfer Hook(null プログラムで初期化)
    • 機密転送設定

これらはすべて Solana Explorer で確認できます。エクスプローラは公式 Mint アドレスと有効化された拡張を明示します。

プロジェクトのセットアップ

環境を整えます。Token-2022 互換性を確保するため、最新の Solana web3 と SPL token ライブラリが必要です。

1. ライブラリ

npm から必要なパッケージをインストールします。

npm i @solana/web3.js @solana/spl-token

2. RPC 接続

アプリケーションを BlockEden.xyz の Solana メインネット RPC URL にポイントします。プロダクションでは環境変数の使用が必須です。

// package.json
// npm i @solana/web3.js @solana/spl-token

import { Connection, Keypair, PublicKey } from "@solana/web3.js";
import {
TOKEN_2022_PROGRAM_ID,
getMint,
getOrCreateAssociatedTokenAccount,
getAssociatedTokenAddress,
createTransferCheckedInstruction,
} from "@solana/spl-token";

// ダッシュボードで取得した BlockEden.xyz の Solana RPC URL を使用
const RPC_ENDPOINT =
process.env.SOLANA_RPC_URL ??
"https://your-blockeden-solana-mainnet-endpoint.com";
export const connection = new Connection(RPC_ENDPOINT, "confirmed");

// PYUSD(メインネット)
export const PYUSD_MINT = new PublicKey(
"2b1kV6DkPAnxd5ixfnxCpjxmKwqjjaYmCZfHsFu24GXo",
);

PYUSD Mint データの取得

まず、プログラム上で PYUSD Mint のプロパティを確認します。定数が正しいかを検証し、総供給量などの詳細を取得する重要なステップです。

// Token-2022 API を使用して PYUSD Mint 情報を取得
const mintInfo = await getMint(
connection,
PYUSD_MINT,
"confirmed",
TOKEN_2022_PROGRAM_ID, // プログラム ID を明示
);

console.log({
supply: mintInfo.supply.toString(),
decimals: mintInfo.decimals, // 6 が期待値
isInitialized: mintInfo.isInitialized,
});

TOKEN_2022_PROGRAM_ID を明示的に渡すことが、Token Extensions を扱う際の最も一般的なエラー原因です。

関連トークンアカウント(ATA)の作成または取得

Token-2022 トークンの ATA は必ず Token-2022 プログラム ID を使用して導出します。レガシー TOKEN_PROGRAM_ID を使用すると「incorrect program id」エラーが発生します。

// Payer と ATA の所有者。ウォレットロジックに置き換えてください。
const owner = Keypair.generate();

// 所有者の PYUSD ATA を作成または取得(Token-2022 対応)
const ownerAta = await getOrCreateAssociatedTokenAccount(
connection,
owner, // 作成時の Payer
PYUSD_MINT, // Mint
owner.publicKey, // ATA の所有者
false, // allowOwnerOffCurve
"confirmed",
undefined, // options
TOKEN_2022_PROGRAM_ID, // <-- 重要: Token-2022 Program ID を使用
);

console.log("Owner PYUSD ATA:", ownerAta.address.toBase58());

PYUSD 残高の確認

ユーザーの PYUSD 残高を確認するには、ATA を問い合わせ、正しいプログラム ID を指定することを忘れないでください。

@solana/spl-token を使用

import { getAccount } from "@solana/spl-token";

const accountInfo = await getAccount(
connection,
ownerAta.address,
"confirmed",
TOKEN_2022_PROGRAM_ID,
);

const balance = Number(accountInfo.amount) / 10 ** mintInfo.decimals; // decimals = 6
console.log("PYUSD balance:", balance);

直接 JSON-RPC(curl

所有者のすべてのトークンアカウントを取得し、Token-2022 プログラム ID でフィルタリングできます。

curl -X POST "$SOLANA_RPC_URL" -H 'content-type: application/json' -d '{
"jsonrpc":"2.0",
"id":1,
"method":"getTokenAccountsByOwner",
"params":[
"<OWNER_PUBLIC_KEY>",
{ "programId":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb" },
{ "encoding":"jsonParsed" }
]
}'

PYUSD の転送(ユーザー間)

Token-2022 資産の転送は createTransferCheckedInstruction を使用するのが基本です。この命令はトークンの小数点情報を含むため、桁数に関する脆弱性を防げます。

以下は PYUSD 転送用の汎用関数です。

import { Transaction } from '@solana/web3.js';

async function transferPyusd({
fromWallet, // 送信者の Keypair
toPubkey, // 受信者の PublicKey
uiAmount, // PYUSD 金額(例: 1.25)
}: {
fromWallet: Keypair
toPubkey: PublicKey
uiAmount: number
}) {
const decimals = 6;
const destinationAta = await getAssociatedTokenAddress(
PYUSD_MINT,
toPubkey,
false,
TOKEN_2022_PROGRAM_ID,
);

const transaction = new Transaction().add(
createTransferCheckedInstruction(
fromWallet.publicKey,
PYUSD_MINT,
destinationAta,
fromWallet.publicKey,
uiAmount * Math.pow(10, decimals),
decimals,
undefined,
undefined,
TOKEN_2022_PROGRAM_ID,
),
);

// 署名・送信は環境に合わせて実装してください
}

注記: Transfer Hook が将来的に有効化された場合でも、現在は null プログラムなので特別な処理は不要です。

BlockEden.xyz RPC エンドポイントの取得

BlockEden.xyz の RPC エンドポイントは、以下のように取得できます。

const endpoint = "https://<your-blockeden-endpoint>.blockeden.xyz";

高速かつ信頼性の高い BlockEden.xyz RPC の活用

本ガイドのコード例はすべて、BlockEden.xyz の高性能 RPC と組み合わせて動作するよう設計されています。実際のプロダクション環境では、以下の点に留意してください。

  • エンドポイントのホワイトリスト化: BlockEden.xyz のダッシュボードで取得したエンドポイント URL を環境変数に設定。
  • 接続の再試行ロジック: ネットワーク障害時に備えて、Connection の再接続ロジックを実装。
  • モニタリング: RPC のレイテンシとエラーレートを CloudWatch などで監視し、必要に応じてバックアップエンドポイントにフェイルオーバー。

Transfer Hook に関する注意点

現在、PYUSD の Transfer Hook は null プログラムで初期化されています。将来的に有効化された場合は、以下を確認してください。

  1. プログラム ID の更新: TOKEN_2022_PROGRAM_ID のままで問題ありませんが、Hook が有効になると別のプログラム ID が必要になる可能性があります。
  2. 署名要件: Hook が有効になると、追加の署名や権限チェックが入ることがあります。

クロスチェーン統合

LayerZero を利用した公式ブリッジは、以下の手順で利用できます。

  1. LayerZero SDK のインストール(公式ドキュメント参照)。
  2. BlockEden.xyz の RPC エンドポイントを使用して、Ethereum と Solana の両方で同一の PYUSD アドレスを管理。
  3. バーン&ミントのフローを実装し、ユーザーがシームレスに資産を移動できるようにします。

参考情報

準備はできましたか?

高性能な BlockEden.xyz RPC エンドポイント を取得し、支払いの未来を今日から構築しましょう。

暗号エアドロップとは? ビルダーとユーザーのための簡潔ガイド(2025年版)

· 約11分
Dora Noda
Software Engineer

TL;DR

暗号エアドロップとは、特定のウォレットアドレスにトークンを配布する(多くは無料)ことで、ネットワークの立ち上げ、所有権の分散、または早期コミュニティメンバーへの報酬を目的とした手法です。代表的な方法として、過去の行動に対するレトロアクティブ報酬、ポイントからトークンへの変換、NFT またはトークン保有者向けドロップ、インタラクティブな「クエスト」キャンペーンがあります。成功の鍵はスナップショットルール、Merkle 証明などのクレームメカニズム、Sybil 耐性、明確なコミュニケーション、法的コンプライアンスにあります。ユーザーにとってはトークンエコノミクスと安全性が価値の源です。チームにとっては、エアドロップは一時的な話題作りだけでなく、プロダクトのコア目標と合致している必要があります。


エアドロップとは実際に何か?

本質的に、暗号エアドロップはプロジェクトが特定のユーザーグループのウォレットにネイティブトークンを送るマーケティング兼配布戦略です。単なるプレゼントではなく、明確な目的を持った計画的な動きです。Coinbase や Binance Academy の教育資料によれば、エアドロップは新しいネットワーク、DeFi プロトコル、または dApp が急速にユーザーベースを構築したいときに頻繁に利用されます。トークンを配布することで、ガバナンス参加、流動性提供、新機能のテスト、あるいは単にコミュニティの活性化といった行動をインセンティブ化し、ネットワーク効果を加速させます。

エアドロップが実際に見られる場面

エアドロップにはさまざまな形態があり、それぞれ異なる戦略的目的があります。以下は現在最も一般的なモデルです。

レトロアクティブ(過去の行動に報酬)

トークンが存在しなかった時期にプロトコルを利用した早期採用者に報酬を与える古典的モデルです。Uniswap の 2020 年エアドロップ が代表例で、プロトコルと過去にやり取りしたすべてのアドレスに 400UNI400 UNI を配布しました。これは「ありがとう」の強力なメッセージとなり、ユーザーを一夜にして所有者へと変えました。

ポイント → トークン(インセンティブ先行、トークン後発)

2024 年・2025 年に主流となったモデルで、参加行動を「ポイント」としてオフチェーンで計測し、後日トークンに変換します。ブリッジ、スワップ、ステーキングなどのアクションを追跡し、ポイントを付与。トークンローンチ前に望ましい行動を測定・インセンティブ化できる点が特徴です。

ホルダー / NFT ドロップ

特定のトークンまたは NFT を保有しているユーザーを対象に配布します。既存エコシステム内のロイヤリティ報酬や、新規プロジェクトの立ち上げ時にエンゲージドなコミュニティを確保する手段です。ApeCoin は 2022 年に Bored Ape と Mutant Ape Yacht Club の NFT 保有者に APEAPE トークンのクレーム権を付与しました。

エコシステム / ガバナンスプログラム

長期的な分散化とコミュニティ成長を目的に、複数回にわたるエアドロップを実施するケースです。Optimism はユーザー向けエアドロップに加えて、RetroPGF プログラムで公共財資金としてトークン供給の大部分を確保しています。持続可能で価値志向のエコシステム構築へのコミットメントが伺えます。

エアドロップの仕組み(重要なメカニクス)

成功したエアドロップと混乱したエアドロップの差は、技術的・戦略的実装にあります。以下が本当に重要なポイントです。

スナップショット & 受取資格

まず、誰が対象になるかを決めます。スナップショット(特定のブロック高さまたは日時)を設定し、その時点以降の活動はカウントしません。受取資格は「ブリッジした金額」「スワップ回数」「流動性提供」など、プロジェクトが報酬したい行動に基づいて定義されます。例として Arbitrum は Nansen と協力し、2023 年 2 月 6 日のブロックをスナップショットにした高度な配布モデルを構築しました。

クレーム vs 直接送付

直接トークンを送る方法もありますが、成熟したプロジェクトは クレームベース を採用します。これにより、紛失・ハッキングされたアドレスへの送金リスクを回避し、ユーザーにアクションを促します。主流は Merkle Distributor です。プロジェクトは対象アドレスの Merkle ルートをオンチェーンに公開し、各ユーザーは自分だけの「証明(proof)」を生成してクレームします。Uniswap のオープンソース実装が代表例で、ガスコストが低く安全です。

Sybil 耐性

エアドロップは「ファーマー」—多数のウォレット(Sybil 攻撃)を使って報酬を最大化しようとする者— の標的です。対策として、ウォレットの年齢・活動多様性などのヒューリスティックや、クラスタリング分析による単一エンティティの検出、さらには自己申告プログラムが利用されます。LayerZero の 2024 年キャンペーン では、ユーザーが自ら Sybil 行為を報告すれば 15% の割当を得られる仕組みを導入し、未報告で捕捉された者は除外されました。

リリーススケジュール & ガバナンス

エアドロップで配布されたトークンはすべてが即時流通するわけではありません。チーム・投資家・エコシステムファンド向けの割当は ベスティング(段階的リリース)されることが多く、ユーザーはこれを把握して将来の供給圧力を予測する必要があります。TokenUnlocks などのダッシュボードがリリースタイムラインを可視化しています。

ケーススタディ(速読)

  • Uniswap(2020):対象アドレスへ 400UNI400 UNI を配布し、流動性提供者には追加配分。Merkle 証明ベースのクレームモデルを業界標準化。
  • Arbitrum(2023):L2 ガバナンストークン ARBARB を発行。2023 年 2 月 6 日スナップショット前のオンチェーン活動をポイント化し、Nansen の高度な分析と Sybil フィルタを適用。
  • Starknet(2024):「Provisions Program」と称し、2024 年 2 月 20 日にクレーム開始。早期ユーザー、ネットワーク開発者、Ethereum ステーカーなど幅広い貢献者を対象に数か月間のクレーム期間を設定。
  • ZKsync(2024):2024 年 6 月 11 日に発表。総供給量の 17.5% を約 70 万ウォレットに一括配布し、プロトコル初期コミュニティへの大規模リワードとなった。

チームがエアドロップを行う理由(そして行うべきでないタイミング)

エアドロップは以下のような戦略的目的で利用されます。

  • 双方向ネットワークの立ち上げ:流動性提供者、トレーダー、クリエイター、リステーカーなど、必要な参加者をシードする手段。
  • ガバナンスの分散化:広範なアクティブユーザーへトークンを配布し、信頼できる分散型ガバナンス基盤を構築。
  • 早期貢献者への報酬:ICO やトークンセールを実施しなかったプロジェクトが、価値提供者に対して報酬を与える主要手段。
  • 価値観のシグナル:エアドロップ設計自体がプロジェクトのコア原則を示す。Optimism の公共財資金へのコミットが好例。

しかし、エアドロップは万能薬ではありません。以下の場合は実施すべきではありません。

  • プロダクトのリテンションが低い
  • コミュニティが弱体化している
  • トークンのユーティリティが不明瞭

エアドロップは既存の正のフィードバックループを増幅するだけで、壊れたプロダクトを修復することはできません。

ユーザー向け:安全に評価・参加する方法

エアドロップは魅力的ですがリスクも大きいです。安全に参加するためのチェックリストをご紹介します。

ドロップを追う前に

  • 正当性の確認:公式サイト、X(旧Twitter)、Discord など公式チャネルで情報を確認。DM や広告、未検証アカウントからの「クレーム」リンクは絶対に信用しない。
  • トークノミクスの把握:総供給量、ユーザー向け割当比率、インサイダーのベスティングスケジュールを理解。TokenUnlocks などで将来の供給リリースを追跡。
  • スタイルの把握:レトロアクティブ型か、ポイント型かを確認。ルールはモデルごとに異なり、ポイント型は基準変更のリスクがある。

ウォレットの衛生管理

  • 新規ウォレットを使用:可能なら、エアドロップ専用の低価値「バーン」ウォレットを作成し、メイン資産と分離。
  • 署名内容を必ず確認:盲目的にトランザクションを承認しない。悪意あるサイトは資産を奪う権限を取得できる。ウォレットシミュレータで取引内容を事前に確認し、Revoke.cash で不要な承認を定期的に取り消す。
  • オフチェーン署名に注意PermitPermit2 署名はオフチェーンでの承認であり、オンチェーン取引なしに資産が移動される危険がある。扱いはオンチェーン承認と同等に慎重に。

主なリスク

  • フィッシング・ドレナーハック:偽クレームサイトに資産を吸い取られるケースが最も多い。Scam Sniffer の調査によると、2023〜2025 年に高度なドレナーモジュールが多数流通。
  • ジオフェンシング・KYC:一部エアドロップは地域制限や本人確認(KYC)を要求。対象外国の居住者は除外されることがあるので必ず利用規約を読む。
  • 税金(簡易的な説明、助言ではない):税務処理は管轄により異なる。米国では取得時点の公正市場価値が課税対象となり、暗号エアドロップ は所得として扱われる。日本でも取得時点の時価が課税対象になる可能性がある。

ビルダー向け:エアドロップ設計のベストプラクティス

  1. 目的を明確化

    • ネットワーク立ち上げ、ガバナンス分散、コミュニティ報酬、価値観シグナルのうち、どれが主目的かを定義。
  2. 受取資格のシンプル化

    • 複雑すぎる条件は参加ハードルを上げ、誤解や不満を招く。スナップショット日時・ブロックは明示し、条件は数項目に絞る。
  3. クレームメカニズムは安全かつ低コスト

    • Merkle 証明を採用し、ガス代を最小化。クレーム期限を設け、期限切れトークンはリサイクルできる仕組みを用意。
  4. Sybil 耐性の実装

    • ウォレット年齢、取引頻度、クラスタリング分析を組み合わせた多層フィルタを導入。自己申告プログラムを併用すれば、コミュニティの協調的監視が可能。
  5. 透明性の確保

    • スナップショットデータ、Merkle ルート、ベスティングスケジュールを公開し、GitHubIPFS に保存。ユーザーが検証できる環境を提供。
  6. 法的コンプライアンス

    • エアドロップが証券に該当しないか、各国の規制を確認。必要に応じて法務チームと連携し、利用規約・プライバシーポリシーを整備。
  7. リリース後のフォローアップ

    • クレーム完了後も、トークンのユーティリティ提供やガバナンス参加の機会を設け、エアドロップ受取者が実際にプロダクトを利用できるようにする。

まとめ

暗号エアドロップは、トークン配布とコミュニティ形成を同時に実現できる強力なツールです。ただし、スナップショット設定、Merkle クレーム、Sybil 耐性、法的・税務コンプライアンスといった重要要素を適切に設計しなければ、ユーザーの信頼を失うリスクがあります。ビルダーはプロダクトの長期的な価値創出と合致したエアドロップ戦略を策定し、ユーザーはリスクを正しく認識した上で安全に参加することが求められます。暗号エアドロップの正しい活用で、分散型エコシステムの成長を共に推進しましょう。