همه دستگاههای لجر، در ابتدای فرایند تنظیم و هر بار که به مای لجر از لجر لایو متصل میشوند، فرایند بررسی اصالت را طی میکنند. دستگاههای لجر اصل، یک کلید خصوصی دارند که حین تولید دستگاه تنظیم میشود. تنها یک دستگاه لجر اصل و معتبر میتواند از کلید خودش استفاده کند تا اثباتهای رمزی لازم برای اتصال به سرور امن لجر را ارایه دهد.
کاربران حرفهای میتوانند اصالت سختافزاری دستگاه لجر را بررسی کنند تا مطمئن شوند که دستگاه دستکاری نشده باشد. در این مطلب، اطلاعات فنی لازم در رابطه با امنیت این دستگاهها را مرور میکنیم.
نکته مهم
- لطفاً توجه داشته باشید که باز کردن دستگاه لجر، باعث لغو ضمانت دستگاه میشود.
- پس از باز کردن دستگاه، امکان برگرداندن یا تعویض آن وجود ندارد.
لجر نانو ایکس
میکرو کنترلر (MCU)
عنصر امن، هنگام بوت شدن کل میکروکنترلر را بررسی میکند و اگر تغییر کرده باشد، یک پیام هشدار نمایش داده میشود. برای بررسی بیشتر، میتوانید دستگاه را باز کنید تا مطمئن شوید که در مقایسه با تصویر زیر، هیچ تراشهای به آن اضافه نشده باشد و اینکه MCU (در بازبینیهای 1،2،3) STM32WB55 و (در بازبینی 4) STM32WB35 باشد.
بازبینیهای سختافزار
بازبینی 4
- PCB سبز
جلوی PCB
پشت PCB
بازبینی 3
- PCB مشکی
جلوی PCB
پشت PCB
بازبینی 2
- PCB مشکی
جلوی PCB
پشت PCB
بازبینی 1
- PCB مشکی
جلوی PCB
پشت PCB
گواهی عنصر امن
خود عنصر امن در کارخانه، شخصی سازی میشود با یک گواهی خاص که نشان میدهد این دستگاه توسط لجر تولید شده است. میتوانید با اجرای کد زیر، دستگاه را اصالت سنجی کنید:
pip install --no-cache-dir ledgerblue
python -m ledgerblue.checkGenuineRemote --targetId 0x33000004
سورس کد مربوطه در این نشانی موجود است.
اعتبارسنجی اپلیکیشن
هنگام باز کردن یک اپلیکیشن، در صورتی که اپلیکیشن مورد نظر توسط لجر امضاء نشده باشد، هشدار Non Genuine نمایش داده خواهد شد. هنگام بوت شدن هم برای نسخه اصلاح شده از رابط کاربری (مثل آنچه در نشانی https://github.com/LedgerHQ/nanos-ui موجود است) یک پیام هشدار نمایش داده میشود.
کد ریشه اعتماد Root of trust
ریشه اعتماد برای بچ فعلی، کلید عمومی secp256k1 زیر است:
0490f5c9d15a0134bb019d2afd0bf2971497384597
06e7ac5be4abc350a1f818057224fce12ec9a65de18ec34
d6e8c24db927835ea1692b14c32e9836a75dad609
لجر نانو S
میکرو کنترلر (MCU)
عنصر امن، هنگام بوت شدن کل میکروکنترلر را بررسی میکند و اگر تغییر کرده باشد، یک پیام هشدار نمایش داده میشود. برای بررسی بیشتر، میتوانید دستگاه را باز کنید تا مطمئن شوید که در مقایسه با تصویر زیر، هیچ تراشهای به آن اضافه نشده باشد و اینکه MCU stm2f042k6 باشد (با فلش 23 کیلوبایتی چون فلش بزرگتر میتواند حاوی کدی باشد که اعتبارسنجی عنصر امن را بیاثر میکند). ممکن است علائم روی تراشه متفاوت باشند اما باید رشته 042K6 را ببینید.
بازبینیهای سختافزار
بازبینی 1
- PCB آبی
- چسب مشکی
بازبینی 2
- PCB سبز
- چسب مشکی یا شفاف (در تصویر نیست)
بازبینی 3
- PCB آبی
- چسب مشکی
بازبینی 4
- PCB آبی
- حفره PCB
بازبینی 5
- PCB آبی
بازبینی 5
- PCB آبی
بازبینی 6
- PCB آبی
بازبینی 7
- PCB آبی یا PCB سبز
- کابل نمایشگر نازک
گواهی عنصر امن
خود عنصر امن در کارخانه شخصی سازی میشود با یک گواهی خاص که نشان میدهد این دستگاه، توسط لجر تولید شده است. میتوانید با اجرای کد زیر، دستگاه را اصالت سنجی کنید:
pip install --no-cache-dir ledgerblue
برای میانافزار 1.3.1 یا پایینتر
python -m ledgerblue.checkGenuineRemote --targetId 0x33000004
برای میانافزار 1.4.1 و بالاتر
python -m ledgerblue.checkGenuineRemote --targetId 0x33000004
سورس کد مربوطه در این نشانی موجود است.
اعتبارسنجی اپلیکیشن
هنگام باز کردن یک اپلیکیشن، در صورتی که اپلیکیشن مورد نظر توسط لجر امضاء نشده باشد، هشدار Non Genuine نمایش داده خواهد شد. هنگام بوت شدن هم برای نسخه اصلاح شده از رابط کاربری (مثل آنچه در نشانی https://github.com/LedgerHQ/nanos-ui موجود است) یک پیام هشدار نمایش داده میشود.
ریشه اعتماد
کد ریشه اعتماد برای بچ فعلی، کلید عمومی secp256k1 زیر است:
0490f5c9d15a0134bb019d2afd0bf297
149738459706e7ac5be4abc350a1f818057224fce12ec9a65de18ec34d
6e8c24db927835ea1692b14c32e9836a75dad609
لجر نانو S پلاس
میکرو کنترلر (MCU)
عنصر امن، هنگام بوت شدن کل میکروکنترلر را بررسی میکند و اگر تغییر کرده باشد، یک پیام هشدار نمایش داده میشود. برای بررسی بیشتر، میتوانید دستگاه را باز کنید تا مطمئن شوید که در مقایسه با تصویر زیر، هیچ تراشهای به آن اضافه نشده باشد و اینکه MCU STM32F042K6U6 باشد.
بازبینیهای سختافزار
جلوی PCB
پشت PCB
گواهی عنصر امن
خود عنصر امن در کارخانه شخصی سازی میشود با یک گواهی خاص که نشان میدهد این دستگاه توسط لجر تولید شده است. میتوانید با اجرای کد زیر، دستگاه را اصالت سنجی کنید:
pip install --no-cache-dir ledgerbluepython -m ledgerblue.checkGenuineRemote --targetId 0x33000004
سورس کد مربوطه در این نشانی موجود است.
اعتبارسنجی اپلیکیشن
هنگام باز کردن یک اپلیکیشن، در صورتی که اپلیکیشن مورد نظر توسط لجر امضاء نشده باشد، هشدار Non Genuine نمایش داده خواهد شد. هنگام بوت شدن هم برای نسخه اصلاح شده از رابط کاربری (مثل آنچه در نشانی https://github.com/LedgerHQ/nanos-ui موجود است) یک پیام هشدار نمایش داده میشود.
ریشه اعتماد
کد ریشه اعتماد برای بچ فعلی، کلید عمومی secp256k1 زیر است:
0490f5c9d15a0134bb019d2afd0bf297
149738459706e7ac5be4abc350a1f818057224fce12ec9a65de18ec34d
6e8c24db927835ea1692b14c32e9836a75dad609