快速链接:
.
👉👉👉 个人博客笔记导读目录(全部) 👈👈👈
相关推荐:
1、Android keymaster的介绍和总结
2、Android keystore/Keymaster的代码导读
文章目录
1、keymaster@4.0-service的集成
2、keymaster HAL接口的定义
3、keymaster@4.0-service 纯软实现
3、keymaster@4.0-service beanpod实现
4、keymaster@4.0-service trustonic实现
5、总结
1、keymaster@4.0-service的集成
在device.mk中定义了需要集成的keymaster,多选一:
android.hardware.keymaster@4.0-service.trustonic
android.hardware.keymaster@4.0-service.beanpod
android.hardware.keymaster@4.0-service.beanpod.lite
android.hardware.keymaster@4.0-service.trustkernel
android.hardware.keymaster@4.0-service.mtee
android.hardware.keymaster@4.0-service //纯软
(vim device/mediatek/common/device.mk)
# list of all TEEs
ifeq ($(strip $(TRUSTONIC_TEE_SUPPORT)), yes)
PRODUCT_PACKAGES += android.hardware.keymaster@4.0-service.trustonic
else ifeq ($(strip $(MICROTRUST_TEE_SUPPORT)), yes)
PRODUCT_PACKAGES += android.hardware.keymaster@4.0-service.beanpod
else ifeq ($(strip $(MICROTRUST_TEE_LITE_SUPPORT)), yes)
PRODUCT_PACKAGES += android.hardware.keymaster@4.0-service.beanpod.lite
else ifeq ($(strip $(TRUSTKERNEL_TEE_SUPPORT)), yes)
PRODUCT_PACKAGES += android.hardware.keymaster@4.0-service.trustkernel
else ifeq ($(strip $(MTK_IN_HOUSE_TEE_SUPPORT)), yes)
PRODUCT_PACKAGES += android.hardware.keymaster@4.0-service.mtee
else
PRODUCT_PACKAGES += android.hardware.keymaster@4.0-service
endif #end of list of TEEs
2、keymaster HAL接口的定义
hardware/interfaces/keymaster/4.0$ ls
Android.bp default IKeymasterDevice.hal support types.hal vts
3、keymaster@4.0-service 纯软实现
hardware/interfaces/keymaster/4.0/default$ ls
Android.bp android.hardware.keymaster@4.0-service.rc OWNERS service.cpp
(cat service.cpp)
#include
#include
#include
#include
using android::hardware::keymaster::V4_0::SecurityLevel;
int main() {
::android::hardware::configureRpcThreadpool(1, true /* willJoinThreadpool */);
auto keymaster = ::keymaster::V4_0::ng::CreateKeymasterDevice(SecurityLevel::SOFTWARE);
auto status = keymaster->registerAsService();
if (status != android::OK) {
LOG(FATAL) << "Could not register service for Keymaster 4.0