gatekeeper_device مرجع ساختار

gatekeeper_device مرجع ساختار

#include < gatekeeper.h >

فیلدهای داده

hw_device_t مشترک
int(* enroll _password_length , uint8_t ** enrolled_password_handle, uint32_t * enrolled_password_handle_length)
int(* verify ، uint32_t *auth_token_length، bool * request_reenroll)
int(* delete_user )(const struct gatekeeper_device *dev, uint32_t uid)
int(* delete_all_users )(const struct gatekeeper_device *dev)

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

تعریف در خط 41 فایل gatekeeper.h .

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

hw_device_t رایج است

روش های رایج دستگاه دروازه بان همانطور که در بالا ذکر شد، این باید اولین عضو keymaster_device باشد.

تعریف در خط 46 فایل gatekeeper.h .

int(* delete_all_users)(const struct gatekeeper_device *dev)

تعریف در خط 173 فایل gatekeeper.h .

int(* delete_user)(const struct gatekeeper_device *dev, uint32_t uid)

تعریف در خط 159 فایل gatekeeper.h .

int(* enroll)(const struct gatekeeper_device *dev, uint32_t uid, const uint8_t *current_password_handle, uint32_t current_password_handle_length, const uint8_t *current_password, uint32_t uint32_t فعلی_password, uint32_t uint_2 رمز عبور فعلی _t_password_length_t دلخواه، uint8_t ** enrolled_password_handle، uint32_t * enrolled_password_handle_length)

رمز عبور دلخواه را ثبت می کند، که باید از پین یا رمز عبور انتخاب شده توسط کاربر مشتق شود، با کلید خصوصی فاکتور احراز هویت که فقط برای ثبت داده های فاکتور احراز هویت استفاده می شود.

اگر قبلاً گذرواژه‌ای ثبت شده است، باید آن را در current_password_handle، همراه با رمز عبور فعلی در current_password که باید در مقابل current_password_handle اعتبارسنجی شود، ارائه شود.

مولفه های:

  • dev: اشاره گر به gatekeeper_device از طریق تماس با gatekeeper_open به دست آمده است
  • uid: شناسه کاربری اندروید
  • current_password_handle: دسته رمز عبور ثبت‌شده فعلی که کاربر می‌خواهد جایگزین کند. اگر رمز عبور ثبت‌شده‌ای وجود نداشته باشد، ممکن است باطل باشد.
  • current_password_handle_length: طول بافر بر حسب بافر که توسط current_password_handle اشاره شده است. اگر Current_password_handle NULL باشد باید 0 باشد.
  • current_password: رمز عبور فعلی کاربر در متن ساده. اگر ارائه شود، باید در مقابل current_password_handle تأیید شود.
  • current_password_length: اندازه در بایت بافر که توسط current_password اشاره شده است. اگر current_password NULL باشد باید 0 باشد.
  • want_password: رمز عبور جدیدی که کاربر می خواهد در متن ساده ثبت نام کند. نمی تواند NULL باشد.
  • wish_password_length: طول بافر بر حسب بافر که توسط wish_password به آن اشاره شده است.
  • enrolled_password_handle: در صورت موفقیت، یک بافر با دسته گذرواژه جدید با ارجاع به رمز عبور ارائه شده در wish_password اختصاص داده می شود. این بافر می تواند در تماس های بعدی برای ثبت نام یا تأیید استفاده شود. تماس گیرنده مسئول انتقال این بافر از طریق تماس برای حذف است[]
  • enrolled_password_handle_length: نشانگر طول در بایت بافر اختصاص داده شده توسط این تابع و با *enrolled_password_handle_length است.

برمی گرداند:

  • 0 در موفقیت
  • کد خطا < 0 در صورت خرابی، یا
  • اگر تا زمانی که T میلی‌ثانیه سپری نشده است، تماس مجدد انجام نشود، مقدار T > 0.

در صورت بروز خطا، enrolled_password_handle اختصاص داده نخواهد شد.

تعریف در خط 91 فایل gatekeeper.h .

int(* verify)(const struct gatekeeper_device *dev, uint32_t uid, uint64_t challenge, const uint8_t *enrolled_password_handle, uint32_t enrolled_password_handle_length, const uint8_t *provided uint8_t *provided uint8_t *provided-thpass_2_word _token، uint32_t *auth_token_length، bool *request_reenroll)

مطابقت provide_password enrolled_password_handle را تأیید می کند.

پیاده‌سازی‌های این ماژول ممکن است نتیجه این فراخوانی را برای تأیید جدید بودن احراز هویت حفظ کنند.

در صورت موفقیت، آدرس یک نشانه تأیید را در auth_token می‌نویسد، که می‌تواند برای تأیید تأیید رمز عبور برای سایر سرویس‌های مورد اعتماد استفاده شود. مشتریان ممکن است NULL را برای این مقدار پاس کنند.

مولفه های:

  • dev: اشاره گر به gatekeeper_device از طریق تماس با gatekeeper_open به دست آمده است
  • uid: شناسه کاربری اندروید
  • چالش: یک چالش اختیاری برای احراز هویت در برابر یا 0. زمانی که یک احراز هویت جداگانه درخواست تأیید رمز عبور یا برای احراز هویت رمز عبور تراکنشی می‌کند، استفاده می‌شود.
  • enrolled_password_handle: دسته رمز عبور ثبت‌شده فعلی که کاربر می‌خواهد آن را تأیید کند.
  • enrolled_password_handle_length: طول بافری که توسط enrolled_password_handle به آن اشاره می شود.
  • provide_password: رمز عبور متن ساده که باید در برابر enrolled_password_handle تأیید شود
  • provide_password_length: طول بافر بر حسب بافر که توسط provide_password به آن اشاره شده است.
  • auth_token: در صورت موفقیت، یک بافر حاوی نشانه احراز هویت حاصل از این تأیید به *auth_token اختصاص داده می شود. تماس گیرنده مسئول انتقال این حافظه از طریق تماس برای حذف است[]
  • auth_token_length: در صورت موفقیت، طول توکن احراز هویت اختصاص داده شده به *auth_token به *auth_token_length به بایت اختصاص داده می شود.
  • request_reenroll: درخواستی از لایه های بالایی برای ثبت مجدد رمز عبور تایید شده به دلیل تغییر نسخه. در صورت عدم موفقیت تأیید، تنظیم نشده است.

برمی گرداند:

  • 0 در موفقیت
  • کد خطا < 0 در صورت خرابی، یا
  • اگر تا زمانی که T میلی‌ثانیه سپری نشده است، تماس مجدد انجام نشود، مقدار T > 0. در صورت بروز خطا، رمز تأیید تخصیص داده نخواهد شد

تعریف در خط 141 فایل gatekeeper.h .


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