Android
更新时间:2021-07-09
本文档针对已接入线上增强级采集SDK、需升级到安全版本的客户提供升级指导。
安全增强级采集SDK是目前线上增强级采集SDK的安全加固版本,针对ROM注入、相机劫持、视频流替换等攻击方式进行安全升级,符合国家网信办安全标准,安全升级点如下:
- 代码保护: 保护人脸识别过程中,图像数据不被Hook替换
- 图像保护: 对图像本身增加多重加密及签名验证
- 网络保护:增强⻛险网络环境检测能力,避免中间人攻击
- 逻辑保护:避免人脸识别业务流程逻辑被攻击
- ⻛险环境扫描:提升Root检测、重打包、云手机、生物探针等设备⻛险检测能力
升级方式请参考以下步骤
1.删除项目的对faceplatform 和faceplatform-ui的依赖
根目录下settings.gradle 文件 删除依赖
include ':faceplatform-ui'
include ':faceplatform'
app module 下build.gradle文件注释掉如下依赖,第三步后重新打开
compile project(path: ':faceplatform-ui')
重新进行sync操作,如下图所示
2.导入第一步下载安全SDKDemo里面的faceplatform-ui 及 lib-liantian module
点击file ->new ->import module 点击finish
3.打开app module 下build.gradle文件添加如下依赖并重新build
compile project(path: ':faceplatform-ui')
此时 setting.gradle包含如下module
include ':faceplatform-ui'
include ':lib-liantian'
4.app 目录下AndroidManifest.xml 文件,升级了安全SDK后,将之前的liantian类删除掉,如下都可以删除
<!--安全设备指纹接入 start-->
<activity
android:name="com.baidu.liantian.LiantianActivity"
android:exported="true"
android:theme="@android:style/Theme.Translucent"
android:excludeFromRecents="true"
android:launchMode="standard">
<intent-filter>
<action android:name="com.baidu.action.Liantian.VIEW" />
<category android:name="com.baidu.category.liantian"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</activity>
<receiver android:name="com.baidu.liantian.LiantianReceiver" android:exported="false">
<intent-filter>
<action android:name="com.baidu.action.Liantian.VIEW" />
<category android:name="com.baidu.category.liantian"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
<intent-filter android:priority="2147483647">
<action android:name="android.intent.action.BOOT_COMPLETED"/>
</intent-filter>
</receiver>
<!--将com.baidu.idl.face.demo替换成您工程的包名-->
<provider android:authorities="com.baidu.idl.face.demo.liantian.ac.provider" android:name="com.baidu.liantian.LiantianProvider" android:exported="true"/>
<service
android:name="com.baidu.liantian.LiantianService"
android:exported="false">
<intent-filter>
<action android:name="com.baidu.action.Liantian.VIEW" />
<category android:name="com.baidu.category.liantian"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</service>
5.FaceLivenessExpActivity onLivenessCompletion 接口修改为 onCollectCompletion
6.在Application里初始化 LH安全类,填写自己的apiKey及secretKey
public void onCreate() {
super.onCreate();
LH.setAgreePolicy(getApplicationContext(), true);
LH.init(getApplicationContext(), "vis-var-license-face-android",
"xYBW9IAzPR6YVy1qsve8SPfc",
"ZxA7mMPc9Xvn2S4tRZKbjWSQNun4PSjd");
}
如有其他问题可参考 安全加固采集SDK接入文档