アーキテクチャと概念
QoreChain は、3 つのスマートコントラクト仮想マシンを並行して実行する単一のレイヤー 1 チェーンであり、アカウントとトークンを共有します。
トリプル VM モデル
| VM | コントラクト | SDK でのクライアント面 |
|---|---|---|
| QoreChain Native | Rust/Wasm コントラクト(CosmWasm ランタイム) | @qorechain/sdk の client.cosmwasm() および queryContractSmart / execute ヘルパー |
| QoreChain EVM Engine | Solidity / Vyper | @qorechain/evm(viem アダプター) |
| SVM | Solana プログラム | @qorechain/svm(@solana/web3.js アダプター) |
ネイティブ(Cosmos)レイヤーは、銀行送金、ステーキング、ガバナンス、そしてランタイム間でメッセージをルーティングする x/crossvm モジュールを処理します。
読み取り面
SDK は、いくつかのエンドポイントを通じてノードと通信します。
- Cosmos REST (LCD) — 銀行残高、アカウント情報、モジュールクエリ。
- コンセンサス RPC — ネイティブトランザクションの署名/ブロードキャスト、および QoreChain Native 読み取りクライアントに使用されます。
- EVM JSON-RPC — 公開エンドポイント上の標準的な
eth_*、net_*、web3_*、txpool_*呼び出し。QoreChain のqor_*名前空間と EVM プリコンパイルは、現時点ではそこでは利用できません(下記参照)。 - SVM JSON-RPC — SVM ランタイム向けの Solana 互換 RPC(公開エンドポイントでは読み取り専用。SVM トランザクションの送信はネットワーク全体で無効化されています)。
これを有効にしているノードでは、qor_* JSON-RPC 名前空間が、トークノミクス、PQC 鍵ステータス、ハイブリッド署名モード、クロス VM メッセージ、ネットワーク統計など、QoreChain 固有の読み取りを公開します。TypeScript では、これらは client.qor(QorClient)上の型付きメソッドです。同じ面が Python、Go、Rust の SDK にも存在します。公開エンドポイントに対しては、代わりに REST ルートを使用してください(例: PQC 鍵ステータスには GET /qorechain/pqc/v1/account/{address}、バーン統計には GET /qorechain/burn/v1/stats)。
まだ提供されていません: リリース済みのノードビルドはいずれも
qor_JSON-RPC 名前空間を提供していないため、現時点ではすべての公開エンドポイントで、あらゆるqor_*呼び出しが-32601(メソッドが見つかりません)を返します。qor_名前空間 を参照してください。
トークンと通貨単位
- 表示トークン: QOR。
- 基本通貨単位: uqor、QOR あたり 10^6 基本単位。
金額の計算は常に基本単位で行ってください。SDK は正確な変換を提供するため、浮動小数点で精度を失うことはありません。
import { toBase, fromBase } from "@qorechain/sdk";
toBase("1.5"); // "1500000" (QOR -> uqor)
fromBase("1500000"); // "1.5" (uqor -> QOR)
注: EVM ランタイムは QOR を 18 桁の小数で表現します(EVM の慣習)。これは Cosmos の
uqorの 10^6 の基数とは異なります。@qorechain/evmクライアントは表示にデフォルトで 18 桁の小数を使用します。対象のネットワークの値を確認してください。
アドレス
同じ鍵素材は、3 つのアドレス形式で表現できます。
- native —
qorプレフィックスを持つ bech32(qor1…)、バリデーターはqorvaloperを使用します。 - EVM —
0x…、EIP-55 チェックサム付き。 - SVM — ed25519 公開鍵の base58。
導出パスについては アカウントと PQC 署名 を参照してください。
クロス VM
QoreChain の x/crossvm モジュールは、ある VM 上のコントラクトが別の VM 上のアクションをトリガーできるようにします。EVM→native のパスは、クロス VM ブリッジプリコンパイル(@qorechain/evm。公開ネットワークではまだ有効化されていません)を通じてオンチェーンで実行され、SDK は型付きの REST 読み取りヘルパー
(getCrossVmMessage、getPendingCrossVmMessages、getCrossVmParams)に加え、メッセージの状態を追跡する client.qor.getCrossVmMessage(...) を提供します。公開エンドポイントでは、REST ヘルパーと client.qor は提供されていません。メッセージは connectQueryClients(rpc).crossvm で読み取ってください。クロス VM ガイド を参照してください。