silabs 21Q2 ਸੁਰੱਖਿਅਤ BLE ਡਿਵਾਈਸ ਸੁਰੱਖਿਆ ਲੈਬ

BLE ਸੁਰੱਖਿਆ ਲੈਬ ਮੈਨੂਅਲ

ਇਸ ਲੈਬ ਵਿੱਚ, ਤੁਸੀਂ ਦੇਖੋਗੇ ਕਿ ਇੱਕ ਹੋਰ ਸੁਰੱਖਿਅਤ BLE ਡਿਵਾਈਸ ਨੂੰ ਕਿਵੇਂ ਡਿਜ਼ਾਈਨ ਕਰਨਾ ਹੈ। ਅਸੀਂ ਇੱਕ ਓਵਰ ਨਾਲ ਸ਼ੁਰੂਆਤ ਕਰਾਂਗੇview ਕੁਝ ਸਟੈਕ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਨੂੰ ਕਿਵੇਂ ਵਰਤਣਾ ਹੈ ਅਤੇ ਵਧੇਰੇ ਸੁਰੱਖਿਅਤ ਕਨੈਕਸ਼ਨਾਂ ਲਈ ਤਕਨੀਕਾਂ ਬਾਰੇ ਕੁਝ ਆਮ ਸਲਾਹ 'ਤੇ ਅੱਗੇ ਵਧਣਾ ਹੈ ਅਤੇ ਅੰਤ ਵਿੱਚ ਅਸੀਂ ਦੇਖਾਂਗੇ ਕਿ ਇੱਕ ਪੈਰੀਫਿਰਲ ਨੂੰ ਪ੍ਰਮਾਣਿਕ ​​ਵਜੋਂ ਪਛਾਣਨ ਲਈ BLE ਉੱਤੇ ਡਿਵਾਈਸ ਸਰਟੀਫਿਕੇਟ ਦੀ ਵਰਤੋਂ ਕਿਵੇਂ ਕਰਨੀ ਹੈ।

ਸ਼ੁਰੂ ਕਰਨਾ

ਬਲੂਟੁੱਥ ਐੱਸample ਐਪਲੀਕੇਸ਼ਨ ਜਿਸ 'ਤੇ ਤੁਸੀਂ ਨਿਰਮਾਣ ਕਰ ਰਹੇ ਹੋ, ਇੱਕ ਬੂਟਲੋਡਰ ਨਾਲ ਵਰਤਣ ਦਾ ਇਰਾਦਾ ਹੈ। ਜੇਕਰ ਤੁਸੀਂ ਬਿਲਕੁਲ ਨਵੇਂ EFR32MG21B ਨਾਲ ਕੰਮ ਕਰ ਰਹੇ ਹੋ, ਤਾਂ ਇਸ ਵਿੱਚ ਬੂਟਲੋਡਰ ਨਹੀਂ ਹੋਵੇਗਾ। ਤੁਸੀਂ ਪਲੇਟਫਾਰਮ\ਬੂਟਲੋਡਰ\s ਵਿੱਚ ਇੱਕ ਪ੍ਰੀ-ਬਿਲਟ ਬੂਟਲੋਡਰ ਲੱਭ ਸਕਦੇ ਹੋample-apps\bootloader-storage-internalsingle\efr32mg21a010f1024im32-brd4181a ਤੁਹਾਡੇ SDK ਦਾ ਫੋਲਡਰ।

  1. ਇੱਕ soc-ਖਾਲੀ s ਨਾਲ ਸ਼ੁਰੂ ਕਰੋample ਐਪ. ਇਸ ਐੱਸample ਐਪ ਨੂੰ ਇੱਕ ਟੈਂਪਲੇਟ ਵਜੋਂ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ ਅਤੇ ਕਿਸੇ ਵੀ BLE ਐਪਲੀਕੇਸ਼ਨ ਲਈ ਇੱਕ ਵਧੀਆ ਸ਼ੁਰੂਆਤੀ ਬਿੰਦੂ ਬਣਾਉਂਦਾ ਹੈ।
    1. ਸਿਮਪਲੀਸੀਟੀ ਸਟੂਡੀਓ ਤੋਂ ਸਿਲੀਕਾਨ ਲੈਬਜ਼ ਪ੍ਰੋਜੈਕਟ ਵਿਜ਼ਾਰਡ ਖੋਲ੍ਹੋ File ਮੇਨੂ -> ਨਵਾਂ।
    2. BRD4181C ਚੁਣੋ ਅਤੇ 'ਅਗਲਾ' ਬਟਨ 'ਤੇ ਕਲਿੱਕ ਕਰੋ।
    3. ਟੈਕਨਾਲੋਜੀ ਕਿਸਮ ਦੇ ਅਧੀਨ 'ਬਲੂਟੁੱਥ (9)' ਚੈੱਕਬਾਕਸ 'ਤੇ ਕਲਿੱਕ ਕਰੋ।
    4. 'ਬਲਿਊਟੁੱਥ - ਐਸਓਸੀ ਖਾਲੀ' ਨੂੰ ਹਾਈਲਾਈਟ ਕਰੋ ਫਿਰ ਅੱਗੇ 'ਤੇ ਕਲਿੱਕ ਕਰੋ।
    5. 'Finish' ਬਟਨ 'ਤੇ ਕਲਿੱਕ ਕਰੋ।
  2. ਹੁਣ ਤੁਸੀਂ ਇਹ ਦੇਖਣ ਲਈ ਕੁਝ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਸ਼ਾਮਲ ਕਰ ਸਕਦੇ ਹੋ ਕਿ ਕਿਵੇਂ ਸੁਰੱਖਿਅਤ ਅਤੇ ਅਸੁਰੱਖਿਅਤ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਨੂੰ ਵੱਖ-ਵੱਖ ਢੰਗ ਨਾਲ ਪੇਸ਼ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।
    1. ਪ੍ਰੋਜੈਕਟ ਦੀ slcp ਖੋਲ੍ਹੋ file ਪ੍ਰੋਜੈਕਟ ਐਕਸਪਲੋਰਰ ਵਿੰਡੋ ਵਿੱਚ ਇਸਨੂੰ ਡਬਲ-ਕਲਿੱਕ ਕਰਕੇ
    2. 'ਸਾਫਟਵੇਅਰ ਕੰਪੋਨੈਂਟਸ' ਟੈਬ ਨੂੰ ਹਾਈਲਾਈਟ ਕਰੋ ਅਤੇ ਹੇਠਾਂ ਦਰਸਾਏ ਅਨੁਸਾਰ GATT ਸੰਰਚਨਾ ਟੂਲ ਖੋਲ੍ਹੋ: ਅਤੇ gatt_configuration.btconf ਨੂੰ ਆਯਾਤ ਕਰਨ ਲਈ ਹੇਠਾਂ ਦਿਖਾਏ ਗਏ ਇੰਪੋਰਟ ਟੂਲ ਦੀ ਵਰਤੋਂ ਕਰੋ file ਪ੍ਰਦਾਨ ਕੀਤੀ ਸਮੱਗਰੀ ਵਿੱਚ ਸਰਵਰ ਫੋਲਡਰ ਤੋਂ.GATT ਡੇਟਾਬੇਸ ਵਿੱਚ ਇੱਕ ਕਸਟਮ ਸੇਵਾ ਹੈ, ਜਿਸਨੂੰ 'ਟ੍ਰੇਨਿੰਗ' ਕਿਹਾ ਜਾਂਦਾ ਹੈ, ਜਿਸ ਵਿੱਚ ਕੁਝ ਡਾਟਾ ਸੁਰੱਖਿਅਤ ਹੈ ਅਤੇ ਕੁਝ ਜੋ ਨਹੀਂ ਹੈ। ਇਹ ਤੁਹਾਨੂੰ ਤੁਲਨਾ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ ਕਿ ਜਦੋਂ ਇੱਕ ਸੁਰੱਖਿਅਤ ਵਿਸ਼ੇਸ਼ਤਾ ਬਨਾਮ ਇੱਕ ਅਸੁਰੱਖਿਅਤ ਵਿਸ਼ੇਸ਼ਤਾ ਤੱਕ ਪਹੁੰਚ ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦੇ ਹੋਏ ਕੀ ਹੁੰਦਾ ਹੈ। ਇਹ ਬਹੁਤ ਹੀ ਬੁਨਿਆਦੀ ਸੁਰੱਖਿਆ ਦੇ ਨਾਲ ਇੱਕ ਡਿਵਾਈਸ ਬਣਾਉਣ ਦਾ ਇੱਕ ਤੇਜ਼ ਤਰੀਕਾ ਹੈ।
  3. ਅਸੀਂ ਐਪਲੀਕੇਸ਼ਨ ਵਿੱਚ ਕੀ ਹੋ ਰਿਹਾ ਹੈ ਨੂੰ ਟਰੈਕ ਕਰਨ ਲਈ ਸਾਦਗੀ ਸਟੂਡੀਓ ਵਿੱਚ ਕੰਸੋਲ ਨੂੰ ਪ੍ਰਿੰਟ ਕਰਨ ਲਈ ਸੀਰੀਅਲ ਪੋਰਟ ਦੀ ਵਰਤੋਂ ਕਰਾਂਗੇ। ਇਹਨਾਂ ਭਾਗਾਂ ਨੂੰ ਲੱਭਣ ਦਾ ਸਭ ਤੋਂ ਆਸਾਨ ਤਰੀਕਾ ਹੈ ਉਹਨਾਂ ਨੂੰ ਸਾਫਟਵੇਅਰ ਕੰਪੋਨੈਂਟਸ ਡਾਇਲਾਗ ਵਿੱਚ ਖੋਜਣਾ ਜਿਵੇਂ ਦਿਖਾਇਆ ਗਿਆ ਹੈ:
      1. IO ਸਟ੍ਰੀਮ USART ਕੰਪੋਨੈਂਟ ਨੂੰ ਸਥਾਪਿਤ ਕਰੋ
      2. IO ਸਟ੍ਰੀਮ ਰੀਟਾਰਗੇਟ STDIO ਕੰਪੋਨੈਂਟ ਨੂੰ ਸਥਾਪਿਤ ਕਰੋ
      3. ਸਟੈਂਡਰਡ I/O ਕੰਪੋਨੈਂਟ ਸਥਾਪਿਤ ਕਰੋ
      4. ਲੌਗ ਕੰਪੋਨੈਂਟ ਨੂੰ ਸਥਾਪਿਤ ਕਰੋ
      5. ਬੋਰਡ ਕੰਟਰੋਲ ਕੰਪੋਨੈਂਟ ਖੋਲ੍ਹੋ ਅਤੇ 'ਵਰਚੁਅਲ COM UART ਨੂੰ ਸਮਰੱਥ ਬਣਾਓ' ਨੂੰ ਚਾਲੂ ਕਰੋ।
      6. 'ਡੀਬੱਗ ਅਡਾਪਟਰ' ਪੈਨਲ ਵਿੱਚ ਅਡਾਪਟਰ 'ਤੇ ਸੱਜਾ-ਕਲਿਕ ਕਰੋ ਅਤੇ 'ਲਾਂਚ ਕੰਸੋਲ' ਚੁਣੋ। 'ਸੀਰੀਅਲ 1' ਟੈਬ ਨੂੰ ਚੁਣੋ ਅਤੇ ਕਰਸਰ ਨੂੰ ਕੰਸੋਲ ਵਿੰਡੋ ਦੇ ਟੈਕਸਟ ਐਂਟਰੀ ਖੇਤਰ ਵਿੱਚ ਰੱਖੋ ਅਤੇ ਕੰਸੋਲ ਨੂੰ ਜਗਾਉਣ ਲਈ ਐਂਟਰ ਦਬਾਓ।
  4. ਕਨੈਕਸ਼ਨ ਹੈਂਡਲ ਨੂੰ ਸੁਰੱਖਿਅਤ ਕਰਨ ਲਈ sl_bt_on_event(), app.c ਵਿੱਚ ਪਾਇਆ ਗਿਆ ਇੱਕ ਸਥਾਨਕ ਵੇਰੀਏਬਲ ਬਣਾਓ। ਵੇਰੀਏਬਲ ਸਥਿਰ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ ਕਿਉਂਕਿ ਇਸ ਫੰਕਸ਼ਨ ਨੂੰ ਹਰ ਵਾਰ ਜਦੋਂ ਸਟੈਕ ਦੁਆਰਾ ਇੱਕ ਈਵੈਂਟ ਉਭਾਰਿਆ ਜਾਂਦਾ ਹੈ ਅਤੇ ਅਸੀਂ ਚਾਹੁੰਦੇ ਹਾਂ ਕਿ ਮੁੱਲ ਸਥਿਰ ਰਹੇ। ਕੁਨੈਕਸ਼ਨ ਹੈਂਡਲ ਨੂੰ ਬਾਅਦ ਵਿੱਚ ਵਰਤਿਆ ਜਾਵੇਗਾਲੈਬ ਦੇ ਭਾਗ.
  5. ਇਹ ਦੇਖਣ ਲਈ ਕਿ ਅਸੀਂ ਕਦੋਂ ਕਨੈਕਟ ਹੁੰਦੇ ਹਾਂ, ਸੁਰੱਖਿਆ ਮੋਡਾਂ ਆਦਿ ਲਈ ਕੁਝ ਐਪ_ਲੌਗ() ਸਟੇਟਮੈਂਟਾਂ ਸ਼ਾਮਲ ਕਰੋ
      1. app_log.h ਸਿਰਲੇਖ ਸ਼ਾਮਲ ਕਰੋ file
      2. sl_bt_evt_connection_opened - ਬਾਂਡ ਹੈਂਡਲ ਨੂੰ ਪ੍ਰਿੰਟ ਕਰੋ ਅਤੇ ਕਨੈਕਸ਼ਨ ਹੈਂਡਲ ਨੂੰ ਸੁਰੱਖਿਅਤ ਕਰੋ। ਜੇਕਰ ਬਾਂਡ ਹੈਂਡਲ 0xFF ਹੈ, ਤਾਂ ਕਨੈਕਟ ਕੀਤੇ ਡਿਵਾਈਸਾਂ ਵਿਚਕਾਰ ਕੋਈ ਬਾਂਡ ਮੌਜੂਦ ਨਹੀਂ ਹੈ। ਮੌਜੂਦਾ ਇਵੈਂਟ ਹੈਂਡਲਰ ਨੂੰ ਸੰਸ਼ੋਧਿਤ ਕਰੋ ਤਾਂ ਜੋ ਇਹ ਇਸ ਤਰ੍ਹਾਂ ਦਿਖਾਈ ਦੇਵੇ:
      3. sl_bt_evt_connection_parameters – ਸੁਰੱਖਿਆ ਮੋਡ। ਅਜਿਹਾ ਇਸ ਲਈ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਤਾਂ ਜੋ ਤੁਸੀਂ ਦੇਖ ਸਕੋ ਕਿ ਸੁਰੱਖਿਆ ਮੋਡ ਕਦੋਂ ਬਦਲਦਾ ਹੈ। ਸੁਰੱਖਿਆ ਮੋਡਾਂ ਦੀ ਗਿਣਤੀ ਵਿੱਚ ਇੱਕ ਅੰਤਰ ਹੈ ਜਿੱਥੇ ਸੁਰੱਖਿਆ ਮੋਡ 1, ਮੁੱਲ 0, ਆਦਿ ਨਾਲ ਗਿਣਿਆ ਜਾਂਦਾ ਹੈ। ਆਪਣੀ ਐਪਲੀਕੇਸ਼ਨ ਵਿੱਚ ਹੇਠਾਂ ਦਿੱਤੇ ਇਵੈਂਟ ਹੈਂਡਲਰ ਨੂੰ ਸ਼ਾਮਲ ਕਰੋ:
      4. sl_bt_evt_connection_closed_id. ਇਸ ਇਵੈਂਟ ਹੈਂਡਲਰ ਨੂੰ ਕਨੈਕਸ਼ਨ ਹੈਂਡਲ ਨੂੰ ਅੱਪਡੇਟ ਕਰਨ ਲਈ ਸੋਧਿਆ ਗਿਆ ਹੈ। ਮੁੱਲ 0xFF ਇਹ ਦਰਸਾਉਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ ਕਿ ਕੋਈ ਕਿਰਿਆਸ਼ੀਲ ਕੁਨੈਕਸ਼ਨ ਨਹੀਂ ਹੈ। ਐਪ_ਲੌਗ() ਕਮਾਂਡ ਦੀ ਵਰਤੋਂ ਕੁਨੈਕਸ਼ਨ ਬੰਦ ਹੋਣ ਦੇ ਕਾਰਨ ਨੂੰ ਪ੍ਰਿੰਟ ਕਰਨ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਸਥਿਤੀ ਕੋਡਾਂ ਦੀ ਸੂਚੀ ਇੱਥੇ ਹੈ। ਮੌਜੂਦਾ ਇਵੈਂਟ ਹੈਂਡਲਰ ਨੂੰ ਸੰਸ਼ੋਧਿਤ ਕਰੋ ਤਾਂ ਜੋ ਇਹ ਇਸ ਤਰ੍ਹਾਂ ਦਿਖਾਈ ਦੇਵੇ:
  6. ਪ੍ਰੋਜੈਕਟ ਨੂੰ ਬਣਾਓ ਅਤੇ ਫਲੈਸ਼ ਕਰੋ। ਇਸ ਮੌਕੇ 'ਤੇ, ਅਸੀਂ ਐੱਸample ਐਪ ਇਹ ਦੇਖਣ ਲਈ ਕਿ ਇਹ GATT ਡੇਟਾਬੇਸ ਤੋਂ ਇਲਾਵਾ ਬਿਨਾਂ ਕਿਸੇ ਬਦਲਾਅ ਦੇ ਕਿਵੇਂ ਵਿਹਾਰ ਕਰਦਾ ਹੈ।
  7. EFRConnect ਮੋਬਾਈਲ ਐਪ ਨਾਲ ਇਸ ਤਰ੍ਹਾਂ ਜੁੜੋ:
      1. 'ਬਲੂਟੁੱਥ ਬ੍ਰਾਊਜ਼ਰ' ਆਈਕਨ 'ਤੇ ਟੈਪ ਕਰੋ।
      2. 'ਟ੍ਰੇਨਿੰਗ' ਨਾਮਕ ਡਿਵਾਈਸ 'ਤੇ 'ਕਨੈਕਟ' ਆਈਕਨ 'ਤੇ ਟੈਪ ਕਰੋ।
  8. ਅਸੁਰੱਖਿਅਤ ਵਿਸ਼ੇਸ਼ਤਾ ਨੂੰ ਹੇਠ ਲਿਖੇ ਅਨੁਸਾਰ ਪੜ੍ਹੋ:
      1. UUID a815944e-da1e-9d2a- 02e2-a8d15e2430a0 ਨਾਲ ਅਣਜਾਣ ਸੇਵਾ ਦੇ ਤਹਿਤ 'ਹੋਰ ਜਾਣਕਾਰੀ' ਲਿੰਕ 'ਤੇ ਟੈਪ ਕਰੋ।
      2. 'ਰੀਡ' ਆਈਕਨ 'ਤੇ ਟੈਪ ਕਰਕੇ ਅਸੁਰੱਖਿਅਤ ਵਿਸ਼ੇਸ਼ਤਾ, UUID f9e91a44-ca91-4aba-1c33-fd43ca270b4c ਪੜ੍ਹੋ। ਇੱਥੇ ਕੋਈ ਹੈਰਾਨੀ ਨਹੀਂ। ਕਿਉਂਕਿ ਵਿਸ਼ੇਸ਼ਤਾ ਕਿਸੇ ਵੀ ਤਰੀਕੇ ਨਾਲ ਸੁਰੱਖਿਅਤ ਨਹੀਂ ਹੈ, ਇਸ ਨੂੰ ਸਾਦੇ ਟੈਕਸਟ ਵਿੱਚ ਭੇਜਿਆ ਜਾਵੇਗਾ।
  9. ਹੁਣ ਸੁਰੱਖਿਅਤ ਗੁਣ, UUID d4261dbb-dcd0-daab-ec95-deec088d532b ਪੜ੍ਹੋ। ਤੁਹਾਡਾ ਮੋਬਾਈਲ ਫ਼ੋਨ ਤੁਹਾਨੂੰ ਜੋੜਾ ਬਣਾਉਣ ਅਤੇ ਕਨੈਕਟ ਕਰਨ ਲਈ ਪੁੱਛੇਗਾ, ਤੁਹਾਡੇ ਮੋਬਾਈਲ OS ਦੇ ਆਧਾਰ 'ਤੇ ਸੁਨੇਹਾ ਵੱਖ-ਵੱਖ ਹੋ ਸਕਦਾ ਹੈ। ਤੁਹਾਡੇ ਦੁਆਰਾ ਜੋੜੀ ਬਣਾਉਣ ਦੀ ਬੇਨਤੀ ਨੂੰ ਸਵੀਕਾਰ ਕਰਨ ਤੋਂ ਬਾਅਦ, ਤੁਹਾਨੂੰ ਕੰਸੋਲ 'ਤੇ ਹੇਠ ਲਿਖੇ ਅਨੁਸਾਰ ਇੱਕ ਸੁਨੇਹਾ ਦੇਣਾ ਚਾਹੀਦਾ ਹੈ: ਨੋਟ ਕਰੋ: ਇਸ ਮੈਨੂਅਲ ਦੇ ਅੰਤ ਵਿੱਚ ਅੰਤਿਕਾ A ਵਿੱਚ ਸੰਦਰਭ ਲਈ I/O ਸਮਰੱਥਾਵਾਂ ਅਤੇ ਜੋੜਾ ਬਣਾਉਣ ਦੇ ਤਰੀਕਿਆਂ ਦਾ ਸੰਖੇਪ ਹੈ। ਅੰਤਿਕਾ B ਬਲੂਟੁੱਥ ਸੁਰੱਖਿਆ ਮੋਡਾਂ ਦਾ ਸਾਰ ਦਿੰਦਾ ਹੈ।

ਸੁਰੱਖਿਆ ਪ੍ਰਬੰਧਕ ਸੰਰਚਨਾ

ਸੁਰੱਖਿਆ ਪ੍ਰਬੰਧਕ ਬਲੂਟੁੱਥ ਸਟੈਕ ਦਾ ਹਿੱਸਾ ਹੈ ਜੋ ਇਹ ਨਿਰਧਾਰਤ ਕਰਦਾ ਹੈ ਕਿ ਕਿਹੜੀਆਂ ਸੁਰੱਖਿਆ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਵਰਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ। ਇਹਨਾਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਵਿੱਚ ਮੈਨ-ਇਨ-ਦੀ-ਮਿਡਲ (MITM) ਸੁਰੱਖਿਆ, LE ਸੁਰੱਖਿਅਤ ਕੁਨੈਕਸ਼ਨ (ਉਰਫ਼ ECDH), ਬੰਧਨ ਲਈ ਪੁਸ਼ਟੀ ਦੀ ਲੋੜ ਆਦਿ ਸ਼ਾਮਲ ਹਨ। ਸੁਰੱਖਿਆ ਪ੍ਰਬੰਧਕ I/O ਸਮਰੱਥਾਵਾਂ ਨੂੰ ਵੀ ਸੰਭਾਲਦਾ ਹੈ ਜੋ ਇਹ ਨਿਰਧਾਰਤ ਕਰਨ ਲਈ ਵਰਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ ਕਿ ਜੋੜੀ ਬਣਾਉਣ ਲਈ ਕਿਹੜਾ ਤਰੀਕਾ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। /ਬੰਧਨ (ਸਾਰ ਲਈ ਅੰਤਿਕਾ A ਦੇਖੋ)। ਇਸ ਭਾਗ ਵਿੱਚ ਤੁਸੀਂ ਇੱਕ ਸਧਾਰਨ ਸੈੱਟਅੱਪ ਦੇਖੋਗੇ।

  1. ਲੋੜੀਂਦੀ ਸੰਰਚਨਾ ਦੇ ਨਾਲ SM ਸੈੱਟਅੱਪ ਕਰੋ। ਇਸ ਲੈਬ ਲਈ ਹਾਰਡਵੇਅਰ ਕੰਸੋਲ 'ਤੇ ਇੱਕ ਪਾਸਕੀ ਦਿਖਾਉਣਾ ਆਸਾਨ ਬਣਾਉਂਦਾ ਹੈ। MITM ਸੁਰੱਖਿਆ ਨੂੰ ਸਮਰੱਥ ਕਰਨ ਲਈ ਪਾਸਕੀ ਐਂਟਰੀ ਇੱਕ ਲੋੜ ਹੈ। ਹੇਠਾਂ ਦਿੱਤੇ ਕੋਡ ਨੂੰ ਆਪਣੇ sl_bt_system_boot_id ਇਵੈਂਟ ਹੈਂਡਲਰ ਵਿੱਚ ਸ਼ਾਮਲ ਕਰੋ। ਇਹ ਮੈਨ-ਇਨ-ਦ-ਮਿਡਲ ਨੂੰ ਸਮਰੱਥ ਬਣਾਉਂਦਾ ਹੈ ਅਤੇ ਰਿਮੋਟ ਡਿਵਾਈਸ ਨੂੰ ਸੂਚਿਤ ਕਰਦਾ ਹੈ ਕਿ ਸਾਡੇ ਕੋਲ ਇੱਕ ਪਾਸਕੀ ਪ੍ਰਦਰਸ਼ਿਤ ਕਰਨ ਦੀ ਸਮਰੱਥਾ ਹੈ, ਪਰ ਇਹ ਸਭ ਕੁਝ ਹੈ।
  2. ਕੰਸੋਲ 'ਤੇ ਪਾਸਕੀ ਨੂੰ ਪ੍ਰਦਰਸ਼ਿਤ ਕਰਨ ਲਈ, ਹੇਠਾਂ ਦਰਸਾਏ ਅਨੁਸਾਰ ਇੱਕ ਇਵੈਂਟ ਹੈਂਡਲਰ ਦੀ ਲੋੜ ਹੈ:
  3. ਬੰਧਨ ਮੋਡ, ਬੰਧਨਾਂ ਦੀ ਅਧਿਕਤਮ ਸੰਖਿਆ, ਆਦਿ ਸੈੱਟ ਕਰੋ। ਸ਼ੁਰੂਆਤ ਕਰਨ ਲਈ ਹੇਠਾਂ ਦਿੱਤੇ ਕੋਡ ਦੀ ਵਰਤੋਂ ਕਰੋ:ਇਹਨਾਂ ਸੈਟਿੰਗਾਂ ਦੀ ਵਰਤੋਂ ਹਮਲਾਵਰ ਦੀ ਤੁਹਾਡੀ ਡਿਵਾਈਸ ਨਾਲ ਬੰਧਨ ਦੀ ਯੋਗਤਾ ਨੂੰ ਸੀਮਤ ਕਰਨ ਲਈ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ। ਜੇਕਰ ਤੁਹਾਡੇ ਉਤਪਾਦ ਲਈ ਸਿਰਫ਼ ਇੱਕ ਉਪਭੋਗਤਾ ਹੋਣ ਦੀ ਲੋੜ ਹੈ, ਤਾਂ ਤੁਸੀਂ ਵੱਧ ਤੋਂ ਵੱਧ ਬਾਂਡਾਂ ਨੂੰ 1 ਤੱਕ ਸੀਮਤ ਕਰ ਸਕਦੇ ਹੋ। ਇਹਨਾਂ ਕਾਲਾਂ ਨੂੰ ਜੋੜਨ ਲਈ ਇੱਕ ਚੰਗੀ ਥਾਂ sl_bt_system_boot_id ਇਵੈਂਟ ਹੈਂਡਲਰ ਵਿੱਚ ਹੈ। ਬਾਕੀ ਲੈਬ ਨੂੰ ਹੋਰ ਸੁਚਾਰੂ ਢੰਗ ਨਾਲ ਚਲਾਉਣ ਲਈ ਅਸੀਂ ਇਸ ਸਮੇਂ ਬੰਧਨ ਨੂੰ ਸਮਰੱਥ ਨਹੀਂ ਕਰਾਂਗੇ ਪਰ ਅਸੀਂ ਸਿਰਫ਼ ਇੱਕ ਬਾਂਡ ਦੀ ਇਜਾਜ਼ਤ ਦੇਣ ਲਈ ਇੱਕ ਬੰਧਨ ਨੀਤੀ ਸੈਟ ਕਰਦੇ ਹਾਂ। ਸੰਦਰਭ ਲਈ, ਇਹਨਾਂ APIs ਲਈ ਦਸਤਾਵੇਜ਼ ਇੱਥੇ ਅਤੇ ਇੱਥੇ ਮਿਲਦੇ ਹਨ।
  4. sl_bt_evt_sm_bonded_id ਅਤੇ sl_bt_evt_sm_bonding_failed_id ਲਈ ਇਵੈਂਟ ਹੈਂਡਲਰ ਸ਼ਾਮਲ ਕਰੋ। ਇਹਨਾਂ ਸਮਾਗਮਾਂ ਲਈ ਮੁੱਖ ਵਰਤੋਂ ਵਰਤਮਾਨ ਵਿੱਚ ਜਾਣਕਾਰੀ ਭਰਪੂਰ ਹੈ ਪਰ ਬਾਅਦ ਵਿੱਚ ਲੈਬ ਵਿੱਚ ਤੁਸੀਂ ਕਾਰਜਕੁਸ਼ਲਤਾ ਜੋੜੋਗੇ।
  5. ਟੀਚਾ ਬੋਰਡ ਨੂੰ ਬਣਾਓ ਅਤੇ ਫਲੈਸ਼ ਕਰੋ। EFRConnect ਨਾਲ ਜੁੜੋ ਅਤੇ ਪਹਿਲਾਂ ਵਾਂਗ ਸੁਰੱਖਿਅਤ ਵਿਸ਼ੇਸ਼ਤਾ ਨੂੰ ਪੜ੍ਹੋ। ਇਸ ਵਾਰ, ਤੁਸੀਂ ਕੰਸੋਲ 'ਤੇ ਪ੍ਰਦਰਸ਼ਿਤ ਇੱਕ ਪਾਸਕੀ ਵੇਖੋਗੇ। ਜਦੋਂ ਪੁੱਛਿਆ ਜਾਵੇ ਤਾਂ ਆਪਣੇ ਮੋਬਾਈਲ ਫੋਨ 'ਤੇ ਇਹ ਪਾਸਕੀ ਦਰਜ ਕਰੋ।
  6. ਬੰਧਨ ਦੀ ਪੁਸ਼ਟੀ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰੋ। ਇਹ ਵਿਸ਼ੇਸ਼ਤਾ ਉਪਭੋਗਤਾ ਨੂੰ ਇਹ ਮੰਗ ਕਰਨ ਦੀ ਯੋਗਤਾ ਦਿੰਦੀ ਹੈ ਕਿ ਬੰਧਨ ਬੇਨਤੀਆਂ ਦੀ ਪੁਸ਼ਟੀ ਕੀਤੀ ਜਾਵੇ। ਅਜਿਹਾ ਕਰਨ ਨਾਲ ਐਪਲੀਕੇਸ਼ਨ ਨੂੰ ਇਹ ਨਿਯੰਤਰਣ ਮਿਲਦਾ ਹੈ ਕਿ ਇਹ ਕਿਸ ਪੀਅਰ ਡਿਵਾਈਸਾਂ ਨਾਲ ਜੁੜਦਾ ਹੈ। ਇੱਕ ਸੰਭਾਵਨਾ ਇਹ ਹੈ ਕਿ ਉਪਭੋਗਤਾ ਨੂੰ ਬਾਂਡ ਦੀ ਆਗਿਆ ਦੇਣ ਤੋਂ ਪਹਿਲਾਂ ਇੱਕ ਬਟਨ ਦਬਾਉਣ ਦੀ ਲੋੜ ਹੈ।
    1. ਆਪਣੇ ਮੋਬਾਈਲ ਫੋਨ ਵਿੱਚ ਬਲੂਟੁੱਥ ਸੈਟਿੰਗਾਂ ਨੂੰ ਖੋਲ੍ਹੋ ਅਤੇ EFR32 ਡਿਵਾਈਸ ਦੇ ਬਾਂਡ ਨੂੰ ਹਟਾਓ। ਮੋਬਾਈਲ ਫ਼ੋਨ ਲਾਗੂਕਰਨ ਵੱਖ-ਵੱਖ ਹੁੰਦੇ ਹਨ ਇਸਲਈ ਇਹ ਕਦਮ ਜ਼ਰੂਰੀ ਨਹੀਂ ਹੋ ਸਕਦਾ। ਜੇਕਰ ਤੁਸੀਂ ਆਪਣੀਆਂ ਬਲੂਟੁੱਥ ਸੈਟਿੰਗਾਂ ਵਿੱਚ 'ਸਿਖਲਾਈ' ਯੰਤਰ ਨਹੀਂ ਦੇਖਦੇ, ਤਾਂ ਬੱਸ ਅਗਲੇ ਪੜਾਅ 'ਤੇ ਜਾਓ।
    2. ਸੌਫਟਵੇਅਰ ਭਾਗਾਂ ਵਿੱਚ, ਸਧਾਰਨ ਬਟਨ ਹੈਂਡਲਰ ਦੀ ਇੱਕ ਉਦਾਹਰਣ ਨੂੰ ਸਥਾਪਿਤ ਕਰੋ।
    3. ਸਿਰਲੇਖ ਸ਼ਾਮਲ ਕਰੋ file app.c ਵਿੱਚ sl_simple_button_instances.h
    4. sl_bt_evt_sm_bonding_confirm_id ਇਵੈਂਟ ਲਈ ਇੱਕ ਹੈਂਡਲਰ ਸ਼ਾਮਲ ਕਰੋ। ਇਸ ਇਵੈਂਟ ਹੈਂਡਲਰ ਦਾ ਮੁੱਖ ਕੰਮ ਉਪਭੋਗਤਾ ਨੂੰ ਸੂਚਿਤ ਕਰਨਾ ਹੈ ਕਿ ਇੱਕ ਰਿਮੋਟ ਡਿਵਾਈਸ ਇੱਕ ਨਵੇਂ ਬਾਂਡ ਦੀ ਬੇਨਤੀ ਕਰ ਰਿਹਾ ਹੈ।
    5. ਬਲੂਟੁੱਥ ਸਟੈਕ ਨੂੰ ਸਿਗਨਲ ਭੇਜਣ ਲਈ ਸਧਾਰਨ ਬਟਨ ਹੈਂਡਲਰ ਲਈ ਇੱਕ ਕਾਲਬੈਕ ਫੰਕਸ਼ਨ ਸ਼ਾਮਲ ਕਰੋ ਜੋ ਇਹ ਦਰਸਾਉਂਦਾ ਹੈ ਕਿ ਇੱਕ ਬਟਨ ਦਬਾਇਆ ਗਿਆ ਹੈ। ਇਹ ਪੂਰਵ-ਨਿਰਧਾਰਤ ਕਾਲਬੈਕ ਨੂੰ ਓਵਰਰਾਈਡ ਕਰਦਾ ਹੈ ਜੋ ਸਿਰਫ਼ ਵਾਪਸ ਆਉਂਦਾ ਹੈ।
    6. ਇੱਕ ਬਾਹਰੀ ਸਿਗਨਲ ਇਵੈਂਟ ਹੈਂਡਲਰ ਸ਼ਾਮਲ ਕਰੋ। ਇਹ ਇਵੈਂਟ ਇੱਕ ਸਿਗਨਲ ਪ੍ਰਾਪਤ ਕਰਨ ਦੇ ਜਵਾਬ ਵਿੱਚ ਉਠਾਇਆ ਜਾਂਦਾ ਹੈ, ਜਿਵੇਂ ਕਿ ਪਿਛਲੇ ਪੜਾਅ ਵਿੱਚ। ਬਾਂਡਿੰਗ ਦੀ ਪੁਸ਼ਟੀ ਕਰਨ ਲਈ ਬਾਹਰੀ ਸਿਗਨਲ ਇਵੈਂਟ ਦੀ ਵਰਤੋਂ ਕੀਤੀ ਜਾਵੇਗੀ।
    7. ਬੈਂਡਿੰਗ ਪੁਸ਼ਟੀ ਦੀ ਲੋੜ ਲਈ ਕਾਲ ਨੂੰ sl_bt_sm_configure ਵਿੱਚ ਬਦਲੋ ਜਿਵੇਂ ਕਿ
    8. ਦੁਬਾਰਾ ਬਣਾਓ ਅਤੇ ਫਲੈਸ਼ ਕਰੋ।
    9. EFRConnect ਨਾਲ ਜੁੜੋ ਅਤੇ ਪਹਿਲਾਂ ਵਾਂਗ ਸੁਰੱਖਿਅਤ ਵਿਸ਼ੇਸ਼ਤਾ ਨੂੰ ਪੜ੍ਹੋ। ਹੁਣ ਤੁਸੀਂ ਕੰਸੋਲ 'ਤੇ ਹੇਠਾਂ ਦਿੱਤੇ ਸੰਦੇਸ਼ ਨੂੰ ਵੇਖੋਗੇ:ਬੰਧਨ ਦੀ ਪੁਸ਼ਟੀ ਕਰਨ ਲਈ PB0 ਦਬਾਓ। ਹੁਣ ਕੰਸੋਲ ਬੰਧਨ ਲਈ ਮੋਬਾਈਲ ਫੋਨ 'ਤੇ ਦਾਖਲ ਕੀਤੀ ਜਾਣ ਵਾਲੀ ਪਾਸਕੀ ਨੂੰ ਪ੍ਰਦਰਸ਼ਿਤ ਕਰੇਗਾ। ਬੰਧਨ ਪ੍ਰਕਿਰਿਆ ਨੂੰ ਪੂਰਾ ਕਰਨ ਲਈ ਪਾਸਕੀ ਦਰਜ ਕਰੋ।

 

ਟਿਪ: ਈਵੈਂਟ ਹੈਂਡਲਰ ਵਿੱਚ ਡਿਫੌਲਟ ਕੇਸ ਦੀ ਵਰਤੋਂ ਇੱਕ ਸੁਨੇਹਾ ਛਾਪਣ ਲਈ ਕਰੋ ਜਦੋਂ ਸਟੈਕ ਇੱਕ ਇਵੈਂਟ ਭੇਜਦਾ ਹੈ ਜੋ ਹੈਂਡਲ ਨਹੀਂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਸਟੈਕ ਤੁਹਾਨੂੰ ਕੁਝ ਮਹੱਤਵਪੂਰਨ ਦੱਸਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰ ਰਿਹਾ ਹੋ ਸਕਦਾ ਹੈ।

ਮੂਲ ਗੱਲਾਂ ਤੋਂ ਪਰੇ

ਇਸ ਮੌਕੇ 'ਤੇ, ਤੁਸੀਂ ਸਲਾਹ ਲਈ ਹੈtagਸੁਰੱਖਿਆ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਵਿੱਚੋਂ e ਜੋ ਸਾਡੇ ਸਟੈਕ ਦੀ ਪੇਸ਼ਕਸ਼ ਕਰਦਾ ਹੈ। ਆਓ ਹੁਣ ਸਾਡੇ ਨਿਪਟਾਰੇ 'ਤੇ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਦੀ ਸਮਝਦਾਰੀ ਨਾਲ ਵਰਤੋਂ ਦੁਆਰਾ ਲਾਗੂਕਰਨ ਨੂੰ ਬਿਹਤਰ ਕਰੀਏ। ਨਿਮਨਲਿਖਤ ਪੜਾਅ ਵਿਕਲਪਿਕ ਅਤੇ ਇੱਕ ਦੂਜੇ ਤੋਂ ਸੁਤੰਤਰ ਹਨ, ਤੁਸੀਂ ਵਿਵਹਾਰ ਨੂੰ ਦੇਖਣ ਜਾਂ ਉਹਨਾਂ ਸਾਰਿਆਂ ਨੂੰ ਇਕੱਠੇ ਅਜ਼ਮਾਉਣ ਲਈ ਹਰੇਕ ਦੇ ਬਾਅਦ ਬਣਾ ਅਤੇ ਫਲੈਸ਼ ਕਰ ਸਕਦੇ ਹੋ।

  1. ਅਸਫਲ ਬਾਂਡ ਕੋਸ਼ਿਸ਼ਾਂ 'ਤੇ ਡਿਸਕਨੈਕਟ ਕਰੋ। ਖਤਰਿਆਂ ਦਾ ਪਤਾ ਲਗਾਉਣ ਲਈ ਇਹ ਇੱਕ ਚੰਗੀ ਥਾਂ ਹੈ। ਜੇਕਰ ਰਿਮੋਟ ਡਿਵਾਈਸ ਏਨਕ੍ਰਿਪਸ਼ਨ/ਪ੍ਰਮਾਣੀਕਰਨ ਦਾ ਸਮਰਥਨ ਨਹੀਂ ਕਰਦੀ ਹੈ ਜਾਂ ਉਸ ਕੋਲ ਸਹੀ ਕੁੰਜੀਆਂ ਨਹੀਂ ਹਨ, ਤਾਂ ਇਹ ਹੈਕਰ ਹੋ ਸਕਦਾ ਹੈ। ਇਸ ਲਈ, ਆਓ ਕੁਨੈਕਸ਼ਨ ਤੋੜ ਦੇਈਏ. sl_bt_sm_bonding_failed_id ਇਵੈਂਟ ਵਿੱਚ sl_bt_connection_close() ਨੂੰ ਇੱਕ ਕਾਲ ਜੋੜਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰੋ। API ਨੂੰ ਇੱਥੇ ਦਸਤਾਵੇਜ਼ੀ ਰੂਪ ਦਿੱਤਾ ਗਿਆ ਹੈ।ਤੁਸੀਂ ਗਲਤ ਪਾਸਕੀ ਦਰਜ ਕਰਕੇ ਇਸ ਵਿਸ਼ੇਸ਼ਤਾ ਦੀ ਜਾਂਚ ਕਰ ਸਕਦੇ ਹੋ।
  2. ਸਿਰਫ਼ ਨਿਸ਼ਚਿਤ ਸਮੇਂ 'ਤੇ ਬੰਧਨ ਦੀ ਇਜਾਜ਼ਤ ਦੇ ਰਿਹਾ ਹੈ। ਇਹ ਉਸ ਸਮੇਂ ਨੂੰ ਸੀਮਿਤ ਕਰਦਾ ਹੈ ਜਦੋਂ ਇੱਕ ਹਮਲਾਵਰ ਨੂੰ ਇੱਕ ਬਾਂਡ ਬਣਾਉਣਾ ਪੈਂਦਾ ਹੈ ਅਤੇ 'ਸਿਰਫ ਬੰਧਨ ਵਾਲੇ ਕਨੈਕਸ਼ਨਾਂ ਦੀ ਇਜਾਜ਼ਤ ਦਿਓ' ਵਿਸ਼ੇਸ਼ਤਾ ਦੀ ਵਰਤੋਂ ਕਰਨਾ ਸੰਭਵ ਬਣਾਉਂਦਾ ਹੈ। ਡਿਜ਼ਾਈਨਰ ਇਹ ਚੁਣ ਸਕਦਾ ਹੈ ਕਿ ਬੰਧਨਯੋਗ ਮੋਡ ਨੂੰ ਕਿਵੇਂ ਸਮਰੱਥ ਜਾਂ ਅਯੋਗ ਕਰਨਾ ਹੈ। ਇੱਥੇ ਪ੍ਰਦਰਸ਼ਨ ਦੇ ਉਦੇਸ਼ਾਂ ਲਈ, ਅਸੀਂ PB1 ਦੇ ਨਾਲ ਇੱਕ 'ਸੈਟਅੱਪ ਮੋਡ' ਨੂੰ ਸਮਰੱਥ ਬਣਾਵਾਂਗੇ ਅਤੇ 30 ਸਕਿੰਟਾਂ ਬਾਅਦ ਇਸਨੂੰ ਅਯੋਗ ਕਰਨ ਲਈ ਇੱਕ ਟਾਈਮਰ ਦੀ ਵਰਤੋਂ ਕਰਾਂਗੇ।
    1. ਸਧਾਰਨ ਬਟਨ ਇੰਟਰਫੇਸ ਦੀ ਇੱਕ ਦੂਜੀ ਘਟਨਾ ਨੂੰ ਇੰਸਟਾਲ ਕਰੋ. ਇਹ PB1 ਦੀ ਵਰਤੋਂ ਨੂੰ ਸਮਰੱਥ ਕਰੇਗਾ।
    2. ਬੰਧਨ ਨੂੰ ਸਮਰੱਥ/ਅਯੋਗ ਕਰਨ ਲਈ ਸਟੈਕ ਨੂੰ ਇੱਕ ਵੱਖਰਾ ਸਿਗਨਲ ਭੇਜਣ ਲਈ ਕਾਲਬੈਕ ਨੂੰ ਸੋਧੋ। ਨਤੀਜਾ ਕੁਝ ਇਸ ਤਰ੍ਹਾਂ ਦਿਖਾਈ ਦੇਣਾ ਚਾਹੀਦਾ ਹੈ:
    3. ਬਾਹਰੀ ਸਿਗਨਲ ਇਵੈਂਟ ਹੈਂਡਲਰ ਨੂੰ ਸੋਧੋ ਤਾਂ ਜੋ ਇਹ ਇਸ ਨਵੇਂ ਸਿਗਨਲ ਨੂੰ ਸੰਭਾਲ ਸਕੇ। ਨਤੀਜਾ ਇਸ ਤਰ੍ਹਾਂ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ:
    4. sl_bt_evt_system_soft_timer_id ਇਵੈਂਟ ਲਈ ਇੱਕ ਇਵੈਂਟ ਹੈਂਡਲਰ ਸ਼ਾਮਲ ਕਰੋ। ਇਹ ਸੈੱਟਅੱਪ ਮੋਡ ਨੂੰ ਅਯੋਗ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਵੇਗਾ।
    5. ਨਿਮਨਲਿਖਤ ਕੋਡ ਦੀ ਵਰਤੋਂ ਬੰਧਨਯੋਗ ਮੋਡ ਨੂੰ ਸਮਰੱਥ ਕਰਨ ਅਤੇ ਸਾਰੇ ਕਨੈਕਸ਼ਨਾਂ ਦੀ ਆਗਿਆ ਦੇਣ ਜਾਂ ਬੰਧਨਯੋਗ ਮੋਡ ਨੂੰ ਅਯੋਗ ਕਰਨ ਲਈ ਅਤੇ ਸਿਰਫ਼ ਬੰਧਨਯੋਗ ਡਿਵਾਈਸਾਂ ਤੋਂ ਕਨੈਕਸ਼ਨਾਂ ਦੀ ਆਗਿਆ ਦੇਣ ਲਈ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ:
    6. sl_bt_system_boot_id ਇਵੈਂਟ ਹੈਂਡਲਰ ਵਿੱਚ ਹੇਠ ਦਿੱਤੀ ਕਾਲ ਸ਼ਾਮਲ ਕਰੋ
    7. ਪ੍ਰੋਜੈਕਟ ਬਣਾਓ ਅਤੇ ਇਸਨੂੰ ਡਿਵਾਈਸ ਤੇ ਫਲੈਸ਼ ਕਰੋ।
    8. EFRConnect ਨਾਲ ਡਿਵਾਈਸ ਨਾਲ ਕਨੈਕਟ ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰੋ। ਕੁਨੈਕਸ਼ਨ ਫੇਲ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ।
    9. ਹੁਣ EFRConnect ਨਾਲ ਜੁੜਨ ਤੋਂ ਪਹਿਲਾਂ PB1 ਦਬਾਉਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰੋ। ਇਸ ਵਾਰ ਕੁਨੈਕਸ਼ਨ ਸਫਲ ਹੋਵੇਗਾ। 30 ਸਕਿੰਟਾਂ ਬਾਅਦ ਤੁਸੀਂ ਕੰਸੋਲ 'ਤੇ ਇੱਕ ਸੁਨੇਹਾ ਦੇਖੋਗੇ ਜੋ ਇਹ ਦਰਸਾਉਂਦਾ ਹੈ ਕਿ ਡਿਵਾਈਸ ਸੈੱਟਅੱਪ ਮੋਡ ਤੋਂ ਬਾਹਰ ਆ ਰਹੀ ਹੈ। ਇਸਦਾ ਮਤਲਬ ਹੈ ਕਿ ਬੰਧਨਯੋਗ ਮੋਡ ਹੁਣ ਅਸਮਰੱਥ ਹੈ।
  3. ਕੁਨੈਕਸ਼ਨ ਬਣਾਉਣ 'ਤੇ ਸੁਰੱਖਿਆ ਵਧਾਓ। ਕਿਉਂਕਿ ਸੁਰੱਖਿਆ ਵਿਕਲਪਿਕ ਹੈ, ਸਾਨੂੰ GATT ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ 'ਤੇ ਭਰੋਸਾ ਕਰਨ ਦੀ ਬਜਾਏ ਜਿੰਨੀ ਜਲਦੀ ਹੋ ਸਕੇ ਇੱਕ ਐਨਕ੍ਰਿਪਟਡ ਕਨੈਕਸ਼ਨ ਦੀ ਬੇਨਤੀ ਕਰਨੀ ਚਾਹੀਦੀ ਹੈ। API ਨੂੰ ਇੱਥੇ ਦਸਤਾਵੇਜ਼ੀ ਰੂਪ ਦਿੱਤਾ ਗਿਆ ਹੈ। ਇਸ API ਨੂੰ ਕਾਲ ਕਰਨ ਲਈ ਇੱਕ ਚੰਗੀ ਥਾਂ sl_bt_evt_connection_opened_id ਇਵੈਂਟ ਵਿੱਚ ਹੈ। ਕਨੈਕਸ਼ਨ ਹੈਂਡਲ ਕਨੈਕਸ਼ਨ ਵੇਰੀਏਬਲ ਵਿੱਚ ਉਪਲਬਧ ਹੈ।

ਸੁਰੱਖਿਅਤ ਪਛਾਣ

ਹੁਣ ਜਦੋਂ ਸਾਡੇ ਕੋਲ ਇੱਕ ਵਧੇਰੇ ਸੁਰੱਖਿਅਤ ਬਲੂਟੁੱਥ ਡਿਵਾਈਸ ਹੈ, ਤਾਂ ਆਓ ਪ੍ਰਮਾਣਿਕਤਾ ਪੜਾਅ ਨੂੰ ਬਿਹਤਰ ਕਰੀਏ। ਤੁਸੀਂ ਪਹਿਲਾਂ ਹੀ ਦੇਖ ਚੁੱਕੇ ਹੋ ਕਿ ਪਿਛਲੀਆਂ ਸਿਖਲਾਈ ਲੈਬਾਂ ਵਿੱਚ ਕਮਾਂਡ ਲਾਈਨ ਨਾਲ ਵਾਲਟ ਡਿਵਾਈਸਾਂ ਦੀ ਸੁਰੱਖਿਅਤ ਪਛਾਣ ਦੀ ਪੁਸ਼ਟੀ ਕਿਵੇਂ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਇਸ ਭਾਗ ਵਿੱਚ, ਅਸੀਂ ਦੇਖਾਂਗੇ ਕਿ ਕਿਵੇਂ ਇੱਕ BLE ਡਿਵਾਈਸ ਆਪਣੀ ਸਰਟੀਫਿਕੇਟ ਚੇਨ ਨੂੰ ਬੇਨਤੀ ਕਰਕੇ ਅਤੇ ਇੱਕ ਚੁਣੌਤੀ ਭੇਜ ਕੇ ਦੂਜੇ BLE ਡਿਵਾਈਸ ਦੀ ਪਛਾਣ ਦੀ ਪੁਸ਼ਟੀ ਕਰ ਸਕਦੀ ਹੈ। ਸਾਰੇ ਸੁਰੱਖਿਅਤ ਵਾਲਟ ਹਿੱਸੇ ਉਹਨਾਂ ਦੇ ਆਪਣੇ ਡਿਵਾਈਸ ਸਰਟੀਫਿਕੇਟ ਅਤੇ ਬੈਚ ਸਰਟੀਫਿਕੇਟ ਰੱਖਦੇ ਹਨ। ਫੈਕਟਰੀ ਅਤੇ ਰੂਟ ਸਰਟੀਫਿਕੇਟ ਨੂੰ ਪੂਰੀ ਸਰਟੀਫਿਕੇਟ ਚੇਨ ਦੀ ਪੁਸ਼ਟੀ ਕਰਨ ਲਈ ਕਲਾਇੰਟ ਐਪਲੀਕੇਸ਼ਨ ਵਿੱਚ ਸਖਤ ਕੋਡ ਕੀਤਾ ਗਿਆ ਹੈ। ਸੁਰੱਖਿਅਤ ਪਛਾਣ ਬਾਰੇ ਹੋਰ ਵੇਰਵਿਆਂ ਲਈ AN1268 ਵੇਖੋ।

  1. ਹੇਠਾਂ ਦਿੱਤੇ ਅਨੁਸਾਰ ਡਿਵਾਈਸ ਤਸਦੀਕ ਦਸਤਖਤ ਸਟੋਰ ਕਰਨ ਲਈ ਇੱਕ ਗਲੋਬਲ ਬਫਰ ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰੋ:
  2. JustWorks ਪੇਅਰਿੰਗ ਦੀ ਵਰਤੋਂ ਕਰਨ ਲਈ ਸੁਰੱਖਿਆ ਪ੍ਰਬੰਧਕ ਕੌਂਫਿਗਰੇਸ਼ਨ ਸੈੱਟ ਕਰੋ। ਅਜਿਹਾ ਇਸ ਲਈ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਤਾਂ ਕਿ ਕੁਨੈਕਸ਼ਨ ਐਨਕ੍ਰਿਪਟ ਕੀਤਾ ਜਾਵੇ। ਅਭਿਆਸ ਵਿੱਚ, MITM ਸੁਰੱਖਿਆ ਦੀ ਵਰਤੋਂ ਕੀਤੀ ਜਾਣੀ ਚਾਹੀਦੀ ਹੈ ਪਰ ਲੈਬ ਨੂੰ ਸਧਾਰਨ ਰੱਖਣ ਲਈ, ਅਸੀਂ JustWorks ਦੀ ਵਰਤੋਂ ਕਰਾਂਗੇ। ਕਾਲ ਨੂੰ sl_bt_sm_configure ਵਿੱਚ ਬਦਲੋ:ਨਾਲ ਹੀ, ਸਿਸਟਮ_ਬੂਟ ਈਵੈਂਟ ਹੈਂਡਲਰ ਵਿੱਚ ਸੈੱਟਅੱਪ_ਮੋਡ (ਸੱਚ) ਲਈ ਕਾਲ ਬਾਰੇ ਟਿੱਪਣੀ ਕਰੋ।
  3. ਮੁਹੱਈਆ ਕੀਤੀ ਸਮੱਗਰੀ ਤੋਂ helpers.c ਖੋਲ੍ਹੋ ਅਤੇ ਸਮੱਗਰੀ ਨੂੰ app.c ਵਿੱਚ ਕਾਪੀ ਕਰੋ। ਇਹ ਕਾਲਬੈਕ ਫੰਕਸ਼ਨ ਸਰਟੀਫਿਕੇਟਾਂ ਨੂੰ ਵੰਡਣ ਵਰਗੇ ਕੰਮ ਕਰਦੇ ਹਨ ਤਾਂ ਜੋ ਉਹਨਾਂ ਨੂੰ BLE 'ਤੇ ਭੇਜਿਆ ਜਾ ਸਕੇ, ਸਰਟੀਫਿਕੇਟ ਚੇਨ ਦੀ ਤਸਦੀਕ ਕਰਨਾ, ਅਤੇ ਚੁਣੌਤੀ ਨੂੰ ਤਿਆਰ ਕਰਨਾ/ਤਸਦੀਕ ਕਰਨਾ।
  4. ਅਧਿਕਤਮ ਟ੍ਰਾਂਸਫਰ ਯੂਨਿਟ (MTU) ਦਾ ਆਕਾਰ ਨਿਰਧਾਰਤ ਕਰਨਾ ਜ਼ਰੂਰੀ ਹੈ ਤਾਂ ਜੋ ਸਰਟੀਫਿਕੇਟਾਂ ਨੂੰ ਵੰਡਿਆ ਜਾ ਸਕੇ ਅਤੇ ਦੁਬਾਰਾ ਜੋੜਿਆ ਜਾ ਸਕੇ। MTU ਨੂੰ ਸੁਰੱਖਿਅਤ ਕਰਨ ਲਈ ਇੱਕ ਗਲੋਬਲ ਵੇਰੀਏਬਲ ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰੋ ਜਿਵੇਂ ਕਿ ਇੱਥੇ ਦਿਖਾਇਆ ਗਿਆ ਹੈ:ਫਿਰ ਹੇਠਾਂ ਦਰਸਾਏ ਅਨੁਸਾਰ GATT MTU ਐਕਸਚੇਂਜ ਕੀਤੇ ਇਵੈਂਟ ਲਈ ਇੱਕ ਇਵੈਂਟ ਹੈਂਡਲਰ ਸ਼ਾਮਲ ਕਰੋ:
  5. ਇੱਥੇ ਤਿੰਨ ਉਪਭੋਗਤਾ ਡੇਟਾ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਹਨ ਜੋ ਪੜ੍ਹੀਆਂ ਜਾ ਸਕਦੀਆਂ ਹਨ। ਇਹ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਡਿਵਾਈਸ ਸਰਟੀਫਿਕੇਟ, ਬੈਚ ਸਰਟੀਫਿਕੇਟ ਅਤੇ ਚੁਣੌਤੀ ਨੂੰ ਸੰਚਾਰ ਕਰਨ ਲਈ ਵਰਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ। ਇੱਕ ਕਾਲਬੈਕ ਫੰਕਸ਼ਨ ਇਹਨਾਂ ਉਪਭੋਗਤਾਵਾਂ ਨੂੰ ਪੜ੍ਹਨ ਦੀਆਂ ਬੇਨਤੀਆਂ ਨੂੰ ਸੰਭਾਲਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਇਸ ਫੰਕਸ਼ਨ ਨੂੰ ਕਾਲ ਕਰਨ ਲਈ ਇੱਕ ਹੈਂਡਲਰ ਸ਼ਾਮਲ ਕਰੋ ਜਿਵੇਂ ਕਿ ਹੇਠਾਂ ਦਿਖਾਇਆ ਗਿਆ ਹੈ:ਕਾਲਬੈਕ ਕਦਮ #2 ਤੋਂ ਖੰਡ ਤੱਕ MTU ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ ਅਤੇ ਲੋੜ ਅਨੁਸਾਰ ਸਰਟੀਫਿਕੇਟ ਭੇਜਦਾ ਹੈ। ਇਹ ਹਸਤਾਖਰਿਤ ਚੁਣੌਤੀ ਨੂੰ ਭੇਜਣਾ ਵੀ ਹੈਂਡਲ ਕਰਦਾ ਹੈ।
  6. ਕਲਾਇੰਟ ਇੱਕ ਚੁਣੌਤੀ ਭੇਜਦਾ ਹੈ, ਸਰਵਰ ਦੁਆਰਾ ਹਸਤਾਖਰ ਕੀਤੇ ਜਾਣ ਲਈ ਇੱਕ ਬੇਤਰਤੀਬ ਨੰਬਰ, GATT ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਵਿੱਚੋਂ ਇੱਕ ਲਿਖ ਕੇ। ਇਸ ਕਾਰਨ ਕਰਕੇ, ਐਪਲੀਕੇਸ਼ਨ ਨੂੰ ਹੇਠਾਂ ਦਿੱਤੇ ਅਨੁਸਾਰ ਉਪਭੋਗਤਾ ਲਿਖਣ ਦੀ ਬੇਨਤੀ ਇਵੈਂਟ ਲਈ ਹੈਂਡਲਰ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ:
  7. ਸੁਰੱਖਿਅਤ ਪਛਾਣ ਸਹਾਇਤਾ ਸ਼ਾਮਲ ਕਰੋ fileਪ੍ਰੋਜੈਕਟ ਲਈ s:
    1. ਪ੍ਰੋਜੈਕਟ ਨੂੰ ਪ੍ਰਦਾਨ ਕੀਤੀ ਸਮੱਗਰੀ ਤੋਂ app_se_manager_macro.h, app_se_manager_secure_identity.c ਅਤੇ app_se_secure_identity.h। ਇਹ files ਵਿੱਚ ਕਾਰਜਾਂ ਲਈ ਕੁਝ ਸਹਾਇਕ ਫੰਕਸ਼ਨ ਸ਼ਾਮਲ ਹੁੰਦੇ ਹਨ ਜਿਵੇਂ ਕਿ ਸਰਟੀਫਿਕੇਟ ਦਾ ਆਕਾਰ ਪ੍ਰਾਪਤ ਕਰਨਾ, ਡਿਵਾਈਸ ਜਨਤਕ ਕੁੰਜੀ ਪ੍ਰਾਪਤ ਕਰਨਾ ਅਤੇ ਇੱਕ ਚੁਣੌਤੀ 'ਤੇ ਦਸਤਖਤ ਕਰਨਾ।
    2. app.c ਵਿੱਚ app_se_manager_secure_identity.h ਸ਼ਾਮਲ ਕਰੋ।
  8. ਪ੍ਰਦਾਨ ਕੀਤੀ ਸਮੱਗਰੀ ਤੋਂ gatt_configuration-attest.btconf ਨੂੰ ਆਯਾਤ ਕਰੋ। ਇਸ GATT ਡੇਟਾਬੇਸ ਨੂੰ ਸੁਰੱਖਿਅਤ ਤਸਦੀਕ ਕਿਹਾ ਜਾਂਦਾ ਹੈ ਜਿਸ ਵਿੱਚ ਚਾਰ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਸ਼ਾਮਲ ਹੁੰਦੀਆਂ ਹਨ ਜੋ ਸਾਡੀ ਡਿਵਾਈਸ ਦੀ ਪਛਾਣ ਦੀ ਪੁਸ਼ਟੀ ਕਰਨ ਲਈ ਵਰਤੀਆਂ ਜਾਣਗੀਆਂ। ਇਹਨਾਂ ਵਿੱਚ ਡਿਵਾਈਸ ਸਰਟੀਫਿਕੇਟ, ਬੈਚ ਸਰਟੀਫਿਕੇਟ, ਚੁਣੌਤੀ ਅਤੇ ਜਵਾਬ ਸ਼ਾਮਲ ਹਨ।
  9. ਕਲਾਇੰਟ, ਜਿਸਦੀ ਵਰਤੋਂ ਗੇਟਵੇ ਵਰਗੀ ਡਿਵਾਈਸ ਦੀ ਨਕਲ ਕਰਨ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਇੱਕ ਸੰਪੂਰਨ ਪ੍ਰੋਜੈਕਟ ਵਜੋਂ ਪ੍ਰਦਾਨ ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਕਿਉਂਕਿ ਇਹ ਬਣਾਉਣ ਲਈ ਵਧੇਰੇ ਗੁੰਝਲਦਾਰ ਹੈ। ਆਮ ਤੌਰ 'ਤੇ, ਗਾਹਕ ਦਾ ਕੰਮ ਇਸ ਤਰ੍ਹਾਂ ਹੁੰਦਾ ਹੈ:
    1. ਸੁਰੱਖਿਅਤ ਤਸਦੀਕ ਸੇਵਾ ਦਾ ਇਸ਼ਤਿਹਾਰ ਦੇਣ ਵਾਲੀਆਂ ਡਿਵਾਈਸਾਂ ਲਈ ਸਕੈਨ ਕਰਦਾ ਹੈ ਅਤੇ ਉਹਨਾਂ ਨਾਲ ਜੁੜਦਾ ਹੈ।
    2. GATT ਡਾਟਾਬੇਸ ਸੇਵਾਵਾਂ ਅਤੇ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਦੀ ਖੋਜ ਕਰਦਾ ਹੈ।
    3. ਡਿਵਾਈਸ ਅਤੇ ਬੈਚ ਸਰਟੀਫਿਕੇਟ ਪੜ੍ਹਦਾ ਹੈ ਅਤੇ ਫੈਕਟਰੀ ਅਤੇ ਰੂਟ ਸਰਟੀਫਿਕੇਟ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਸਰਟੀਫਿਕੇਟ ਚੇਨ ਦੀ ਪੁਸ਼ਟੀ ਕਰਦਾ ਹੈ ਜਿਸ ਨੂੰ ਇਸ ਨੇ ਫਲੈਸ਼ ਵਿੱਚ ਸਟੋਰ ਕੀਤਾ ਹੈ।
    4. ਸਰਵਰ ਨੂੰ ਇੱਕ ਬੇਤਰਤੀਬ ਚੁਣੌਤੀ ਭੇਜਦਾ ਹੈ।
    5. ਚੁਣੌਤੀ ਦੇ ਜਵਾਬ ਦੀ ਪੁਸ਼ਟੀ ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼.
    6. ਜੇਕਰ ਕੋਈ ਤਸਦੀਕ ਅਸਫਲ ਹੋ ਜਾਂਦੀ ਹੈ ਤਾਂ ਕਨੈਕਸ਼ਨ ਬੰਦ ਕਰਦਾ ਹੈ।
  10. ਸਰਵਰ ਪ੍ਰੋਜੈਕਟ ਨੂੰ ਆਪਣੇ ਸਰਵਰ WSTK/ਰੇਡੀਓਬੋਰਡ 'ਤੇ ਬਣਾਓ ਅਤੇ ਫਲੈਸ਼ ਕਰੋ।
  11. ਪ੍ਰਦਾਨ ਕੀਤੀ ਸਮੱਗਰੀ ਵਿੱਚ ਕਲਾਇੰਟ ਫੋਲਡਰ ਤੋਂ ਕਲਾਇੰਟ ਪ੍ਰੋਜੈਕਟ ਨੂੰ ਆਯਾਤ ਕਰੋ। ਕਲਾਇੰਟ ਪ੍ਰੋਜੈਕਟ ਨੂੰ ਆਪਣੇ ਕਲਾਇੰਟ WSTK/ਰੇਡੀਓਬੋਰਡ 'ਤੇ ਬਣਾਓ ਅਤੇ ਫਲੈਸ਼ ਕਰੋ।
  12. ਕਲਾਇੰਟ WSTK 'ਤੇ ਰੀਸੈਟ ਦਬਾਓ ਅਤੇ ਸੀਰੀਅਲ ਕੰਸੋਲ ਖੋਲ੍ਹੋ। ਕਲਾਇੰਟ ਸਾਡੀ ਸੁਰੱਖਿਅਤ ਪਛਾਣ ਸੇਵਾ ਦਾ ਇਸ਼ਤਿਹਾਰ ਦੇਣ ਵਾਲੀਆਂ ਡਿਵਾਈਸਾਂ ਲਈ ਸਕੈਨ ਕਰਨਾ ਸ਼ੁਰੂ ਕਰ ਦਿੰਦਾ ਹੈ ਅਤੇ ਜਦੋਂ ਇਸਨੂੰ ਲੱਭਦਾ ਹੈ ਤਾਂ ਉਹ ਜੁੜ ਜਾਵੇਗਾ।
  13. ਕਲਾਇੰਟ ਇਹ ਦਰਸਾਉਣ ਲਈ ਕੁਝ ਸੁਨੇਹੇ ਪ੍ਰਦਰਸ਼ਿਤ ਕਰੇਗਾ ਕਿ ਇਸ ਨੇ ਸਰਟੀਫਿਕੇਟ ਚੇਨ ਦੀ ਤਸਦੀਕ ਬਾਰੇ ਲੋੜੀਂਦੀ ਸੇਵਾ ਅਤੇ ਸਥਿਤੀ ਸੁਨੇਹਿਆਂ ਵਾਲਾ ਸਰਵਰ ਲੱਭ ਲਿਆ ਹੈ।
  14. ਜੇਕਰ ਤਸਦੀਕ ਪਾਸ ਹੋ ਜਾਂਦੀ ਹੈ, ਤਾਂ ਕਲਾਇੰਟ ਇੱਕ ਬੇਤਰਤੀਬ ਨੰਬਰ ਤਿਆਰ ਕਰੇਗਾ, ਜਿਸਨੂੰ ਚੁਣੌਤੀ ਕਿਹਾ ਜਾਂਦਾ ਹੈ, ਅਤੇ ਇਸਨੂੰ ਸਰਵਰ ਨੂੰ ਭੇਜਦਾ ਹੈ। ਸਰਵਰ ਚੁਣੌਤੀ 'ਤੇ ਆਪਣੀ ਸੁਰੱਖਿਅਤ ਢੰਗ ਨਾਲ ਰੱਖੀ ਪ੍ਰਾਈਵੇਟ ਡਿਵਾਈਸ ਕੁੰਜੀ ਅਤੇ ਦਸਤਖਤ ਗਾਹਕ ਨੂੰ ਵਾਪਸ ਭੇਜੇਗਾ, ਇਸ ਨੂੰ ਚੁਣੌਤੀ ਜਵਾਬ ਕਿਹਾ ਜਾਂਦਾ ਹੈ। ਕਲਾਇੰਟ ਫਿਰ ਦਸਤਖਤ ਦੀ ਪੁਸ਼ਟੀ ਕਰਨ ਲਈ ਪਹਿਲਾਂ ਪ੍ਰਾਪਤ ਕੀਤੇ ਡਿਵਾਈਸ ਸਰਟੀਫਿਕੇਟ ਵਿੱਚ ਜਨਤਕ ਕੁੰਜੀ ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ। ਇਹ ਪੁਸ਼ਟੀ ਕਰਨ ਲਈ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਕਿ ਸਰਵਰ ਕੋਲ ਅਸਲ ਵਿੱਚ ਨਿੱਜੀ ਕੁੰਜੀ ਹੈ ਜਿਸਦਾ ਦਾਅਵਾ ਕੀਤਾ ਗਿਆ ਹੈ। ਜੇਕਰ ਚੁਣੌਤੀ ਦੀ ਸਹੀ ਤਸਦੀਕ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਤਾਂ ਉਸ ਪ੍ਰਭਾਵ ਲਈ ਇੱਕ ਸੁਨੇਹਾ ਪ੍ਰਦਰਸ਼ਿਤ ਹੁੰਦਾ ਹੈ; ਨਹੀਂ ਤਾਂ, ਕੁਨੈਕਸ਼ਨ ਬੰਦ ਹੋ ਜਾਂਦਾ ਹੈ, ਅਤੇ ਇੱਕ ਸੁਨੇਹਾ ਪ੍ਰਦਰਸ਼ਿਤ ਹੁੰਦਾ ਹੈ ਕਿ ਕਿਉਂ।
  15. ਹੁਣ ਇਹ ਪੁਸ਼ਟੀ ਕਰਨ ਲਈ ਇੱਕ ਅਵੈਧ ਸਰਟੀਫਿਕੇਟ ਭੇਜੋ ਕਿ ਪੁਸ਼ਟੀ ਅਸਲ ਵਿੱਚ ਕੰਮ ਕਰਦੀ ਹੈ। ਤੁਸੀਂ ਸਰਟੀਫਿਕੇਟ ਡੇਟਾ ਜਾਂ ਚੁਣੌਤੀ ਜਵਾਬ ਨੂੰ ਖਰਾਬ ਕਰਨ ਲਈ user_read_request_cb() ਨੂੰ ਸੋਧ ਸਕਦੇ ਹੋ।

ਅੰਤਿਕਾ A – I/O ਸਮਰੱਥਾਵਾਂ ਅਤੇ ਪੇਅਰਿੰਗ ਵਿਧੀਆਂ
ਅੰਤਿਕਾ B - ਸੁਰੱਖਿਆ ਢੰਗ ਅਤੇ ਪੱਧਰ

ਸੁਰੱਖਿਆ ਮੋਡ 1 ਸਿਲੀਕਾਨ ਲੈਬਜ਼ ਦੇ ਸਟੈਕ ਵਿੱਚ ਬਲੂਟੁੱਥ ਲੋਅ ਐਨਰਜੀ ਲਈ ਸਮਰਥਿਤ ਇੱਕੋ ਇੱਕ ਮੋਡ ਹੈ। ਪੱਧਰ ਹੇਠ ਲਿਖੇ ਅਨੁਸਾਰ ਹਨ:

  • ਪੱਧਰ 1 ਕੋਈ ਸੁਰੱਖਿਆ ਨਹੀਂ
  • ਐਨਕ੍ਰਿਪਸ਼ਨ ਦੇ ਨਾਲ ਪੱਧਰ 2 ਅਣ-ਪ੍ਰਮਾਣਿਤ ਜੋੜਾ
  • ਏਨਕ੍ਰਿਪਸ਼ਨ ਦੇ ਨਾਲ ਪੱਧਰ 3 ਪ੍ਰਮਾਣਿਤ ਜੋੜਾ
  • ਮਜ਼ਬੂਤ ​​ਏਨਕ੍ਰਿਪਸ਼ਨ (ECDH ਕੁੰਜੀ ਐਕਸਚੇਂਜ) ਦੇ ਨਾਲ ਲੈਵਲ 4 ਪ੍ਰਮਾਣਿਤ ਸੁਰੱਖਿਅਤ ਕਨੈਕਸ਼ਨ

 

ਦਸਤਾਵੇਜ਼ / ਸਰੋਤ

silabs 21Q2 ਸੁਰੱਖਿਅਤ BLE ਡਿਵਾਈਸ ਸੁਰੱਖਿਆ ਲੈਬ [pdf] ਯੂਜ਼ਰ ਮੈਨੂਅਲ
21Q2 ਸੁਰੱਖਿਅਤ BLE ਡਿਵਾਈਸ ਸੁਰੱਖਿਆ ਲੈਬ, ਸੁਰੱਖਿਅਤ BLE ਡਿਵਾਈਸ ਸੁਰੱਖਿਆ ਲੈਬ, ਸੁਰੱਖਿਆ ਲੈਬ

ਹਵਾਲੇ

ਇੱਕ ਟਿੱਪਣੀ ਛੱਡੋ

ਤੁਹਾਡਾ ਈਮੇਲ ਪਤਾ ਪ੍ਰਕਾਸ਼ਿਤ ਨਹੀਂ ਕੀਤਾ ਜਾਵੇਗਾ। ਲੋੜੀਂਦੇ ਖੇਤਰਾਂ ਨੂੰ ਚਿੰਨ੍ਹਿਤ ਕੀਤਾ ਗਿਆ ਹੈ *