android应用安全——数据安全

本文涉及的产品
数据安全中心,免费版
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介:


 数据安全包含数据库数据安全、SD卡数据(外部存储)安全、RAM数据(内部存储)安全。

       android中操作数据库可使用SQLiteOpenHelperContentProvider的方式。使用SQLiteOpenHelper操作数据库时,数据库存放在data/data/<packagename>/databases/目录,这个目录只能是应用自己访问,相对是安全的,但是root用户,这个目录也是透明的,因此,私密数据也要做到加密存储。使用ContentProvider操作数据时,本质上也是使用SQLiteOpenHelper,这时需要在AndroidManifest.xml来注册这个Provider,注册Provider就对外提供了访问这个数据库的接口,其他应用就可以访问这个数据库了,为了数据库数据安全就需要控制访问,如果不想对外提供访问只需在AndroidManifest.xml注册Provider时设置android:exported="false";如果想提供对外访问能力,最好设置android:readPermissionandroid:writePermission这两个属性,来分别指定对这个ContentProvider中数据读和写操作的权限。android数据库还要预防数据注入的攻击。

    SD卡是一个公共的存储空间,只要申请了如下权限,就可以操作SD卡。也就是说SD卡数据是最不安全的,很容易被其他应用读取篡改,如果SD中存放数据,建议存放一些无关紧要的数据,重要数据加密存储或者存放到RAM中。

    <!-- 在SDCard中创建与删除文件权限 -->     <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>       <!-- 往SDCard写入数据权限 -->     <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 

     RAM 数据存储在/data/data/<package name>/files目录中,只允许当前应用访问,安全性较好,但是root后的机器也是可以被读取篡改的,这里的数据也不是绝对的安全,RAM的敏感数据也要加密存储。


    数据安全最重要的是解决数据加密的问题,密钥存储问题,选择合适的加密方法。加密方法,密钥存储建议使用

Native本地库实现。


/**
* @author 张兴业
*  http://blog.csdn.net/xyz_lmn
*  android开发进阶群: 241395671
*/



     本文转自xyz_lmn51CTO博客,原文链接:http://blog.51cto.com/xyzlmn/1230743 ,如需转载请自行联系原作者

相关文章
|
5月前
|
存储 安全 数据安全/隐私保护
🔎Android安全攻防实战!守护你的应用数据安全,让用户放心使用!🛡️
【7月更文挑战第28天】在移动应用盛行的时代,确保Android应用安全性至关重要。本文以问答形式探讨了主要安全威胁(如逆向工程、数据窃取)及其对策。建议使用代码混淆、签名验证、数据加密等技术来增强应用保护。此外,还推荐了加密API、HTTPS通信、代码审计等措施来进一步加强安全性。综上所述,全面的安全策略对于构建安全可靠的应用环境必不可少。#Android #应用安全 #代码混淆 #数据加密
91 3
|
6月前
|
安全 网络协议 网络安全
程序与技术分享:Android应用安全之数据传输安全
程序与技术分享:Android应用安全之数据传输安全
|
编解码 安全 Shell
Android 应用安全与逆向:超实用命令总结,让你的开发效率倍增!
今天分享的是关于 Android 安全防护和逆向常用的命令,准备好你们的键盘和鼠标,让我们开始吧!
208 0
Android 应用安全与逆向:超实用命令总结,让你的开发效率倍增!
|
存储 XML 监控
Android 应用安全机制实现方案探究
APP开发完成后,需要进行加固、签名等安全操作,若应用不做任何安全防护,极易被病毒植入、广告替换、支付渠道篡改、钓鱼、信息劫持等,严重侵害开发者的利益。App 加固后,可以对应用进行安全防护,防止应用分发后,被反编译、调试、盗版、破解、二次打包等威胁,维护开发者的利益。除了对APP进行加固操作,还需要进行签名。APP通过对 Apk 进行签名,开发者可以证明对 Apk 的所有权和控制权,可用于安装和更新其应用。而在 Android 设备上安装 Apk ,如果是一个没有被签名的 Apk,则会被拒绝安装。
389 1
Android 应用安全机制实现方案探究