
什麼是 Canvas 指紋辨識?運作方式、隱私風險和保護
您清除 cookie 並打開私人窗口,但網站仍可能推斷兩次訪問來自同一裝置。這通常不依賴一個隱藏標識符。相反,該網站結合了瀏覽器公開的許多特徵。 Canvas 指紋辨識就是這些訊號之一。
本指南解釋了 Canvas 指紋是如何產生的、它與 cookie 有何不同、為什麼它可以同時支援安全性和跟踪,以及如何在不犧牲瀏覽器穩定性的情況下降低相關風險。
1. Canvas 指紋是什麼?
Canvas 是 HTML5 繪圖功能。 JavaScript 可以要求瀏覽器繪製文字、形狀、漸層或影像,然後讀取渲染結果。
相同的繪圖指令可能會在不同裝置上產生微小的像素級差異。結果可能受到作業系統、瀏覽器版本、安裝的字體、GPU、圖形驅動程式、渲染庫和抗鋸齒行為的影響。站點可以將結果轉換為資料並計算哈希值,該哈希值成為可重複使用的 Canvas 訊號。
一個重要的區別是:**單獨的 Canvas 值不能保證唯一地識別一個人。 **當 Canvas 與使用者代理程式、WebGL、字體、螢幕屬性、語言、時區、AudioContext、IP 位址和其他可觀察訊號結合使用時,辨識變得更加有效。
2. Canvas 指紋是如何產生的?
典型的收集流程有四個步驟:
- 頁面建立一個隱藏或非常小的 Canvas 元素。
- 腳本使用預先定義的字體、顏色、透明度和形狀來繪製內容。 3.瀏覽器透過系統字體和圖形堆疊來渲染它。
- 腳本讀取像素或導出的影像並計算雜湊值。
常見的變異來源包括:
- 作業系統字體渲染;
- 瀏覽器引擎和版本;
- 安裝的字型和後備順序;
- GPU、圖形驅動和硬體加速;
- 色彩管理、顯示縮放和抗鋸齒;
- Canvas、WebGL 和相關圖形 API 的組合行為。
這個過程可以在後台快速發生。使用者可能看不到 Canvas 或收到權限提示。
3. Canvas 指紋與 cookie
| 比較 | Cookies | Canvas 指紋 |
|---|---|---|
| 來源 | 網站寫入瀏覽器的資料 | 瀏覽器與裝置的渲染特性 |
| 本地儲存 | 是的 | 通常不需要持久的本地值 |
| 用戶可以清除嗎? | 是的 | 和cookie不一樣 |
| 私人瀏覽 | 會議結束後被隔離或移除 | 渲染功能仍然可用 |
| 穩定性 | 取決於 cookie 的生命週期 | 取決於硬體、軟體和保護策略 |
Cookie 就像網站儲存的標籤。 Canvas 指紋更接近每次訪問期間執行的測量。因此,清除瀏覽資料不會直接改變裝置的圖形行為。
4. Canvas 指紋辨識總是惡意的嗎?
不會。瀏覽器指紋辨識可用於:
- 辨識機器人、撞庫和自動詐欺;
- 偵測登入設備中的意外變化;
- 支援風險評分和帳戶安全檢查;
- 測量 cookie 不可用時的存取情況;
- 跨會話或網站建立設定檔。
隱私問題不僅限於是否發生收集。它還取決於用戶是否被告知、範圍是否必要、資料保留多長時間以及是否與身份資料結合或用於跨站點追蹤。
5. 為什麼隱私瀏覽不停止?
隱私瀏覽主要是減少本地痕跡。當會話結束時,它會刪除歷史記錄、cookie 和臨時網站資料。網站仍然需要 JavaScript、字體和圖形 API 才能運作,因此 Canvas、WebGL、螢幕尺寸和一些系統特徵可能仍然可見。
VPN 或代理程式會變更網路出口,但不會自動變更 Canvas 渲染。如果 IP 發生變化,而語言、時區、位置、Canvas 和 WebGL 值相互矛盾,則不一致本身可能會成為風險訊號。
6. 個人如何減少 Canvas 跟踪
1.啟用內建指紋保護
從瀏覽器內建的追蹤或指紋保護開始。當頁面讀取 Canvas 資料時,某些瀏覽器會限制高風險腳本或傳回修改後的結果。
2. 避免不必要的擴充和罕見的定制
大量不常見的擴充功能、字體或極端設定可以使您的瀏覽器組合更加獨特。隱私不僅意味著隱藏更多資料;還意味著隱藏更多資料。它還涉及避免異常獨特的配置。
3.限制不受信任的第三方腳本
內容阻止和更嚴格的網站權限可以減少第三方追蹤程式碼的執行。積極的阻止還可能破壞驗證碼、編輯器、圖表或付款頁面,因此請仔細測試相容性。
4. 了解 IP 工具的限制
代理程式和 VPN 可以隱藏您原來的網路出口,但它們不是 Canvas 保護工具。網路位置、語言、時區和瀏覽器配置應保持合理一致。
7. 多帳戶團隊需要隔離,而不是持續隨機化
對於電子商務、廣告、社群媒體營運和測試團隊來說,目標通常不是讓同一個帳號每次看起來都像一個全新的裝置。更安全的營運模式是:
- 為每個帳戶使用單獨的環境;
- 隨著時間的推移,保持一個帳戶的環境相對穩定;
- 隔離cookie、快取、本機儲存和瀏覽器資料;
- 使代理區域與語言、時區和位置設定一致;
- 保持 Canvas、WebGL、AudioContext 和相關訊號內部一致。
如果每次啟動時環境發生巨大變化,平台可能會將其解釋為頻繁的裝置切換。穩定性和一致性通常比最大化隨機變化更有價值。
8. 在 PurpleMark 中設定 Canvas 保護
PurpleMark 將 Canvas 和相關瀏覽器特性保留在相同的可重複使用環境配置中。
第 1 步:建立隔離的瀏覽器環境
在 PurpleMark 中建立一個新環境,為其指定一個明確的帳戶特定名稱,並綁定適當的代理程式。一個有用的長期規則是每個帳戶都有一個穩定的環境。
步驟 2:檢查基準指紋一致性
查看使用者代理程式、作業系統、語言、介面語言、時區、位置、解析度和字體設定。使用代理時,這些值通常應與代理區域相容。
步驟 3:設定硬體噪音
硬體雜訊部分提供單獨的控制:
- Canvas;
- WebGL圖像;
- AudioContext;
- ClientRects;
- 媒體設備;
- 語音。
當 Canvas 雜訊啟用時,環境使用其保存的雜訊參數來處理真實的 Canvas 訊號。儲存環境後,請保持配置穩定,不要在同一帳號的日常操作中重複刷新雜訊值。
步驟 4:儲存並檢查一致性
啟動環境後,使用受信任的瀏覽器資訊測試頁來檢查 Canvas 和 WebGL 行為。目標不是「絕對匿名」。確認不同的環境是可區分的,同一環境在啟動過程中保持穩定,其設定彼此之間沒有明顯的矛盾。
您可以透過 PurpleMark Web 應用程式 管理環境。僅桌面功能(包括啟動本機指紋瀏覽器)需要 PurpleMark 用戶端。
9. 常見問題
Q1:清除 cookie 是否會更改 Canvas 指紋?
不直接。 Cookies 是儲存的資料; Canvas 特性來自目前渲染流程和軟體/硬體堆疊。
Q2:更改 IP 位址是否會改變 Canvas?
通常不會。 IP 是網路訊號,而 Canvas 是圖形渲染訊號。
Q3:不同的 Canvas 哈希是否足以保持隱私?
不會。站點通常會結合多個訊號。單獨更改 Canvas 無法解決不一致的語言、時區、WebGL、字體或行為資料。
Q4:Canvas 是否應該被屏蔽或用噪音修改?
這取決於用例。完全阻止 Canvas 可能會破壞合法的站點功能,並且本身可能是不尋常的。受控噪音旨在平衡隱私和相容性。
Q5:PurpleMark 能保證帳戶永遠不會被關聯嗎?
沒有任何工具可以保證這一點。環境隔離和指紋控制降低了技術相關風險,而帳戶詳細資訊、支付資料、行為和平台規則仍然同樣重要。
10. 結論
Canvas 指紋不是可以簡單刪除的檔案。它是對瀏覽器如何呈現內容的度量。個人應使用可靠的瀏覽器隱私控制,而多帳戶團隊應圍繞隔離、穩定和內部一致的環境制定營運策略。
PurpleMark 為 Canvas 及相關訊號提供環境隔離和硬體雜訊控制。這些能力僅用於合法的隱私保護、授權測試和合規業務運營,並始終遵守您訪問的平台的條款。
延伸閱讀: