在做項目的時候,我遇到一個需求:前後端需要傳輸一些敏感數據。

雖然 HTTPS 已經可以保證傳輸安全,但在某些場景下,我還是希望能再加一層保護:

  • 防止接口被隨便模擬調用
  • 就算數據被截獲,也看不懂裏面的內容
  • 就算用劫持的數據請求,也不進行響應

我最開始也去找過現成的方案,確實有一些成熟的實現。

但問題是——它們的功能太多、體系太重,而我的需求其實很單純,只需要“在請求上套一層加解密”。

所以與其硬拗那些複雜的框架,不如自己寫一個更輕量的版本。


我的解決方式

於是,我就寫了一個前後端配套的小工具:

  • 前端:Vue 環境下的 npm 包
  • 後端:PHP Composer 庫

核心思路是:

  • 前端自動加密請求體
  • 後端自動解密請求體
  • 開發者幾乎不需要關心加解密細節,就像在用普通的請求一樣
  • 內置 AES-128-CBC 加密、簽名機制、防重放允許一定的時間誤差,避免前後端時鐘不一致


用起來的樣子

前端示例:

通過 npm install hejunjie-encrypted-request 引用

後端示例:

通過 composer require hejunjie/encrypted-request 引用

整體就是“即插即用”,加密解密幾乎是無感的。


意義在哪裏

這個方案不是什麼替代 HTTPS 的黑科技,它更像是一個“小插件”:

  • HTTPS 解決傳輸安全
  • 我這套方案解決“再多一層殼”的需求

適合那些 對安全性有點額外要求,但又不想引入複雜框架 的項目。