1. 坚持安全
安全卡管理应用程序很多,但似乎没有一个是忠实于安全的。
我收到了一些其他安全卡应用程序并对其进行了分析,但我能够非常轻松地解密数据。
如果不知道用户设置的密码,我创建的应用程序的数据文件是绝对不可能的。
但是,在使用自动登录和指纹识别功能的情况下,如果安全卡加源和存储数据的终端是安全的,则可以解密。
安全密钥是 256 位。
用户输入的密码不会存储在设备的任何位置。
(但是,如果您使用自动登录/指纹识别登录功能,当前使用的终端信息会被加密存储。)
通过从登录时输入的明文中提取加密密钥来加密所有数据。
它使用提取的加密密钥进行加密,因此即使数据文件泄露也是安全的。
生成加密密钥并使用 JNI 隐藏加密/解密过程。
更改密码时,所有数据都会使用从更改后的密码中提取的密钥重新加密并存储。
如果黑客试图解密数据文件,则最多需要 256 次尝试的 32 次方。
计算器是这样吐出来的。 1.1579208923731619542357098500869e+77
当然,解密绝非不可能。只是时间长了...
如果我们用一台通用计算机代替上述所有数字,则需要数万年的时间。
而通过这种方式找到的密码就是特定用户数据的密码。
其他用户的数据是安全的。
2.安全卡输入方便
我制作了安全卡,以便通过用相机拍照识别代码来注册它。
用相机拍摄的照片只存在于内存中,识别后消失。
3.提供迷你弹窗,增加易用性。
通过单击安全代码查询屏幕上的弹出窗口尝试使用它。
自动登录功能,指纹识别登录
安装所需的权限
指纹识别 -
摄像头 - 安全卡代码识别
SD卡——数据备份(恢复)
网络 - 检查应用程序更新
无障碍服务API
需要检查银行app是否正在运行,设置的app执行时,会执行安全卡弹窗。
我们不会使用此 API 来收集或共享个人或敏感用户数据。