مرجع ساختار keymaster0_device

مرجع ساختار keymaster0_device

#include < keymaster0.h >

فیلدهای داده

ساخت hw_device_t مشترک
uint32_t client_version
uint32_t پرچم ها
خالی * متن نوشته
int(* gene_keypair )(const struct keymaster0_device *dev, const keymaster_keypair_t key_type, const void *key_params, uint8_t **key_blob, size_t *key_blob_length)
int(* import_keypair )(const struct keymaster0_device *dev, const uint8_t *key, const size_t key_length, uint8_t **key_blob, size_t *key_blob_length)
int(* get_keypair_public )(const struct keymaster0_device *dev, const uint8_t *key_blob, const size_t key_blob_length, uint8_t **x509_data, size_t *x509_data_length)
int(* delete_keypair )(const struct keymaster0_device *dev, const uint8_t *key_blob, const size_t key_blob_length)
int(* delete_all )(const struct keymaster0_device *dev)
int(* sign_data )(const struct keymaster0_device *dev, const void *signing_params, const uint8_t *key_blob, const size_t key_blob_length, const uint8_t *data, const size_t data_length, uint8_t **signed_tang *signed_tang, size_t)
int(* verify_data )(const struct keymaster0_device *dev, const void *signing_params, const uint8_t *key_blob, const size_t key_blob_length, const uint8_t *signed_data, const size_t signed_data_length, const uintthignt*, const uintaturet8)

توصیف همراه با جزئیات

تعریف دستگاه Keymaster0.

تعریف در خط 27 فایل keymaster0.h .

مستندات میدانی

uint32_t client_version

این منسوخ شده است. به جای آن از فیلدهای جدید "module_api_version" و "hal_api_version" در مقداردهی اولیه keymaster_module استفاده کنید.

تعریف در خط 40 فایل keymaster0.h .

struct hw_device_t مشترک

روش های رایج دستگاه کی مستر این باید اولین عضو keymaster0_device باشد زیرا کاربران این ساختار در زمینه‌هایی که مشخص است hw_device_t به keymaster0_device ارجاع می‌دهد، نشانگر hw_device_t را به keymaster0_device ارسال می‌کنند.

تعریف در خط 34 فایل keymaster0.h .

متن خالی*

تعریف در خط 47 فایل keymaster0.h .

int(* delete_all)(const struct keymaster0_device *dev)

تمام کلیدهای موجود در فروشگاه کلید سخت افزار را حذف می کند. زمانی استفاده می شود که ذخیره کلید به طور کامل بازنشانی شود.

این تابع اختیاری است و در صورت اجرا نشدن باید روی NULL تنظیم شود.

در صورت موفقیت 0 یا کد خطای کمتر از 0 را برمی گرداند.

تعریف در خط 102 فایل keymaster0.h .

int(* delete_keypair)(const struct keymaster0_device *dev, const uint8_t *key_blob, const size_t key_blob_length)

جفت کلید مرتبط با حباب کلید را حذف می کند.

این تابع اختیاری است و در صورت اجرا نشدن باید روی NULL تنظیم شود.

در صورت موفقیت 0 یا کد خطای کمتر از 0 را برمی گرداند.

تعریف در خط 90 فایل keymaster0.h .

پرچم های uint32_t

پرچم های تعریف شده برای keymaster0_device:: flags را در keymaster_common.h ببینید

تعریف در خط 45 فایل keymaster0.h .

int(*gene_keypair)(const struct keymaster0_device *dev, const keymaster_keypair_t key_type, const void *key_params, uint8_t **key_blob, size_t *key_blob_length)

یک کلید عمومی و خصوصی تولید می کند. کلید حباب برگشتی مات است و باید بعداً برای امضا و تأیید ارائه شود.

برمی گرداند: 0 در صورت موفقیت یا کد خطای کمتر از 0.

تعریف در خط 55 فایل keymaster0.h .

int(* get_keypair_public)(const struct keymaster0_device *dev, const uint8_t *key_blob, const size_t key_blob_length, uint8_t **x509_data, size_t *x509_data_length)

بخش کلید عمومی یک جفت کلید را دریافت می کند. کلید عمومی باید با فرمت X.509 (استاندارد جاوا) آرایه بایت کدگذاری شده باشد.

برمی گرداند: 0 در صورت موفقیت یا کد خطای کمتر از 0. در صورت خطا، x509_data نباید تخصیص داده شود.

تعریف در خط 78 فایل keymaster0.h .

int(* import_keypair)(const struct keymaster0_device *dev, const uint8_t *key, const size_t key_length, uint8_t **key_blob, size_t *key_blob_length)

یک جفت کلید عمومی و خصوصی را وارد می کند. کلیدهای وارد شده در قالب PKCS#8 با رمزگذاری DER (استاندارد جاوا) خواهند بود. کلید بازگردانده شده مات است و متعاقباً برای امضا و تأیید ارائه خواهد شد.

برمی گرداند: 0 در صورت موفقیت یا کد خطای کمتر از 0.

تعریف در خط 67 فایل keymaster0.h .

int(* sign_data)(const struct keymaster0_device *dev, const void *signing_params, const uint8_t *key_blob, const size_t key_blob_length, const uint8_t *data, const size_t data_length, uint8_t **_dat_signed)ta

داده ها را با استفاده از حفره کلیدی که قبلاً ایجاد شده بود امضا می کند. این می تواند از یک کلید نامتقارن یا یک کلید مخفی استفاده کند.

برمی گرداند: 0 در صورت موفقیت یا کد خطای کمتر از 0.

تعریف در خط 110 فایل keymaster0.h .

int(* verify_data)(const struct keymaster0_device *dev, const void *signing_params, const uint8_t *key_blob, const size_t key_blob_length, const uint8_t *signed_data, const size_t signed_data_length,const size_t signed_data_length,const size_t signed_data_length,const size_t signed_data_length,const size_t signed_data_length,const size_t signed_data_length,const size_t signed_data_length,const size_t signed_data_length,const size_t *signing_params, const uint8_t *key_blob, const size_t key_blob_length

داده‌های امضا شده با کلید حباب را تأیید می‌کند. این می تواند از یک کلید نامتقارن یا یک کلید مخفی استفاده کند.

برمی گرداند: 0 در تأیید موفقیت آمیز یا کد خطای کمتر از 0.

تعریف در خط 122 فایل keymaster0.h .


مستندات این ساختار از فایل زیر تولید شده است: