Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android密码保护sqlite_Android_Sqlite_Android Sqlite - Fatal编程技术网

Android密码保护sqlite

Android密码保护sqlite,android,sqlite,android-sqlite,Android,Sqlite,Android Sqlite,我有一个android应用程序,我可以将我的数据库导出/导入SD卡 我只需使用以下方法: FileChannel src = new FileInputStream(currentDB).getChannel(); FileChannel dst = new FileOutputStream(backupDB).getChannel(); dst.transferFrom(src, 0, src.size()); src.close(); dst.close(); 我想做的是用密码保护我导出的

我有一个android应用程序,我可以将我的数据库导出/导入SD卡

我只需使用以下方法:

FileChannel src = new FileInputStream(currentDB).getChannel();
FileChannel dst = new FileOutputStream(backupDB).getChannel();
dst.transferFrom(src, 0, src.size());
src.close();
dst.close();
我想做的是用密码保护我导出的数据库,所以如果有人试图使用sqlite浏览程序打开它,他们需要输入密码


这可以做到吗(以及如何做到)?

您可以加密文件(导出的数据库),而不是保护数据库。有些线程正在讨论这一点:

更新1:

要解密桌面上的文件,有以下线程:


我认为你不能用密码保护sqlite数据库,但你能做的是用密码加密数据。@TadejVengust,它有用吗?是的,谢谢,但不,它在哪里说明了如何在我的计算机上而不是android上解密文件:(因此,如果我想用密码保护我的数据库,我必须在导出时加密我的整个文件,然后用我用java编写的程序在我的计算机上解密它?没有更简单的方法?因为我会频繁地导出和导入,这将耗费相当多的时间。@TadejVengust关于加密/解密的过程,你是对的。有一些商业库来帮助你做这件事。关于加密/解密的时间,你是对的,这需要很多时间。你可以使用硬件加密处理器来提高速度。