Qubic bxid アーカイブサービス
一意のbxidハッシュは、確認済みのQubicトランザクションを表し、bxidによってインデックス化されたAPIを介して、ウォレットや取引所などの従来の暗号システムへの統合を簡素化します。
Qsilver · 2024年1月6日
はじめに
Qubicの独自の特性は、既存の暗号インフラストラクチャと直接インターフェースすることを困難にします。この提案では、確認済みで即座に最終的な価値転送の証明を表す一意のハッシュであるbxidを定義します。bxidでインデックス化されたAPIは、従来の確認済みtxidを期待するシステムへのQubicの統合を簡素化します。
bxidの定義
bxid(バランストランスファーID)は、ティックに含める前にローカルで計算でき、ウォレットがユーザーにbxidを表示し、APIサービスをクエリすることができます。指定されたティックの後にbxidが存在しない場合、トランザクションの失敗を示します。
通常のQU転送の場合、bxidはエポック+ティック+srcpubkey+destpubkey+amountのK12ハッシュによって定義され、ログファイルエントリと一致するバイト形式で表されます。他のトランザクションタイプの場合、bxidは同じ規約に従い、ログファイルエントリを直接ハッシュし、日付フィールドをスキップします。
トランザクションレスのSCバランス変動を処理するには、バランス変動ごとに一意のbxidが必要です。SCバランス変動を0の金額で計算することで、そのbxidのクエリはティック内のその目的地に対するすべてのバランス変動の合計を返します。
bxidの使用
1. bxidの計算
./bxid calcbxid epoch tick source dest amount
2. bxidデータの取得
curl 93.190.139.223:9200/txid/_doc/(txid)
curl 93.190.139.223:9200/bxid/_doc/(bxid)
3. bxid情報の検証
- bxidが存在する場合、含まれるティックで一致するtxidを見つけて検証できます。
- txidが含まれているがbxidがない場合、エンティティ情報を検証して現在のバランスを取得します。特定のアドレスのエポックのすべてのbxidを合計し、送信元または宛先に基づいて減算し、エポックスペクトラムファイルの先頭に純変動を追加します。それが暗号的に検証されたエンティティデータを使用してバランスと一致する場合、bxidは確認されます。
実装
1. bxidアーカイブサービスの設定
リポジトリをクローンしてビルドします:
git clone <https://github.com/Qsilver97/qubic-cli>
cd qubic-cli
mkdir build
cd build
cmake ..
make
g++ -I.. ../bxid.cpp ../connection.cpp -o bxid
2. JSON出力の作成
ログファイルエントリからのJSONの例:
{ "index": { "_index": "bxid", "_id": "397e947847ada93de80907d88a835419fb532b3ca1fd68b3c95ebab11cd24190" } }
{
"utime": "1707059413",
"epoch": "90",
"tick": "11867469",
"type": "1",
"src": "LZLDOEIBQWIUGGMZGOISLOAACDGAFVAMAYXSSJMLQBHSHWDBPMSDFTGAYRMN",
"dest": "QHQPMJVNGZJGZDSQREFXHHAZFYPBIYDOTFAOTTWGYCWGTIRNGBVMKBGGNDDA",
"amount": "1521139"
}
これらのJSON行を処理するためにCharmed OpenSearchシステムを使用します:
curl --cacert demo-ca.pem -XGET https://<username>:<password>@<ipaddr>:9200/bxid/_doc/397e947847ada93de80907d88a835419fb532b3ca1fd68b3c95ebab11cd24190
{
"_index": "bxid",
"_id": "397e947847ada93de80907d88a835419fb532b3ca1fd68b3c95ebab11cd24190",
"_version": 2,
"_seq_no": 32754,
"_primary_term": 1,
"found": true,
"_source": {
"utime": "1707059413",
"epoch": "90",
"tick": "11867469",
"type": "1",
"src": "LZLDOEIBQWIUGGMZGOISLOAACDGAFVAMAYXSSJMLQBHSHWDBPMSDFTGAYRMN",
"dest": "QHQPMJVNGZJGZDSQREFXHHAZFYPBIYDOTFAOTTWGYCWGTIRNGBVMKBGGNDDA",
"amount": "1521139"
}
}
3. ログ処理ループの設定
アーカイブサービスとREST APIを維持するためのログ処理ループを作成します:
while true; do
./bxid processlog
done
結論
bxidアーカイブサービスを実装することで、確認済みで即座に最終的な価値転送の証明を提供し、Qubicを既存の暗号サービスに統合することが簡素化されます。bxidとbxidアーカイブサービスを活用することで、Qubicトランザクションは従来の暗号インフラストラクチャにシームレスに統合できます。
最新の情報については、Valis Discordに参加し、Xでフォローし、私たちのブログをブックマークしてください。
次へ →