sqlite3 sqlcipher加密,解密,集成springboot,读取sqlcipher加密工具

由于项目需求sqlite3需要加密,不能随随便便就看到里面的数据,所有进行了两天的技术调研

参考:https://zhuanlan.zhihu.com/p/703309847

上面这篇文章十分好,解决了springboot加载解密后文件的难题。

1.利用加密工具sqllite3数据库加密,输出: 密码为:xxx的encrypt.db文件

bash 复制代码
d:
cd D:\sqlite加密\a57fe-main\a57fe-main\命令行版sqlcipher
sqlcipher.exe ./mydb.db
ATTACH DATABASE 'encrypt.db' AS encrypt KEY 'xxx';
SELECT sqlcipher_export ('encrypt');
DETACH DATABASE encrypt;

2.springboot加载解密后的数据库文件:

bash 复制代码
spring:
  datasource:
    url: jdbc:sqlite:./encrypt.db?key=xxx&cipher=sqlcipher&legacy=4
    driver-class-name: org.sqlite.JDBC

加密工具在csdn上可以找到,付积分下载,我也是下载别人的。直接搜索sqlcipher加密工具即可

jdbc驱动包在上面的参考文献中可获得。

jdbc驱动包也可直接在 https://github.com/Willena/sqlite-jdbc-crypt/releases 直接下载。

3.读取加密数据库工具 DB.Browser.for.SQLite-v3.13.1-win64,都是免费工具,网络直接搜索即可下载。

相关推荐
shaoFan14 小时前
关于java 调用阿里千问大模型,流式返回,并返回给前端
java·前端·状态模式
雪碧聊技术4 小时前
Java历史—沙箱安全机制
java·安全·沙箱机制
java1234_小锋4 小时前
Spring AI 2.0 开发Java Agent智能体 - Spring AI 2.0简介
java·人工智能·spring·spring ai
Hesionberger4 小时前
LeetCode72.编辑距离(多维动态规划)
java·开发语言·c++·python·算法
人道领域4 小时前
【LeetCode刷题日记】1047:双栈法与双指针法巧妙消除相邻重复字符
java·算法·leetcode·职场和发展
Java成神之路-4 小时前
面试题:@Controller 与 @RestController 区别
java·spring boot
用户298698530144 小时前
Java 提取 HTML 文本内容:两种轻量级实现方案对比
java·后端
lihao lihao4 小时前
Linux文件与fd
java·linux·算法
Java爱好狂.5 小时前
Redis高级笔记:原理+集群+应用+拓展+源码
java·数据库·redis·spring·java面试·后端开发·java八股文
lee_curry5 小时前
jvm中的内存模型
java·jvm·内存模型