keymaster0_device مرجع هيكل الجهاز
#include < keymaster0.h >
حقول البيانات | |
هيكل hw_device_t | مشترك |
uint32_t | client_version |
uint32_t | الأعلام |
فارغ * | سياق الكلام |
int (* | generate_keypair ) (CONST البنية keymaster0_device * ديف، CONST keymaster_keypair_t key_type، الفراغ CONST * 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 * signature_params ، const uint8_t * key_blob ، const size_t key_blob_length ، const uint8_t * data ، const size_t data_length ، uint8_t ** signature_data ، size_t * signature_data_length) |
int (* | check_data ) (const Struct keymaster0_device * dev ، const void * signature_params ، const uint8_t * key_blob ، const size_t key_blob_length ، const uint8_t * الموقعة_البيانات ، const size_t signed_data_length ، const uint8_t * signature ، const size_t signature_length) |
وصف مفصل
تعريف الجهاز Keymaster0.
التعريف في السطر 27 من ملف keymaster0.h .
التوثيق الميداني
uint32_t client_version |
هذا مهمل. استخدم حقلي "module_api_version" الجديد و "hal_api_version" في تهيئة keymaster_module بدلاً من ذلك.
التعريف في السطر 40 للملف keymaster0.h .
هيكل 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 (* create_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 * signature_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 * signature_data_length) |
يوقع البيانات باستخدام key-blob تم إنشاؤه من قبل. يمكن أن يستخدم هذا إما مفتاحًا غير متماثل أو مفتاحًا سريًا.
العوائد: 0 عند النجاح أو رمز خطأ أقل من 0.
التعريف في السطر 110 للملف keymaster0.h .
int (* check_data) (const Struct keymaster0_device * dev ، const void * signature_params ، const uint8_t * key_blob ، const size_t key_blob_length ، const uint8_t * signed_data ، const size_t signature_data_length ، const uint8_t * signature ، const size_t signature_length) |
يتحقق من البيانات الموقعة باستخدام blob مفتاح. يمكن أن يستخدم هذا إما مفتاحًا غير متماثل أو مفتاحًا سريًا.
العوائد: 0 عند التحقق الناجح أو رمز خطأ أقل من 0.
التعريف في السطر 122 للملف keymaster0.h .
تم إنشاء وثائق هذه البنية من الملف التالي:
- الأجهزة / libhardware / تشمل / الأجهزة / keymaster0.h