CIP-99

QRコードベースのトークンクレームのためのCardano標準規格。

CIP-99(Proof of Onboarding)は、QRコードベースのトークンクレームキャンペーンの標準を定義するCardano改善提案です。Claimpaignはこの標準のリファレンス実装です。

CIP-99が定義するもの

この標準では以下が規定されています。

  • ウォレットが登録するURIスキーム(web+cardano://claim/v1)
  • ウォレットが受取人アドレスとともに呼び出すFaucet APIエンドポイント
  • ウォレットとFaucet間のリクエスト/レスポンス形式
  • エラーハンドリングとステータスコード

URI形式

各クレームコードには次のようなURIが含まれます。

web+cardano://claim/v1?faucet_url=https%3A%2F%2Fclaimpaign.com%2Fapi%2Fclaim&code=SUMMIT_a3bf9c

ウォレットがこのQRコードをスキャンすると、以下の処理が行われます。

  1. ウォレットがweb+cardano://claimプロトコルを認識する
  2. Faucet URLとクレームコードを抽出する
  3. 受取人のアドレスを含むPOSTリクエストを送信する
  4. ADA/トークン/NFTがトランザクションで送信される

標準化の意義

ヒント
CIP-99はオープンスタンダードのため、対応する全てのウォレットでキャンペーンコードが使えます。個別の連携作業は不要です。

トランザクションメタデータ

Claimpaignの全トランザクションには、オンチェーン識別のためCIP-10ラベル8414のメタデータが付与されます。

クレームトランザクション

{
  "label": 8414,
  "metadata": {
    "app": "claimpaign.com",
    "campaign": "a1b2c3d4e5f6…",
    "version": "1"
  }
}

トップアップトランザクション

{
  "label": 8414,
  "metadata": {
    "app": "claimpaign.com",
    "version": "1"
  }
}

campaignフィールドにはsha256(randomSalt + campaignId)が格納されます。これはキャンペーン作成時に一度だけ計算されます。内部のキャンペーンIDを公開することなく、ブロックチェーン上で同じキャンペーンのクレームを関連付けることができます。

著者

CIP-99はAdam DeanAlex Dochioiu、「Carl」によって作成されました。提案の全文はGitHubで閲覧できます。