許多收費軟體提供「每 7 天免費試用 1 天」的機制,但使用者發現即使解除安裝並重新安裝,軟體仍能記住剩餘試用天數。這引發了一個核心問題:軟體究竟是如何識別同一台電腦的?
常見的識別手段
軟體追蹤電腦身分主要有兩大類方式:
- 本地存儲痕跡: 在註冊表、隱藏檔案、資料夾或配置檔中寫入唯一標識(如安裝時間、試用次數、機器碼雜湊值)。這是最常見、成本最低的方式。
- 硬體指紋綁定: 讀取主板 ID、MAC 位址、硬碟實體序列號、CPU ID 等唯一硬體資訊,並上傳至伺服器驗證。此法較少見,但防破解能力較強。
如何測試軟體採用哪種機制?
- 完全格式化硬碟並重裝作業系統: 若試用期重置,說明依賴本地存儲;若仍受限,則大概率使用硬體指紋並聯網驗證。
- 在虛擬機中執行或斷網測試: 若為硬體指紋+聯網驗證,虛擬機擁有獨立硬體資訊,斷網則無法連線伺服器,兩者皆可繞過限制。
開發者視角的建議
若您是開發者,建議採用「硬體指紋 + 離線授權檔」的混合模式:首次聯網驗證後生成加密授權檔存儲本地,後續離線即可驗證,兼顧安全性與用戶體驗。同時應避免在註冊表留下明文痕跡,改用加密儲存於隱蔽路徑。