Logo
  • Home
  • Blog
  • Contact
Help us build Valis
🇹🇼

Qubic bxid 存檔服務

image

Qubic bxid 存檔服務

獨特的 bxid 雜湊表示已確認的 Qubic 交易,透過以 bxid 為索引的 API 簡化整合到傳統加密系統(如錢包和交易所)。

Qsilver · 2024 年 1 月 6 日。

介紹

Qubic 的獨特特性使其難以直接與現有的加密基礎設施對接。本提案定義了一個獨特的雜湊,bxid,代表已確認並立即最終的價值轉移證明。以 bxid 為索引的 API 會簡化將 Qubic 整合到需要傳統確認的 txid 的系統中。

定義 bxid

bxid(餘額轉移 ID)可以在納入一個 tick 之前本地計算,允許錢包向用戶顯示 bxid 並查詢 API 服務。如果在指定的 tick 之後 bxid 缺失,則表示交易失敗。

對於普通的 QU 轉移,bxid 由 epoch + tick + srcpubkey + destpubkey + amount 的 K12 雜湊定義,以符合日誌文件條目的位元組格式。對於其他交易類型,bxid 遵循相同的約定,直接對日誌文件條目進行雜湊,跳過日期欄位。

處理無交易的 SC 餘額變動需要為每次餘額變動生成一個唯一的 bxid。通過計算金額為 0 的 SC 餘額變動,對該 bxid 的查詢返回該 tick 中該目的地的所有餘額變動之和。

使用 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 存在,則可以在所包含的 tick 中找到匹配的 txid 並驗證。
  • 如果 txid 被包含但 bxid 缺失,則驗證實體資訊以獲取當前餘額。匯總指定地址的 epoch 的所有 bxid,根據來源或目的地進行減法,並將淨變動添加到 epoch 頻譜文件的開頭。如果它使用加密驗證的實體數據匹配餘額,則確認 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:

使用 Charmed OpenSearch 系統處理這些 JSON 行:

3. 設置日誌處理循環

創建一個日誌處理循環來維持存檔服務和 REST API:

while true; do
  ./bxid processlog
done

結論

實施 bxid 存檔服務通過提供已確認並立即最終的價值轉移證明,簡化了將 Qubic 整合到現有加密服務中的過程。通過利用 bxid 和 bxid 存檔服務,Qubic 交易可以無縫地併入傳統加密基礎設施。

要獲取最新更新,加入 Valis Discord、在 X 上關注我們,並將我們的部落格加入書籤。

← 上一頁

🇹🇼測試 bxid/txid API 伺服器

下一頁 →

🇹🇼仲裁者不是鱷魚

本頁內容

  • Qubic bxid 存檔服務
  • 介紹
  • 定義 bxid
  • 使用 bxid
  • 1. 計算 bxid
  • 2. 獲取 bxid 資料
  • 3. 驗證 bxid 資訊
  • 實施
  • 1. 設置 bxid 存檔服務
  • 2. 創建 JSON 輸出
  • 3. 設置日誌處理循環
  • 結論

相關文章

Logo

Execution

|

Transparency

XRSSDiscordGitHub
{ "index": { "_index": "bxid", "_id": "397e947847ada93de80907d88a835419fb532b3ca1fd68b3c95ebab11cd24190" } }
{
  "utime": "1707059413",
  "epoch": "90",
  "tick": "11867469",
  "type": "1",
  "src": "LZLDOEIBQWIUGGMZGOISLOAACDGAFVAMAYXSSJMLQBHSHWDBPMSDFTGAYRMN",
  "dest": "QHQPMJVNGZJGZDSQREFXHHAZFYPBIYDOTFAOTTWGYCWGTIRNGBVMKBGGNDDA",
  "amount": "1521139"
}
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"
  }
}