用 Blocknet 錢包簽署與驗證訊息

· 4 分鐘閱讀

使用 Blocknet 訊息簽章,可以在不付款的情況下證明對地址的控制權。本指南依據官方 CLI v1.2.0 與 core v0.22.0,查核日期為2026年10月27日。你將準備明確的挑戰內容,在指定錢包中簽署,再一起驗證完整地址、訊息與簽章。

如何簽署與驗證 Blocknet 訊息?

簡短回答

載入完整錢包,確認地址,然後使用 sign 指令簽署約定的文字。將地址、準確的訊息及產生的簽章交給驗證方。對方使用 verify 一起檢查這三個值,再確認訊息是否符合其要求的用途與新的挑戰內容。

錢包簽署約定的訊息,另一位驗證者將訊息與地址和簽章一起核對。

先約定簽署訊息的含義

從具體請求開始:哪個地址需要向誰證明控制權,目的是進行什麼操作?付款證明用於確認某筆交易的細節。訊息簽章適用於確認簽署金鑰控制權的情境,例如為帳戶確認地址。錢包指南介紹如何建立與開啟用來簽署的錢包。

請驗證方為這次請求提供新的、無法預測的挑戰值。文字應包含足夠的背景,以辨識服務或接收方及預期操作;流程需要時,也應約定有效期限。這些是應用程式規則:簽章驗證器不會自動執行新鮮度、到期或單次使用檢查。驗證方必須將訊息與請求比對,並記錄挑戰值何時已被使用。

開啟指定的完整錢包

在終端連線至正在執行的主網 core:

blocknet attach mainnet

在互動終端載入錢包並查看地址:

load
address

選擇正確的錢包檔案,並依用戶端提示解鎖。將完整地址與驗證方預期的地址比對;同一台電腦存有多個錢包檔案時,也應這樣檢查。

所查 core使用錢包的支出私鑰簽署訊息。唯讀錢包無法執行這項操作。將完整錢包留在指定電腦上;驗證方只需要產生的簽章與公開資訊。完成簽署不需要傳送資金,也不需要匯出錢包檔案。

簽署前準備準確文字

閱讀完整請求,確認你確實同意所述用途。官方用戶端讀取一行文字,移除開頭與結尾的空白,並拒絕空訊息或超過1024位元組的訊息。限制按位元組計算,因此非 ASCII 字元可能占用多個位元組。使用簡短、明確的一行文字,並保留實際提交的準確內容。

將訊息交給驗證方時,保留大小寫、標點與內部空格。編輯器或聊天應用程式可能替換引號或修改複製的文字;驗證失敗時,請比對實際訊息。登入或帳戶操作應遵循服務文件中的挑戰格式。不要擅自改寫要求的文字,因為驗證方應檢查自己發出的特定挑戰。

在官方互動終端簽署

在互動終端啟動簽署提示:

sign

用戶端會要求輸入文字。貼上約定的單行訊息並按 Enter。成功後會輸出十六進位簽章。複製完整輸出,保留每個字元。用戶端實作將訊息提交至錢包簽署端點;這項操作不會建立或廣播交易。

將完整地址、準確的訊息與簽章作為三個獨立值提供給驗證方。清楚標示,避免將簽章誤當成訊息或地址。妥善保密恢復助記詞、私密金鑰與錢包密碼。助記詞指南介紹復原資料;這些內容都不屬於驗證簽章時需要交給他人的證據。

對方如何驗證簽章?

對方使用官方互動終端的驗證提示,並連線至執行中的相容 core:

verify

先輸入完整地址,再輸入準確的訊息,最後輸入十六進位簽章。終端參考文件說明了這個順序。驗證無須載入錢包,因此不必匯入簽署者的錢包,也不必接觸任何私密金鑰。

所查用戶端在這組資料驗證成功時顯示 Signature is VALID,失敗時顯示 Signature is INVALID。輸入格式錯誤是另一種結果:重試前應檢查所有欄位並保留原始證據。如果訊息或地址與預期請求不同,即使簽章在數學上對所提供資料有效,也應先釐清差異。

結合請求背景解讀成功結果

有效簽章表示訊息可透過所提供地址中編碼的支出公鑰驗證。它不確立法律身分,不顯示餘額,也不證明付款已發生。遇到付款問題,應使用傳送紀錄、瀏覽器查詢與特定交易的證明。選擇能回答實際問題的證據,不要把每個有效簽章都視為收據。

接受結果前,檢查挑戰是否新近產生,以及是否針對預期接收方。有人可以複製有效的訊息與簽章,再次提交同一組資料。需要一次性授權的服務必須自行執行規則。同樣,寫在訊息中的到期時間只有在驗證方實際檢查時才有意義。這些檢查將密碼學有效性與約定操作連結起來。

保留清楚的驗證紀錄

如果流程需要稽核紀錄,應將地址、準確訊息、簽章、請求背景與驗證結果一起保存。將實際檢查時間與簽署者寫入的任何時間戳記分開記錄。避免在訊息中加入無關個人資訊,因為收到已簽署文字的人都能閱讀與複製。透過約定管道向指定驗證方提供證據。

如果該錢包用於接收挖礦付款,礦池追蹤仍負責提供份額與付款紀錄;訊息簽章不能取代它們。節點指南介紹官方互動終端所需的 core。完成約定檢查後,將簽署權限留在完整錢包中,讓檢查結果的人使用公開驗證功能。

常見問題

簽署 Blocknet 訊息會傳送幣嗎?

所查版本的訊息簽署端點使用錢包的支出金鑰簽署文字並傳回簽章,不會建立或廣播付款。驗證方需要地址、準確的訊息與簽章。請仔細閱讀要求簽署的文字,因為服務可能使用該簽章授權自身的操作。

不開啟錢包也能驗證簽章嗎?

可以。官方互動終端的 verify 指令呼叫公開驗證端點,無須載入錢包。它需要執行中的相容 core、完整地址、準確的已簽署訊息與簽章。驗證檢查的是這組資料,不會要求簽署者的助記詞、密碼或私密金鑰。

有效的 Blocknet 訊息簽章能證明什麼?

它表示訊息可透過所提供地址中的支出公鑰驗證。如果需要證明目前的控制權,應使用雙方約定的新挑戰值。它不能證明一個人的法律身分、錢包餘額或付款已完成;舊的有效簽章也能再次提交。