返回博客列表

前端密码安全:本地存储的伪装与隔离策略

桌面应用没有后端鉴权,密码存在本地。研究了 localStorage、sessionStorage、以及 Electron 的 safeStorage 模块,最后选了一套折中方案。

localStorage 风险

明文存储,用户可以直接在开发者工具里看到。不适合存敏感信息。

Electron safeStorage

用系统密钥链加密,安全性高。但只在主进程可用,渲染进程需要 IPC 通信。

const { safeStorage } = require('electron'); const encrypted = safeStorage.encryptString('password'); const decrypted = safeStorage.decryptString(encrypted);

最终方案

密码用 safeStorage 加密存储,同时做输入框防截屏处理。ADMIN_TOKEN 用环境变量,不存文件。