線上驗證數位證據完整性
上傳 ProofSnap 證據包(.zip),即可獨立驗證 SHA-256 雜湊、RSA-4096 數位簽章、比特幣區塊鏈時間戳記以及歐盟 eIDAS 合格時間戳記。依據eIDAS規則 (EU) 910/2014。證據包可以提交法院,是否採信由受理法院判斷。
作者:Radim Motycka,ProofSnap 創辦人暨首席工程師 ·
ProofSnap 證據驗證工具是一個免費的線上工具,任何人都可以用它獨立核對一份 ProofSnap 證據包自取證之後是否遭到更動。雜湊值與 RSA-4096 數位簽章在你的瀏覽器中重新計算,區塊鏈與 eIDAS 時間戳記則送交 ProofSnap 的驗證服務核驗。在台灣,網頁畫面屬於準文書,提出的一方必須證明它與原件相符,這份核驗報告就是為了回答那一題;證明力仍由法院依個案判斷。不需註冊,不需安裝。
雜湊與數位簽章在你的瀏覽器中重新計算,時間戳記的驗證透過 ProofSnap 的驗證服務完成。任何人都可以驗證:律師、法官、保險公司和執法機關。 驗證程式碼已開放原始碼。
驗證哪些內容
證據驗證工具對每個證據包執行六項獨立的密碼學與取證檢查,確認其自取證以來未被改動。
數位簽章
RSA-4096 簽章驗證可以證明清單(manifest)自簽章之後沒有被改動。
SHA-256 雜湊完整性
對證據包中的每個檔案進行雜湊計算,並與清單比對,以偵測任何改動。
區塊鏈時間戳記
錨定於比特幣區塊鏈的 OpenTimestamps 證明,確認證據在特定時間點已經存在。
歐盟 eIDAS 時間戳記
依據歐盟法規 910/2014 的合格電子時間戳記,由列入歐盟信任清單的合格信任服務提供者簽發。
證據保管鏈驗證
依據ISO/IEC 27037:2012 指引,數位證據從取證到法庭出示,應保持紀錄完整、前後連續的證據保管鏈。本工具會自動驗證保管鏈的三項紀錄。
取證日誌
防竄改的雜湊鏈,串聯從取證開始到證據包建立的每一個事件。每筆紀錄都以密碼學方式與前一筆相連。
裝置完整性
讀取取證時記下的瀏覽器環境檢查結果,包括是否偵測到自動化工具或虛擬機器。
ISO/IEC 27037:2012
保管鏈紀錄遵循數位證據識別、蒐集、擷取與保存的國際標準。
如何線上驗證數位證據
上傳 ZIP 檔案,本工具會重新計算每個雜湊、檢查數位簽章,並向外部時間戳記服務驗證時間戳記,證據檔案本身不需要上傳,只有時間戳記檔案送交 ProofSnap 的驗證服務。
上傳證據包
選擇或拖放一個 ProofSnap 的 .zip 檔案。ZIP 在你的瀏覽器中解壓縮,只有時間戳記檔案送交 ProofSnap 的驗證服務。
密碼學檢查
本工具會讀取
manifest.json,計算每個檔案的 SHA-256 雜湊,並使用隨附的公鑰驗證 RSA-4096 數位簽章。
時間戳記驗證
如果存在,則會透過 ProofSnap 的驗證服務,向比特幣區塊鏈與 eIDAS 時間戳記服務驗證相應的時間戳記。
結果報告
每項檢查會分別標示通過或未通過,你可以將完整的驗證報告連同證據一併提交。
常見問題
關於數位證據完整性、法庭上的真實性爭執以及 ProofSnap 證據驗證工具運作原理的常見問題。
- 清單簽章:使用隨附的公鑰驗證 manifest.json 上的 RSA-4096 數位簽章。
- 檔案完整性:計算每個證據檔案的 SHA-256 雜湊,並與清單比對。
- 取證日誌:驗證防竄改的雜湊鏈,並與證據保管鏈文件交叉核對。
- 裝置完整性:報告裝置完整性評分及任何自動化跡象。
- 區塊鏈時間戳記:對照比特幣區塊鏈驗證 OpenTimestamps 證明(如果存在)。
- 歐盟 eIDAS 時間戳記:對照 TSA 驗證合格電子時間戳記(如果存在)。
-
簽章:
openssl dgst -sha256 -verify publickey.pem -signature manifest.sig manifest.json -
雜湊:
sha256sum screenshot.jpeg並與 manifest.json 比對 - 區塊鏈:將 manifest.json.ots 上傳到 opentimestamps.org
-
eIDAS:
openssl ts -verify -in manifest.json.tsr -data manifest.json -CAfile disig-root.pem
一個 ProofSnap 證據包依方案不同,含 11、12 或 15 個檔案。必備檔案:
- screenshot.jpeg:網頁的整頁截圖
- metadata.json:URL、時間戳記、瀏覽器資訊、TLS 詳情
- page.html:頁面完整的 HTML 原始碼
- evidence.pdf:格式化的證據報告
- domtextcontent.txt:提取出的文字內容
- manifest.json:所有檔案的 SHA-256 雜湊
- manifest.sig:RSA-4096 數位簽章
- publickey.pem:用於簽章驗證的公鑰
- forensic_log.json:防竄改的事件日誌
- chain_of_custody.json:依據 ISO/IEC 27037:2012 指引的證據保管鏈
- forensic_log_summary.txt:取證日誌摘要
- verification/verify.sh、verify.ps1 與 VERIFICATION_GUIDE.txt:隨包附帶的離線驗證指令碼與說明
依方案可能出現的檔案:
- manifest.json.ots:OpenTimestamps 區塊鏈證明
- manifest.json.tsr:eIDAS 合格時間戳記(Enterprise、Company 或 eIDAS 點數)
- eidas_validation.json:長期驗證資料(同上)