文件說明 / 12
設定 Witness 機器人
讓獨立的程序檢查該日誌,並將簽名檢查點發佈至您的頻道。
兩台主機,兩組簽名金鑰
部署 / 資料收集器帳戶 + 日誌
Telegram 會話收集器的簽名金鑰
唯讀檢查點端點← 請求簽署的回答 →
HOST B / WITNESS驗證 + 保留
固定收集器指紋 獨立的見證簽署金鑰
專屬日誌 + 機器人代幣Witness → Telegram 機器人 API →您的頻道 · 經簽名的 TGW1 貼文
03 / 檢查點決策示例答案
最後接受日期120 筆記錄
head 9c7d…下一則答案128 筆記錄
head a4f2…已接受:計數持續增加,簽名經驗證無誤,且金鑰匹配。該見證者保留此新界限。
準備一個機器人與一個頻道
使用 BotFather 建立一個機器人,並允許其在您所控制的頻道中發文。為 TgWitness 選擇一台電腦或伺服器。相較於在資料收集者的伺服器上運行第二個程序,使用獨立的主機和操作員能提供更強的獨立性。
「進階功能」中的三個步驟
- 唯讀存取權限。開啟「Extras」→ 在您的頻道中加入一個機器人,建立一個見證代幣並儲存存取檔案。此權限僅允許讀取檢查點和系統狀態,無法存取對話內容或收集器控制功能。
- 頻道與間隔。請輸入頻道名稱,以及可從該頻道存取的收集器位址。儲存設定檔。
- 啟動。將
witness.json、witness-token.txt以及在 Witness 主機上建立的bot-token.txt置於同一位置。在已安裝的專案環境中執行以下指令。
python -m tgwitness.witness run --config witness.json --check-config
python -m tgwitness.witness run --config witness.json
下載檔案並不會啟動「witness」。請確認首則簽名貼文已出現在頻道中,然後將「witness」的公鑰指紋另行保存。
選擇發布頻率
每次檢查結果的發布都會建立一份定期的外部記錄。以五分鐘為間隔計算,每個工作區每天約有 288 則貼文。進階設定還提供在發生變更或問題時發布通知、代理伺服器以及自訂 Bot API 位址等功能。
該機器人實際上能證明什麼?
該「見證者」會向資料收集者索取經簽名的檢查點,並使用預期金鑰進行驗證,同時另行維護一份經簽名的日誌。它不僅記錄成功的驗證結果,亦會記錄缺失的回應與被拒絕的答案。發布與否仍取決於「見證者」是否正在運行,以及能否連線至 Telegram 的 Bot API。
本工具會檢查收集器回報的日誌狀態,但不會獨立監控每則 Telegram 訊息。若需進行此類監控,請新增「受控傳送測試」。
稍後查閱證據
請保留證據日誌、頻道貼文以及獨立儲存的指紋資料。完整的驗證程序會將這些資料與收集者簽署的匯出檔進行比對。