返回部落格

指紋參數配置原則:一致性比參數數量更重要

指紋參數不是越多越像,真正決定環境品質的是自洽。同一個環境內,時區、語言、解析度要互相對得上;不同環境之間,又要拉開足夠差異,避免整批環境雷同。

第一次打開指紋瀏覽器,幾十項參數鋪在面前,大多數人的第一反應都是:這些是不是都得調一遍。

其實不用。而且有幾項參數,動得越多越容易出問題。判斷標準也不複雜:先看這項參數跟 IP 有沒有關係,再看它跟同一個環境裡的其他參數對不對得上。

配置追求的是自洽,不是獨特

環境配置的目標不是讓這組參數看起來足夠特別,而是讓所有參數之間邏輯一致。一組彼此矛盾的參數,哪怕每一項單看都足夠罕見,放在平台風控眼裡也是最容易被挑出來的那一類。

這裡有兩層意思,方向還不太一樣。

一層是單個環境內部的自洽:時區要跟 IP 的歸屬地一致,語言要跟 IP 所在地的常用語言一致,解析度要跟裝置類型對得上。這三條只要有一條明顯錯位,就等於給了一個不需要額外分析的異常。

另一層是環境之間的差異度。如果所有環境都用同一個核心、同一檔解析度、同一套字型,這批環境在平台眼裡會呈現出明顯的同質化,等於把多個帳號連在了一起。

兩層都做到,環境才算站得住。

優先配的是跟 IP 綁定的那幾項

地理位置、時區、語言這三項是整套環境的地基,也是最不該手動去調的三項。

原則很簡單:跟隨 IP。IP 在美國,時區和語言就按美國來;IP 換了地區,這三項跟著一起換。一個美國 IP 配著亞洲時區和中文介面,其他參數再精細也蓋不住這個矛盾。

所以更穩的做法是開啟跟 IP 自動同步,而不是逐個手動指定。手動填錯一次,代價可能是一整批帳號。

WebRTC 是這組裡最值得單獨留意的一項,因為它是真實 IP 洩漏的主要途徑。常見三種模式,適用場景並不一樣:

模式適合什麼場景
停用純瀏覽、跑自動化腳本,不需要音視訊功能
替換日常多帳號營運,需要返回跟代理一致的位址
轉送對穩定性要求更高、願意多繞一層的環境

要提醒一句:不要在所有場景都直接停用。完全不具備 WebRTC 能力的瀏覽器環境,本身就可能被當成異常特徵。日常營運用替換或轉送更穩妥。

圖形和核心:改動有收益,也有代價

Canvas、WebGL 這類圖形指紋容易被讀取,開啟雜訊處理後,每個環境返回的圖形特徵會有差異,不容易出現多個環境圖形指紋完全一致的情況。這一項收益比較明確。

核心的多樣性則要謹慎一些。給不同環境配不同的核心類型或版本,確實能提升環境之間的差異性,打破整批環境同質化。但前提是每個環境自身的核心、UA、字型、渲染表現能對得上。為了差異硬換核心,換來一個跟系統聲明互相矛盾的環境,反倒不划算。

硬體畫像這類參數,別手動拼

解析度、字型列表、硬體資訊、音訊渲染,這些參數湊在一起構成的是環境的硬體畫像。

真實裝置的這些參數之間是有關聯的:解析度跟裝置類型相關,字型列表跟作業系統相關。手動從不同來源拼湊一組出來,很容易出現一種一看就假的結構,比如一塊高解析度螢幕配著一套明顯不屬於這類裝置的字型集合。這類矛盾不是靠回調某一項能補回來的。

保持自動生成就好。自動組合出來的分布,通常比人工拼的更接近真實裝置。

一致性解決了,還要看隔離性

這兩件事經常被混在一起。

一致性說的是單個環境內部各項參數互相對得上;隔離性說的是多個環境之間互不重複、互不干擾。只做隔離不做一致性,會得到一批各自矛盾的獨立環境;只做一致性不做隔離,多個環境會變得完全一樣,同樣有問題。

多帳號管理裡這兩件事需要一起處理。PurpleMark 在環境隔離這一層把兩者放在一起做,每個環境獨立配置,也支援 IP、時區、語言的成套匹配。

配完之後最好用指紋檢測頁面自查一遍:WebRTC 有沒有洩漏、時區和語言跟 IP 是否對得上、圖形指紋有沒有跟其他環境重複。配置和生效之間,還差一次驗證。

以上內容僅作技術配置原則說明,請在合法合規前提下使用相關工具並遵守各平台服務條款。