keymaster0_device Struct Reference
#include < keymaster0.h >
שדות נתונים | |
struct hw_device_t | מְשׁוּתָף |
uint32_t | client_version |
uint32_t | דגלים |
בטל* | הֶקשֵׁר |
int(* | gener_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_data, size_t *signed)_ |
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 uint8_t *_signature const uint8_t *_signature) |
תיאור מפורט
הגדרת מכשיר Keymaster0.
הגדרה בשורה 27 של הקובץ keymaster0.h .
תיעוד שטח
uint32_t client_version |
זה מבוטל. השתמש בשדות החדשים "module_api_version" ו-"hal_api_version" באתחול keymaster_module במקום זאת.
הגדרה בשורה 40 של הקובץ keymaster0.h .
struct hw_device_t נפוץ |
שיטות נפוצות של התקן keymaster. זה חייב להיות החבר הראשון של 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(* generate_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 (בתקן Java) מערך בתים מקודד.
מחזירה: 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 (תקן Java). כתם המפתח שהוחזר הוא אטום ויסופק לאחר מכן לחתימה ואימות.
מחזירה: 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 **signed_signed_data, size_t *th |
חותם נתונים באמצעות כתם מפתח שנוצר קודם לכן. זה יכול להשתמש במפתח אסימטרי או במפתח סודי.
מחזירה: 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 uintature_length_signature, const uintature8_t_size_sign) |
מאמת נתונים חתומים באמצעות גוש מפתח. זה יכול להשתמש במפתח אסימטרי או במפתח סודי.
מחזירה: 0 באימות מוצלח או קוד שגיאה קטן מ-0.
הגדרה בשורה 122 של הקובץ keymaster0.h .
התיעוד עבור מבנה זה נוצר מהקובץ הבא:
- hardware/libhardware/include/hardware/ keymaster0.h