Bank Precompile
Bank Precompileは、固定アドレス0x0000000000000000000000000000000000000064に存在するシステムスマートコントラクトです。
EVM開発者に、Injectiveのbankモジュール(x/bank)と直接インタラクションするためのgas効率が良くネイティブな手段を提供します。これにより、ERC-20トークンを効果的にオンチェーンに導入できます。Bank precompileを使用するERC-20コントラクトは、オンチェーンでerc20:0x... denomとして表現されます。技術的には、トークンはオンチェーンにのみ存在し、EVMはチェーン状態へのビューを提供するだけで、別のコピーを維持しません。2つのトークンバージョンの切り替えにユーザーアクションが必要な従来のブリッジとは異なり、Bank precompileはオンチェーンのbank denomまたはERC-20 transfer()メソッドのいずれかを使用した転送に対してリアルタイムのデュアル環境反映を提供します。
Bank precompileに基づくERC-20実装の一連のコントラクト、precompileインターフェース、抽象コントラクトがInjectiveのSolidity Contractsリポジトリで利用可能です。主要なコントラクトは以下の通りです:
- Bank.sol – precompileインターフェース
- BankERC20.sol – Bank precompileに基づく抽象ERC20実装
- FixedSupplyBankERC20.sol – 固定サプライの分散型ERC20(オーナーなし、mintおよびburnなし)
- MintBurnBankERC20.sol – オーナーがmintとburnを許可されたERC20
