03 · システムアーキテクチャと役割
本章では主要オブジェクトをシステム全体に配置し、コントラクト階層、共有境界、参加者の責任を説明します。
3.1 4 層アーキテクチャ
通常のアプリケーションは主に資産層へアクセスします。ID 作成時は ONCHAINID Gateway、新規資産発行時は TREXGateway を使用します。
3.2 プラットフォーム共有と資産固有
プラットフォーム共有機能
ONCHAINID Gateway:投資家が ID を作成する公開入口。IdFactory:ID を作成し、ウォレットとの対応を保存。TREXGateway:新規資産発行の審査入口。TREXFactory:資産 Suite を作成。- Implementation Authority:プロキシが使う実装バージョンを管理。
公開アドレスは 06 · 環境設定と受入検証 に記載されています。
資産ごとの独立機能
各発行で次のコントラクトが新規作成されます。
Token
IdentityRegistry
IdentityRegistryStorage
ClaimTopicsRegistry
TrustedIssuersRegistry
ModularCompliance
各資産は適格要件、承認機関、コンプライアンスルール、管理ロールを独立して設定できます。
3.3 1 資産内部の接続
関連アドレスの一部はオンチェーンから動的に取得できます。
Token.identityRegistry() → IdentityRegistry
Token.compliance() → ModularCompliance
IdentityRegistry.identity(wallet) → Investor ONCHAINID
IdentityRegistry.topicsRegistry() → ClaimTopicsRegistry
IdentityRegistry.issuersRegistry() → TrustedIssuersRegistry
公開アドレス表とオンチェーン結果の両方を検証し、差異がある場合は書き込みを停止して対象資産設定を確認してください。
3.4 5 種類の参加者
Project RWA プラットフォーム
RPC、Chain ID、Explorer、公開コントラクトアドレスの公開、新規発行審査、共有 ID・発行・バージョン基盤の保守、アップグレード・セキュリティ通知、テスト環境と統合支援を担当します。現実資産の権利や償還条件は資産発行者が定義します。
資産発行者
資産名、シンボル、decimals、現実の権利、必須 Claim Topics、承認 ClaimIssuers、国・上限・ロックアップルール、Owner・Token Agent・IR Agent を定義し、投資家登録と mint、burn、pause、freeze を実行します。
適格性発行機関
オフチェーン KYC/AML 審査、Claim 署名、適格性の期限・失効管理、署名鍵保護を担当します。
投資家
ONCHAINID の作成・管理、署名済み Claim の提出、自分のトランザクションの gas 支払い、transfer・approve の実行、ウォレット鍵の保護を担当します。
アプリケーション開発者
正しいネットワークとプロキシアドレスの使用、decimals と関連コントラクトの動的取得、管理秘密鍵を保有しない UI 連携、レシート・イベント・revert の処理、オンチェーン状態とオフチェーン業務状態の区別を担当します。
3.5 操作と権限
| 操作 | 対象 | 署名者 | プラットフォームまたは発行者権限 |
|---|---|---|---|
| 資産・残高照会 | Token | なし、read-only | 不要 |
| 適格性照会 | IdentityRegistry | なし、read-only | 不要 |
| ONCHAINID 作成 | ONCHAINID Gateway | 投資家 | 不要 |
| Claim 署名生成 | オフチェーン署名サービス | 適格性機関 | 必要 |
| Claim 書き込み | 投資家 ONCHAINID | 投資家 | 不要 |
| 投資家登録 | IdentityRegistry | IR Agent | 必要 |
| mint / burn | Token | Token Agent | 必要 |
| 通常 transfer | Token | Token 保有者 | 不要 |
| 新規資産発行 | TREXGateway | 承認済み発行者 | 必要 |
| コントラクト upgrade | バージョン管理コントラクト | ガバナンスロール | 必要 |
アプリケーションはトランザクションを構築できますが、最終署名者はコントラクト権限を満たす必要があります。
3.6 複数資産のシナリオ
ウォレットと ONCHAINID は再利用できます。各資産は独自に適格性を判定します。Claim 再利用は同じ Topic と Issuer の承認状況に依存し、各資産固有の IdentityRegistry を照会します。IdentityRegistryStorage の共有有無は発行設計に依存するため、アプリケーション側で仮定しないでください。
3.7 アップグレードが外部アプリケーションへ与える影響
通常のアップグレードではプロキシアドレス、残高、ID 状態は変わりません。
| 対象 | バージョン機構 | 影響範囲 |
|---|---|---|
| Token, IR, IRS, CTR, TIR, MC | TREX Implementation Authority | 同じ IA を参照する資産 Suites |
| 投資家 ONCHAINID | ONCHAINID Implementation Authority | 同じ IA を参照する ID コントラクト |
| upgradeable compliance module | ERC1967 / UUPS | 当該モジュールを参照する資産 |
ABI の追加・廃止、イベント互換性、移行手順、アップグレード後のネットワーク・アドレス・read-only 検査を監視してください。通常のアプリケーションは upgrade インターフェースを直接呼び出しません。
グローバル IA アップグレードは影響が広いため、本番発行者は multisig、遅延実行、storage layout 検査、事前リハーサルを使用します。
3.8 ガバナンスとセキュリティ境界
| 権限 | 用途 | 推奨 |
|---|---|---|
| Owner | upgrade、部品置換、ルール設定 | 本番では multisig と遅延実行 |
| Agent | 登録、mint、burn、pause、freeze、日常運用 | 職務分離、最小権限、監査記録 |
| Contract callback | Token・Compliance・module 間の自動呼び出し | 人間のウォレットへ付与しない |
| ONCHAINID Key | ID 管理、実行、Claim 署名 | management key と Claim key を分離 |
Safe などの multisig は Owner または ID 管理権限を保持できます。Claim 検証が復元可能な署名アドレスに依存する場合、Claim key には管理された EOA、HSM、MPC 署名サービスを使用します。
Owner、Agent、IA、ClaimIssuer の制御喪失は資産や投資家適格性に直結します。pause 中でも Agent の mint、burn、強制移転、ウォレット復旧は可能です。trusted Issuer の削除や必須 Topic の変更は多数の投資家へ同時に影響します。コントラクトは原資産の真正性、法的権原、償還手続きを代替しません。