本文介绍了如何在Electron应用中使用better-sqlite3-multiple-ciphers库对SQLite数据进行加密,以保护敏感信息。同时处理了在Mac上遇到的架构不一致错误,通过重新编译解决并验证了加密效果。
摘要生成于
,由 DeepSeek-R1 满血版支持,
上一篇讲了如何在 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
从命令行打开数据库,可以看到文件已经不能被正确识别,加密成功

最近想把自己用html+css+js做的网页界面打包成桌面应用,网上一搜,发现Electron是一个不错的选择,试了试,发现效果真的不错。这里记录一下打包过程以作记录,便于自己以后查看学习。
Electron是由Github开发,用HTML,CSS和JavaScript来构建跨平台桌面应用程序的一个开源库。 Electron通过将Chromium和Node.js...
开源推荐:better-sqlite3-multiple-ciphers——Node.js下的SQLite3加密利器
去发现同类优质开源项目:https://gitcode.com/
在现代软件开发中,数据库的安全性至关重要,尤其是在处理敏感数据时。今天,我们要介绍一个令人瞩目的开源项目——better-sqlite3-multiple-ciphers,它为Node.js开发者提供了快速、高效且安...
git clone https://github.com/dirname/CryptoMagician.git
cd " Crypto Magician "
yarn install
./node_modules/.bin/electron-rebuild
yarn run start
消息摘要算法
支持算法摘要表
十六进制长度
HMAC支持
上节已经讲到如何用命令行将我们的程序启动了,但是用户不可能也得像我们一样用命令行去启动app,本节我们就讲怎么将我们的应用打包成.exe执行文件
(electron中文API下载)
1.安装 electron-packager
注意:先复制一份package.json文件到./app目录下,(千万记住这一点,我在这步这折腾了好几个小时...
sailcom:
HuggingFace Embedding 转为 Ollama Embedding