Canvas 指紋是最常見的瀏覽器指紋之一,網站會利用它識別裝置、追蹤使用者。本文說明 Canvas 指紋的原理、它與其他指紋的差異、如何檢測,以及一般使用者如何保護隱私。
你瀏覽網頁時的每一次點擊、每一下滑鼠移動、裝置型號和系統版本,都可能被網站組合成一段獨特識別碼——這就是瀏覽器指紋。在眾多指紋技術中,Canvas 指紋是最常見也最穩定的一種。它看不見、摸不著,卻一直被網站用來識別訪客。
Canvas 是什麼?
Canvas 是 HTML5 提供的一個繪圖元素,相當於網頁裡的一塊空白畫布。開發者可以用 JavaScript 在這塊畫布上繪製圖形、文字和圖片,實現圖表、遊戲、影像處理等豐富的視覺效果。你平常看到的許多網頁互動效果背後都有 Canvas 的身影。
Canvas 指紋是怎麼產生的?
同樣是「畫一個圖形」,不同裝置畫出來的結果並不完全一樣。原因在於繪製過程依賴硬體和軟體:
- 顯示卡與驅動程式:圖形渲染由 GPU 完成,不同顯示卡和驅動程式對反鋸齒、漸層、色彩的處理會有細微差異;
- 作業系統:Windows、macOS、Linux 的字型渲染和圖形介面實作不同;
- 瀏覽器與核心:不同瀏覽器對 Canvas API 的實作有差異;
- 顯示器與色彩設定:色域、伽瑪值等也會影響最終輸出。
網站的做法通常是:讓訪客的瀏覽器透過腳本在 Canvas 上繪製同一段內容(通常是圖形加文字),再把畫布內容轉成圖片資料並計算 hash。因為繪製結果會依裝置而不同,這段 hash 就成了一種相當穩定的「裝置指紋」。

為了讓你理解差異有多「細」:同一個圖形在不同裝置上可能只差幾個像素的反鋸齒邊緣,但計算出的 hash 值卻完全不同,足以區分裝置。
Canvas 指紋能用來做什麼?
- 識別與追蹤:網站可以在你沒有登入的情況下,透過 Canvas 指紋記住你的裝置,跨頁面甚至跨網站關聯你的存取行為;
- 反詐欺與風險控管:電商、支付、社群平台可能把 Canvas 指紋作為風險判斷訊號之一,輔助識別大量註冊、帳號共用等異常行為;
- 廣告定向:部分廣告網路會用它建立跨網站的行為輪廓。
需要說明的是,Canvas 指紋通常無法單獨確認「你是誰」,它更多只是眾多訊號中的一個——和 IP、User-Agent、時區、字型等資訊組合後,識別能力會明顯增強。
Canvas 指紋、WebGL 指紋和字型指紋的差異
三者都屬於「裝置渲染差異類」指紋,但來源不同:
- Canvas 指紋:來自 2D 畫布繪製結果的差異;
- WebGL 指紋:來自 3D 圖形渲染,網站會透過讀取顯示卡渲染參數(例如 WebGL 廠商、renderer string)來識別裝置;
- 字型指紋:透過檢測系統已安裝的字型清單來識別作業系統與裝置。
它們常被組合使用,構成網站風險控管系統中的「裝置環境特徵」。
如何檢測自己的 Canvas 指紋?
可以用公開的指紋檢測網站測試,例如 BrowserScan、PixelScan 等,也可以搜尋「browser fingerprint test」找到類似工具。這類網站會顯示你的 Canvas、WebGL、字型、時區等多項指紋資訊。如果結果提示存在 Canvas 指紋或顯示一串穩定的 hash,代表你的裝置可以用這種方式被標記。需要提醒的是,第三方檢測網站的結論僅供參考,不代表任何平台的官方判定。
一般使用者如何防護?
完全消除 Canvas 指紋很困難,因為它是瀏覽器正常功能的一部分。但可以降低被追蹤的程度:
- 使用重視隱私的瀏覽器,或開啟瀏覽器的隱私/嚴格追蹤保護模式;
- 安裝指紋阻擋類擴充功能,攔截 Canvas 讀取或注入 noise;
- 定期清理 Cookie 與網站資料,減少指紋與帳號行為的長期關聯;
- 保持系統與瀏覽器更新,新版瀏覽器通常有更多針對指紋追蹤的內建限制。
需要管理多個業務環境時怎麼處理?
對跨境營運、多帳號管理這類情境,問題的角度不同:團隊不是要「隱藏自己」,而是希望每個業務帳號都在穩定、可控的環境裡運行,避免裝置特徵互相干擾帶來誤判。
PurpleMark 允許在建立瀏覽器環境時對 Canvas、WebGL、字型等指紋參數進行設定,讓不同環境呈現不同的裝置特徵,並在環境內保持參數一致。這樣每個店鋪或帳號在長期營運中呈現的「裝置輪廓」是穩定的,而不是每次開啟都在變化。需要強調的是:指紋參數屬於環境設定能力,真正的業務合規仍取決於你是否遵守所使用平台的政策——環境管理工具不能也不應被用來冒充身分或繞過平台規則。
常見問題
Canvas 指紋能唯一識別一個人嗎? 很少能單獨做到。它通常是組合訊號之一,搭配 IP、系統資訊、行為資料後,識別能力才會更強。
停用 JavaScript 能防止 Canvas 指紋嗎? 可以阻止大部分網站採集,但也會讓許多網站無法正常使用,代價較大。重視隱私的瀏覽器和指紋阻擋擴充功能是更平衡的方案。
Canvas 指紋是病毒嗎? 不是。它是網站正常的腳本行為,不屬於惡意程式,但確實涉及隱私追蹤,這也是它引發爭議的原因。
指紋檢測網站顯示異常就代表裝置有問題嗎? 不一定。不同檢測工具的演算法和參考資料庫不同,結果只能作為參考。真正需要關注的是你在實際使用平台上的帳號狀態。


