サンプルスマート契約
Hyperledger Besu用のOracle Blockchain Platform Enterprise Editionには、サンプル・スマート・コントラクトが含まれています。このスマート・コントラクトは、サービス・コンソールの「開発者ツール」ページで入手できます。
Solidityソース・コードまたはアプリケーション・バイナリ・インタフェース(ABI)をダウンロードするには、各契約の「ダウンロード・オプション」メニューを選択します。この情報を使用して、RPCプロキシAPIコールを使用して、デプロイされたスマート・コントラクトと対話できます。また、ソース・コードをHardhatやRemixなどのSolidity開発環境にインポートし、必要に応じて変更や拡張を行うこともできます。
ハッシュ時間ロック済契約(HTLC)
この契約は、インスタンスの作成時にデプロイされます。Hash Time-Locked ContractはETHトークンとERC-20トークンの原子的交換を可能にし、受信者が締め切り前に支払いを請求したり、支払いを送金者に払い戻したりします。契約では、次の操作がサポートされています。
- ETHor ERC-20トークンを交換します。
- 受取人の資金を指定された期間秘密の状態でロックします。
- ロックの有効期限が切れる前に正しいシークレットを指定することで、ロックされた資金を要求します。
- ロックの有効期限が切れた後に、未請求のロック済資金を送信者に払戻します。
- ロックされた取引所のステータス(請求済か払戻済か、ロック済金額、ロック期限など)を取得します。
ソウルバウンドトークン(SBT)
この契約は事前デプロイされていません。ソース・コードをダウンロードしてコンパイルし、HardhatやRPCプロキシAPIなどのツールを使用して契約をデプロイする必要があります。Soul Bound Token契約は、ウォレットIDに関連付けられた転送不可のNFTスタイルの資格証明を実装します。トークンは、トークン・ホルダーによってのみ発行、検証、取消しまたは書込みができます。売ったり移動したりすることはできません。契約では、次の操作がサポートされています。
- 契約所有者(管理者)は、資格証明を発行または取り消すことができます(ウォレット内のソウル・バウンド・トークンを分または書き込みます)。
- アプリケーションは、ウォレットにソウル・バウンド・トークンが含まれているかどうかを確認し、使用可能なトークン・メタデータ(URI)を読み取ることができます。
- トークン・ホルダーは、ソウルバウンド・トークンを燃やすことができます。
LockBox
この契約は、インスタンスの作成時にデプロイされます。LockBox契約は、ETHおよびERC-20トークンを保持する時間ロック・ボールトを実装し、そのコンテンツを特定の時点で指定された所有者に解放します。契約では、次の操作がサポートされています。
- ETHを直接送信するか、ERC-20トークンを転送することで、ボールトに資金を預けます。
- ボールトの詳細(受益者/所有者、リリース時間、ボールト内のトークン/ETHなど)を取得します。すべてのユーザーがこの情報を取得できます。
- 指定した時間に資金をリリースします。指定したタイム・スタンプの後、所有者はリリース処理をコールして資金を取得できます。