A HIGH-FREQUENCY ASSET SETTLEMENT LAYER ON BSV
NFTバブルは秒間15件しか処理できないEthereumの上で起きた。つまりあの市場のボトルネックはスループットではなく、需要と実用性だった。高額PFPの投機取引は月に数回しか動かない。100万TPSを投機NFTマーケットに向けても、オーバースペックな高速道路に車が来ない。
OpenSeaとBlurの死因を並べると、理想の条件が自動的に出てくる:
| 死因 | Aglarondの解 |
|---|---|
| ロイヤリティがプラットフォームの善意頼み。徴収しない競合に必ずアンダーカットされる(Blur戦争)。 | OP_PUSH_TXコベナントでプロトコル層に強制(§5)。 |
| 手数料の底辺競争。0%+トークン補助は自殺。 | 板をオンチェーン公共財化し「他に持っていけない理由」を作る(§4)。 |
| トークン報酬で買った流動性は報酬で出ていく。 | 実預託ビッド。トークン補助なし(§6)。 |
| 投機は必ず干上がる。 | ゲームアイテム等の実用フローを土台に(§9)。 |
理想形は「OpenSeaの再発明」ではなく、投機マーケットプレイスの皮を被った高頻度アセット決済インフラである。板とUIは入口として持ち、収益の土台はユーティリティ取引の薄い手数料×膨大な件数に置く。市況が死んでも取引フローが残る。
EVMではNFTは「コントラクト内マッピングの1エントリ」で、移転には setApprovalForAll という包括承認が要る。これがWyvern時代のフィッシング被害の温床だった。UTXOモデルなら所有=UTXOの保有、移転=そのUTXOの使用なので、承認という概念自体が消える。攻撃面が構造的に小さい。
AglarondはBSVの 1Sat Ordinals を用いる。1つのsatoshiがNFTの担い手で、そのUTXOを持つ者が所有者。中身(画像・JSON)はインスクリプションとしてトランザクションに直接刻まれる。
売り手はNFTの1sat UTXOを入力に、「自分宛に価格X」という出力を対にして SIGHASH_SINGLE | ANYONECANPAY | FORKID(0xC3)で署名する。この署名は「私のNFTを使ってよい。ただし同じインデックスの出力が『私宛にX』である限り」という条件付き許可であり、それ自体が注文書になる。
買い手は支払い入力と自分宛のNFT出力を追加してトランザクションを完成させ、ブロードキャストするだけ。エスクローも決済コントラクトも不要で、交換の原子性はビットコインのトランザクション検証そのものが保証する。
約定tx(ordinal satフロー準拠・Magic Eden型ダミー方式)
in0 ダミー(買い手 600) out0 1200 → 買い手(ダミー返却)
in1 ダミー(買い手 600) out1 1 sat → 買い手 ★ordinal着地点
in2 NFT 1sat(売り手PST署名) out2 価格 → 売り手(PSTが固定・改竄不能)
in3+ 買い手資金 out3 ロイヤリティ → クリエイター
out4 マーケット手数料 → 運営
out5 お釣り → 買い手
SINGLE|ACPの位置独立性(PSTのindex0署名が最終txのindex2で有効)はユニットテストで担保している。取下げはNFTの自己移転:PSTの入力UTXOが消えるため、注文はプラットフォームの操作なしに数学的に失効する。
Ethereumでは出品・キャンセル・入札を全部オンチェーンにするとガス代で死ぬので、OpenSeaもBlurもオーダーブックはWeb2サーバーだった(=検閲可能・停止可能・不透明)。手数料がサブセント固定で秒間100万件捌けるBSVなら、注文をトランザクションとして流す完全オンチェーン・オーダーブックが成立する。
Aglarondは注文をPST全文ごと OP_RETURN AGLAROND|v1|order|<origin>|<price>|<royBps>|<royAddr>|<PST hex> で公開する。板が公共データになり、当マーケットのサーバーが消えても誰でも検証・約定できる。ビッドも取下げも同様に刻む。
ここがEVM勢との最大の差別化点になり得る。OP_CHECKSIG は与えられた署名を「使用トランザクションのBIP143 sighash」に対して検証する。固定の秘密鍵 a=1(公開鍵=生成点 G)と固定の一時鍵 k=1(R=G, r=Gx)を使うと、ある preimage に対して有効な署名 (r,s) は
r = Gx(定数) s = (z + r) mod n, z = HASH256(preimage) = sighash
で一意に決まる。ロック側でこの (r,s) を preimage から Script 内で構成し <pubkey=G> OP_CHECKSIG にかけると、CHECKSIGは使用tx自身のsighashで検証するため、アンロックが押し込んだ preimage が使用tx本物の preimage と一致しない限り成立しない。これで使用txの中身(=出力群)をロックスクリプトから拘束できる。これがsCryptで知られる Optimal OP_PUSH_TX と同型の技法である。
preimageの末尾は … || hashOutputs(32) || nLockTime(4) || sighashType(4)。ここから hashOutputs を切り出し、アンロックが押し込んだ「出力バイト列」のHASH256と一致を要求すれば出力群を確定できる。出力の先頭を「ロイヤリティ額→クリエイター」に固定し、その定数プレフィックスをScriptで照合すれば、ロイヤリティを含まない使用txは弾かれる——どのマーケットで売っても。マーケット層の善意に依存しないので、Blur型のアンダーカット攻撃が原理的に成立しない。
署名数学 (r,s) が公開鍵Gに対し本物のsecp256k1 ECDSAとして有効なことを実ライブラリ(decred secp256k1)で検証。さらに、コベナントのロックスクリプト全体——OP_PUSH_TX束縛(HASH256→数値化→s計算→low-S→in-script DER組立→CHECKSIGVERIFY)、hashOutputs束縛、ロイヤリティ先頭固定——を、使用txから独立にsighashを再計算する自作Script-VMで実際に実行し、準拠spendが成立、ロイヤリティの減額・宛先すり替え・削除を全て棄却することを確認した。エンディアン(OP_HASH256のBE値をOP_BIN2NUMのLE解釈へ反転)も含めbyteレベルで通っている。
現在のin-script DERは共通形(s の32バイトBE先頭が非ゼロ。low-S正規化により先頭ビットは常に0なので0x00前置は不要、確率255/256で該当)を組む。s が稀に先頭ゼロを持つ場合(約1/256)の最小化剥ぎ、および実メインネットの各ノード標準性ルールでの最終確認はフェーズ3(sCryptコンパイル相当)。それまでの本番ロイヤリティは、テスト済みのPST+約定ビルダー強制(買い手が支払時にロイヤリティ出力を必ず含む)で担保する。
トレードオフとして、強制ロイヤリティはトレーダー受けが悪く流動性を削るため、率は1〜2%程度に抑えるのが現実解(上限10%)。
Blurのビッドプールは本物の発明だったが、それを満たすETHがエアドロ目当てだったのが敗因。報酬で買った流動性は報酬で出ていく。Aglarondは買い手がコレクション単位の買取価格をOP_RETURNで公示し、保有者はいつでも即売りできる。トークン報酬による見せかけの流動性ではなく実残高ベース。約定はアトミック決済で、ロイヤリティ・手数料も同時分配する。
カストディアルβでは会員鍵をサーバーが管理するが、PSTプロトコル自体は非カストディアル対応である。Zhou Wallet(BSV+ETH対応のMV3拡張)に window.zhou.bsv.signInput() を追加し、NFTの特定入力に SINGLE|ACP で部分署名して署名だけを返す(ブロードキャストしない)口を新設した。秘密鍵はウォレット内から一切出ない。
Zhou Walletが使う @bsv/sdk でSINGLE|ACP署名を生成し、それがAglarondのGo実装(decred secp256k1+自前BIP143 preimage)の検証を通ることをクロスライブラリで確認。異なる2つのライブラリでBIP143 preimage構築が一致=統合が暗号レベルで成立している。
重要な事実として、「どのUTXOがどのNFTか」をチェーン自体は検証していない。ノードはビットコインのルール(署名・二重使用)しか見ておらず、「このsatoshiにこの画像が刻まれている」という解釈は外部のインデクサが行う。
これは実測で確認できる。あるNFT(テストネット・149,910バイトのスクリプト)は先頭が 00 63=OP_FALSE OP_IF で始まる。インスクリプション本体(画像14.9万バイト)は、この「常にfalse=絶対に実行されない分岐」の中にあるデッドコード(pushdata)である。ノードが実際に評価するのは末尾のP2PKH(この鍵の署名+二重使用でないこと)だけ。「これは呂布のNFT」という解釈はコンセンサスに一切存在せず、インデクサ(=マーケットのDB)が保持している。
だからこそ、ロイヤリティのようなルールを本当に強制したいなら、解釈をインデクサに委ねてはならない。ビットコインの検証そのもの(=OP_PUSH_TXコベナント §5)に埋め込む必要がある。§8の事実が §5 の存在理由である。
100万TPSが競争優位になるのは、取引1件あたりの価値が小さく頻度が異常に高い資産——ゲーム内アイテム・チケット・マイクロロイヤリティ・ポイント。Aglarondは投機市場ではなく、これらの決済インフラを本命に据える。
実装として、麻雀×対戦格闘メディア「赤壁」の闘技の間と接続した。バトル勝利時、勝った英傑の固有武器(武器種×五行のパラメータ)をJSONインスクリプションとして sekiheki-armory コレクションにミントする。1ドロップ=数百バイト・手数料100 satsで、ゲーム内の高頻度ドロップ→ミント→流通が回る。プログラマティック取引API(/api/v1/*、Bearer認証)でミント・出品・購入・ビッドを叩ける。
当面Aglarondはプロトコル埋め込み手数料だけで回し、トークンは発行しない——それが健全なデフォルト。トークンが正当化される段階での予約名が Qín(秦) であり、これはゲーム横断の経済レイヤーとして設計する:赤壁と将来のゲーム群の経済を等しく決済する1つのトークン。その価値はペッグや準備金ではなく、実際のゲーム・マーケット活動の手数料フローを捕捉することから来る。
自由変動するトークンの価格が「絶対に下がらない」ことは保証できない。そう謳うプロジェクトは何かを売っている。設計できるのは構造だけ——実活動からの継続的な買い圧と、供給の継続的な除去・ロック。利用が伸びれば価格は構造的に支えられる。これはBlurの正反対だ(Blurのインフレ的な報酬発行は傭兵に投げ売られた)。準備金ミラー(負債裏付け)方式も明確に採らない。
柱1 — 手数料捕捉 → バイバック&バーン。 Zhouトークンの定期バーンに倣い、Qín連携ゲーム群とAglarondマーケットの全手数料(sats建て)の固定割合を、Qínを市場で買い戻してバーンする原資に充てる。ゲームが増え取引が増えるほど買い戻しが増える——実収益で賄うデフレであり、新規発行によるものではない。
柱2 — ステーキング(PoS的な経済参加)、報酬は発行でなく実利回り。 保有者はQínをステークして、プロトコルの手数料収益(実sats・ステーカーへ分配)の按分を得る——新規発行Qínではない。利回りは希薄化ではなく利用から生まれる。これが反インフレの要。ステークはさらにマーケット手数料の減免・出品優先・ゲーム内ドロップ率上昇や限定ドロップ・ガバナンス投票権を解放する。ステークはロック(アンボンディング期間)されるため流通供給を減らし価格を支える。ここでの「PoS」はチェーンを守るものではない(それはBSVの役目)——経済への参加を守り優先する。
柱3 — ユーティリティ・シンク(基礎需要)。 Qínは——消費またはステークの形で——ゲーム内アイテムの作成・強化(作成はQínをバーンまたはロック)、ランク戦・プレミアムモードの参加、Aglarondでの手数料減免ミントに必要。1つのQín残高が赤壁と将来タイトルを横断するパスポートになる。どのシンクもQínをバーンかロックし、どちらも価値を支える。
ロック期間が長いほど、手数料収益プールの按分ウェイトとゲーム内特典が上がる。長期ロックを厚遇することで流通供給を積極的に減らし、価格を支える。元本のスラッシングはしない(ゲームトークンで保有者を萎縮させないため)が、早期解約は未収利回りを没収してプールへ還元する——残って約束を守るステーカーの取り分が増える。
| 階層 | ロック | 収益ウェイト | ドロップ率 | 手数料減免 | 投票権 |
|---|---|---|---|---|---|
| Flexible | なし(解約7日) | 1.0× | — | 5% | 1.0× |
| 青銅 | 30日 | 1.25× | +5% | 15% | 1.5× |
| 白銀 | 90日 | 1.6× | +12% | 30% | 2.5× |
| 黄金 | 180日 | 2.2× | +25% | 50% | 4× |
収益は各ステーカーの「ステーク量 × 階層ウェイト」の比で手数料プール(実sats)から配分。ドロップ率・手数料減免・投票権も同様に階層で解放する。これにより「長くコミットするほど、実利回りもゲーム内の強さも増す」設計になり、投機的な短期売買より長期保有が有利になる。数値はローンチ前にシミュレーションで最終調整する(暫定値)。
柱1のバイバック&バーンは机上論ではなく、姉妹プロジェクトのZhouトークン(zhou-node)で稼働実績のある機構をそのまま継承する。Zhouの検証済み設計から採るもの:
OP_FALSE OP_RETURN で恒久焼却。定期・定額のbuybackはフロントラン標的になるため、実行間隔に±20%のジッター・TWAP(EMA)・スリッページ下限3%を入れ、操作された価格での不当バーンは次回へ持ち越す(Uniswap/Wormholeの被害事例から学んだ実装)。あえての相違=ステーキングを足す。 Zhouは初期のステーク型PoSを破棄し「Proof of Hold(保有=ウェイト・ロック不要)」を採った。これはZhouの目的が「ノード運営者への報酬分配を単純に行う」ことだったから正しい選択だった。Qínの目的は違う——ゲームトークンの価格を支えること。その目的にはステーキングのロックが機能そのものになる:ロックされたトークンは投げ売れないため、流通供給が構造的に減る。だからQínはZhouの手数料・バーン・エミッション機構を継承しつつ、Zhouが省いたステーキング層をあえて足す。ただしZhouの教訓に従い、保有量ウェイトを近似で済ませず実残高インデクサを最初から用意する(Zhouはここを後付けにして乖離した)。
JPYSは円建て前払式=安定した計算単位。Zhouはzhou-nodeのスワップ/AMMトークン。Qínはゲーム横断のユーティリティ+ステーキングトークンで、流動性のためにzhouswap経由でスワップ可能にしうる(Qín↔BSV↔USDC)が、その価値はペッグではなくゲーム手数料の捕捉から来る。
Qínは設計にとどまらず、BSVテストネット上に実トークンとして発行済みである。方式は姉妹プロジェクトJPYSと同じ DSTAS(STAS 3.0)——タグ付きUTXOトークンで、1 QIN = 1 satoshi裏付け。genesis一括発行(固定上限)→ treasuryへ、という§10の供給設計をそのままオンチェーンで実現する。
9264dc92…・総供給21,000(本番上限のスケール版)2a87c577…(全量→treasury)/ 配布tx 0a326f18…(split配布1,000 QIN)OP_FALSE OP_RETURN で焼却する(Zhou継承)。上記はテストネットの技術デモンストレーションであり、メインネットでの販売・一般発行はしていない。メインネット発行時には適切な法的整理(トークン分類・必要に応じ前払式支払手段等)を伴う。数値(供給量・階層パラメータ)はローンチ前にシミュレーションで最終調整する。
| 項目 | txid / 検証 |
|---|---|
| PST注文の公開(板オンチェーン) | c5fa6c7d… |
| 売り手不在での約定 | 76a57af1…(価格→売り手PST固定 / 2%ロイヤリティ / 手数料) |
| 実預託ビッド即売り | 4148dfd4… |
| 武具NFT(JSONアセット)ミント→出品→API購入 | bf49102d… |
| OP_PUSH_TX署名数学 | 実secp256k1 ECDSAで検証・ロイヤリティ改竄を全棄却 |
| 非カストディアル署名 | @bsv/sdk署名 → Go検証がクロスライブラリで一致 |
| インデクサ境界の実測 | OP_FALSE OP_IFデッドコードをチェーンデータで確認 |
| コベナントDER(全域) | 共通形32B+先頭ゼロ稀ケースの両方をScript-VMで成立確認 |
| Qínのオンチェーン発行 | DSTAS(STAS 3.0)でテストネット発行 issue 2a87c577…/配布 0a326f18… |
本書は技術デモンストレーションの設計書であり、投資助言ではない。記載のトランザクションはすべてBSVテストネット上のもの。暗号資産・NFTには価格変動および技術的リスクが伴う。