v1.3
يحدّد مواصفات ملحق "شبكة مركز العثور" (FHN) طريقة مشفّرة تمامًا لتتبُّع أجهزة البلوتوث المنخفض الطاقة (BLE) التي ترسل إشارات. توضّح هذه الصفحة أنّ ميزة "البحث عن الأجهزة المفقودة" هي إضافة إلى مواصفات الإقران السريع. على مقدّمي الخدمات تفعيل هذا الامتداد إذا كانت لديهم أجهزة متوافقة مع FHN ويريدون تفعيل ميزة تتبُّع الموقع الجغرافي لهذه الأجهزة.
مواصفات GATT
يجب إضافة سمة عامة إضافية (GATT) إلى خدمة الإقران السريع مع الدلالات التالية:
| سمة خدمة "الإقران السريع" | مشفّر | الأذونات | معرِّف فريد عالمي (UUID) |
|---|---|---|---|
| إجراءات Beacon | لا | القراءة والكتابة وإرسال الإشعارات | FE2C1238-8366-4814-8EB0-01DE32100BEA |
الجدول 1: خصائص خدمة "الإقران السريع" لشبكة FHN
المصادقة
يتم تنفيذ العمليات التي يتطلبها هذا الامتداد كعملية كتابة، ويتم تأمينها من خلال آلية طلب/استجابة. قبل تنفيذ أي عملية، من المتوقّع أن ينفّذ الباحث عملية قراءة من السمة في الجدول 1، ما يؤدي إلى إنشاء مخزن مؤقت بالتنسيق التالي:
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | رقم الإصدار الرئيسي للبروتوكول | 0x01 |
| 1 - 8 | مصفوفة بايت | قيمة عشوائية تُستخدَم لمرة واحدة | تختلف |
يجب أن تؤدي كل عملية قراءة إلى رقم عشوائي مختلف، ويجب أن يكون الرقم العشوائي الواحد صالحًا لعملية واحدة فقط. يجب إبطال الرقم العشوائي حتى إذا تعذّر إتمام العملية.
يحسب جهاز Seeker بعد ذلك مفتاح مصادقة صالحًا لمرة واحدة لاستخدامه في طلب كتابة لاحق. ويتم حساب مفتاح المصادقة كما هو موضح في الجداول من 2 إلى 5. واستنادًا إلى العملية المطلوبة، يثبت جهاز Seeker معرفته بمفتاح واحد أو أكثر من المفاتيح التالية:
مفتاح الحساب: مفتاح حساب "الإقران السريع" الذي يبلغ حجمه 16 بايت، كما هو محدّد في مواصفات "الإقران السريع".
مفتاح حساب المالك: يختار مقدّم الخدمة أحد مفاتيح الحسابات الحالية ليكون مفتاح حساب المالك في المرة الأولى التي يصل فيها طالب الخدمة إلى سمة "إجراءات Beacon". ولا يمكن تغيير مفتاح حساب المالك الذي تم اختياره إلا بعد إعادة مقدّم الخدمة إلى إعدادات المصنع. يجب ألا يزيل مقدّم الخدمة مفتاح حساب المالك عندما تنتهي خانات مفاتيح الحسابات المجانية.
تختار الأجهزة التي تتوافق مع ميزة "العثور على الأجهزة غير المتصلة بالإنترنت" عند إقرانها للمرة الأولى (أو تتوافق معها عند إقرانها بعد إعادة الضبط على الإعدادات الأصلية) مفتاح الحساب الأول، لأنّ هذا المفتاح هو مفتاح الحساب الوحيد المتوفّر عندما يقرأ جهاز الباحث حالة الإعداد أثناء عملية الإقران.
يمكن لمقدّمي الخدمات الذين يتيحون ميزة "العثور على الأجهزة غير المتصلة بالإنترنت" بعد إقران الأجهزة (على سبيل المثال، من خلال تحديث البرامج الثابتة) اختيار أي مفتاح حساب حالي. ومن المنطقي اختيار مفتاح الحساب الأول الذي يُستخدَم لقراءة حالة الإعداد من خاصية إجراءات جهاز التتبّع بعد تحديث البرامج الثابتة، على افتراض أنّ المستخدم الذي أجرى التحديث هو المالك الحالي لمقدّم الخدمة.
مفتاح الهوية المؤقتة (EIK): هو مفتاح مكوّن من 32 بايت يختاره "الباحث" عشوائيًا عند تنفيذ عملية توفير المتطلبات اللازمة في FHN. يُستخدَم هذا المفتاح لاشتقاق مفاتيح تشفيرية تُستخدَم في التشفير التام بين الأطراف لتقارير المواقع الجغرافية. ولا يكشف Seeker عن هذا المعرّف لنظام الخلفية.
مفتاح الاسترداد: يتم تعريفه على أنّه
SHA256(ephemeral identity key || 0x01)، يتم اقتطاعه إلى أول 8 بايت. يتم تخزين المفتاح في الواجهة الخلفية، ويمكن لجهاز الباحث استخدامه لاسترداد مفتاح EIK، شرط أن يوافق المستخدم على ذلك من خلال الضغط على زر على الجهاز.مفتاح الرنين: يتم تعريفه على أنّه
SHA256(ephemeral identity key || 0x02)، ويتم اقتطاعه إلى أول 8 بايت. يتم تخزين المفتاح في الخلفية، ولا يمكن لمستخدم تطبيق "البحث عن الأجهزة" استخدامه إلا لإصدار رنين على الجهاز.مفتاح الحماية من التتبّع غير المرغوب فيه: يتم تعريفه على أنّه
SHA256(ephemeral identity key || 0x03)، ويتم اقتطاعه إلى أول 8 بايت. يتم تخزين المفتاح في الخلفية، ولا يمكن لمستخدم Seeker استخدامه إلا لتفعيل وضع الحماية من التتبُّع غير المرغوب فيه.
العمليات
يتم عرض تنسيق البيانات المكتوبة في السمة في الجداول من 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 | معرّف البيانات <0x0A |
|
| 1 | uint8 | طول البيانات | تختلف |
| من 2 إلى 9 | مصفوفة بايت | المصادقة | تفاصيل كل عملية |
| 10 - var < | مصفوفة بايت | البيانات الإضافية |
|
الجدول 6: استجابة خدمة Beacon
يسرد الجدول 7 رموز أخطاء GATT المحتملة التي تعرضها العمليات.
| الرمز | الوصف | ملاحظات |
|---|---|---|
| 0x80 | عدم الحصول على المصادقة | يتم عرض هذا الرمز استجابةً لطلب كتابة عند تعذُّر المصادقة (بما في ذلك الحالة التي تم فيها استخدام رقم خاص قديم). |
| 0x81 | القيمة غير صالحة. | يتم عرض هذا الخطأ عند تقديم أي قيمة غير صالحة أو إذا كان عدد البايتات التي تم تلقّيها غير متوقّع. |
| 0x82 | عدم توفّر موافقة المستخدم | يتم عرض هذا الرمز استجابةً لطلب كتابة يتضمّن معرّف البيانات 0x04: قراءة مفتاح الهوية المؤقتة بموافقة المستخدم عندما لا يكون الجهاز في وضع الاقتران. |
الجدول 7: رموز خطأ GATT
قراءة مَعلمة الإشارة
يمكن لجهاز Seeker أن يطلب من جهاز Provider معلَمات الإشارة عن طريق تنفيذ عملية كتابة للخاصية التي تتضمّن طلبًا من الجدول 2 مع معرّف البيانات 0x00. يتحقّق جهاز Provider من أنّ مفتاح المصادقة لمرة واحدة المقدَّم يطابق أيًا من مفاتيح الحساب المخزَّنة على الجهاز.
إذا تعذّر إثبات الملكية، يعرض الموفّر خطأً بشأن عدم المصادقة.
عند النجاح، يرسل مقدّم الخدمة إشعارًا يتضمّن استجابة من الجدول 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).
قراءة حالة توفير المنارة
يمكن لـ "الباحث" الاستعلام من "الموفّر" عن حالة توفير إشارة البلوتوث من خلال تنفيذ عملية كتابة للخاصية التي تتضمّن طلبًا من الجدول 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: Started أو 0x04: Stopped (طلب GATT)، على التوالي. ويتجاوز هذا الطلب مَعلمات الحالة الحالية، ما يتيح إطالة مدة الرنين.
إذا كان لدى مقدّم الخدمة زر مادي (أو تم تفعيل ميزة الاستشعار باللمس)، يجب أن يؤدي الضغط على هذا الزر إلى إيقاف وظيفة الرنين إذا تم الضغط عليه أثناء نشاط الرنين.
الحصول على حالة رنين جهاز التتبُّع
للحصول على حالة الرنين الخاصة بجهاز التتبّع، ينفّذ جهاز Seeker عملية كتابة للخاصية، تتألف من طلب من الجدول 4 مع رقم تعريف البيانات 0x06. ويتأكّد جهاز Provider من أنّ مفتاح المصادقة لمرة واحدة المقدَّم يطابق مفتاح الرنين.
إذا لم يتم توفير "مقدّم الخدمة" كإشارة 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 | علامات التحكّم <0x0A |
لا تكون العلامات سارية إلا إلى أن يتم إيقاف وضع الحماية من التتبّع غير المرغوب فيه. |
يتأكّد مقدّم الخدمة من أنّ مفتاح المصادقة لمرة واحدة الذي تم تقديمه يطابق مفتاح حماية التتبّع غير المرغوب فيه. وإذا لم يتم توفير مقدّم الخدمة كإشارة 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 العثور عليه.
يرسل جهاز Initiator رسالة طلب إمكانية تحديد المدى إلى جهاز Responder، حيث سيتم إدراج تقنيات تحديد المدى التي يريد معرفتها من جهاز Responder. سيردّ جهاز Responder بإشعار "استجابة إمكانية تحديد المدى" الذي يتضمّن معلومات حول تقنيات تحديد المدى المتوافقة وإمكاناتها. سيضمّن جهاز 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 | مصفوفة بايت | البيانات الإضافية | رسالة Stop Ranging على النحو المحدّد في مواصفات تحديد المدى: تسلسل الرسائل والحِمل خارج النطاق (كل من العنوان والحِمل) |
الجدول 13: إيقاف تحديد المدى
إيقاف عملية الرد على تحديد المدى
يحدّد الجدول 14 رسالة "إيقاف تحديد المدى".
| Octet | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | معرّف البيانات | 0x0D - استجابة إيقاف تحديد المدى |
| 1 | uint8 | طول البيانات | يختلف |
| 2 | مصفوفة بايت | مفتاح مصادقة يُستخدَم لمرة واحدة | أول 8 بايت من HMAC-SHA256(مفتاح الحساب، رقم الإصدار الرئيسي للبروتوكول || آخر رقم عشوائي تمّت قراءته من السمة || معرّف البيانات || طول البيانات || بيانات إضافية || 0x01). |
| 10 | مصفوفة بايت | البيانات الإضافية | رسالة إيقاف تحديد المدى على النحو المحدّد في مواصفات تحديد المدى: تسلسل الرسائل والحِمل خارج النطاق (كل من العنوان والحِمل) |
الجدول 14: الردّ على طلب إيقاف العرض
الحماية من التتبُّع غير المرغوب فيه باستخدام ميزة "البحث الدقيق"
عند تفعيل وضع "الحماية من التتبّع غير المرغوب فيه"، كما هو موضّح في قسم "الحماية من التتبّع غير المرغوب فيه"، يسري الإجراء نفسه المطبّق على تخطّي عمليات التحقّق من المصادقة للرسائل التي تصدر رنينًا على جميع رسائل "العثور الدقيق" المحدّدة في هذا المستند للأجهزة التي تريد إتاحة هذه الميزة.
تفاصيل تكنولوجيا تحديد المدى في ميزة "العثور بدقة"
يحتوي هذا القسم على تفاصيل خاصة بتكنولوجيا تحديد المدى.
تفاصيل النطاق الفائق العرض (UWB)
تفاصيل خاصة بتقنية النطاق الفائق العرض (UWB)
مستوى ميزة "العثور بدقة"
يمكن أن تتضمّن جلسات "تحديد الموقع بدقة" التي تستخدم تكنولوجيا النطاق الفائق العرض (UWB) لتحديد المسافة معلومات عن المسافة والاتجاه. يجب أن يكون الفاصل الزمني لتحديد المدى 240 ملي ثانية على الأقل، ويُفضّل أن يكون 96 ملي ثانية للحصول على أفضل إرشادات.
معرّفات الإعدادات
لا تحتوي بيانات الإعدادات التي يتم تبادلها خارج النطاق لتقنية UWB على مجموعة كاملة من المَعلمات القابلة للإعداد التي تتطلّبها تقنية UWB لبدء جلسة تحديد المدى باستخدام تقنية UWB. يتم اختيار بعض المَعلمات ضمنيًا من خلال رقم تعريف الإعداد الذي تم اختياره.
كل رقم تعريف إعداد هو مجموعة من مَعلمات إعداد UWB المحدّدة مسبقًا والتي تم توثيقها�
بادئ التشغيل والمستجيب في النطاق الفائق العرض (UWB)
في ما يتعلّق بحالة استخدام ميزة "العثور بدقة"، سيكون الجهاز الذي تم تصنيفه على أنّه جهاز "البادئ" في هذا المستند هو جهاز "المستجيب" الذي يستخدم النطاق الفائق العرض، وسيكون الجهاز الذي تم تصنيفه على أنّه جهاز "المستجيب" في هذا المستند هو جهاز "البادئ" الذي يستخدم النطاق الفائق العرض. ويرجع ذلك إلى أنّ الجهاز الذي يبدأ عملية الاتصال عبر تكنولوجيا النطاق الفائق العرض (UWB) يستهلك طاقة أقل من الجهاز الذي يستجيب لها، وفي معظم الحالات، يكون الجهاز المستجيب عبارة عن جهاز طرفي مزوّد ببطارية محدودة.
وهذا يعني أنّ جهاز Responder يجب أن يشير إلى أنّه يتيح دور المبدئ في نطاق UWB في رسالة "استجابة إمكانية تحديد المدى".
مَعلمات أخرى ذات صلة بالنطاق الفائق العرض
- يجب أن تكون القناة 9 متاحة
- للحصول على إرشادات مثالية، يُنصح باستخدام فاصل زمني لتحديد المدى يبلغ 96 ملي ثانية، وإلا يجب توفير فاصل زمني يبلغ 240 ملي ثانية.
- ننصح باستخدام مدة فتحة تبلغ 1 ملي ثانية لتوفير شحن البطارية، ولكن يمكن أيضًا استخدام مدة تبلغ 2 ملي ثانية.
- يجب أن تكون شريحة النطاق الفائق العرض متوافقة مع الإصدار 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لنتيجة ضرب المنحنى. لم يتم تحديد قيمة Salt. - لنفترض أنّ
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) ويُنصح باستخدامه للأجهزة الأخرى، باستثناء علامات التتبّع التي لا تستخدم الربط.
يجب أن يتم تدوير إعلان Fast Pair وإعلان FHN وعناوين البلوتوث المنخفض الطاقة(BLE) المقابلة في الوقت نفسه، ويجب أن يتم التدوير كل 1024 ثانية في المتوسط، ويجب أن يتم تحديد النقطة الدقيقة التي يبدأ فيها جهاز الإرسال بعرض المعرّف الجديد بشكل عشوائي ضمن النافذة.
إنّ الطريقة المقترَحة لتحديد وقت التدوير بشكل عشوائي هي ضبطه على وقت التدوير المتوقّع التالي (في حال عدم تطبيق التحديد العشوائي) بالإضافة إلى عامل وقت عشوائي موجب في النطاق من ثانية واحدة إلى 204 ثانية.
عندما يكون الجهاز في وضع الحماية من التتبّع غير المرغوب فيه، يجب أن يكون عنوان البلوتوث المنخفض الطاقة (BLE) لإعلان FHN ثابتًا، ولكن يجب أن يستمرّ عنوان RPA للإعلان غير القابل للاكتشاف من خلال FP (مثل Fast Pair) في التغيير. ويُسمح باستخدام عناوين مختلفة للبروتوكولات المختلفة.
الاسترداد بعد انقطاع الكهرباء
يرتبط حلّ المعرّف المؤقت ارتباطًا وثيقًا بقيمة الساعة في وقت الإعلان، لذا من المهم أن يتمكّن مقدّم الخدمة من استرداد قيمة الساعة في حال انقطاع الطاقة. يُنصح بأن يكتب مقدّم الخدمة قيمة الساعة الحالية في الذاكرة غير المتطايرة مرة واحدة على الأقل يوميًا، وأن يتحقّق مقدّم الخدمة من الذاكرة غير المتطايرة عند بدء التشغيل لمعرفة ما إذا كانت هناك قيمة يمكن استخدامها لعملية التهيئة. ستنفّذ أدوات تحليل المعرّف المؤقت عملية التحليل خلال فترة زمنية كافية للسماح بكل من الانحراف المعقول في الساعة واستعادة البيانات بعد انقطاع الطاقة.
ومع ذلك، يجب أن يبذل مقدّمو الخدمات كل الجهود الممكنة للحدّ من الانحرافات في التوقيت، لأنّ نافذة الوقت المحدّدة للحلّ محدودة. يجب تنفيذ طريقة واحدة على الأقل إضافية لمزامنة الساعة (إطارات الإقران السريع غير القابلة للاكتشاف أو تنفيذ دفق الرسائل).
إرشادات تنفيذ ميزة "الإقران السريع"
يصف هذا القسم الجوانب الخاصة بتنفيذ ميزة "الإقران السريع" على مقدّمي الخدمات الذين يتيحون استخدام FHN.
الإرشادات الخاصة بأجهزة تتبُّع الموقع الجغرافي
- إذا تم إقران موفّر الخدمة، ولكن لم يتم توفير ميزة "العثور على هاتفي" خلال 5 دقائق (أو إذا تم تطبيق تحديث عبر الأثير أثناء إقران الجهاز ولكن لم يتم توفير ميزة "العثور على هاتفي")، على موفّر الخدمة العودة إلى إعداداته الأصلية ومحو مفاتيح الحساب المخزّنة.
- بعد إقران مقدّم الخدمة، يجب ألا يغيّر عنوان MAC الخاص به إلى أن يتم توفير FHN أو إلى أن تمر 5 دقائق.
- إذا تم محو مفتاح الهوية المؤقتة من الجهاز، يجب أن يعيد الجهاز ضبطه على الإعدادات الأصلية وأن يمحو مفاتيح الحساب المخزّنة أيضًا.
- على مقدّم الخدمة رفض محاولات الإقران العادية عبر البلوتوث وقبول الإقران عبر Fast Pair فقط.
- يجب أن يوفّر مقدّم الخدمة آلية تتيح للمستخدمين إيقاف عرض الإعلانات مؤقتًا بدون إعادة ضبط الجهاز على الإعدادات الأصلية (على سبيل المثال، الضغط على مجموعة من الأزرار).
- بعد انقطاع الطاقة، يجب أن يعلن الجهاز عن إطارات "الإقران السريع" غير القابلة للاكتشاف إلى أن يتم استدعاء قراءة مَعلمات إشارة البث في المرة التالية. يتيح ذلك لجهاز Seeker رصد الجهاز ومزامنة الساعة حتى في حال حدوث انحراف كبير في الساعة.
- عند الإعلان عن إطارات "الإقران السريع" غير القابلة للاكتشاف، يجب عدم تفعيل مؤشرات واجهة المستخدم.
- يجب عدم الإعلان عن إطارات الإقران السريع القابلة للاكتشاف أثناء توفير Provider لشبكة FHN.
- يجب ألا يعرض الموفّر أي معلومات تكشف الهوية بطريقة غير مصادَق عليها (مثل الأسماء أو المعرّفات).
الإرشادات الخاصة بالأجهزة التي تتضمّن تقنية Bluetooth Classic
يوضّح هذا القسم الجوانب الخاصة بأجهزة البلوتوث الكلاسيكية التي تتوافق مع FHN.
توفير المتطلبات اللازمة للأجهزة المقترنة مسبقًا في شبكة FHN
لا يتم توفير خدمة "العثور على هاتفي" دائمًا عند إقران الجهاز المفقود بالجهاز المساعد، ولكن بعد فترة. في هذه الحالة، قد لا يكون لدى "المزوّد" عنوان MAC حديث لبروتوكول البلوتوث المنخفض الطاقة (BLE) المطلوب لإنشاء اتصال GATT. يجب أن يتيح مقدّم الخدمة طريقة واحدة على الأقل من الطرق التالية للمستخدم للحصول على عنوان BLE الخاص بالجهاز بعد إقرانه:
- يمكن للموفّر الإعلان بشكل دوري عن بيانات حساب Fast Pair
التي تتيح للباحث العثور على عنوان البلوتوث المنخفض الطاقة (BLE) من خلال عملية بحث عن أجهزة البلوتوث المنخفض الطاقة.
هذا الأسلوب مناسب لمقدّمي الخدمات الذين لا ينفّذون بث الرسائل. - يمكن لموفّر الخدمة تقديم هذه البيانات من خلال دفق رسائل ميزة "الإقران السريع" عبر البلوتوث الكلاسيكي.
هذا الأسلوب مناسب لمقدّمي الخدمات الذين لا يعرضون إطارات الإقران السريع أثناء الاتصال بجهاز الباحث عبر البلوتوث.
يؤدي توفير كلا الطريقتين إلى زيادة فرص إمكانية المستخدم توفير الجهاز لاستخدام 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:
- يجب تسجيل أي جهاز متوافق مع ميزة "العثور على الأجهزة" في "وحدة تحكّم الأجهزة المجاورة"، وتفعيل إمكانية "العثور على الجهاز".
- يجب أن يتيح الجهاز خدمة "ملحق غير مملوك" وسمة محدّدة في إصدار التنفيذ من مواصفات 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 فون كحد أدنى وفقًا للمعيار ISO 532-1:2017.
- إرشادات تنفيذ رمز العملية Sound_Start:
- يجب أن يؤدي الأمر إلى إصدار رنين في جميع المكوّنات المتاحة.
- يجب استخدام الحد الأقصى لمستوى الصوت المتاح.
- المدة المقترَحة للرنين هي 12 ثانية.
- يجب أن تتضمّن أجهزة التتبّع آلية تتيح للمستخدمين إيقاف الإعلانات مؤقتًا بدون إعادة ضبط الجهاز على الإعدادات الأصلية (على سبيل المثال، الضغط على مجموعة من الأزرار).
- يجب توثيق تعليمات الإيقاف في عنوان URL متاح للجميع وتقديمها إلى Google كشرط للحصول على شهادة الاعتماد، وذلك قبل 10 أيام على الأقل من أي تعديل أو تغيير في التعليمات.
- يجب أن يتيح عنوان URL إمكانية تحديد اللغة. استنادًا إلى العميل، سيتم توفير اللغة إما كمعلَمة طلب بحث ("hl=en") أو باستخدام عنوان HTTP "accept-language".
إرشادات البروتوكول القابل للتبديل
- يجب استخدام بروتوكول واحد فقط في كل مرة، والتأكّد من عدم إمكانية تشغيل أكثر من شبكة واحدة على الجهاز في الوقت نفسه. هذا الشرط ضروري لضمان عدم اختلاط بيانات المستخدمين الحساسة بين البروتوكولات المختلفة.
- يُقترح تضمين عملية إعادة ضبط الجهاز على الإعدادات الأصلية في الجهاز، ما يتيح للمستخدم إعادة إعداد الجهاز باستخدام شبكة مختلفة.
- يجب أن تكون عملية تعديل الجهاز إلى شبكة سهلة الاستخدام وعادلة بين الشبكات. ويجب أن يتمكّن المستخدم من اختيار الشبكة التي يريد استخدامها بدون تفضيل إحدى الشبكات. ويجب أن يوافق فريق Google على هذه العملية.
تحديثات البرامج الثابتة
يجب أن يدير الشريك عملية توزيع التحديثات عبر الأثير باستخدام سير عمل التطبيق المتوافق مع الأجهزة الجوّالة أو تطبيق الويب الخاص به.
تتيح ميزة "الإقران السريع" إرسال إشعارات إلى المستخدم لإعلامه بتوفّر تحديثات عبر الأثير. لاستخدام هذه الآلية، يجب استيفاء الشروط التالية:
- يجب تعديل أحدث إصدار من البرامج الثابتة في "وحدة تحكّم الأجهزة المجاورة".
- يجب ضبط تطبيق مصاحب في "وحدة تحكّم الأجهزة المجاورة"، ويجب أن يتوافق مع هدف تحديث البرامج الثابتة.
- على مقدّم الخدمة تنفيذ سمة مراجعة البرامج الثابتة في GATT.
لمنع التتبُّع، يجب حظر الوصول إلى سمة مراجعة البرامج الثابتة. سيقرأ الباحث أولاً حالة التوفير ويقدّم مفتاح مصادقة، كما هو محدّد في هذا المواصفات، وبعد ذلك فقط سيقرأ مراجعة البرامج الثابتة. سيتم ذلك عبر الاتصال نفسه. إذا تمت محاولة قراءة مراجعة البرامج الثابتة، ولم يتم ربط الموفّر أو لم يتم إكمال عملية مصادقة بنجاح عبر الاتصال نفسه، يجب أن يعرض الموفّر خطأ غير مصادق عليه.
التوافق
تتطلّب شبكة "مركز العثور" تفعيل خدمات الموقع الجغرافي والبلوتوث. ويجب توفُّر اتصال شبكة جوّال أو اتصال إنترنت. التطبيق متاح لأجهزة Android 9 والإصدارات الأحدث وفي بُلدان محدَّدة وللمستخدمين المؤهلين حسب الفئة العمرية.
سجلّ التغييرات
| إصدار FHN | التاريخ | تعليق |
|---|---|---|
| v1 | الإصدار الأولي من مواصفات FHN لاستخدامها قبل إطلاقها | |
| v1.1 | Feb 2023 |
|
| v1.2 | أبريل 2023 |
|
| v1.3 | ديسمبر 2023 |
|