SARAH Wallet戦略

ERC-6551(TBA)を活用したWallet戦略を記載

ユーザーWallet戦略概要

ERC-6551を活用することで、ユーザーウォレット非接続状態でのNFT保有を実現する。

決定論的に作成されたアカウントアドレスとオフチェーン上のユーザー情報を紐付けることにより、SARAHユーザーはウォレットを意識することなく、OnigiriChain上のデータを間接的に保有することを可能とする。

ERC-6551構成要素と挙動

ERC-6551と各種Tokenの関係性

ユーザー所有ウォレットへのERC-6551(TBA)譲渡

アカウントアドレスが保有する各種Tokenをユーザー所有のウォレットへTransferする際に、ERC-6551を生成しTokenBoundAccountに紐づく全TokenデータをユーザーのウォレットへTransfer可能な構成とする。

ERC-6551をユーザーウォレットにTransfer後、SARAHシステムはTransfer前と変わらずTBAのアカウントアドレスに対して各種Tokenを紐付ける状態となる。

ユーザー所有のウォレットへERC-6551をTransfer後、ERC-6551本体の譲渡は不可となり、TBAに紐付く各種データは自由に譲渡可能な状態となる。

TBA譲渡前と譲渡後データ構造

NOREN NFTの譲渡

NOREN NFTは、SARAHシステムを経由してユーザーウォレットにERC-6551を譲渡したのちに、他ユーザーへ譲渡可能な状態となる。

尚、NOREN NFTのTransfer時に、ガス代はかからないものとする(Relayerを経由させることで実現)

TBA譲渡に関する制限事項

ERC-6551をSARAHサービスからUserWalletへTransferすると、二度と譲渡できない仕組みを導入することにより、SARAHシステムにおけるTBAアドレスとその保有者のリレーション(オフチェーン)と、オンチェーン上でのTBA保有者が一致する状態を担保する。

上記譲渡制限の仕組みは、オフチェーンに保持しているユーザー⇔TBAアドレスの整合性(誰かに譲渡されない=必ずTBAアドレスの保有者がSARAHシステムのユーザーであること)を保証する重要な特徴である。

  • UserWalletにTransferされた後、ERC-6551は再度Transferされることはない。

  • SARAHシステムはTransfer後も、ERC-6551(TBAアドレス)に対してTokenを紐付け続ける。

これにより、既存ユーザーがBlockChain特有のウォレットの概念を意識することなくサービス利用可能な状態となり、将来的にユーザーウォレットへ自身のデータを譲渡可能かつ、オフチェーン側との整合性が崩れない仕組みを実現する。

Last updated