v1.3
يحدّد مواصفات ملحق "شبكة مركز العثور" (FHN) طريقة مشفّرة تمامًا لتتبُّع أجهزة البلوتوث المنخفض الطاقة (BLE) التي ترسل إشارات. توضّح هذه الصفحة أنّ ميزة "العثور على سماعات الرأس" هي إضافة إلى مواصفات ميزة "الإقران السريع". على مقدّمي الخدمات تفعيل هذا الامتداد إذا كانت لديهم أجهزة متوافقة مع FHN ويريدون تفعيل ميزة تتبُّع الموقع الجغرافي لهذه الأجهزة.
مواصفات GATT
يجب إضافة سمة عامة إضافية (GATT) إلى خدمة الإقران السريع مع الدلالات التالية:
| سمة خدمة "الإقران السريع" | مشفّر | الأذونات | معرِّف فريد عالمي (UUID) |
|---|---|---|---|
| إجراءات Beacon | لا | القراءة والكتابة وإرسال الإشعارات | FE2C1238-8366-4814-8EB0-01DE32100BEA |
الجدول 1: خصائص خدمة "الإقران السريع" لشبكة FHN
المصادقة
يتم تنفيذ العمليات التي يتطلبها هذا الامتداد كعملية كتابة، ويتم تأمينها من خلال آلية طلب واستجابة. قبل تنفيذ أي عملية، من المتوقّع أن ينفّذ Seeker عملية قراءة من السمة الواردة في الجدول 1، ما يؤدي إلى إنشاء مخزن مؤقت بالتنسيق التالي:
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | رقم الإصدار الرئيسي للبروتوكول | 0x01 |
| 1 - 8 | مصفوفة بايت | قيمة عشوائية تُستخدَم لمرة واحدة | يختلف |
يجب أن تؤدي كل عملية قراءة إلى رقم عشوائي مختلف، ويجب أن يكون الرقم العشوائي الواحد صالحًا لعملية واحدة فقط. يجب إبطال الرقم العشوائي حتى إذا تعذّر إتمام العملية.
بعد ذلك، يحسب جهاز Seeker مفتاح مصادقة صالحًا لمرة واحدة لاستخدامه في طلب كتابة لاحق. يتم احتساب مفتاح المصادقة كما هو موضّح في الجداول من 2 إلى 5. استنادًا إلى العملية المطلوبة، يثبت "طالب الوصول" معرفته بمفتاح واحد أو أكثر من المفاتيح التالية:
مفتاح الحساب: مفتاح حساب "الإقران السريع" الذي يبلغ حجمه 16 بايت، كما هو محدّد في مواصفات "الإقران السريع".
مفتاح حساب المالك: يختار مقدّم الخدمة أحد مفاتيح الحسابات الحالية كمفتاح حساب المالك في المرة الأولى التي يصل فيها الباحث إلى سمة Beacon Actions. لا يمكن تغيير مفتاح حساب المالك الذي تم اختياره إلا بعد إعادة ضبط الجهاز على الإعدادات الأصلية. يجب ألا يزيل مقدّم الخدمة مفتاح حساب المالك عندما تنتهي خانات مفاتيح الحساب المجانية.
تختار الأجهزة التي تتوافق مع ميزة FHN عند إقرانها للمرة الأولى (أو تتوافق معها عند إقرانها بعد إعادة الضبط على الإعدادات الأصلية) مفتاح الحساب الأول، لأنّ هذا المفتاح هو مفتاح الحساب الوحيد المتوفّر عندما يقرأ جهاز الباحث حالة الإعداد أثناء عملية الإقران.
يمكن لمقدّمي الخدمات الذين يتيحون استخدام ميزة "الشبكة المنزلية الذكية" بعد إقرانهم (على سبيل المثال، من خلال تحديث البرامج الثابتة) اختيار أي مفتاح حساب حالي. من المنطقي اختيار مفتاح الحساب الأول الذي يُستخدَم لقراءة حالة الإعداد من سمة إجراءات جهاز التتبُّع بعد تحديث البرامج الثابتة، على افتراض أنّ المستخدم الذي أجرى التحديث هو المالك الحالي للمزوّد.
مفتاح الهوية المؤقتة (EIK): هو مفتاح مكوّن من 32 بايت يختاره "الباحث" عشوائيًا عند تنفيذ عملية توفير المتطلبات اللازمة في FHN. يُستخدَم هذا المفتاح لاشتقاق مفاتيح تشفيرية تُستخدَم في التشفير التام بين الأطراف لتقارير المواقع الجغرافية. ولا يكشف Seeker عن هذا المعرّف لنظام الخلفية.
مفتاح الاسترداد: يتم تعريفه على أنّه
SHA256(ephemeral identity key || 0x01)، يتم اقتطاعه إلى أول 8 بايت. يتم تخزين المفتاح في الواجهة الخلفية، ويمكن لجهاز الباحث استخدامه لاسترداد مفتاح EIK، شرط أن يوافق المستخدم على ذلك من خلال الضغط على زر على الجهاز.مفتاح الرنين: يتم تعريفه على أنّه
SHA256(ephemeral identity key || 0x02)، ويتم اقتطاعه إلى أول 8 بايت. يتم تخزين المفتاح في الخلفية ويمكن لجهاز التتبُّع استخدامه لإصدار رنين على الجهاز فقط.مفتاح الحماية من التتبّع غير المرغوب فيه: يتم تعريفه على أنّه
SHA256(ephemeral identity key || 0x03)، ويتم اقتطاعه إلى أول 8 بايت. يتم تخزين المفتاح في الخلفية، ولا يمكن لـ "الباحث" استخدامه إلا لتفعيل وضع الحماية من التتبّع غير المرغوب فيه.
العمليات
يتم عرض تنسيق البيانات المكتوبة في السمة في الجداول من 2 إلى 5. سيتم تناول كل عملية من هذه العمليات بمزيد من التفصيل لاحقًا في هذا القسم.
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | معرّف البيانات |
|
| 1 | uint8 | طول البيانات | يختلف |
| من 2 إلى 9 | مصفوفة بايت | مفتاح مصادقة يُستخدَم لمرة واحدة | أول 8 بايتات من
HMAC-SHA256(account key, protocol major version number || the last nonce
read from the characteristic || data ID || data length || additional data) |
| 10 - var | مصفوفة بايت | البيانات الإضافية |
|
الجدول 2: طلب توفير إشارات البلوتوث
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | معرّف البيانات | 0x04: قراءة مفتاح الهوية المؤقتة بموافقة المستخدم |
| 1 | uint8 | طول البيانات | 0x08 |
| من 2 إلى 9 | مصفوفة بايت | مفتاح مصادقة يُستخدَم لمرة واحدة | أول 8 بايتات من
HMAC-SHA256(recovery key, protocol major version number || the last nonce
read from the characteristic || data ID || data length) |
الجدول 3: طلب استرداد مفتاح توفير إشارة البلوتوث
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | معرّف البيانات |
|
| 1 | uint8 | طول البيانات | يختلف |
| من 2 إلى 9 | مصفوفة بايت | مفتاح مصادقة يُستخدَم لمرة واحدة | أول 8 بايتات من
HMAC-SHA256(ring key, protocol major version number || the last nonce read
from the characteristic || data ID || data length || additional data) |
| 10 - var | مصفوفة بايت | البيانات الإضافية |
|
الجدول 4: طلب الرنين
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | معرّف البيانات |
|
| 1 | uint8 | طول البيانات | يختلف |
| من 2 إلى 9 | مصفوفة بايت | مفتاح مصادقة يُستخدَم لمرة واحدة | أول 8 بايتات من
HMAC-SHA256(unwanted tracking protection key, protocol major version number
|| the last nonce read from the characteristic || data ID || data length ||
additional data) |
| 10 - var | مصفوفة بايت | البيانات الإضافية |
|
الجدول 5: طلب الحماية من التتبُّع غير المرغوب فيه
تؤدي عمليات الكتابة الناجحة إلى إطلاق الإشعارات المدرَجة في الجدول 6.
يجب إرسال الإشعارات التي تتضمّن رقم تعريف بيانات غير 0x05: تغيير حالة الرنين قبل إكمال عملية الكتابة التي تؤدي إلى ظهور الإشعار، أي قبل إرسال وحدة بيانات البروتوكول (PDU) الخاصة بالرد على طلب الكتابة.
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | معرّف البيانات |
|
| 1 | uint8 | طول البيانات | يختلف |
| من 2 إلى 9 | مصفوفة بايت | المصادقة | تفاصيل كل عملية |
| 10 - var | مصفوفة بايت | البيانات الإضافية |
|
الجدول 6: استجابة خدمة Beacon
يسرد الجدول 7 رموز أخطاء GATT المحتملة التي تعرضها العمليات.
| الرمز | الوصف | ملاحظات |
|---|---|---|
| 0x80 | عدم الحصول على المصادقة | يتم عرض هذا الرمز استجابةً لطلب كتابة عند تعذُّر المصادقة (بما في ذلك الحالة التي تم فيها استخدام رقم خاص قديم). |
| 0x81 | القيمة غير صالحة. | يتم عرض هذا الخطأ عند تقديم أي قيمة غير صالحة أو إذا كان عدد البايتات التي تم تلقّيها غير متوقّع. |
| 0x82 | عدم توفّر موافقة المستخدم | يتم عرض هذا الرمز استجابةً لطلب كتابة يتضمّن معرّف البيانات 0x04: قراءة مفتاح الهوية المؤقتة بموافقة المستخدم عندما لا يكون الجهاز في وضع الاقتران. |
الجدول 7: رموز خطأ GATT
قراءة مَعلمة الإشارة
يمكن لجهاز Seeker أن يطلب من جهاز Provider معلَمات إشارة Beacon من خلال تنفيذ عملية كتابة للخاصية التي تتضمّن طلبًا من الجدول 2 مع معرّف البيانات 0x00. يتأكّد الموفّر من أنّ مفتاح المصادقة لمرة واحدة الذي تم تقديمه يتطابق مع أي من مفاتيح الحسابات المخزّنة على الجهاز.
إذا تعذّر إثبات الملكية، يعرض الموفّر خطأً بشأن عدم المصادقة.
عند النجاح، يرسل مقدّم الخدمة إشعارًا يتضمّن استجابة من الجدول 6 مع معرّف البيانات 0x00. ينشئ الموفّر شريحة البيانات على النحو التالي:
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | الطاقة المعايرة | تمثّل هذه السمة مستوى الطاقة المضبوط الذي تم تلقّيه على مسافة 0 متر (قيمة ضمن النطاق [-100, 20]). يتم تمثيله كعدد صحيح يحمل علامة، بدقة 1 ديسيبل مللي واط. |
| 1 - 4 | uint32 | قيمة الساعة | قيمة الساعة الحالية بالثواني (big endian). |
| 5 | uint8 | اختيار المنحنى | المنحنى الإهليلجي المستخدَم للتشفير:
|
| 6 | uint8 | المكونات | عدد المكوّنات التي يمكنها إصدار رنين:
|
| 7 | uint8 | إمكانات الرنين | في ما يلي الخيارات المتاحة:
|
| 8-15 | مصفوفة بايت | مساحة متروكة | تعبئة الأصفار لتشفير AES |
يجب تشفير البيانات باستخدام معيار التشفير المتقدّم AES-ECB-128 ومفتاح الحساب المستخدَم في مصادقة الطلب.
يتم تحديد جزء المصادقة على أنّه أول 8 بايتات من HMAC-SHA256(account key, protocol major version number || the last nonce read
from the characteristic || data ID || data length || additional data after
encryption || 0x01).
قراءة حالة توفير المنارة
يمكن لجهاز Seeker أن يطلب من جهاز Provider معلومات عن حالة توفير إشارة Beacon من خلال تنفيذ عملية كتابة للخاصية التي تتضمّن طلبًا من الجدول 2 مع معرّف البيانات 0x01. يتأكّد مقدّم الخدمة من أنّ مفتاح المصادقة لمرة واحدة المقدَّم يطابق أيًا من مفاتيح الحساب المخزَّنة على الجهاز.
في حال تعذُّر إثبات الملكية، يعرض الموفّر خطأً غير مصادَق عليه.
عند النجاح، يرسل مقدّم الخدمة إشعارًا يتضمّن استجابة من الجدول 6 مع معرّف البيانات 0x01. ينشئ الموفّر شريحة البيانات على النحو التالي:
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | حالة توفير المتطلبات اللازمة | قناع بت يحتوي على القيم التالية:
|
| من 1 إلى 20 أو 32 | مصفوفة بايت | المعرّف المؤقت الحالي | تمثّل هذه السمة 20 أو 32 بايت (حسب طريقة التشفير المستخدَمة) وتشير إلى المعرّف المؤقت الحالي الذي يبثّه جهاز الإرسال، إذا تم ضبط معرّف للجهاز. |
يتم تحديد جزء المصادقة على أنّه أول 8 بايتات من HMAC-SHA256(account key, protocol major version number || the last nonce read
from the characteristic || data ID || data length || additional data || 0x01).
ضبط مفتاح هوية مؤقت
لتوفير موفّر غير مجهّز كإشارة FHN، أو لتغيير مفتاح الهوية المؤقتة لموفّر مجهّز، ينفّذ الباحث عملية كتابة للخاصية التي تتضمّن طلبًا من الجدول 2 مع معرّف البيانات 0x02. يتحقّق المزوّد مما يلي:
- يتطابق مفتاح المصادقة الصالح لمرة واحدة المقدَّم مع مفتاح حساب المالك.
- إذا تم تقديم تجزئة لمفتاح هوية مؤقت، يجب أن تتطابق تجزئة مفتاح الهوية المؤقت مع مفتاح الهوية المؤقت الحالي.
- إذا لم يتم تقديم تجزئة لمفتاح هوية مؤقت، تحقَّق من أنّه لم يتم توفير "الموفّر" مسبقًا كإشارة FHN.
في حال تعذُّر إثبات الملكية، يعرض الموفّر خطأً غير مصادَق عليه.
في حال النجاح، يتم استرداد مفتاح الهوية المؤقتة من خلال فك تشفيره باستخدام AES-ECB-128 باستخدام مفتاح الحساب المطابق. يجب أن يتم تخزين المفتاح على الجهاز، ومن تلك النقطة فصاعدًا، يجب أن يبدأ "مزوّد الخدمة" في عرض إطارات FHN. يسري مفتاح الهوية المؤقت الجديد فور انتهاء اتصال البلوتوث المنخفض الطاقة (BLE). يُرسل مقدّم الخدمة إشعارًا يتضمّن استجابة من الجدول 6 مع معرّف البيانات 0x02.
يتم تحديد جزء المصادقة على أنّه أول 8 بايتات من HMAC-SHA256(account key, protocol major version number || the last nonce read
from the characteristic || data ID || data length || 0x01).
محو مفتاح الهوية المؤقتة
لإلغاء توفير جزء الإشارة من مقدّم الخدمة، ينفّذ الباحث عملية كتابة للخاصية، تتألف من طلب من الجدول 2 يتضمّن معرّف البيانات 0x03. يتحقّق المزوّد مما يلي:
- يتطابق مفتاح المصادقة الصالح لمرة واحدة المقدَّم مع مفتاح حساب المالك.
- يتطابق مفتاح الهوية المؤقتة المجزّأ مع مفتاح الهوية المؤقتة الحالي.
إذا لم يتم توفير مقدّم الخدمة كإشارة FHN أو تعذّر إثبات الملكية، سيتم عرض خطأ غير مصادق عليه.
عند النجاح، ينسى موفّر الخدمة المفتاح ويتوقّف عن عرض إطارات FHN.
يُرسل "موفّر الخدمة" إشعارًا يتضمّن استجابة من الجدول 6 مع معرّف البيانات 0x03.
يتم تحديد جزء المصادقة على أنّه أول 8 بايتات من HMAC-SHA256(account key, protocol major version number || the last nonce read
from the characteristic || data ID || data length || 0x01).
قراءة مفتاح الهوية المؤقتة بموافقة المستخدم
لا يتوفّر هذا الخيار إلا لاسترداد مفتاح مفقود، لأنّ المفتاح يتم تخزينه محليًا فقط من خلال جهاز الباحث عن المفتاح. وبالتالي، لا تتوفّر هذه الإمكانية إلا عندما يكون الجهاز في وضع الاقتران أو لفترة محدودة بعد الضغط على زر فعلي على الجهاز (ما يشكّل موافقة المستخدم).
على خدمة Seeker تخزين مفتاح الاسترداد في الخلفية لتتمكّن من استرداد المفتاح بنص عادي، ولكنّها لا تخزّن مفتاح EIK نفسه.
لقراءة مفتاح التشفير، ينفّذ جهاز التتبّع عملية كتابة للخاصية، تتألف من طلب من الجدول 3 مع رقم تعريف البيانات 0x04. يتحقّق مقدّم الخدمة مما يلي:
- يتطابق مفتاح الاسترداد المجزّأ مع مفتاح الاسترداد المتوقّع.
- الجهاز في وضع استرداد مفتاح التشفير.
في حال تعذُّر إثبات الملكية، يعرض الموفّر خطأً غير مصادَق عليه.
إذا لم يكن الجهاز في وضع الاقتران، سيعرض موفّر الخدمة الخطأ No User Consent.
عند النجاح، يرسل مقدّم الخدمة إشعارًا يتضمّن استجابة من الجدول 6 مع معرّف البيانات 0x04.
يتم تحديد جزء المصادقة على أنّه أول 8 بايتات من HMAC-SHA256(recovery key, protocol major version number || the last nonce read
from the characteristic || data ID || data length || additional data || 0x01).
عملية الرنين
يمكن لجهاز الباحث أن يطلب من جهاز مقدّم الخدمة تشغيل صوت من خلال تنفيذ عملية كتابة إلى السمة، تتألف من طلب من الجدول 4 مع معرّف البيانات 0x05. ينشئ الموفّر شريحة البيانات على النحو التالي:
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | عملية الرنين | قناع بت يحتوي على القيم التالية:
|
| 1 - 2 | uint16 | عملية استبعاد للقناة لمهلة معيّنة | المهلة بالديسي ثانية يجب ألا تكون القيمة صفرًا وألا تكون أكبر من 10 دقائق. يستخدم الموفّر هذه القيمة لتحديد المدة التي يجب أن يرن خلالها الجهاز قبل أن يتم إسكاته. يحلّ المهلة محلّ المهلة السارية حاليًا إذا كان أي جزء من الجهاز يرنّ. في حال ضبط عملية الرنين على 0x00، يتم تجاهل المهلة. |
| 3 | uint8 | مستوى الصوت |
|
عند تلقّي الطلب، يتحقّق مقدّم الخدمة مما يلي:
- يتطابق مفتاح المصادقة لمرة واحدة المقدَّم مع مفتاح الرنين.
- تتطابق الحالة المطلوبة مع المكوّنات التي يمكنها الرنين.
إذا لم يتم توفير مقدّم الخدمة كإشارة FHN أو تعذّر إثبات الملكية، سيتم عرض خطأ غير مصادق عليه. ومع ذلك، إذا كان لدى "موفّر الخدمة" ميزة الحماية من التتبُّع غير المرغوب فيه مفعَّلة، وكان طلب تفعيل ميزة الحماية من التتبُّع غير المرغوب فيه يتضمّن علامة مصادقة "تخطّي الرنين" مفعَّلة، على "موفّر الخدمة" تخطّي عملية التحقّق هذه. سيظل من المتوقّع أن يقدّم طالب البحث بيانات المصادقة، ولكن يمكن ضبطها على قيمة عشوائية.
عندما يبدأ الرنين أو ينتهي، يتم إرسال إشعار كما هو موضّح في الجدول 6 مع معرّف البيانات 0x05. يتم تحديد محتوى الإشعار على النحو التالي:
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | حالة الرنين |
|
| 1 | uint8 | مكوّنات الرنين | قناع بتي للمكوّنات التي تصدر رنينًا بشكل نشط، كما هو محدّد في الطلب |
| من 2 إلى 3 | uint16 | عملية استبعاد للقناة لمهلة معيّنة | الوقت المتبقي للرنين بالثواني العشرية إذا توقّف الجهاز عن إصدار رنين، يجب عرض القيمة 0x0000. |
يتم تحديد جزء المصادقة على أنّه أول 8 بايتات من HMAC-SHA256(ring key, protocol major version number || the nonce used to
initiate the ringing command || data ID || data length || additional data ||
0x01).
إذا كان الجهاز في حالة الرنين المطلوبة عند تلقّي طلب للرنين أو إيقاف الرنين، على مقدّم الخدمة إرسال إشعار يتضمّن حالة الرنين أو إما 0x00: بدأ أو 0x04: توقّف (طلب GATT)، على التوالي. يلغي هذا الطلب مَعلمات الحالة الحالية، ما يتيح إطالة مدة الرنين.
إذا كان لدى مقدّم الخدمة زر فعلي (أو تم تفعيل ميزة الاستشعار باللمس)، يجب أن يؤدي الضغط على هذا الزر إلى إيقاف وظيفة الرنين إذا تم الضغط عليه أثناء تفعيل الرنين.
الحصول على حالة رنين جهاز التتبُّع
للحصول على حالة الرنين الخاصة بجهاز الإرسال، ينفّذ جهاز البحث عملية كتابة إلى السمة، تتألف من طلب من الجدول 4 مع معرّف البيانات 0x06. يتأكّد مقدّم الخدمة من أنّ مفتاح المصادقة لمرة واحدة المقدَّم يتطابق مع مفتاح الخاتم.
إذا لم يتم توفير "مقدّم الخدمة" كإشارة FHN أو إذا تعذّر إثبات صحة بياناته، سيعرض "مقدّم الخدمة" رسالة خطأ تفيد بأنّ بياناته غير مصادق عليها.
عند النجاح، يرسل مقدّم الخدمة إشعارًا يتضمّن استجابة من الجدول 6 مع معرّف البيانات 0x06. ينشئ الموفّر شريحة البيانات على النحو التالي:
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | مكوّنات الرنين | تمثّل هذه السمة المكوّنات التي تصدر رنينًا بشكل نشط، كما هو محدّد في طلب الرنين. |
| 1 - 2 | uint16 | عملية استبعاد للقناة لمهلة معيّنة | الوقت المتبقي للرنين بالثواني العشرية يُرجى العِلم أنّه في حال عدم رنين الجهاز، يجب عرض القيمة 0x0000. |
يتم تحديد جزء المصادقة على أنّه أول 8 بايتات من HMAC-SHA256 (ring key, protocol major version number || the last nonce read
from the characteristic || data ID || data length || additional data || 0x01).
وضع الحماية من التتبُّع غير المرغوب فيه
يهدف وضع "الحماية من التتبّع غير المرغوب فيه" إلى السماح لأي جهاز عميل بتحديد الأجهزة المسيئة بدون الحاجة إلى التواصل مع الخادم. يجب أن يغيّر الموفّر تلقائيًا جميع المعرّفات على النحو الموضّح في تغيير المعرّفات. يمكن لخدمة "مركز العثور" نقل طلب تفعيل وضع الحماية من التتبُّع غير المرغوب فيه من خلال شبكة "مركز العثور". وبذلك، تجعل الخدمة "مقدّم الخدمة" يستخدم عنوان MAC ثابتًا بشكل مؤقت، ما يتيح للعملاء رصد الجهاز وتنبيه المستخدم بشأن إمكانية تتبُّعه بدون موافقته.
لتفعيل وضع الحماية من التتبّع غير المرغوب فيه أو إيقافه في جهاز الإرسال، ينفّذ جهاز التتبّع عملية كتابة للخاصية، تتألف من طلب من الجدول 5 مع معرّف البيانات 0x07 أو 0x08 على التوالي.
عند تفعيل وضع الحماية من التتبّع غير المرغوب فيه
ينشئ الموفّر شريحة البيانات على النحو التالي:
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | علامات التحكّم |
لا تكون العلامات سارية المفعول إلا إلى أن يتم إيقاف وضع الحماية من التتبّع غير المرغوب فيه. |
يتأكّد "موفّر الخدمة" من أنّ مفتاح المصادقة لمرة واحدة المقدَّم يتطابق مع مفتاح ميزة "الحماية من التتبّع غير المرغوب فيه". إذا لم يتم توفير "مقدّم الخدمة" كإشارة FHN أو تعذّر إثبات صحة بياناته، سيتم عرض خطأ "لم يتم إثبات صحة البيانات".
عند تفعيل وضع "الحماية من التتبّع غير المرغوب فيه"، يجب أن يخفّض المنارة معدّل تكرار تغيير عنوان MAC الخاص إلى مرة واحدة كل 24 ساعة. يجب أن يستمر المعرّف المؤقت المعلَن عنه في التغيير كالمعتاد. يجب ضبط نوع الإطار على 0x41. تظهر الحالة أيضًا في قسم العلامات المجزأة.
عند إيقاف وضع "الحماية من التتبّع غير المرغوب فيه"
يتحقّق المزوّد مما يلي:
- يتطابق مفتاح المصادقة لمرة واحدة المقدَّم مع مفتاح الحماية من محاولات التتبُّع غير المرغوب فيها.
- يتطابق مفتاح الهوية المؤقتة المجزّأ مع مفتاح الهوية المؤقتة الحالي.
إذا لم يتم توفير "مقدّم الخدمة" كإشارة FHN أو تعذّر إثبات الملكية، سيعرض "مقدّم الخدمة" رسالة خطأ تفيد بأنّ عملية المصادقة لم تتم.
عند إيقاف وضع "الحماية من التتبّع غير المرغوب فيه"، من المفترض أن يبدأ المنارة في تدوير عنوان MAC بمعدّل عادي مرة أخرى، مع مزامنته مع تدوير المعرّف المؤقت. يجب إعادة ضبط نوع الإطار على 0x40. تظهر الحالة أيضًا في قسم العلامات المجزّأة.
عند النجاح، يرسل مقدّم الخدمة إشعارًا يتضمّن استجابة من الجدول 6 مع معرّف البيانات 0x07 أو 0x08.
يتم تحديد جزء المصادقة على أنّه أول 8 بايتات من HMAC-SHA256(unwanted tracking protection key, protocol major version number ||
the last nonce read from the characteristic || data ID || data length ||
0x01).
البحث الدقيق
يوضّح هذا القسم مسار العمليات والعمليات الإضافية اللازمة لتحديد الموقع الجغرافي بدقة. تنطبق هنا القواعد نفسها المتعلّقة بسمة GATT والمصادقة كما هو محدّد في قسم مواصفات GATT. ميزة "البحث الدقيق" اختيارية.
يعتمد نوع ميزة "البحث الدقيق" على نوع تقنيات تحديد المدى المتوافقة مع الأجهزة التي تستخدم هذه الميزة. يمكن العثور على تكنولوجيات تحديد المدى المتوافقة في مواصفات تحديد المدى: تسلسل الرسائل والحِمل خارج النطاق. تستكشف الأقسام اللاحقة نوع تجربة العثور بدقة التي يمكن توقّعها استنادًا إلى تكنولوجيا تحديد المدى المستخدَمة.
مسار البحث الدقيق
يستكشف هذا القسم مسار رسائل FHNA في ميزة "العثور الدقيق". يوضّح الشكل 1 تسلسل الرسائل، وتشرح الفقرات كل رسالة بتفصيل أكبر.

الشكل 1: مسار الرسائل النموذجية في ميزة "العثور الدقيق"
جهاز "المُطلق" هو الجهاز الذي يتضمّن تطبيق "مركز العثور" والذي تم تفعيل ميزة "العثور الدقيق" عليه. الجهاز المصدِر هو الجهاز الذي يحاول العثور على الجهاز الآخر.
جهاز Responder هو الجهاز الذي يحاول جهاز Initiator العثور عليه.
يرسل جهاز "المُرسِل" رسالة "طلب إمكانية تحديد المدى" إلى جهاز "المستجيب"، حيث سيتم إدراج تقنيات تحديد المدى التي يريد معرفتها من جهاز "المستجيب". سيرد الجهاز المستجيب بإشعار "استجابة إمكانية تحديد المدى" الذي يتضمّن معلومات حول تقنيات تحديد المدى المتوافقة وإمكاناتها. سيقدّم المجيب المعلومات التي طلبها البادئ فقط. سيتم ترتيب قائمة الإمكانات استنادًا إلى أولوية تكنولوجيا تحديد المدى التي يفضّلها جهاز Responder، وستكون الأولوية الأعلى للعنصر الأول في القائمة.
سيرسل جهاز Initiator بعد ذلك رسالة Ranging Configuration، سيحدّد فيها إعدادات كل تقنية تحديد مدى يريد استخدامها. عند تلقّي هذه الرسالة، يجب أن يبدأ جهاز Responder في تحديد المدى للتكنولوجيات السارية باستخدام الإعدادات المقدَّمة. سيرسل الجهاز المستجيب إشعارًا بالرد على طلب إعدادات تحديد المدى، ويتضمّن هذا الإشعار نتائج ما إذا كانت كل تقنية من تقنيات تحديد المدى قد بدأت بنجاح. يجب بدء بعض تقنيات تحديد المدى على كل من جهاز "المُرسِل" وجهاز "المستجيب" لإجراء جلسة ناجحة لتحديد المدى، بينما لا يكون ذلك ضروريًا لبعض التقنيات الأخرى، بل يجب بدءها على جهاز "المُرسِل" فقط، ومع ذلك، يجب أن يرد جهاز "المستجيب" بنتيجة ناجحة لهذه التقنيات. يمكنك الاطّلاع على مزيد من المعلومات حول سلوك تكنولوجيا تحديد المدى المحدَّد في الأقسام اللاحقة.
عندما يصبح جهاز "المُطلق" جاهزًا لإيقاف جلسة "العثور الدقيق"، سيرسل رسالة "إيقاف تحديد المدى" إلى الجهاز "المستجيب"، مع الإشارة إلى تكنولوجيات تحديد المدى التي يجب إيقافها. سيردّ جهاز Responder بإشعار Stop Ranging Response، ما يشير إلى أنّه أوقف بنجاح عملية تحديد المدى باستخدام تقنيات تحديد المدى المطلوبة.
في حال انقطاع قناة الاتصال FHNA BLE GATT في منتصف جلسة البحث الدقيق، ولكن مع استمرار عمل بعض تقنيات تحديد المدى، سيطبّق الجهاز المستجيب آلية مهلة زمنية لضمان عدم استمرار تحديد المدى إلى أجل غير مسمى. ستعتمد التفاصيل على كل حالة استخدام.
يُرجى العِلم أنّه يجب ألا يفترض الجهاز المستجيب أنّ ترتيب العمليات سيكون دائمًا هو نفسه. على سبيل المثال، يجب أن يكون جهاز الردّ قادرًا على التعامل مع عمليات طلبات "إمكانية تحديد المدى" المتعددة على التوالي، أو حتى عملية "إعداد تحديد المدى" المباشرة بدون طلب الإمكانية السابق.
عمليات البحث الدقيق
يعرض الجدول 8 عمليات FHNA المحدّدة في هذا المستند والمطلوبة لتفعيل ميزة "العثور الدقيق". يحدد كل قسم فرعي رسالة FHNA لكل عملية من العمليات، بينما تشير محتويات حقل البيانات الإضافية إلى مواصفات تحديد المدى: تسلسل الرسائل خارج النطاق والحِمل.
| العملية | معرّف البيانات | الوصف |
|---|---|---|
| طلب إمكانية تحديد النطاق | 0x0A | عملية طلب الإمكانية التي سيرسلها جهاز المُرسِل إلى جهاز المستلِم. ستعرض محتويات بيانات هذه العملية جميع تقنيات تحديد المدى التي يريد "المُرسِل" معرفتها من جهاز "المستجيب". |
| Ranging Capability Response | 0x0A | هذا هو ردّ الإشعار على عملية طلب إمكانية تحديد المدى. يحتوي على معلومات حول إمكانات كل تكنولوجيا تحديد مدى متوافقة طلبها الجهاز البادئ. |
| إعدادات تحديد المدى | 0x0B | تحتوي عملية إعداد تحديد المدى على إعدادات تقنيات تحديد المدى التي يريد جهاز "المُرسِل" بدء تحديد المدى بها مع جهاز "المستقبِل". |
| استجابة إعدادات تحديد المدى | 0x0B | هذا هو الردّ على الإشعار بشأن عملية "ضبط النطاق". يحتوي على بيانات حول ما إذا كان جهاز Responder قد بدأ بنجاح في تحديد المدى باستخدام تقنيات تحديد المدى المطلوبة استنادًا إلى الإعدادات المقدَّمة. |
| RFU | 0x0C | لا يتم استخدام العملية التي تتضمّن معرّف البيانات هذا، وهي محجوزة للاستخدام في المستقبل. |
| إيقاف تحديد المدى | 0x0D | تحتوي عملية Stop Ranging التي يرسلها جهاز Initiator على معلومات حول تكنولوجيات تحديد المدى التي يجب أن يتوقف جهاز Responder عن تحديد المدى باستخدامها. |
| إيقاف الردود المتعلقة بتحديد المدى | 0x0D | هذا هو الردّ على الإشعار بشأن عملية "إيقاف تحديد المدى". يحتوي على بيانات حول ما إذا كانت عملية إيقاف تقنية تحديد المدى المحدّدة ناجحة أم لا. |
الجدول 8: عمليات "البحث الدقيق"
عملية طلب إمكانية تحديد المدى
يحدد الجدول 9 رسالة طلب إمكانية تحديد المدى.
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | معرّف البيانات | 0x0A - عملية طلب إمكانية تحديد المدى |
| 1 | uint8 | طول البيانات | يختلف |
| 2 | مصفوفة بايت | مفتاح مصادقة يُستخدَم لمرة واحدة | أول 8 بايت من HMAC-SHA256(مفتاح الحساب، رقم الإصدار الرئيسي للبروتوكول || آخر قيمة عشوائية تمّت قراءتها من السمة || رقم تعريف البيانات || طول البيانات || بيانات إضافية). |
| 10 | مصفوفة بايت | البيانات الإضافية | رسالة طلب تحديد المدى على النحو المحدّد في مواصفات تحديد المدى: تسلسل الرسائل والحمولة خارج النطاق (كل من العنوان والحمولة) |
الجدول 9: طلب إمكانية تحديد المدى
عملية استجابة إمكانية تحديد المدى
يوضّح الجدول 10 رسالة "الاستجابة لإمكانية تحديد المدى".
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | معرّف البيانات | 0x0A: ردّ بشأن إمكانية تحديد النطاق |
| 1 | uint8 | طول البيانات | يختلف |
| 2 | مصفوفة بايت | مفتاح مصادقة يُستخدَم لمرة واحدة | أول 8 بايت من HMAC-SHA256(مفتاح الحساب، رقم الإصدار الرئيسي للبروتوكول || آخر رقم عشوائي تمّت قراءته من السمة || معرّف البيانات || طول البيانات || بيانات إضافية || 0x01). |
| 10 | مصفوفة بايت | البيانات الإضافية | رسالة استجابة تحديد المدى على النحو المحدّد في مواصفات تحديد المدى: تسلسل الرسائل والحِمل خارج النطاق (كل من العنوان والحِمل) |
الجدول 10: استجابة إمكانية تحديد النطاق.
عملية ضبط النطاق
يحدد الجدول 11 رسالة إعدادات تحديد المدى.
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | معرّف البيانات | 0x0B - ضبط إعدادات تحديد المدى |
| 1 | uint8 | طول البيانات | يختلف |
| 2 | مصفوفة بايت | مفتاح مصادقة يُستخدَم لمرة واحدة | أول 8 بايت من HMAC-SHA256(مفتاح الحساب، رقم الإصدار الرئيسي للبروتوكول || آخر قيمة عشوائية تمّت قراءتها من السمة || رقم تعريف البيانات || طول البيانات || بيانات إضافية). |
| 10 | مصفوفة بايت | البيانات الإضافية | رسالة إعداد تحديد المدى كما هو محدّد في مواصفات تحديد المدى: تسلسل الرسائل والحِمل خارج النطاق (كل من العنوان والحِمل) |
الجدول 11: إعدادات تحديد المدى
عملية الردّ على إعدادات تحديد المدى
يحدّد الجدول 12 رسالة "ردّ إعدادات تحديد المدى".
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | معرّف البيانات | 0x0B - الردّ على طلب ضبط إعدادات تحديد المدى |
| 1 | uint8 | طول البيانات | يختلف |
| 2 | مصفوفة بايت | مفتاح مصادقة يُستخدَم لمرة واحدة | أول 8 بايت من HMAC-SHA256(مفتاح الحساب، رقم الإصدار الرئيسي للبروتوكول || آخر رقم عشوائي تمّت قراءته من السمة || معرّف البيانات || طول البيانات || بيانات إضافية || 0x01). |
| 10 | مصفوفة بايت | البيانات الإضافية | رسالة Ranging Configuration Response على النحو المحدّد في مواصفات Ranging: Out-of-band message sequence and payload (كل من العنوان والحِمل) |
الجدول 12: استجابة إعدادات تحديد المدى
إيقاف عملية تحديد المدى
يحدّد الجدول 13 رسالة "إيقاف تحديد المدى".
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | معرّف البيانات | 0x0D - إيقاف تحديد المدى |
| 1 | uint8 | طول البيانات | يختلف |
| 2 | مصفوفة بايت | مفتاح مصادقة يُستخدَم لمرة واحدة | أول 8 بايت من HMAC-SHA256(مفتاح الحساب، رقم الإصدار الرئيسي للبروتوكول || آخر قيمة عشوائية تمّت قراءتها من السمة || رقم تعريف البيانات || طول البيانات). |
| 10 | مصفوفة بايت | البيانات الإضافية | رسالة إيقاف تحديد المدى على النحو المحدّد في مواصفات تحديد المدى: تسلسل الرسائل والحِمل خارج النطاق (كل من العنوان والحِمل) |
الجدول 13: إيقاف تحديد المدى
إيقاف عملية الرد على تحديد المدى
يحدّد الجدول 14 رسالة "إيقاف تحديد المدى".
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | معرّف البيانات | 0x0D - استجابة إيقاف تحديد المدى |
| 1 | uint8 | طول البيانات | يختلف |
| 2 | مصفوفة بايت | مفتاح مصادقة يُستخدَم لمرة واحدة | أول 8 بايت من HMAC-SHA256(مفتاح الحساب، رقم الإصدار الرئيسي للبروتوكول || آخر رقم عشوائي تمّت قراءته من السمة || معرّف البيانات || طول البيانات || بيانات إضافية || 0x01). |
| 10 | مصفوفة بايت | البيانات الإضافية | رسالة Stop Ranging Response على النحو المحدّد في مواصفات تحديد المدى: تسلسل الرسائل والحِمل خارج النطاق (كل من العنوان والحِمل) |
الجدول 14: الردّ على طلب إيقاف العرض
الحماية من التتبُّع غير المرغوب فيه باستخدام ميزة "البحث الدقيق"
عند تفعيل وضع الحماية من التتبّع غير المرغوب فيه، كما هو موضّح في قسم الحماية من التتبّع غير المرغوب فيه، يسري الإجراء نفسه المطبّق على تخطّي عمليات التحقّق من المصادقة للرسائل التي تصدر رنينًا على جميع رسائل "العثور الدقيق" المحدّدة في هذا المستند للأجهزة التي تريد إتاحة هذه الميزة.
تفاصيل تكنولوجيا تحديد المدى في ميزة "البحث الدقيق"
يحتوي هذا القسم على تفاصيل خاصة بتكنولوجيا تحديد المدى.
تفاصيل النطاق الفائق العرض (UWB)
تفاصيل خاصة بتقنية النطاق الفائق العرض (UWB)
مستوى البحث الدقيق
يمكن أن تتضمّن جلسات "تحديد الموقع بدقة" التي تستخدم تكنولوجيا النطاق الفائق العرض (UWB) لتحديد المدى معلومات عن المسافة والاتجاه. يجب أن يكون الفاصل الزمني لتحديد المدى 240 ملي ثانية على الأقل، ويُفضّل أن يكون 96 ملي ثانية للحصول على أفضل إرشادات.
معرّفات الإعدادات
لا تحتوي بيانات الإعدادات التي يتم تبادلها خارج النطاق لتقنية UWB على مجموعة كاملة من المَعلمات القابلة للإعداد التي تتطلّبها تقنية UWB لبدء جلسة تحديد المدى باستخدام تقنية UWB. يتم اختيار بعض المَعلمات ضمنيًا من خلال رقم تعريف الإعداد الذي تم اختياره.
كل معرّف إعداد هو مجموعة من مَعلمات إعدادات النطاق الفائق العرض (UWB) المحدّدة مسبقًا والتي تم توثيقها بشكل علني. بالنسبة إلى حالة استخدام "العثور الدقيق"، يجب أن يتوافق جهاز المستجيب مع معرّف الإعداد 6، ويمكنه اختياريًا التوافق مع معرّف الإعداد 3.
بادئ التشغيل والمستجيب في النطاق الفائق العرض (UWB)
في ما يتعلّق بحالة استخدام ميزة "العثور بدقة"، سيكون الجهاز الذي تم تصنيفه على أنّه جهاز "البادئ" في هذا المستند هو جهاز "المستجيب" الذي يستخدم النطاق الفائق العرض، وسيكون الجهاز الذي تم تصنيفه على أنّه جهاز "المستجيب" في هذا المستند هو جهاز "البادئ" الذي يستخدم النطاق الفائق العرض. ويرجع ذلك إلى أنّ الجهاز الذي يبدأ عملية الاتصال عبر النطاق الفائق العرض (UWB) يستهلك طاقة أقل من الجهاز الذي يستجيب لعملية الاتصال، وفي معظم الحالات، يكون الجهاز المستجيب عبارة عن جهاز طرفي مزوّد ببطارية محدودة.
وهذا يعني أنّ جهاز Responder يحتاج إلى الإشارة إلى أنّه يتيح دور UWB initiator في رسالة Ranging Capability Response.
مَعلمات أخرى ذات صلة بالنطاق الفائق العرض (UWB)
- يجب أن تكون القناة 9 متاحة
- للحصول على إرشادات مثالية، يُنصح باستخدام فاصل زمني يتراوح بين 96 ملي ثانية، وإلا يجب توفير فاصل زمني يبلغ 240 ملي ثانية.
- ننصح باستخدام مدة فتحة تبلغ 1 ملي ثانية لتوفير شحن البطارية، ولكن يمكن أيضًا استخدام مدة تبلغ 2 ملي ثانية.
- يجب أن تكون شريحة UWB متوافقة مع الإصدار 1.2 من معيار FIRA ومعيار P-STS على الأقل.
- إنّ BPRF إلزامي، بينما HPRF اختياري ولكن ننصح به. يتم تحديد الوضع المتوافق أو المحدّد من خلال فهرس الديباجة المتوافق أو المحدّد.
- نوع أمان الجلسة: P-STS
تفاصيل حول ميزة "استكشاف القنوات" (CS) عبر البلوتوث المنخفض الطاقة (BLE)
تفاصيل خاصة بخدمة BLE CS
مستوى البحث الدقيق
ستؤدي جلسات "البحث الدقيق" التي تستخدم CS كتكنولوجيا تحديد المدى إلى قياسات المسافة فقط، ولن يتم توفير معلومات الاتجاه في الوقت الحالي.
الربط المطلوب بين الأجهزة
لن تعمل جلسات "البحث الدقيق" التي تستخدم ميزة Channel Sounding إذا لم تكن الأجهزة مرتبطة. يجب أن يكون هناك ربط حالي بين الجهاز المبدئي والجهاز المستجيب. لا يوفّر هذا المواصفات طريقة لإنشاء ربط بين الأجهزة. بدلاً من ذلك، يعود إلى مطوّر حالة الاستخدام تحديد هذا الربط بين الأجهزة.
الإجراءات المطلوبة من جانب المستجيب في "خدمة العملاء"
على عكس تقنية UWB التي تتطلّب أن يطلب كلا الجهازَين بدء عملية تحديد المدى وإيقافها بشكل صريح من خلال واجهة برمجة التطبيقات، لا تتطلّب تقنية CS سوى أن يطلب الجهاز المبدئي بدء عملية تحديد المدى من خلال حزمة برامج البلوتوث، ويتم إجراء بقية عملية الإعداد داخل النطاق باستخدام البلوتوث (BT). يعني ذلك أنّه عند تلقّي رسالة "إعدادات تحديد المدى" أو رسالة "إيقاف تحديد المدى" الخاصة بخدمة CS، لا يحتاج الجهاز المستجيب إلى اتّخاذ أي إجراء إذا كانت تقنية البلوتوث مفعّلة، باستثناء الردّ بإشعار رسالة "الردّ على إعدادات تحديد المدى". قد يستخدم جهاز الرد هذه الرسائل كإشارة لتعديل واجهة المستخدم حيث تظهر الشاشة، أو قد يستخدمها بغض النظر عن توفّر شاشة لتقديم ملاحظات مرئية عن حالة الجهاز، مثل وميض مصابيح LED في الجهاز.
ميزة "مراسلة نصية في الوقت الفعلي" (RTT) في شبكة Wi-Fi NAN
تفاصيل محدّدة حول Wi-Fi NAN RTT
مستوى البحث الدقيق
ستؤدي جلسات "العثور بدقة" التي تستخدم تقنية تحديد المدى المستندة إلى Wi-Fi NAN RTT إلى قياسات المسافة فقط، ولن يتم توفير معلومات الاتجاه في الوقت الحالي.
BLE RSSI
تفاصيل محدّدة حول RSSI في البلوتوث المنخفض الطاقة
مستوى البحث الدقيق
لن تتمكّن جلسات ميزة "العثور الدقيق" التي تستخدم فقط BLE RSSI كتكنولوجيا تحديد المدى من الحصول على معلومات المسافة أو الاتجاه، لأنّ BLE RSSI ليست تكنولوجيا دقيقة لتحديد المدى. بدلاً من ذلك، سيظهر للمستخدم إرشادات تشير إلى أنّ الجهاز قريب أو بعيد.
الإطارات التي يتم عرض إعلانات فيها
بعد توفير الخدمة، من المتوقّع أن يعلن مقدّم الخدمة عن إطارات FHN مرة واحدة على الأقل كل ثانيتَين. في حال الإعلان عن إطارات الإقران السريع، على مقدّم الخدمة أن يدرج إطارات FHN ضمن إعلانات الإقران السريع العادية. على سبيل المثال، يجب أن يعرض مقدّم الخدمة سبعة إعلانات Fast Pair وإعلان FHN واحد كل ثانيتَين.
يجب ضبط طاقة الإرسال عبر البلوتوث التي يتم إجراؤها لإعلانات FHN على 0 ديسيبل ميلي واط على الأقل.
يحمل إطار FHN مفتاحًا عامًا يُستخدَم لتشفير تقارير الموقع الجغرافي من خلال أي عميل متوافق يساهم في شبكة التعهيد الجماعي. يتوفّر نوعان من مفاتيح المنحنى البيضاوي: مفتاح 160 بت يتوافق مع إطارات BLE 4 القديمة، أو مفتاح 256 بت يتطلّب BLE 5 مع إمكانات إعلانية موسّعة. يحدّد التنفيذ الذي يجريه مقدّم الخدمة المنحنى الذي سيتم استخدامه.
يتم تنظيم إطار FHN على النحو التالي.
| Octet | القيمة | الوصف |
|---|---|---|
| 0 | 0x02 | الطول |
| 1 | 0x01 | قيمة نوع بيانات العلامات |
| 2 | 0x06 | بيانات العلامات |
| 3 | 0x18 أو 0x19 | الطول |
| 4 | 0x16 | قيمة نوع بيانات بيانات الخدمة |
| 5 | 0xAA | المعرّف الفريد العالمي (UUID) للخدمة المكوّن من 16 بت |
| 6 | 0xFE | ... |
| 7 | 0x40 أو 0x41 | نوع إطار FHN مع إشارة إلى وضع الحماية من التتبُّع غير المرغوب فيه |
| 8..27 | معرّف مؤقت مكوّن من 20 بايت | |
| 28 | العلامات المجزّأة |
الجدول 15: إطار FHN يتوافق مع منحنى 160 بت.
يعرض الجدول 16 إزاحات البايت وقيمها لمنحنى 256 بت.
| Octet | القيمة | الوصف |
|---|---|---|
| 0 | 0x02 | الطول |
| 1 | 0x01 | قيمة نوع بيانات العلامات |
| 2 | 0x06 | بيانات العلامات |
| 3 | 0x24 أو 0x25 | الطول |
| 4 | 0x16 | قيمة نوع بيانات بيانات الخدمة |
| 5 | 0xAA | المعرّف الفريد العالمي (UUID) للخدمة المكوّن من 16 بت |
| 6 | 0xFE | ... |
| 7 | 0x40 أو 0x41 | نوع إطار FHN مع إشارة إلى وضع الحماية من التتبُّع غير المرغوب فيه |
| 8..39 | معرّف مؤقت بحجم 32 بايت | |
| 40 | العلامات المجزّأة |
الجدول 16: إطار FHN يتوافق مع منحنى 256 بت.
احتساب المعرّف المؤقت (EID)
يتم إنشاء رقم عشوائي من خلال تشفير بنية البيانات التالية باستخدام AES-ECB-256 باستخدام مفتاح التعريف المؤقت:
| Octet | الحقل | الوصف |
|---|---|---|
| 0 - 10 | مساحة متروكة | القيمة = 0xFF |
| 11 | K | أُس فترة التكرار |
| 12 - 15 | TS[0]...TS[3] | عداد وقت إشارة الموقع، بتنسيق 32 بت big-endian يتم محو K أدنى بتات. |
| 16 - 26 | مساحة متروكة | القيمة = 0x00 |
| 27 | K | أُس فترة التكرار |
| بين 28 و31 عامًا | TS[0]...TS[3] | عداد وقت إشارة الموقع، بتنسيق 32 بت big-endian يتم محو K أدنى بتات. |
الجدول 17: إنشاء رقم عشوائي زائف
نتيجة هذه العملية الحسابية هي رقم مكوّن من 256 بت، ويُشار إليه بالرمز r'.
بالنسبة إلى بقية العمليات الحسابية، يتم استخدام SECP160R1 أو SECP256R1
لعمليات التشفير باستخدام المنحنى الإهليلجي. يمكنك الاطّلاع على تعريفات المنحنى في
SEC 2: Recommended Elliptic Curve Domain Parameters، الذي يحدّد Fp وn وG
المشار إليها لاحقًا.
يتم الآن إسقاط r' على الحقل المحدود Fp من خلال حساب r = r' mod n.
أخيرًا، احسب R = r * G، وهو نقطة على المنحنى تمثّل المفتاح العام المستخدَم. يبث جهاز الإرسال إشارة تتضمّن Rx، وهي إحداثيات x الخاصة بـ R، باعتبارها المعرّف المؤقت.
العلامات المجزّأة
يتم احتساب حقل العلامات المجزّأة على النحو التالي (يتم الرجوع إلى البتات من الأكثر أهمية إلى الأقل أهمية):
- وحدات البت من 0 إلى 4: محجوزة (يتم ضبطها على أصفار).
- تشير البتات من 5 إلى 6 إلى مستوى البطارية بالجهاز على النحو التالي:
- 00: لا يتوفّر مؤشر لمستوى البطارية
- 01: مستوى البطارية العادي
- 10: مستوى شحن البطارية منخفض
- 11: مستوى شحن البطارية منخفض للغاية (يجب استبدال البطارية قريبًا)
- يتم ضبط البت 7 على 1 إذا كان جهاز التتبّع في وضع الحماية من التتبّع غير المرغوب فيه، وعلى 0 في الحالات الأخرى.
لإنتاج القيمة النهائية لهذا البايت، يتم إجراء عملية XOR مع البايت الأقل أهمية في SHA256(r).
يُرجى العِلم أنّه يجب محاذاة r مع حجم المنحنى. أضِف أصفارًا كبتات أكثر أهمية إذا كان التمثيل أقصر من 160 أو 256 بتًا، أو يجب اقتطاع البتات الأكثر أهمية إذا كان التمثيل أكبر من 160 أو 256 بتًا.
إذا كان جهاز التتبُّع لا يتيح عرض مستوى البطارية، ولم يكن في وضع الحماية من التتبُّع غير المرغوب فيه، يُسمح بحذف هذا البايت بالكامل من الإعلان.
التشفير باستخدام EID
لتشفير رسالة m، على الشخص الذي رصدها (بعد قراءة Rx من جهاز الإرسال) اتّباع الخطوات التالية:
- اختَر رقمًا عشوائيًا
sفيFp، كما هو محدّد في قسم احتساب المعرّف EID. - الحساب
S = s * G - احسب
R = (Rx, Ry)عن طريق الاستبدال في معادلة المنحنى واختيار قيمةRyعشوائية من النتائج المحتملة. - احسب مفتاح AES ذو 256 بت
k = HKDF-SHA256((s * R)x)حيث(s * R)xهو إحداثيxلنتيجة ضرب المنحنى. لم يتم تحديد قيمة لسمة الملح. - لنفترض أنّ
URxوLRxهما 80 بت العلوية والسفلية منRxعلى التوالي، بتنسيق big-endian. وبطريقة مماثلة، حدِّدUSxوLSxلـS. - الحساب
nonce = LRx || LSx - الحساب
(m’, tag) = AES-EAX-256-ENC(k, nonce, m) - إرسال
(URx, Sx, m’, tag)إلى المالك، ربما من خلال خدمة بعيدة غير موثوق بها
فك تشفير القيم المشفّرة باستخدام معرّف EID
يفك تشفير الرسالة عميل المالك الذي يملك مفتاح التشفير EIK وأس فترة التدوير على النحو التالي:
- بالنظر إلى
URx، احصل على قيمة عدّاد وقت إشارة التتبّع التي يستند إليهاURx. ويمكن إجراء ذلك من خلال حساب قيمRxعلى جهاز العميل الخاص بالمالك لوقت إرسال الإشارة، وذلك بالنسبة إلى القيم السابقة الحديثة والقيم المستقبلية القريبة. - بافتراض قيمة عدّاد وقت إشارة التتبّع التي تستند إليها
URx، احسب القيمة المتوقّعة لـrكما هو محدّد في قسم احتساب المعرّف EID. - احتسِب
R = r * G، وتأكَّد من تطابقها مع قيمةURxالتي قدّمها المراقب. - احسب
S = (Sx, Sy)عن طريق الاستبدال في معادلة المنحنى واختيار قيمةSyعشوائية من النتائج المحتملة. - احسب
k = HKDF-SHA256((r * S)x)حيث(r * S)xهو إحداثيxلنتيجة ضرب المنحنى. - الحساب
nonce = LRx || LSx - الحساب
m = AES-EAX-256-DEC(k, nonce, m’, tag)
تغيير المعرّف بشكل دوري
يجب استخدام عنوان Bluetooth منخفض الطاقة (BLE) قابل للحل (RPA) أو غير قابل للحل (NRPA) للإعلان عن إطارات FHN. يجب توفّر ميزة RPA في أجهزة LE Audio (LEA) ويُنصح بها في الأجهزة الأخرى، باستثناء أجهزة التتبُّع التي لا تستخدم ميزة الإقران.
يجب أن يتم بالتزامن تدوير إعلان "الإقران السريع" وإعلان FHN وعناوين BLE المقابلة. يجب أن يتم التبديل كل 1024 ثانية في المتوسط. يجب أن يتم تحديد النقطة الدقيقة التي يبدأ فيها جهاز الإرسال بعرض المعرّف الجديد بشكل عشوائي ضمن النافذة.
إنّ الطريقة المقترَحة لتحديد وقت التدوير بشكل عشوائي هي ضبطه على وقت التدوير المتوقّع التالي (في حال عدم تطبيق التحديد العشوائي) بالإضافة إلى عامل وقت عشوائي موجب في النطاق من ثانية واحدة إلى 204 ثانية.
عندما يكون الجهاز في وضع الحماية من التتبّع غير المرغوب فيه، يجب أن يكون عنوان BLE لإعلان FHN ثابتًا، ولكن يجب أن يستمر تدوير RPA لإعلان FP غير القابل للاكتشاف (مثل Fast Pair). يمكن استخدام عناوين مختلفة للبروتوكولات المختلفة.
الاسترداد بعد انقطاع الكهرباء
يرتبط حلّ المعرّف المؤقت ارتباطًا وثيقًا بقيمة الساعة في وقت الإعلان، لذا من المهم أن يتمكّن مقدّم الخدمة من استرداد قيمة الساعة في حال انقطاع الطاقة. يُنصح بأن يكتب "موفّر الوقت" قيمة الساعة الحالية في الذاكرة غير المتطايرة مرة واحدة على الأقل يوميًا، وأن يتحقّق "موفّر الوقت" من الذاكرة غير المتطايرة عند بدء التشغيل لمعرفة ما إذا كانت هناك قيمة يمكن استخدامها لعملية التهيئة. يجب أن تنفّذ أدوات حلّ المعرّف المؤقت عملية الحلّ خلال فترة زمنية كافية للسماح بكل من الانحراف المعقول في الساعة واستعادة البيانات بعد انقطاع الطاقة.
مع ذلك، على مقدّمي الخدمات بذل كل الجهود الممكنة للحدّ من انحرافات الساعة، لأنّ نافذة الوقت المحدّدة للحلّ محدودة. يجب تنفيذ طريقة واحدة على الأقل لمزامنة الساعة (إطارات الإقران السريع غير القابلة للاكتشاف أو تنفيذ دفق الرسائل).
إرشادات تنفيذ ميزة "الإقران السريع"
يصف هذا القسم الجوانب الخاصة بتنفيذ ميزة "الإقران السريع" على مقدّمي الخدمات الذين يتيحون استخدام FHN.
الإرشادات الخاصة بأجهزة تتبُّع الموقع الجغرافي
- إذا تم إقران موفّر الخدمة، ولكن لم يتم توفير ميزة "العثور على هاتفي" خلال 5 دقائق (أو إذا تم تطبيق تحديث عبر الأثير أثناء إقران الجهاز ولكن لم يتم توفير ميزة "العثور على هاتفي")، على موفّر الخدمة العودة إلى إعداداته الأصلية ومحو مفاتيح الحساب المخزّنة.
- بعد إقران مقدّم الخدمة، يجب ألا يغيّر عنوان MAC الخاص به إلى أن يتم توفير FHN أو إلى أن تمر 5 دقائق.
- في حال محو مفتاح الهوية المؤقتة من الجهاز، يجب إعادة ضبط الجهاز على الإعدادات الأصلية ومحو مفاتيح الحساب المخزّنة أيضًا.
- على مقدّم الخدمة رفض محاولات الإقران العادية عبر البلوتوث وقبول الإقران عبر Fast Pair فقط.
- يجب أن يوفّر مقدّم الخدمة آلية تتيح للمستخدمين إيقاف عرض الإعلانات مؤقتًا بدون إعادة ضبط الجهاز على الإعدادات الأصلية (على سبيل المثال، الضغط على مجموعة من الأزرار).
- بعد انقطاع الطاقة، يجب أن يعلن الجهاز عن إطارات "الإقران السريع" غير القابلة للاكتشاف إلى أن يتم استدعاء قراءة مَعلمات إشارة البث في المرة التالية. يتيح ذلك لجهاز Seeker رصد الجهاز ومزامنة الساعة حتى في حال حدوث انحراف كبير في الساعة.
- عند الإعلان عن إطارات "الإقران السريع" غير القابلة للاكتشاف، يجب عدم تفعيل مؤشرات واجهة المستخدم.
- يجب عدم الإعلان عن إطارات Fast Pair القابلة للاكتشاف أثناء توفير Provider لشبكة FHN.
- يجب ألا يعرض الموفّر أي معلومات تحدِّد الهوية بطريقة غير مصادَق عليها (مثل الأسماء أو المعرّفات).
الإرشادات الخاصة بالأجهزة التي تتضمّن تقنية Bluetooth Classic
يوضّح هذا القسم الجوانب الخاصة بأجهزة البلوتوث الكلاسيكية التي تتوافق مع FHN.
توفير المتطلبات اللازمة للأجهزة المقترنة مسبقًا باستخدام ميزة "العثور على هاتفي"
لا يتم توفير خدمة "العثور على هاتفي" دائمًا عند إقران الهاتف بجهاز التتبّع، ولكن بعد فترة من ذلك. في هذه الحالة، قد لا يكون لدى "المزوّد" عنوان MAC حديث لبروتوكول البلوتوث المنخفض الطاقة (BLE) المطلوب لإنشاء اتصال GATT. يجب أن يتيح "مقدّم الخدمة" طريقة واحدة على الأقل من الطرق التالية التي يمكن من خلالها أن يحصل "الباحث" على عنوان BLE الخاص به أثناء إقرانه:
- يمكن للموفّر الإعلان بشكل دوري عن بيانات حساب Fast Pair
التي تتيح للباحث العثور على عنوان البلوتوث المنخفض الطاقة (BLE) من خلال عملية بحث عن أجهزة البلوتوث المنخفض الطاقة.
هذا الأسلوب مناسب لمقدّمي الخدمات الذين لا ينفّذون بث الرسائل. - يمكن لموفّر الخدمة تقديم هذه البيانات من خلال دفق رسائل ميزة "الإقران السريع" عبر البلوتوث الكلاسيكي.
هذا الأسلوب مناسب لمقدّمي الخدمات الذين لا يعرضون إطارات Fast Pair أثناء الاتصال بجهاز الباحث عبر البلوتوث.
يؤدي توفير كلا الطريقتين إلى زيادة فرص إمكانية المستخدم توفير الجهاز لشبكة FHN.
ساحة رسائل ميزة "الإقران السريع"
يمكن للموفّر تنفيذ دفق رسائل "الإقران السريع" واستخدامه لإعلام الباحث بمعلومات الجهاز. يتيح تنفيذ ساحة مشاركات الرسائل استخدام ميزات معيّنة كما هو موضّح في هذا القسم.
على موفّر المحتوى إرسال رسائل معلومات الجهاز مرة واحدة في كل مرة يتم فيها إنشاء "دفق الرسائل".
إصدار البرنامج الثابت (رمز معلومات الجهاز 0x09) وإمكانية التتبُّع
عندما يضيف تحديث البرنامج الثابت ميزة "العثور على الأجهزة المفقودة" إلى "موفّر الخدمة"، يمكن لجهاز "الباحث" المتصل إعلام المستخدم بذلك واقتراح توفيرها. وفي حال عدم توفّرها، على المستخدم الانتقال إلى قائمة أجهزة Bluetooth يدويًا لبدء عملية إعداد ميزة "العثور على هاتفي".
للسماح بذلك، على مقدّم الخدمة استخدام السمة "إصدار البرنامج الثابت" (الرمز 0x09) للإبلاغ عن قيمة سلسلة تمثّل إصدار البرنامج الثابت. بالإضافة إلى ذلك، يجب أن يتيح مقدّم الخدمة البروتوكول الذي يتيح للمستخدم معرفة تغييرات الإمكانات الناتجة عن تحديثات البرامج الثابتة.
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | حدث معلومات الجهاز | 0x03 |
| 1 | uint8 | إصدار البرامج الثابتة | 0x09 |
| من 2 إلى 3 | uint16 | طول البيانات الإضافية | يختلف |
| var | مصفوفة بايت | سلسلة الإصدار | يختلف |
الجدول 18: حدث معلومات الجهاز: إصدار البرامج الثابتة المعدَّل.
عند تلقّي طلب تعديل الإمكانية (0x0601)، إذا كان مقدّم الخدمة قد فعّل إمكانية تتبُّع FHN، عليه الردّ كما هو موضّح في الجدول 12.
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | حدث مزامنة إمكانات الجهاز | 0x06 |
| 1 | uint8 | تتبُّع FHN | 0x03 |
| من 2 إلى 3 | uint16 | طول البيانات الإضافية | 0x0007 |
| 4 | uint8 | حالة توفير المتطلبات اللازمة في FHN | 0x00 إذا لم يتم توفيرها، و0x01 إذا تم توفيرها من خلال أي حساب |
| 5 - 10 | مصفوفة بايت | عنوان MAC الحالي للجهاز على شبكة BLE | يختلف |
الجدول 19: حدث مزامنة إمكانات الجهاز: تمت إضافة إمكانية التتبُّع.
المعرّف المؤقت الحالي (رمز معلومات الجهاز 0x0B)
يمكن لموفّر الخدمة استخدام المعرّف المؤقت الحالي (الرمز 0x0B) لإرسال قيمة المعرّف المؤقت الحالي والساعة عند إعداد موفّر الخدمة لاستخدام ميزة "البحث عن الأجهزة القريبة"، وذلك لمزامنة جهاز الباحث في حال حدوث اختلاف في التوقيت (على سبيل المثال، بسبب استنزاف البطارية). بخلاف ذلك، يبدأ جهاز البحث اتصالاً أكثر تكلفة وأقل موثوقية لهذا الغرض.
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | حدث معلومات الجهاز | 0x03 |
| 1 | uint8 | المعرّف المؤقت الحالي | 0x0B |
| من 2 إلى 3 | uint16 | طول البيانات الإضافية | 0x0018 أو 0x0024 |
| 4 - 7 | مصفوفة بايت | قيمة الساعة | مثال: 0x13F9EA80 |
| 8 - 19 أو 31 | مصفوفة بايت | معرّف شريحة SIM المضمّنة الحالي | مثال: 0x1122334455667788990011223344556677889900 |
الجدول 20: حدث معلومات الجهاز: مزامنة الساعة
إعادة الضبط على الإعدادات الأصلية
بالنسبة إلى الأجهزة التي تتيح إعادة الضبط على الإعدادات الأصلية، في حال إجراء عملية إعادة ضبط على الإعدادات الأصلية، على "موفّر الخدمة" التوقّف عن إرسال إشارات البلوتوث ومحو مفتاح الهوية المؤقت وجميع مفاتيح الحسابات المخزّنة، بما في ذلك مفتاح حساب المالك.
بعد إعادة الضبط على الإعدادات الأصلية (إما يدويًا أو آليًا)، يجب ألا يبدأ "مقدّم الخدمة" الإعلان عن ميزة Fast Pair على الفور، وذلك لمنع بدء عملية الإقران مباشرةً بعد أن يحذف المستخدم الجهاز.
منع التتبُّع غير المرغوب فيه
يجب أن تستوفي أجهزة FHN المعتمَدة أيضًا المتطلبات الواردة في الإصدار التنفيذي من المواصفات المتوافقة مع عدة منصات بشأن اكتشاف أجهزة التتبّع غير المرغوب فيها (DULT).
الإرشادات ذات الصلة الخاصة بـ FHN للامتثال لمواصفات DULT:
- يجب تسجيل أي جهاز متوافق مع ميزة "العثور على الأجهزة" في "وحدة تحكّم الأجهزة المجاورة"، وتفعيل إمكانية "العثور على الأجهزة".
- يجب أن يوفّر الجهاز خدمة وملف Accessory Non-Owner الشخصي المحدّدَين في إصدار التنفيذ من مواصفات DULT، بما في ذلك عمليات معلومات الجهاز الملحق وعناصر التحكّم غير التابعة للمالك.
- خلال فترة التوافق مع الإصدارات السابقة، كما هو محدّد في مواصفات DULT، لن تطرأ أي تغييرات على الإطار المُعلن عنه كما هو محدّد في هذا المستند.
- يتوافق "وضع الحماية من التتبّع غير المرغوب فيه" المحدّد في هذا المستند مع "الحالة المنفصلة" المحدّدة في مواصفات DULT.
- إرشادات تنفيذ رموز العمليات معلومات الملحقات:
- يجب أن تعرض الدالة Get_Product_Data معرّف الطراز الذي توفّره وحدة التحكّم، مع إضافة أصفار إلى اليسار ليتوافق مع متطلبات 8 بايت. على سبيل المثال، يتم عرض معرّف الطراز 0xFFFFFF على النحو التالي: 0x0000000000FFFFFF.
- يجب أن تتطابق Get_Manufacturer_Name وGet_Model_Name مع القيم المقدَّمة في وحدة التحكّم.
- يمكن أن تعرض Get_Accessory_Category القيمة العامة "جهاز تتبُّع الموقع الجغرافي" إذا لم تتطابق أي فئة أخرى بشكل أفضل مع نوع الجهاز.
- يجب أن تشير Get_Accessory_Capabilities إلى إمكانية الرنين بالإضافة إلى البحث عن معرّف BLE.
- يجب أن تعرض الدالة Get_Network_ID معرّف Google (0x02).
- إرشادات تنفيذ رمز العملية Get_Identifier:
- يجب أن تعرض العملية ردًا صالحًا لمدة 5 دقائق فقط بعد أن يفعّل المستخدم وضع "التعرّف" الذي يتطلّب الضغط على مجموعة من الأزرار. يجب أن يشير تنبيه مرئي أو صوتي إلى المستخدم بأنّ مقدّم الخدمة قد دخل في هذا الوضع. يجب تقديم التعليمات الخاصة بطراز الجهاز لتفعيل هذا الوضع إلى Google كشرط للحصول على شهادة الاعتماد، وذلك قبل 10 أيام على الأقل من أي تحديث أو تعديل على التعليمات.
- يتم إنشاء الرد على النحو التالي: أول 10 بايت من المعرّف المؤقت الحالي، يليه أول 8 بايت من
HMAC-SHA256(recovery key, the truncated current ephemeral identifier).
- إرشادات تنفيذ المعرّف عبر تقنية الاتصال القريب المدى (NFC):
- استخدِم
find-my.googleapis.com/lookupكعنوان URL. - استخدِم الردّ نفسه الذي تم إنشاؤه من أجل Get_Identifier، مع ترميزه بنظام الستة عشر، وذلك كقيمة للمَعلمة
e. - استخدِم الردّ نفسه الذي تم إنشاؤه للدالة Get_Product_Data، مع ترميزه بنظام الست عشري، وذلك كقيمة للمَعلمة
pid.
- استخدِم
- ويجب أن يتضمّن الجهاز أداة إصدار صوت وأن يتيح استخدام وظيفة الرنين. وفقًا لمواصفات DULT، يجب أن يصدر صانع الصوت صوتًا بمستوى صوت يبلغ 60 Phon كحد أدنى وفقًا لمعيار ISO 532-1:2017.
- إرشادات تنفيذ رمز العملية Sound_Start:
- يجب أن يؤدي الأمر إلى إصدار رنين في جميع المكوّنات المتاحة.
- يجب استخدام الحد الأقصى لمستوى الصوت المتاح.
- المدة المقترَحة للرنين هي 12 ثانية.
- يجب أن تتضمّن أجهزة التتبّع آلية تتيح للمستخدمين إيقاف الإعلانات مؤقتًا بدون إعادة ضبط الجهاز على الإعدادات الأصلية (على سبيل المثال، الضغط على مجموعة من الأزرار).
- يجب توثيق تعليمات الإيقاف في عنوان URL متاح للجميع وتقديمها إلى Google كشرط للحصول على شهادة الاعتماد، وذلك قبل 10 أيام على الأقل من أي تعديل أو تغيير في التعليمات.
- يجب أن يتيح عنوان URL إمكانية الأقلمة. استنادًا إلى العميل، سيتم توفير اللغة إما كمعلَمة طلب بحث ("hl=en") أو باستخدام عنوان HTTP "accept-language".
إرشادات البروتوكول القابل للتبديل
- يجب استخدام بروتوكول واحد فقط في كل مرة. تأكَّد من عدم إمكانية تشغيل أكثر من شبكة واحدة على الجهاز في الوقت نفسه. هذا الشرط مطلوب لضمان عدم الخلط بين بيانات المستخدمين الحسّاسة وبروتوكولات مختلفة.
- يُقترح تضمين عملية إعادة ضبط الجهاز على الإعدادات الأصلية في الجهاز، ما يتيح للمستخدم إعادة إعداد الجهاز باستخدام شبكة مختلفة.
- يجب أن تكون عملية تحديث الجهاز إلى شبكة ما سهلة الاستخدام وعادلة بين الشبكات. يجب أن يتمكّن المستخدم من اختيار الشبكة التي يريد استخدامها بدون تفضيل إحدى الشبكات على الأخرى. يجب أن يوافق فريق Google على هذا المسار.
تحديثات البرامج الثابتة
يجب أن يدير الشريك عملية توزيع التحديثات عبر الأثير باستخدام سير عمل التطبيق المتوافق مع الأجهزة الجوّالة أو تطبيق الويب الخاص به.
تتيح ميزة "الإقران السريع" إرسال إشعارات إلى المستخدم لإعلامه بتوفّر تحديثات عبر الأثير. لاستخدام هذه الآلية، يجب اتّباع ما يلي:
- يجب تعديل أحدث إصدار من البرامج الثابتة في "وحدة تحكّم الأجهزة المجاورة".
- يجب ضبط تطبيق مصاحب في "وحدة تحكّم الأجهزة المجاورة". يجب أن يتوافق مع غرض تحديث البرامج الثابتة.
- على مقدّم الخدمة تنفيذ سمة GATT مراجعة البرامج الثابتة.
لمنع التتبُّع، يجب حظر الوصول إلى سمة مراجعة البرامج الثابتة. سيقرأ تطبيق Seeker أولاً حالة التوفير ويقدّم مفتاح مصادقة، كما هو محدّد في هذه المواصفات، ولن يقرأ مراجعة البرامج الثابتة إلا بعد ذلك. وسيتم ذلك عبر الاتصال نفسه. إذا تمت محاولة قراءة مراجعة البرنامج الثابت، ولم يتم ربط الجهاز الموفِّر أو لم يتم إكمال عملية مصادقة بنجاح عبر الاتصال نفسه، يجب أن يعرض الجهاز الموفِّر خطأ غير مصادق عليه.
التوافق
تتطلّب شبكة "مركز العثور" تفعيل خدمات الموقع الجغرافي والبلوتوث. ويجب توفُّر اتصال شبكة جوّال أو اتصال إنترنت. التطبيق متاح لأجهزة Android 9 والإصدارات الأحدث وفي بُلدان محدَّدة وللمستخدمين المؤهلين حسب الفئة العمرية.
سجلّ التغييرات
| إصدار FHN | التاريخ | تعليق |
|---|---|---|
| v1 | الإصدار الأوّلي من مواصفات FHN لاستخدامها قبل إطلاقها | |
| v1.1 | Feb 2023 |
|
| v1.2 | أبريل 2023 |
|
| v1.3 | ديسمبر 2023 |
|