在黑灰產、行銷科技、自動化測試等領域,批量模擬多台手機進行人為操作已成為一種常見的技術應用。特別是在 Instagram、TikTok 等平台上進行養號或推廣行為時,腳本的行為真實性與差異化程度,直接影響到帳號的生存時間與投報率。
但要讓 100 台手機的行為「不重樣」,背後可不是簡單的隨機數能解決的。今天這篇文章,我想分享一個更科學、更可維護的底層邏輯:用馬可夫鏈(Markov Chain)+ 碰撞分發的方式,實現群控行為的高度擬人化與分散化。
一般寫群控腳本會怎麼做?
大部分人在寫自動化腳本時,習慣用「線性流程 + 細部參數隨機」的方式來模擬操作,例如:
- 每隔 3~8 秒滑動螢幕
- 每次滑動距離隨機 200~500 像素
- 20% 機率會點讚
- 5% 機率會留言
- 30% 機率點進主頁、再回來
這樣做短期有效,但當操作流程一旦變長,比如「滑動 → 點主頁 → 開啟某貼文 → 按讚 → 返回 → 搜尋關鍵字 → 追蹤帳號」,整個腳本會變得極難維護。
你要加一個動作就可能要改好幾層函數,還要小心機率不要重疊錯亂。當你要控制的手機數量從 10 台變成 100 台、500 台,事情就失控了。
先講一下:什麼是馬可夫鏈與馬可夫矩陣?
馬可夫鏈(Markov Chain) 是一種統計模型,用來描述「下一步發生什麼,只取決於當前狀態」的系統。這種「只看當下、不管過去」的特性,也被稱為無記憶性。
舉例來說:
- 你現在在 Instagram 上滑動,下一步可能是點進主頁、繼續滑動、離開 App⋯⋯
- 無論你前面是點了誰、看了哪張圖,這些都不影響下一步的機率
- 這些「狀態之間的轉移機率」就是馬可夫鏈的核心
這樣的轉移機率可以整理成一張表格,稱為馬可夫矩陣(Markov Matrix):
當前動作 | 滑動 | 點主頁 | 看貼文 | 返回首頁 |
---|---|---|---|---|
滑動 | 60% | 20% | 10% | 10% |
點主頁 | 30% | 20% | 40% | 10% |
看貼文 | 10% | 20% | 50% | 20% |
返回首頁 | 100% | 0% | 0% | 0% |
用例子解釋:馬可夫鏈怎麼跑出一段手機操作行為?
假設我們現在讓一台手機從「滑動」這個動作開始,然後每一步都依照馬可夫矩陣的機率來決定下一步,它可能會這樣行動:
-
當前狀態:滑動
→ 根據矩陣,有 60% 機率繼續滑動、20% 機率點主頁、10% 看貼文、10% 返回首頁
→ 假設這次抽到「點主頁」
-
當前狀態:點主頁
→ 30% 機率滑動、20% 繼續留在主頁、40% 看貼文、10% 返回首頁
→ 抽到「看貼文」
-
當前狀態:看貼文
→ 10% 滑動、20% 回主頁、50% 繼續看下一篇、20% 返回首頁
→ 抽到「返回首頁」
-
當前狀態:返回首頁
→ 根據設定,這裡是一個終點(100% 結束)
這樣的一段行為流程,雖然看似隨機,但每個轉換都是有依據的機率計算出來的。如果你讓 100 台手機用這種方法去跑,每一台的行為看起來都會不一樣,但都會「像人類一樣有邏輯」。
引入馬可夫鏈,從「動作流程圖」開始建模
我們可以把每個「操作動作」視為一個節點,把「動作之間的關聯與發生機率」視為一條條有權重的箭頭,這樣我們就能形成一張完整的「行為流程圖」。
如此一來,每次行為都是根據機率決定「下一步做什麼」,而不是硬編排一條死流程。這樣的模擬方式會讓每一台手機的動作「長得像人類,但又各有變異」,更不容易被平台識破。
主程式只負責一件事:讀取馬可夫鏈並執行
當我們用馬可夫鏈定義好了整體流程之後,主程式就不需要再煩惱具體的流程控制,它只要做兩件事:
- 根據當前狀態,在對應的轉移機率中抽出下一步
- 呼叫執行對應的操作模組(滑動、點擊、輸入文字等)
這樣一來,整個程式架構會變得模組化、可維護、可擴充,新增動作或調整權重都只要改馬可夫矩陣即可。
更進一步:用 hash 碰撞生成不同行為路徑
為了讓每一台手機的行為更不重樣,我們可以進一步在馬可夫鏈之上加入一層「分發模型」:
- 根據每台手機的硬體唯一值(如設備 ID、MAC 地址、UUID)
- 對其做哈希運算(如 SHA256)
- 根據 hash 值的某幾位數字,選擇不同版本的馬可夫鏈
例如:
- hash 最後一位是 0~3:使用 A 類矩陣(保守型)
- 4~7:使用 B 類矩陣(活躍型)
- 8~f:使用 C 類矩陣(隨機型)
這樣就能做到**「裝置層級的行為差異化」**,即便是完全同步開機,也會因為哈希碰撞而選擇不同行為模式,進一步增加真實性。
最後:再配上設備指紋與網路環境偽裝
腳本只控制動作還不夠,還需要搭配:
- 模擬不同的 IP、UA、GPS 位置、語言設定
- 更進階地偽造傳感器回報數值(如加速度計、指南針)
- 模擬輸入法、人機互動時間、觸控座標模糊化
這些配合起來,才能構成一個完整且難以識破的手機分身矩陣系統。
小結:科技黑魔法,其實只是數學的應用
從簡單的定時滑動,到用馬可夫鏈控制 100 台手機各走不同路徑,再透過哈希碰撞做分流,這其實只是把「自動化」拉高到「機率建模 + 系統工程」的層次。
別再寫一條死流程的腳本了,當你真正理解馬可夫鏈的威力,會發現:
分散、隨機、多樣,本身就是一種控制