位置: 编程技术 - 正文

sqlcipher 命令行给db外部加密的实现(sql命令语句)

编辑:rootadmin
关于Sqlcipher的加密解密

推荐整理分享sqlcipher 命令行给db外部加密的实现(sql命令语句),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:sqlcipher命令行密钥错误会提示吗,sql中命令,sql命令语句,sqlplus命令行执行sql文件,sqlplus 命令行,sqlplus 命令行,sqlcipher命令行密钥错误会提示吗,sqlcipher命令行密钥错误会提示吗,内容如对您有帮助,希望把文章链接给更多的朋友!

本文主要实验目的:外部用sqlcipher命令行给已有的数据库文件加密,而在Android程序中解密应用。

1. 首先 sqlcipher命令行Linux环境搭建。

view plaincopy1.解压 unzip -q sqlcipher-master.zip cd sqlcipher-master [plain] view plaincopy2.编译 ./configure --enable-tempstore=yes CFLAGS="-DSQLITE_HAS_CODEC" LDFLAGS="-lcrypto" make

编译完就会出现一个sqlcipher的可执行文件。

说明,在ubuntu.环境下configure sqlcipher 会出现诸多error,经过反复查找问题,发现原来是编译环境缺少东西,主要缺少openssl相关库:

sudo apt-get install openssl sudo apt-get install libssl-dev

以及gcc也做了不同版本的测试。

最终configure完成后,make的过程又出现一些莫名其妙的error, 在头文件以及alter.c文件缺少* )之类的。

由于坚信源码不会有什么问题,肯定是编译过程哪里出的毛病,所以回头看看configure,发现出现 tclsh cannot found的警告。

于是 apt-get install tclsh8.5 安装完成。

删除之前编译的工程,重新configure 以及make。终于编译通过,成功生成sqlcipher可执行文件。

sqlcipher 命令行给db外部加密的实现(sql命令语句)

2. Sqlcipher使用

(当然,如果没有安装Sqlite3 ,还需要apt-get install 安装一下)

和sqlite差不多的用法

[plain] view plaincopy./sqlcipher test.db #创建一个db文件 sqlite> PRAGMA key = 'test'; #设置密码 sqlite> .e #退出

三、把没加密的db文件进行加密步骤:

[sql] view plaincopy1.先用sqlite打开db文件 sqlite3 test.db

[plain] view plaincopy2.把数据导成sql&#;式 sqlite> .output test.sql sqlite> .dump sqlite> .e

[plain] view plaincopy3.加密 ./sqlcipher test2.db #创建一个新的db文件 sqlite> PRAGMA key = 'test'; #设置密码 sqlite> .read test.sql #导入数据 sqlite> .e #退出

完成,生成的test2.db文件就是一个加密过的db文件了。

以上是前期使用过程,后面讲述遇到的问题。

1、如何判断是否有加密过?

[plain] view plaincopy./sqlcipher test.db #没加密过的 sqlite> .schema CREATE TABLE XXXXXX... #显示了表的创建语句

[plain] view plaincopy./sqlcipher test2.db #没加密过的 sqlite> .schema Error: file is encrypted or is not a database 对于加密过的db文件,如果不先输入密码,后续关于数据库的操作都不能执行,都会出现Error: file is encrypted or is not a database错误

3. 将加密好的文件copy至Android终端下,通过Android代码入口可以成功访问数据库文件。

android sqlcipher使用详情参见上一篇文章

版权声明:本文为博主原创文章,未经博主允许不得转载。

关于Android查询本地视频文件、获取缩略图,并且让缩略图以相同大小显示、给缩略图添加白色边框效果 最近工作中遇到要查询本地的视频文件,以GridView分页显示视频缩略图,并且对不同视频分辨率的缩略图显示相同的大小,还要对缩略图添加圆角以及白

Android通过HttpURLConnection获取JSON并进行UI更新 本例子中使用的是:HttpURLConnectionThreadHandler的组合,在newThread中通过HttpURLConnection获取JSON数据后并在Handler里对UI界面进行更新。也可以用过HttpClient,Asyn

AnalogClock 网上看过很多人写的AnalogClock,但是很多都不完整或无法运行,于是自己结合DeskClock源码,写了一个小的demo,步骤大致入如下:1、自定义View,通过Analog

标签: sql命令语句

本文链接地址:https://www.jiuchutong.com/biancheng/378075.html 转载请保留说明!

上一篇:android apk 混淆方法(安卓apk混淆工具)

下一篇:关于Android查询本地视频文件、获取缩略图,并且让缩略图以相同大小显示、给缩略图添加白色边框效果(android查询数据库)

  • 产值利税率是什么
  • 资源税征收原则
  • 网上申领发票收到后需要怎么操作
  • 企业所得税季度申报填写示例
  • 在建工程转固定资产后如何计提折旧
  • 发票备注没写
  • 小微企业附加税减半征收
  • 长期股权投资的初始投资成本
  • 小规模出口企业增值税申报
  • 测绘费能否在土地出让
  • 出口抵内销产品应纳税额分录
  • 收到违约金应缴增值税吗
  • 向农户购买农产品如何入账
  • 接收虚开增值税专用发票要判刑吗
  • 会计增长知识方面
  • 加工开票税率是多少
  • 销售营改增之后取得的固定资产
  • 中药税率什么时候变为9
  • 企业所得税收入是含税还是不含税
  • 小规模纳税人未达起征点增值税处理
  • 小规模企业资本结构
  • 企业股权平价转让涉及哪些税费
  • 其他应付转到其他应收
  • 开了百分之五的票怎么办
  • 2019年一般纳税人附加税减免政策
  • 事业单位的账务
  • 长期资产的含义
  • 劳务公司差额发票账务处理
  • 员工住院押金会计处理
  • 脚手架属于什么费用
  • 筹备期废品回收怎么做账
  • 农业合作社农民合作社
  • 税务检查所得税调整
  • phpstudy如何查看错误日志
  • 不吃晚饭多久能瘦下来
  • 分包方可以简易计税吗
  • 城镇土地使用税纳税义务发生时间
  • 企业租赁房屋怎么开票
  • 机票的退票费可以开具发票吗
  • 【深度学习】pix2pix GAN理论及代码实现与理解
  • ca证书收费金额是多少?
  • 在mysql中创建数据库和表作业
  • dedecmsv6插件不能用
  • 小微企业0税务报税流程
  • 社保的账务处理分录
  • 企业的存货清查包括
  • 必要报酬率怎么求
  • 冲暂估的差异放在哪里
  • 公司主要产品
  • 建造厂房流程
  • 公司注销流程是哪些
  • 没收租赁保证金要交增值税么
  • 哪些固定资产不需要计提折旧
  • 企业的培训费用
  • 建筑业成本必须分别核算么
  • 个体户不交税会判刑吗?
  • sql server2019还原数据库
  • linux /bin/false
  • ipv6文件
  • windows版微信能运行小程序吗
  • win7历史记录在哪里
  • windows10正式版
  • win10预览版21277
  • linux系统bug
  • win8.1专业版是哪个
  • mysqld-nt.exe - mysqld-nt是什么进程 有什么用
  • nodejs常用api
  • 持久化存储数据的方式
  • bat ping批处理
  • js实现计数
  • 用nodejs搭建服务器
  • jsoni
  • javascript学习指南
  • 'd:skin' 开头的无效内容。此处不应含有子元素。
  • javascript中array的正确写法
  • 进项税留抵是什么意思
  • 残疾人企业如何申请补贴
  • 3.0t交强险
  • 南京市车位产权证办理流程
  • 城镇土地使用税优惠政策
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设