位置: 编程技术 - 正文

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查询数据库)

  • 延期申报后可否延期缴纳税款
  • 福利费专票进项怎么抵扣
  • 个人所得税预扣率10%
  • 垫付运费的运费税怎么做分录
  • 营业执照注销要收费用吗
  • 公司年末报表
  • 预收账款哪一方是增加
  • 计提工资和实际发放工资必须一致吗
  • 以前年度损益调整
  • 有限公司能否申请破产
  • 所有者投入的资本属于什么科目
  • 无形资产增资需要缴纳个税吗
  • 已收款未开票未发货能确认收入吗
  • 个人钱转入对公账户账务处理
  • 季度末需要结转什么科目
  • 税控盘怎么打票
  • 员工福利费是否计入赔偿
  • 发票为什么会查不到信息
  • 延期缴纳税款的条件是什么
  • 特殊行业会计公司排名
  • 房地产企业如何计算增值税
  • 环保费用计入哪个科目
  • 小规模纳税人咨询服务费的税率是多少
  • 审计调整分录如何处理
  • 高新企业境外所得缴纳企业所得税税率为多少
  • 凭证制单和审核可以是一个人吗
  • 税收法定原则的意义
  • 如何核算卷烟消费税税率?
  • 无法偿还的应付款项予以转账
  • 当月未出账费用
  • 购材料有折让如何做会计分录?
  • u盘文件全都变成快捷方式怎么办
  • 公司租房可以抵扣个人所得税吗
  • 企业自建自用房的规定
  • 应交税费进项税额在借方说明什么
  • php云盘源码
  • 境外付款
  • 同步和异步的关系
  • php验证电子邮件格式
  • 汇总纳税企业总分机构信息备案
  • 爱德华王子岛的气候
  • 固定资产清理科目核算内容
  • javascript创建对象及应用
  • vue-element
  • 长期借款科目的借方反映的内容
  • 期初成本和期末成本
  • 什么是电子税务局app
  • 已经结账的账目怎么冲红
  • 可供分配利润是留存收益吗
  • 租金发票的税率多少
  • 国际运输代理费属于什么科目
  • 网上学电脑
  • 公司车辆退保进哪个科目
  • 织梦开发教程
  • 无法支付的应付账款转作营业外收入
  • 货物已到发票未开具
  • 收到货款未开票怎么入账
  • 临时工工资应计入什么科目
  • 材料成本差异的含义
  • 上年度库存商品错误如何更正
  • 自己做的房子可以办房产证吗
  • 幼儿园报税的基础是什么
  • 企业为什么要进行绩效管理?
  • 房地产企业房屋私售,银行怎么处理
  • mysql 压测
  • win8.1 0x80072efe
  • win8windows设置在哪里
  • win7系统电脑开不了机
  • Linux查看文件的大小
  • windows7如何关闭update
  • windows8.1使用指南
  • 简述javascript中的函数
  • [置顶]津鱼.我爱你
  • nodejs npm install全局安装和本地安装的区别
  • 在文本输入框中的输入内容是
  • js模块化和组件化
  • 一些常用的网络命令
  • python 解析算法
  • 电子税务局校验码
  • 定额发票怎么查流向
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设