جریان چکمه

روند بوت توصیه‌شده برای یک دستگاه در این صفحه شرح داده شده و در شکل ۱ نشان داده شده است:

جریان بوت تأیید شده

شکل ۱. جریان بوت تأیید شده.

جریان برای دستگاه‌های A/B

اگر دستگاه از A/B استفاده می‌کند، روند بوت کمی متفاوت است. قبل از به‌روزرسانی فراداده‌های محافظت از بازگشت به نسخه قبلی، ابتدا باید اسلات مورد نظر برای بوت با استفاده از Boot Control HAL به عنوان SUCCESSFUL علامت‌گذاری شود.

اگر به‌روزرسانی پلتفرم با شکست مواجه شود (با عنوان SUCCESSFUL علامت‌گذاری نشود)، پشته A/B به اسلات دیگر برمی‌گردد که هنوز نسخه قبلی اندروید را در خود دارد. با این حال، اگر فراداده محافظت از بازگشت به نسخه قبلی تنظیم شده باشد، نسخه قبلی به دلیل محافظت از بازگشت به نسخه قبلی نمی‌تواند بوت شود.

وضعیت بوت تأیید شده را به کاربران اطلاع دهید

پس از تعیین وضعیت بوت یک دستگاه، آن وضعیت را به کاربر اطلاع دهید. اگر دستگاه هیچ مشکلی ندارد، بدون نمایش چیزی ادامه دهید. مشکلات بوت تأیید شده در این دسته‌ها قرار می‌گیرند:

  • زرد: صفحه هشدار برای دستگاه‌های قفل‌شده با تنظیم ریشه اعتماد سفارشی
  • نارنجی: صفحه هشدار برای دستگاه‌های قفل نشده
  • قرمز ( eio ): صفحه هشدار برای خرابی dm-verity
  • قرمز (سیستم عامل یافت نشد): هیچ سیستم عامل معتبری یافت نشد

دستگاه‌های قفل‌شده با ریشه اعتماد سفارشی

اگر دستگاه قفل شده باشد، یک ریشه اعتماد سفارشی تنظیم شده باشد و تصویر با این ریشه اعتماد سفارشی امضا شده باشد، در هر بوت یک صفحه زرد نشان داده می‌شود. صفحه زرد پس از ده ثانیه بسته می‌شود و دستگاه به بوت شدن ادامه می‌دهد. اگر کاربر دکمه پاور را فشار دهد، متن *برای مکث دکمه پاور را فشار دهید* به *برای ادامه دکمه پاور را فشار دهید* تغییر می‌کند و صفحه هرگز بسته نمی‌شود (ممکن است دستگاه برای محافظت در برابر سوختگی، صفحه را کم نور یا خاموش کند). اگر دوباره فشار داده شود، صفحه بسته می‌شود و تلفن به بوت شدن ادامه می‌دهد.

برای hex-number ، از هشت رقم اول sha256 مربوط به نمایش کلید عمومی مورد استفاده برای تأیید، مثلاً d14a028c ، استفاده کنید.

متن پیشنهادی:

دستگاه شما در حال بارگذاری یک سیستم عامل متفاوت است.

از طریق دستگاه دیگری به این لینک مراجعه کنید:

g.co/ABH

اثر انگشت سیستم عامل: hex-number

برای مکث، دکمه پاور را فشار دهید

نمونه‌ای از صفحه نمایش زرد
شکل ۲. نمونه‌ای از یک صفحه نمایش زرد.

دستگاه‌های قفل‌گشایی‌شده

اگر دستگاه قفل نباشد، در هر بار بوت شدن، صفحه نارنجی نمایش داده می‌شود. صفحه نارنجی پس از ده ثانیه بسته می‌شود و دستگاه به بوت شدن ادامه می‌دهد. اگر کاربر دکمه پاور را فشار دهد، متن *برای مکث دکمه پاور را فشار دهید* به *برای ادامه دکمه پاور را فشار دهید* تغییر می‌کند و صفحه هرگز بسته نمی‌شود (در صورت نیاز، دستگاه ممکن است برای محافظت در برابر سوختگی یا موارد مشابه، صفحه را کم نور و/یا خاموش کند). در صورت فشار مجدد، صفحه بسته می‌شود و تلفن به بوت شدن ادامه می‌دهد.

برای hex-number ، از هشت رقم اول sha256 مربوط به نمایش کلید عمومی مورد استفاده برای تأیید، مثلاً d14a028c ، استفاده کنید.

متن پیشنهادی:

بوت لودر آنلاک شده است و نمی‌توان سلامت نرم‌افزار را تضمین کرد. هرگونه داده ذخیره شده روی دستگاه ممکن است در دسترس مهاجمان قرار گیرد. هیچ داده حساسی را روی دستگاه ذخیره نکنید.

از طریق دستگاه دیگری به این لینک مراجعه کنید:

g.co/ABH

شناسه: hex-number

برای مکث دکمه پاور را فشار دهید.

نمونه‌ای از صفحه نمایش نارنجی
شکل ۳. نمونه‌ای از یک صفحه نمایش نارنجی.

فساد dm-verity

اگر نسخه معتبری از اندروید پیدا شود و دستگاه در حالت eio dm-verity باشد، صفحه قرمز eio نمایش داده می‌شود. کاربر برای ادامه باید دکمه پاور را فشار دهد. اگر کاربر ظرف 30 ثانیه صفحه هشدار را تأیید نکند، دستگاه خاموش می‌شود (برای محافظت از صفحه نمایش در برابر سوختگی و صرفه‌جویی در مصرف برق).

متن پیشنهادی:

دستگاه شما خراب است. نمی‌توان به آن اعتماد کرد و ممکن است به درستی کار نکند.

از طریق دستگاه دیگری به این لینک مراجعه کنید:

g.co/ABH

برای ادامه، دکمه پاور را دهید.

نمونه‌ای از صفحه نمایش RED eio
شکل ۴. نمونه‌ای از صفحه نمایش RED eio.

هیچ سیستم عامل معتبری یافت نشد

اگر نسخه معتبری از اندروید پیدا نشود، صفحه قرمز نمایش داده می‌شود. دستگاه نمی‌تواند به بوت شدن ادامه دهد. اگر کاربر ظرف 30 ثانیه صفحه هشدار را تأیید نکند، دستگاه خاموش می‌شود تا از صفحه نمایش در برابر سوختگی محافظت کند و در مصرف برق صرفه‌جویی شود.

برای hex-number ، از هشت رقم اول sha256 مربوط به نمایش کلید عمومی مورد استفاده برای تأیید، مثلاً d14a028c ، استفاده کنید.

متن پیشنهادی:

هیچ سیستم عامل معتبری یافت نشد. دستگاه بوت نمی‌شود.

از طریق دستگاه دیگری به این لینک مراجعه کنید:

g.co/ABH

شناسه: hex-number

برای خاموش کردن، دکمه پاور را فشار دهید.

نمونه‌ای از صفحه نمایش قرمز
شکل ۵. نمونه‌ای از صفحه نمایش قرمز.

تأیید را باز کنید

نمایش صفحه تأیید باز کردن قفل در پاسخ به دستور fastboot flashing unlock که از طریق رابط fastboot اجرا می‌شود. تمرکز اولیه روی «باز کردن قفل انجام نشود» است. اگر کاربر ظرف 30 ثانیه با صفحه هشدار تعامل نداشته باشد، صفحه ناپدید می‌شود و دستور با شکست مواجه می‌شود.

متن پیشنهادی:

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

یکپارچگی نرم‌افزار با یک سیستم عامل سفارشی تضمین نمی‌شود، بنابراین هرگونه داده ذخیره شده روی گوشی در حین باز شدن قفل بوت لودر ممکن است در معرض خطر باشد .

برای جلوگیری از دسترسی غیرمجاز به اطلاعات شخصی شما، باز کردن قفل بوت لودر تمام اطلاعات شخصی موجود در تلفن شما را نیز حذف می‌کند.

برای انتخاب اینکه آیا می‌خواهید قفل بوت لودر را باز کنید یا خیر، کلیدهای تنظیم صدا را فشار دهید، سپس برای ادامه، دکمه پاور را فشار دهید.

بوت لودر رو آنلاک نکن و گوشی رو ریستارت کن.

بوت لودر را آنلاک کنید.

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

تأیید قفل

نمایش صفحه تأیید قفل در پاسخ به اجرای دستور fastboot flashing lock از طریق رابط فست‌بوت. تمرکز اولیه روی «قفل نکنید» است. اگر کاربر ظرف ۳۰ ثانیه با صفحه هشدار تعامل نداشته باشد، صفحه ناپدید می‌شود و دستور با شکست مواجه می‌شود.

متن:

اگر بوت لودر را قفل کنید، نمی‌توانید نرم‌افزار سیستم عامل سفارشی را روی این گوشی نصب کنید.

برای جلوگیری از دسترسی غیرمجاز به اطلاعات شخصی شما، قفل کردن بوت لودر تمام اطلاعات شخصی موجود در تلفن شما را نیز حذف می‌کند.

برای انتخاب قفل کردن بوت لودر، کلیدهای تنظیم صدا را فشار دهید، سپس برای ادامه، دکمه پاور را فشار دهید.

بوت لودر رو قفل نکنید و گوشی رو ریستارت کنید.

بوت لودر را قفل کنید.

صفحه هشدار تأیید قفل دستگاه
شکل ۷. صفحه هشدار تأیید قفل دستگاه.

وضعیت بوت تأیید شده را به اندروید اطلاع دهید

بوت لودر، وضعیت بوت تأیید شده (Verified Boot State) را از طریق پارامترهای دستور هسته (kernel-command) یا از طریق bootconfig در اندروید ۱۲ و بالاتر به اندروید اطلاع می‌دهد. بوت لودر، گزینه androidboot.verifiedbootstate را روی یکی از مقادیر زیر تنظیم می‌کند:

  • اگر دستگاه LOCKED باشد و از ریشه اعتماد قابل تنظیم توسط کاربر استفاده نشده باشد green
  • اگر دستگاه LOCKED باشد و از ریشه اعتماد قابل تنظیم توسط کاربر استفاده شود، yellow
  • orange اگر دستگاه UNLOCKED

گزینه androidboot.veritymode بسته به اینکه بوت لودر در رابطه با مدیریت خطاهای dm-verity در چه وضعیتی باشد، روی eio یا restart تنظیم می‌شود. برای جزئیات بیشتر، به Handle verification errors مراجعه کنید.