Electron 对 SQLite 进行加密

上一篇讲了如何在 Electron使用 SQLite,如果 SQLite 中存有敏感数据,客户端采用明文存储风险很高,为了保护客户数据,就需要对数据进行加密,由于 electron 对代码并不加密,所以这里排除通过逆向工程进行数据库解密。

SQLite可以采用第三方库 SQLCipher 对数据进行加密,本文用的是better-sqlite3-multiple-ciphers。

安装依赖

复制代码
npm install  electron-rebuild@^3.2.9 --save-dev
npm install better-sqlite3-multiple-ciphers@^9.5.0
npm install electron@^29.0.0 --save-dev

在 Mac 运行会出现架构不一致错误

需要重新编译,编译成功之后,启动程序,程序启动之后数据库文件会自动生成。

复制代码
./node_modules/.bin/electron-rebuild --arch arm64

从命令行打开数据库,可以看到文件已经不能被正确识别,加密成功

相关推荐
佛系打工仔2 小时前
绘制K线第二章:背景网格绘制
android·前端·架构
明天好,会的4 小时前
分形生成实验(五):人机协同破局--30万token揭示Actix-web状态管理的微妙边界
运维·服务器·前端
C_心欲无痕5 小时前
nginx - alias 和 root 的区别详解
运维·前端·nginx
我是苏苏7 小时前
Web开发:C#通过ProcessStartInfo动态调用执行Python脚本
java·服务器·前端
无羡仙7 小时前
Vue插槽
前端·vue.js
用户6387994773058 小时前
每组件(Per-Component)与集中式(Centralized)i18n
前端·javascript
SsunmdayKT8 小时前
React + Ts eslint配置
前端
开始学java8 小时前
useEffect 空依赖 + 定时器 = 闭包陷阱?count 永远停在 1 的坑我踩透了
前端
zerosrat8 小时前
从零实现 React Native(2): 跨平台支持
前端·react native