このテクニカルノートは、ScaleBit の研究チーム、Leonによって書かれました。 Written by
TL;DR
この記事では、BEVMのクロスチェーンオペレーションにおけるルーンの一部の最近の「損失」について説明します。
この記事では、BEVMのクロスチェーン操作における最近のルーン「紛失」のいくつかについて詳しく分析するとともに、そのような問題の再発を回避するためのセキュリティ上の推奨事項を説明します。
最近、私たちはBEVMクロスチェーン操作におけるいくつかのルーン「損失」現象に気づき、コミュニティに懸念と疑念をもたらしました。この記事では、この問題を深く分析し、ユーザーにより包括的な理解を提供することを目指し、また、最近話題の碑文やルーンの使用プロセスについて少し注目する機会にしたいと思います。
背景
北京時間2023年12月23日、一部のBEVMクロスチェーン取引ユーザーは、口座内のCOOKとPSBTSの一部が、知らないうちに新しい口座に移されていることに気づきました。一部のBEVMユーザーは、口座に保有するCOOK、PSBTS、PSBTSの一部が知らぬ間にクロスチェーンブリッジに移管されていることを発見し、BEVMチームに移管について質問しました。その後、BEVMの公式ツイートは声明を発表し、ルーンの一部が Unisat のような主流のウォレットによってサポートされていないため、 BEVM へのクロスチェーンでは、このタイプの非主流の碑文は通常のUTXOとして扱われると述べました。> BEVMのアドレスへ。
スケールビットのセキュリティチームはこのことに気づき、すぐに調査を行いました。スケールビットチームの調査の結果、ルーンの一部は同じクロスチェーン取引で通常のUTXOとして転送され、BEVMによって「盗まれた」わけではないことが確認されました。
本文
BEVMの公式ウェブサイトから引用すると、BEVMはBTCをGasとするBTC Layer2であり、EVMと互換性があります。BEVMはEVMと互換性のあるBTC Layer2であり、その中心的な目標はビットコインのスマートコントラクトシナリオを拡張し、ビットコインブロックチェーンの非チューリング完全で非サポートのスマートコントラクトの制約をBTCが突破するのを助け、BTCをネイティブガスとしてBEVMのLayer2上に分散型アプリケーションを構築できるようにすることです。
最近、BEVM Odysseyのオープンに伴い、多くのユーザーがBTCをBEVMにクロスチェーンし、将来的にBEVMエコシステムに参加する機会をつかむことを期待して、相互交流を始めました。しかし、クロスチェーンの過程で、COOKとPSBTSの一部が紛失していることに気づいたユーザーもおり、ブロックチェーンブラウザによると、ルーンの一部がBEVMのクロスチェーンブリッジに転送されていることがわかり、前述のような事態を招いた。
次に、何が起こったかを見てみよう。
まず、 BEVM ブラウザ(https://scan.bevm.io/stats)からクロスチェーンの取引情報を見つけ、それを分析することで、クロスチェーンブリッジの受信アドレスが:
bc1p43kqxnf7yxcz5gacmqu98cr2r5gndtauzrwpypdzmsgp7n3lssgs5wruvy.
その後、私たちはRune Alphaでいくつかのクロスチェーンブリッジメッセージを発見しました。(COOKやPSBTSなどのRUNESプロトコルをサポートする)汎用ブラウザおよびサービスでは、そのアドレスに11万以上のCOOKと28万以上のPSBTSを含む多数の様々なルーンを保持しています。
そこで、ルーン関連のトランザクションの一部を調査・分析しました。調査と分析。
これらの取引のひとつを例に挙げてみよう。
https://runealpha.xyz/txs/center">
トランザクションには2つの入力があることがわかります。は1000 COOKを含む)と 0.02169031 BTCであり、出力は 0.02 BTC(1000 COOKを含む)と 0.00148377 BTCである。
比較として、クロスチェーンブリッジではない取引を探した。
COOK トランザクションの出力を以下に示します。
なぜそうなるのでしょうか?ここで私たちはそれについて学ぶ必要があります。
UTXO
まず、UTXOとは何かを理解しましょう。
UTXOは、 Unspent Transaction Outputとして知られており、直訳すると、 未使用トランザクション出力となります。/strong>は、直訳するとUnspent Transaction Outputとなり、ビットコインの知識の中核となります。ビットコインの取引では、すべての取引に入力と出力があります。誰かがあなたに支払うお金は「取引入力」であり、あなたが受け取るお金は「取引出力」です。
UTXOの中核となる設計思想は、ステートレスであることであり、最終的な状態ではなく、取引イベントを記録します。つまり、変更イベントのみを記録し、ユーザーは履歴に基づいて残高を計算する必要があります。その結果、ビットコインの取引モデルは銀行口座とは異なり、口座のようなものは存在しません。ビットコインにはUTXOのみがあり、これは任意の金額の「コイン」と考えることができます。
UTXO、入力とお釣り
UTXOは、コインと同じで、壊すことはできませんので、トランザクションの過程で十分な入力を得るには、どのようにお釣りを作るのですか?どのようにそれを行うのですか?
例えば、XiaomingはXiaogangに1 BTCを転送し、全体のプロセスはこのようなものです、Xiaomingは十分な入力を収集するために、例えば、Xiaomingのアドレスは、前のトランザクションに対応し、 0.9 UTXOの公称値を発見し、1 BTCには十分ではありません、よくトランザクションでは、複数の入力を持つことが許可されているので、Xiaomingはは別の額面を見つけ、0.2UTXOとした。同時に2つの出力があり、1つは額面1BTCのXiaogangのアドレスを指し、もう1つは額面約0.1BTCのMingのアドレスを指し、この出力がお釣りとなる。
ビットコインの送金中に入力を切り上げるための固定アルゴリズムはありません。
ビットコインの碑文とルーン
次に、碑文とルーンとは何かを理解する必要があります。ビットコインの碑文とルーンは、ビットコインのエコシステムにおける2つの重要な概念です。
ビットコインの碑文の主な表現はOrdinalsプロトコルです。 Ordinalsは2022年12月に誕生し、完全にオンチェーンで、Casey Rodarmor氏によって開発されました。このプロトコルは Sat ナンバリングシステムを利用しており、Ordinals はトランザクションの各 Satoshi にシリアル番号を付与して追跡する一方、ユーザーは追加のデータ(画像、動画、テキストなど)を Ordinals 経由でビットコインのブロックチェーンに添付することができ、各 Satoshi を一意なものとすることで、本質的に NFT を実現しています。BRC-20 はこのプロトコルに基づいて作成されました。
ルーン・プロトコル(Rune protocol)。 BRC-20の爆発的な普及に伴い、BRC-20関連のトークンの取引がオーディナルズ・プロトコルの大きな割合を占めるようになりました。 2023年9月26日、Casey RodarmorはRunes(ルーン・プロトコルとしても知られる)と呼ばれるプロトコルをRunesに代わるものとして再開発しました。をBRC-20の代替として作成した。このプロトコルは UTXO (Unused Transaction Output) に基づいたシンプルな FT (Fungible Token) プロトコルで、ビットコインユーザーはこれを使用することで良い経験をすることができます。Runeは、主にCOOKとPSBTSに代表されることは述べた通りです。
Bitcoin碑文とRuneはどちらもUTXOキャリアであり、Bitcoin碑文とRuneの重要な違いの1つは、碑文にUTXOが刻まれているという点です。碑文とRuneの主な違いは、碑文は分離された証人データに刻まれるのに対し、Runeは OP_RETURNに刻まれることです。 OP_RETURNは、そこに保存できるデータのサイズが非常に限られていますが、コインを発行するには十分すぎるほどで、新しい技術ではありません。
ユーザーが碑文やルーンを鋳造するには、基本的にビットコインの量をプロトコルに送信します。0.00000546、これはビットコインが設定した最小取引額です。
碑文の転送も、これらのウォレットが特別なフォーマットを認識するためです。これらのUTXOは特別なフォーマットで、ウォレットは対応するプロトコルの入力として使用し、相手側に転送するために追加料金を支払います。
なぜユーザーは「ルーン」を失うのか?「ルーン」を失うのか?
ユーザーが「ルーン」を失うのは、それがまだ本質的にUTXOであるため、ユーザーがUniSatを使用してビットコインのクロスチェーン操作を実行したとき、UniSatはルーンを含むUTXOのその部分を認識せず、通常のUTXOとして扱ったため、こねくり回された入力はクロスチェーンブリッジに送られた。
実際、ルーンを失う可能性があるのはクロスチェーン操作だけでなく、ルーンをサポートしていないウォレットからの他のビットコイン送金も同様です。12月7日には、あるユーザーがユニサットのBRC-20スワップ操作で15,000COOKを失いました。
もうひとつ興味深いのは、ルーンアルファでルーンを鋳造する際、ユーザーの碑文をガスとして転送することも可能だということです。
なぜ誰も失われたルーンについてフィードバックをしないのですか?
私たちは、BEVMのクロスチェーンがBEVMの公式ドキュメントを通して碑文のクロスチェーンをサポートしていることを発見しました。クロスチェーンに使用されるウォレットはUniSatウォレットです。これはBTCエコシステム用のChromeプラグイン・ウォレットで、ユーザーのBRC-20 トークンの保管、造幣、送金をサポートします。これは、UTXOのその部分をマージするのを避けるように、ユーザーの碑文を認識し、ユーザーが碑文を積極的に取引する場合にのみ転送されます。
UTXOは、UTXOの碑文を認識します。ユニサットは現在ルーンプロトコルをサポートしていません。ルーンをサポートしていない他のウォレットでも同様の状況が発生します。
ルーンは取り戻せますか?
ルーンはクロスチェーンブリッジに転送されたので、ユーザーはその部分を取り戻すことができますか?
私たちは BEVM のホワイトペーパーを確認しましたが、BEVM の資産クロスチェーンソリューションはビットコインの Taproot 技術に基づいており、これは SchnorrSignature + Mast contract + 1000 BTC lightノードはPOSネットワークで構成され、分散型のクロスチェーンと資産の管理を実現します。BTC-BEVM双方向クロスチェーンは、チェーン上のノードのコンセンサスに基づいて管理され、マルチシグネチャや人的管理に頼るのではなく、完全にコード化され、信頼されていないため、BTCとビットコイン資産のクロスチェーンセキュリティは、BFT POSと同様に分散化され、安全であり、その結果、BEVM関係者は、ユーザーの「ルーン資産」を持ち出すために個別の送金取引を開始することはできません。
BEVMはルーンプロトコルをサポートしていないため、この部分が転送され出される確率は完全にランダムであり、ホスティングコントラクトがトランザクションを実行する際、これらの「ルーン資産」は通常のUTXOとして扱われて転送され出されるかもしれませんが、プロセス全体がしかし、このプロセス全体は完全にランダムであり、人間のコントロール下にありません。 もしこれを強制的に排除したいのであれば、BEVMチェーン全体のコンセンサスを完全に変更しなければならず、これは間違いなくBEVMをハードフォークするようなものです。
全体として、この出来事は複数の理由によるものです:
どうすれば再発を防げるでしょうか?
一般のユーザーにとって、このような問題が再び起こらないようにするにはどうしたらよいでしょうか?
使用しているウォレットがインスクリプションまたはインスクリプション・プロトコルをサポートしていることを確認してください。
やりとりするプロトコル(クロスチェーンブリッジなど)が碑文のルーンプロトコルをサポートしていることを確認してください。
プロトコルを使用する前に、プロセスで問題を抱えているユーザーがいるかどうかを調査する。
複数のウォレットを使って異なる資産を管理する。
また、開発や設計を行う際には、起こりうるプロトコルの非互換性の問題をコードレベルから解決するために、十分な考慮と準備が必要であることを開発者に思い出させます。もしできないのであれば、不必要な質問やトラブルを避けるために、本番前に調査を行い、明確な注意を促してください。
まとめ
碑文とルーンの出現は、ビットコインエコシステムの継続的な探求と革新における重要なマイルストーンであり、皆の関心を大いに高めました。しかし、今のところ、碑文とルーンはまだ比較的初期の段階であるため、参加している間は、関連するリスクに注意を払い、盲目にならないようにしてほしい。