インテントとは?
大まかに言えば、インテントはユーザーが実行したいアクションを指定し、セッションキーで署名された JSON オブジェクトです。たとえばメッセージに署名する場合、クライアントは次のようなインテントを WaaS API に送信します:- 署名: 通常、1つの署名がセッションを表します。セッションはローカルで作成される鍵ペアで、公開鍵は
sessionId
の一部、秘密鍵はデバイス上に保持されます。ウォレットへのアクセスを提供するセッションキーは、できるだけ安全に(理想的にはデバイス内のセキュアエンクレーブに)保管してください。セッションを利用する前に、WaaS API で登録が必要です。 - 署名は、インテントの正規表現(アルファベット順のキー、空白なし、
signatures
フィールドを除く JSON)に対する EIP-191 署名です。 - 名前とデータ: 名前とデータはインテントごとに異なります。名前はインテントの種類を、データはそれに関連する情報を示します。
- タイムスタンプ: API は Unix タイムスタンプを確認し、インテントの有効期間を判断したり、過去のインテントの再利用を防ぎます。