Ana içeriğe geç

OneKey donanım cüzdan cihazlarına yüklenen firmware için açık kaynak kod doğrulaması

3 haftadan uzun süre önce güncellendi

Bu makale, OneKey donanım cüzdan cihazınıza yüklenen firmware'in GitHub'daki ilgili açık kaynak koduyla tutarlılığını doğrulamanıza yardımcı olmak için adım adım bir kılavuz sunmaktadır.

Önemli

OneKey donanım cüzdanına yerleştirilen güvenlik çipi, üretim sırasında resmi bir çoklu imza ile imzalanır. Donanım cüzdanının firmware'i bir hacker tarafından kötü amaçlı olarak kurcalanırsa, başlatma sırasında 'Resmi Olmayan Firmware Algılandı' mesajı görüntülenecektir.

İşlem

Sistem Firmware'i Bluetooth Firmware'i

Adım 1: En son firmware'i indirin ve kurun

  • OneKey donanım cüzdanınızı USB kablosuyla bilgisayarınıza bağlayın.

  • Donanım cüzdanı cihazınız algılandığında, web sitesinde görüntülenen cüzdan bilgilerini görebileceksiniz.

  • Donanım cüzdanı firmware'inizin en son sürümünü seçin ve indirin.

  • Web sitesindeki talimatları izleyerek ve OneKey donanım cüzdanınızda onaylayarak firmware'i kurun.

Adım 2: OneKey donanım cüzdanınızda Sağlama Toplamını Alın

  • OneKey donanım cüzdanınızda "Cihaz Hakkında" bölümüne gidin.

  • OneKey donanım cüzdanı cihazınızdaki detaylı firmware bilgilerini bulun.

  • Cihaz firmware'inizin sağlama toplamının ilk yedi rakamını firmware bilgilerinden elde edebilirsiniz.

    • Örneğin, 4.9.0[fccbac8-5ff2c88]

    • "fccbac8" cihaz firmware'inizin sürüm kimliğidir.

    • "5ff2c88" cihaz firmware'inizin sağlama toplamının ilk yedi rakamıdır.

Adım 3: GitHub kaynak kodu için Sağlama Toplamını Hesaplayın

  • OneKey Firmware GitHub Sürüm web sitesini ziyaret edin: https://github.com/OneKeyHQ/firmware/releases

  • Sağlama toplamını hesaplamak istediğiniz firmware sürümünü bulun.

  • Assets altında bin dosyasını indirmek için tıklayın.

github release bin.png
  • İşletim sisteminizde Terminal'i açın (macOS/Linux gereklidir).

  • OneKey donanım cüzdanı modelinize göre, Sağlama Toplamını hesaplamak için aşağıdaki ilgili komutu seçin ve çalıştırın.

    • OneKey Classic & OneKey Mini:

    • tail -c +1025 /path/to/(dosya yolu) | shasum -a 256 -b

    • OneKey Touch:

    • tail -c +2561 /path/to/(dosya yolu) | shasum -a 256 -b

Adım 4: Sağlama Toplamlarını Karşılaştırın

  • Adım 3'ten manuel olarak hesaplanan sağlama toplamının ilk yedi rakamını Adım 2'de elde edilen cihaz sağlama toplamıyla karşılaştırın.

  • İki değer eşleşirse, bu, yüklenen firmware'in GitHub'daki açık kaynak koduyla tutarlı olduğunu gösterir.

Adım 1: En son Bluetooth firmware'ini indirin ve kurun

  • OneKey donanım cüzdanınızı USB kablosuyla bilgisayarınıza bağlayın.

  • Donanım cüzdanı cihazınız algılandığında, web sitesinde görüntülenen cüzdan bilgilerini görebileceksiniz.

  • Donanım cüzdanı Bluetooth firmware'inizin en son sürümünü seçin ve indirin.

  • Web sitesindeki talimatları izleyerek ve OneKey donanım cüzdanınızda onaylayarak firmware'i kurun.

Adım 2: OneKey donanım cüzdanınızda Sağlama Toplamını Alın

  • OneKey donanım cüzdanınızda "Cihaz Hakkında" bölümüne gidin.

  • OneKey donanım cüzdanı cihazınızdaki detaylı firmware bilgilerini bulun.

  • Cihaz firmware'inizin sağlama toplamının ilk yedi rakamını Bluetooth bilgilerinden elde edebilirsiniz.

    • Örneğin, 2.3.1[96bb143-5affc8f]

    • "96bb143" cihazınızın Bluetooth firmware'inin sürüm kimliğidir.

    • "5ff2c8f" cihazınızın firmware'inin sağlama toplamının ilk yedi rakamıdır.

Adım 3: GitHub kaynak kodu için Sağlama Toplamını Hesaplayın

pro-bluetooth-firmware-github-release-signed.png
  • İndirilen bin dosyasının bulunduğu klasörde bir terminal açın (macOS/Linux gereklidir).

  • python3 komutuyla Python'u çağırın. (Python'u buradan indirin)

  • Aşağıdaki komutu kopyalayın:

    • exec("""\nimport struct, hashlib\nwith open("ota.bin", mode="br") as f:\n f.seek(0x0C)\n codelen = struct.unpack("i", f.read(4))[0] - 512\n f.seek(0x600)\n print("".join(format(x, "02x") for x in hashlib.sha256(f.read(codelen)).digest()))\n""")

  • Yukarıdaki komutta ota.bin dosyasını, indirdiğiniz bin dosyasının adıyla değiştirin.

  • Sağlama toplamını almak için komutu çalıştırın.

checksum-github-release.png

Adım 4: Sağlama Toplamlarını Karşılaştırın

  • Adım 3'ten manuel olarak hesaplanan sağlama toplamının ilk yedi rakamını Adım 2'de elde edilen cihaz sağlama toplamıyla karşılaştırın.

  • İki değer eşleşirse, bu, yüklenen firmware'in GitHub'daki açık kaynak koduyla tutarlı olduğunu gösterir.

OneKey ekibi tarafından GitHub Sürümü'nde imzalanan ve yayınlanan firmware dosyalarının, OneKey GitHub depolarında herkese açık olarak saklanan ilgili açık kaynak kodlarıyla tutarlılığını doğrulamak isterseniz, bu makaleye bakın.

Bu cevap sorunuzu yanıtladı mı?