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,都是免费工具,网络直接搜索即可下载。

相关推荐
yaoxin5211236 小时前
434. Java 日期时间 API - Period 基于日期的时间段
java·开发语言·python
何极光7 小时前
IDEA集成Maven
java·maven·intellij-idea
程序员二叉7 小时前
【JUC】ThreadLocal底层原理|内存泄漏|弱引用|跨线程传递方案
java·开发语言·面试·职场和发展·juc
程序员二叉7 小时前
【JUC】线程池全套深度详解|参数|流程|拒绝策略|调优|异常处理
java·开发语言·jvm·算法·面试·juc
老马识途2.07 小时前
在AI的帮助下理解spring的启动过程
java·前端·spring
青山木7 小时前
Hot 100 --- 轮转数组
java·数据结构·算法
Qt程序员8 小时前
掌握 Linux 内核调度:从原理到实现(进程篇)
java·开发语言
code bean8 小时前
【LangChain】检索器完全指南:从向量检索到生产级 RAG 架构
java·开发语言·微服务
大白菜和MySQL8 小时前
java应用排查高线程
java·python
KobeSacre8 小时前
ReentrantLock源码
java