EVMモードとUTXOモード
PaliはアカウントベースのEVMネットワークとUTXOベースのネットワークをサポートします。アカウントモデルが根本的に異なるため、拡張機能は別々のプロバイダーサーフェスを使用します。
EVMモード
EVMモードはwindow.ethereumを使用するdapps向けです。MetaMaskスタイルのアカウントリクエスト、トランザクション、署名、権限、トークン監視リクエスト、ネットワーク管理をサポートします。
例:
- RolluxおよびSyscoin NEVM dapps
- ERC-20、ERC-721、ERC-1155の操作
- EIP-712 typed data署名
- passkeyスマートアカウントの作成と実行
UTXOモード
UTXOモードはwindow.paliを使用するdapps向けです。Syscoin UTXOアカウント状態、xpubを考慮した連携、PSBT署名、トランザクションブロードキャスト、SPTアセットフローをサポートします。
例:
- Syscoin UTXOアセットアプリケーション
- Bitcoin風のPSBTワークフロー
- 変更アドレスを必要とするdapps
- UTXOトランザクション履歴を読み取るdapps
モード切り替え
dappが誤ったチェーンファミリー向けのメソッドをリクエストした場合、Paliはネットワーク切り替えを要求することがあります。dappsはこれらのエラーを適切に処理し、ユーザーを正しいネットワークへ案内する必要があります。
await window.ethereum.request({
method: 'eth_changeUTXOEVM',
params: [{ chainId: 57 }],
});
await window.pali.request({
method: 'sys_changeUTXOEVM',
params: [{ chainId: 57 }],
});
UTXOコンテキストとEVMコンテキストを切り替えると、アクティブなアカウントファミリーが変わるため、dappの再接続が必要になる場合があります。