مواصفات ملحق شبكة "العثور على جهازي"

v1.3

تحدّد مواصفات ملحق شبكة "العثور على جهازي" (FMDN) أسلوبًا مشفّرًا تمامًا بين الأطراف لتتبُّع إشارات الأجهزة التي تتضمّن بلوتوث منخفض الطاقة (BLE). تصف هذه الصفحة FMDN كإضافة لمواصفات "الإقران السريع". على مقدّمي الخدمات تفعيل هذه الإضافة إذا كانت لديهم أجهزة متوافقة مع FMDN ويرغبون في تفعيل ميزة تتبّع الموقع الجغرافي لتلك الأجهزة.

مواصفات GATT

يجب إضافة خاصية إضافية من السمات العامة (GATT) إلى خدمة "الإقران السريع" مع الدلالات التالية:

سمة خدمة الإقران السريع مشفّر الأذونات معرِّف فريد عالمي (UUID)
إجراءات الإشارات لا القراءة والكتابة والإشعار FE2C1238-8366-4814-8EB0-01DE32100BEA

الجدول 1: خصائص خدمة الإقران السريع لمعيار FMDN.

المصادقة

يتم تنفيذ العمليات المطلوبة من هذه الإضافة كعملية كتابة، ويتم تأمينها بواسطة آلية الاستجابة للتحدي. قبل تنفيذ أي عملية، يُتوقع من "الباحث" تنفيذ عملية قراءة من الخاصية الموجودة في الجدول 1، والتي ينتج عنها مورد احتياطي بالتنسيق التالي:

ثُمانِي واحد نوع البيانات الوصف القيمة
0 uint8 رقم الإصدار الرئيسي للبروتوكول 0 × 01
من 1 إلى 8 صفيفة بايت رقم هاتف عشوائي لمرة واحدة تختلف

يجب أن ينتج عن كل عملية قراءة رقم nonce مختلف، ويجب أن تكون قيمة nonce واحدة صالحة لعملية واحدة فقط. يجب إلغاء الخطأ الخاص بك حتى إذا فشلت العملية.

بعد ذلك يحسب Seeker مفتاح مصادقة لمرة واحدة لاستخدامه في طلب كتابة لاحق. يتم حساب مفتاح المصادقة كما هو موضح في الجداول من 2 إلى 5. بناءً على العملية المطلوبة، يثبت الباحث معرفته بواحد أو أكثر من المفاتيح التالية:

العمليات

يتم إعطاء تنسيق البيانات المكتوبة للخاصية في الجداول من 2 إلى 5. وتتم مناقشة كل عملية من العمليات بمزيد من التفصيل لاحقًا في هذا القسم.

ثُمانِي واحد نوع البيانات الوصف القيمة
0 uint8 رقم تعريف البيانات
  • 0x00: قراءة معلمات الإشارة
  • 0x01: قراءة حالة توفير المتطلبات اللازمة
  • 0x02: ضبط مفتاح الهوية المؤقت
  • 0x03: محو مفتاح الهوية المؤقت
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 - فار صفيفة بايت البيانات الإضافية
  • 0x00: لا ينطبق
  • 0x01: لا ينطبق
  • 0x02: 32 بايت التي تمثل مفتاح الهوية المؤقت، AES-ECB-128 المشفر باستخدام مفتاح الحساب. إذا كان موفّر الخدمة لديه مجموعة مفاتيح هوية مؤقتة، أرسِل أيضًا أول 8 وحدات بايت من SHA256(current ephemeral identity key || the last nonce read from the characteristic)
  • 0x03: أول 8 بايت من SHA256(ephemeral identity key || the last nonce read from the characteristic)

الجدول 2: طلب توفير "الإشارة".

ثُمانِي واحد نوع البيانات الوصف القيمة
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: طلب استرداد مفتاح توفير الإشارة

ثُمانِي واحد نوع البيانات الوصف القيمة
0 uint8 رقم تعريف البيانات
  • 0x05: حلقة
  • 0x06: قراءة حالة الرنين
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 - فار صفيفة بايت البيانات الإضافية
  • 0x05: 4 بايت تشير إلى حالة الرنين ومدة الرنين ومستوى صوت الرنين.
  • 0x06: لا ينطبق

الجدول 4: طلب رنين.

ثُمانِي واحد نوع البيانات الوصف القيمة
0 uint8 رقم تعريف البيانات
  • 0x07: تفعيل وضع الحماية من التتبُّع غير المرغوب فيه
  • 0x08: إيقاف وضع الحماية من التتبُّع غير المرغوب فيه
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 - فار صفيفة بايت البيانات الإضافية
  • 0x07: 1 بايت من علامات التحكّم (اختياري)
  • 0x08: أول 8 بايت من SHA256(ephemeral identity key || the last nonce read from the characteristic)

الجدول 5: طلب الحماية من التتبُّع غير المرغوب فيه

تؤدي عمليات الكتابة الناجحة إلى تشغيل الإشعارات كما هو موضح في الجدول 6.

يجب إرسال الإشعارات التي تحتوي على معرِّف بيانات بخلاف 0x05: تغيير حالة الرنين قبل اكتمال معاملة الكتابة التي تؤدي إلى ظهور الإشعار، أي قبل إرسال استجابة PDU لطلب الكتابة.

ثُمانِي واحد نوع البيانات الوصف القيمة
0 uint8 رقم تعريف البيانات
  • 0x00: قراءة معلمات الإشارة
  • 0x01: قراءة حالة توفير المتطلبات اللازمة
  • 0x02: ضبط مفتاح الهوية المؤقت
  • 0x03: محو مفتاح الهوية المؤقت
  • 0x04: قراءة مفتاح الهوية المؤقت مع موافقة المستخدم
  • 0x05: تغيير حالة الرنين
  • 0x06: قراءة حالة الرنين
  • 0x07: تفعيل وضع الحماية من التتبُّع غير المرغوب فيه
  • 0x08: إيقاف وضع الحماية من التتبُّع غير المرغوب فيه
1 uint8 طول البيانات تختلف
من 2 إلى 9 صفيفة بايت المصادقة التفاصيل لكل عملية
10 - فار صفيفة بايت البيانات الإضافية
  • 0x00: 8 بايت تشير إلى طاقة الإرسال وقيمة الساعة وطريقة التشفير وقدرات الرنين، تشفير AES-ECB-128 باستخدام مفتاح الحساب (بدون تغطية كاملة)
  • 0x01: وحدة بايت واحدة تشير إلى حالة توفير المتطلبات اللازمة، متبوعًا بمعرّف الملف الشخصي المؤقت الحالي (20 أو 32 بايت) إن أمكن
  • 0x04: 32 بايت لمفتاح الهوية المؤقت، AES-ECB-128 الذي تم تشفيره باستخدام مفتاح الحساب
  • 0x05: 4 بايت تشير إلى الحالة الجديدة ومشغّل التغيير
  • 0x06: 3 بايت تشير إلى أنّ المكوّنات التي تصدر رنينًا بشكل نشط وعدد الديسي ثانية المتبقية للرنين
  • تستخدم أرقام تعريف البيانات الأخرى بيانات إضافية فارغة.

الجدول 6: استجابة خدمة "الإشارة".

يسرد الجدول 7 رموز خطأ GATT المحتملة التي تعرضها العمليات.

الرمز الوصف Notes
0×80 عدم الحصول على المصادقة يُعرَض استجابةً لطلب كتابة عند تعذُّر المصادقة (بما في ذلك الحالة التي تم فيها استخدام رقم خاص قديم).
0x81 القيمة غير صالحة. يتم عرضه عندما يتم تقديم أي قيمة غير صالحة أو عندما تحتوي البيانات التي تم استلامها على عدد غير متوقع من وحدات البايت.
0x82 بدون موافقة المستخدم يتم عرضه استجابةً لطلب كتابة يتضمّن معرّف البيانات 0x04: قراءة مفتاح الهوية المؤقت مع موافقة المستخدم عندما لا يكون الجهاز في وضع الإقران.

الجدول 7: رموز خطأ GATT

قراءة معلمة المرشد

يمكن للباحث الاستعلام عن معاملات المرشد عن طريق إجراء عملية كتابة للخاصية التي تتكون من طلب من الجدول 2 بمعرف البيانات 0x00. يتحقّق موفّر الخدمة من أنّ مفتاح المصادقة المُقدَّم لمرة واحدة يتطابق مع أي من مفاتيح الحساب المخزَّنة على الجهاز.

إذا تعذّر إثبات الملكية، يعرض الموفّر رسالة خطأ لم تتم مصادقتها.

عند النجاح، يرسل الموفر إشعارًا باستجابة من الجدول 6 بمعرف البيانات 0x00. ينشئ الموفّر شريحة البيانات على النحو التالي:

ثُمانِي واحد نوع البيانات الوصف القيمة
0 uint8 معايرة الطاقة الطاقة التي تمت معايرتها عند استقبالها عند 0 م (قيمة في النطاق [-100، 20]). يتم تمثيله كعدد صحيح موقَّع بدقة 1 ديسيبل ملي واط.
1 - 4 uint32 قيمة الساعة قيمة الساعة الحالية بالثواني (القيمة النهائية الكبيرة).
5 uint8 تحديد المنحنى المنحنى الإهليلجي المستخدَم للتشفير:
  • 0x00 (الخيار التلقائي): SECP160R1
  • 0x01: SECP256R1 (يتطلب إعلانات موسّعة)
6 uint8 المكوّنات عدد المكوّنات التي يمكن إصدار رنين منها:
  • 0x00: يشير إلى عدم قدرة الجهاز على إصدار رنين.
  • 0x01: يشير إلى قدرة مكون واحد فقط على الرنين.
  • 0x02: يشير إلى أنّ السمّاعتَين اليسرى واليمنى يمكنهما الرنين بشكل مستقلّ.
  • 0x03: يشير إلى أنّ ثلاثة مكوّنات، وهي السمّاعتان اليسرى واليمنى والحافظة، قادرة على الرنين بشكل مستقل.
7 uint8 إمكانات الرنين الخيارات المتاحة هي:
  • 0x00: اختيار مستوى صوت الرنين غير متاح.
  • 0x01: يتوفر تحديد مستوى صوت الرنين. وفي حال ضبط هذه السياسة، على مقدّم الخدمة قبول 3 مستويات لمستوى الصوت ومعالجتها كما هو موضّح في عملية الرنين.
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. ينشئ الموفّر شريحة البيانات على النحو التالي:

ثُمانِي واحد نوع البيانات الوصف القيمة
0 uint8 حالة توفير المتطلبات اللازمة قناع بت يتضمّن القيم التالية:
  • البت 1 (0x01): يمكنك ضبط هذا الإعداد في حال ضبط مفتاح هوية مؤقت للجهاز.
  • البت 2 (0x02): يمكنك ضبط هذا الإعداد إذا كان مفتاح المصادقة المُقدَّم لمرة واحدة يطابق مفتاح حساب المالك.
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).

ضبط مفتاح هوية مؤقت

لتوفير مقدّم خدمة غير متوفر كإشارة FMDN، أو تغيير مفتاح الهوية المؤقت لموفّر الخدمة الذي تم توفيره بالفعل، يُجري "الباحث" عملية كتابة للخاصية التي تتكون من طلب من الجدول 2 بمعرف البيانات 0x02. يتحقّق "مقدِّم الخدمة" مما يلي:

  • يتطابق مفتاح المصادقة المُقدَّم لمرة واحدة مع مفتاح حساب المالك.
  • إذا تم توفير تجزئة لمفتاح هوية مؤقت، سيتطابق مفتاح الهوية المجزأة مع مفتاح الهوية المؤقت الحالي.
  • إذا لم يتم تقديم تجزئة لمفتاح هوية مؤقت، تأكَّد من أنّ الموفّر لم يتم توفيره من قبل كإشارة FMDN.

إذا تعذّر إثبات الملكية، يعرض الموفّر رسالة خطأ لم تتم مصادقتها.

عند النجاح، يتم استرداد مفتاح الهوية المؤقت عن طريق فك تشفير AES-ECB-128 باستخدام مفتاح الحساب المطابِق. يجب أن يبقى المفتاح محتفظًا به على الجهاز، ومن ذلك الوقت على موفّر الخدمة، يجب أن يبدأ الإعلان عن إطارات FMDN. ويسري مفتاح الهوية المؤقت الجديد على الفور بعد إنهاء اتصال 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. يتحقّق "مقدِّم الخدمة" مما يلي:

  • يتطابق مفتاح المصادقة المُقدَّم لمرة واحدة مع مفتاح حساب المالك.
  • يتطابق مفتاح الهوية المؤقتة المجزّأ مع مفتاح الهوية المؤقت الحالي.

إذا لم يتم توفير المتطلبات اللازمة لمقدّم الخدمة كإشارة FMDN أو إذا تعذّر التحقق منها، يتم عرض خطأ لم تتم مصادقته.

عند النجاح، ينسى موفّر الخدمة المفتاح ويتوقّف عن الإعلان عن إطارات FMDN. يرسل الموفر استجابة من الجدول 6 بمعرف البيانات 0x03. يتم تحديد جزء المصادقة على أنّه أول 8 بايت من HMAC-SHA256(account key, protocol major version number || the last nonce read from the characteristic || data ID || data length || 0x01).

قراءة مفتاح الهوية المؤقت بعد الحصول على موافقة المستخدم

لا يتوفر هذا الخيار إلا لاسترداد المفتاح المفقود، حيث لا يخزّن المفتاح إلا محليًا من قِبل "الباحث". وبناءً على ذلك، لا تتوفّر هذه الإمكانية إلا عندما يكون الجهاز في وضع الإقران أو لفترة محدودة بعد الضغط على زر في الجهاز (ما يشكِّل موافقة المستخدم).

يجب أن يخزّن "الباحث" مفتاح الاسترداد في الخلفية ليتمكّن من استرداد مفتاح النص الواضح، ولكنه لا يخزِّن أداة EIK نفسها.

لقراءة EIK، يقوم Seeker بإجراء عملية كتابة على السمة، تتكون من طلب من الجدول 3 بمعرف بيانات 0x04. يتحقّق "مقدِّم الخدمة" ما يلي:

  • يتطابق مفتاح الاسترداد المجزّأ مع مفتاح الاسترداد المتوقّع.
  • الجهاز في وضع الاسترداد EIK.

إذا تعذّر إثبات الملكية، يعرض الموفّر رسالة خطأ لم تتم مصادقتها.

إذا لم يكن الجهاز في وضع الإقران، يعرض موفّر الخدمة رسالة الخطأ "عدم موافقة المستخدم".

عند نجاح العملية، يرسل الموفر إشعارًا باستجابة من الجدول 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. ينشئ الموفّر شريحة البيانات على النحو التالي:

ثُمانِي واحد نوع البيانات الوصف القيمة
0 uint8 عملية الرنين قناع بت يتضمّن القيم التالية:
  • البت 1 (0x01): رنين لليمين
  • البت 2 (0x02): رنين لليسار
  • Bit 3 (0x04): حافظة رنين
  • 0xFF: رنين جميع المكونات
  • 0x00: إيقاف الرنين
من 1 إلى 2 uint16 عملية استبعاد للقناة لمهلة معيّنة المهلة بالديسي ثانية. يجب ألا تكون القيمة صفرًا وألا أكبر من معادلة 10 دقائق.
يستخدم موفّر الخدمة هذه القيمة لتحديد المدة التي يجب أن يصدر خلالها رنين قبل كتم صوت الجهاز. تؤدي المهلة إلى إلغاء الإعداد الساري، إذا كان هناك أي مكوّن من الجهاز يرن.

في حال ضبط عملية الرنين على 0x00، يتم تجاهل المهلة.
3 uint8 الصوت
  • 0x00: تلقائي
  • 0x01: منخفض
  • 0x02: متوسط
  • 0x03: عالية
يعتمد المعنى الدقيق لهذه القيم على التنفيذ.

وعند استلامه للطلب، يتحقّق الموفّر مما يلي:

  • يتطابق مفتاح المصادقة المُقدَّم لمرة واحدة مع مفتاح الرنين.
  • تتطابق الحالة المطلوبة مع المكوّنات التي يمكنها الرنين.

إذا لم يتم توفير المتطلبات اللازمة لمقدّم الخدمة كإشارة FMDN أو إذا تعذّر التحقق منها، يتم عرض خطأ لم تتم مصادقته. ومع ذلك، في حال تفعيل ميزة حماية التتبُّع غير المرغوب فيها لدى موفّر الخدمة، وكان طلب الحماية من التتبُّع غير المرغوب فيه مفعّلاً، على موفّر الخدمة تخطي هذا الفحص. لا يزال من المتوقع أن يتم تقديم بيانات المصادقة من قِبل Searchker، ولكن قد يتم ضبطها على قيمة عشوائية.

عند بدء الرنين أو إنهائه يتم إرسال إشعار كما هو موضح في الجدول 6 برقم تعريف البيانات 0x05. يتم تعريف محتويات الإشعار على النحو التالي:

ثُمانِي واحد نوع البيانات الوصف القيمة
0 uint8 حالة الرنين
  • 0x00: تم البدء
  • 0x01: فشل البدء أو الإيقاف (جميع المكونات المطلوبة خارج النطاق)
  • 0x02: متوقف (مهلة)
  • 0x03: متوقف (بضغطة زر)
  • 0x04: متوقف (طلب GATT)
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. يتحقّق المزوِّد من تطابق مفتاح المصادقة المُقدَّم لمرة واحدة مع مفتاح الرنين.

إذا لم يكن موفّر الخدمة مؤهلاً كإشارة FMDN أو إذا تعذّر إثبات الملكية، يعرض الموفّر خطأ لم تتم مصادقته.

عند النجاح، يرسل الموفر إشعارًا باستجابة من الجدول 6 بمعرف البيانات 0x06. ينشئ الموفّر شريحة البيانات على النحو التالي:

ثُمانِي واحد نوع البيانات الوصف القيمة
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 على التوالي.

عند تفعيل وضع الحماية من التتبُّع غير المرغوب فيه

ينشئ الموفّر شريحة البيانات على النحو التالي:

ثُمانِي واحد نوع البيانات الوصف القيمة
0 uint8 علامات التحكّم
  • 0x01: تخطي مصادقة الرنين وعند ضبط السياسة، لا تتم مصادقة طلبات الرنين أثناء تفعيل وضع حماية التتبُّع غير المرغوب فيه.
في حال عدم ضبط أي علامة (يكون البايت الواحد أصفارًا)، يمكن حذف قسم البيانات بالكامل وإرسال قسم بيانات فارغ.
لا تسري العلامات إلّا إلى أن يتم إيقاف وضع الحماية من التتبُّع غير المرغوب فيه.

يتحقّق الموفّر من أنّ مفتاح المصادقة المُقدَّم لمرة واحدة يتطابق مع مفتاح الحماية من التتبُّع غير المرغوب فيه. إذا لم يتم توفير المتطلبات اللازمة لمقدّم الخدمة كإشارة FMDN أو إذا تعذّر التحقق منها، يتم عرض خطأ لم تتم مصادقته.

عند تفعيل وضع الحماية من التتبُّع غير المرغوب فيه، يجب أن يخفّض المرشد معدّل تكرار تدوير عنوان MAC الخاص إلى مرة واحدة كل 24 ساعة. ينبغي أن يستمر المعرّف المؤقت المُعلَن عنه في تناوب الأدوار كالمعتاد. يجب ضبط نوع الإطار على 0x41. تنعكس الحالة أيضًا في قسم العلامات المجزّأة.

عند إيقاف وضع الحماية من التتبُّع غير المرغوب فيه

يتحقّق "مقدِّم الخدمة" مما يلي:

  • يتطابق مفتاح المصادقة المُقدَّم لمرة واحدة مع مفتاح حماية التتبُّع غير المرغوب فيه.
  • يتطابق مفتاح الهوية المؤقتة المجزّأ مع مفتاح الهوية المؤقت الحالي.

إذا لم يكن موفّر الخدمة مؤهلاً كإشارة FMDN أو إذا تعذّر التحقق منها، يعرض الموفّر خطأ لم تتم مصادقته.

عند إيقاف وضع الحماية من التتبُّع غير المرغوب فيه، من المفترض أن يبدأ المرشد في تدوير عنوان 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).

الإطارات المُعلَن عنها

بعد توفير المتطلبات اللازمة، من المتوقّع أن يعلن موفّر الخدمة عن إطارات FMDN مرة واحدة على الأقل كل ثانيتَين. في حال الإعلان عن إطارات "الإقران السريع"، على "مقدِّم الخدمة" تضمين إطارات FMDN في إعلانات "الإقران السريع" العادية. على سبيل المثال، يجب على مقدّم الخدمة أن يعلن كل ثانيتين عن سبعة إعلانات متعلقة بالإقران السريع وإعلان FMDN واحد.

يحمل إطار FMDN مفتاحًا عامًا يُستخدم لتشفير تقارير المواقع الجغرافية من قِبل أي عميل داعم يساهم في شبكة حشد الموارد. يتوفّر نوعان من مفاتيح المنحنى البيضاوي 5: مفتاح 160 بت الذي يناسب إطارات BLE 4 القديمة، أو مفتاح 256 بت الذي يتطلّب تقنية BLE 5 مع إمكانيات إعلانية موسّعة. ويحدد تنفيذ الموفّر المنحنى المُستخدَم.

يتم تنظيم إطار FMDN على النحو التالي.

ثُمانِي واحد القيمة الوصف
0 0x02 الطول
1 0 × 01 قيمة نوع بيانات العلامات
2 0×06 بيانات العلامات
3 0x18 أو 0x19 الطول
4 0×16 قيمة نوع بيانات الخدمة
5 مقاس 0xAA معرِّف UUID لخدمة 16 بت
6 0xFE ...
7 0x40 أو 0x41 نوع إطار FMDN مع مؤشر وضع الحماية من التتبّع غير المرغوب فيه
8..27 معرّف مؤقت 20 بايت
28 العلامات المجزّأة

الجدول 8: إطار FMDN الذي يتوافق مع منحنى 160 بت

يعرض الجدول 9 إزاحة البايت وقيمها لمنحنى 256 بت.

ثُمانِي واحد القيمة الوصف
0 0x02 الطول
1 0 × 01 قيمة نوع بيانات العلامات
2 0×06 بيانات العلامات
3 0x24 أو 0x25 الطول
4 0×16 قيمة نوع بيانات الخدمة
5 مقاس 0xAA معرِّف UUID لخدمة 16 بت
6 0xFE ...
7 0x40 أو 0x41 نوع إطار FMDN مع مؤشر وضع الحماية من التتبّع غير المرغوب فيه
8..39 معرّف مؤقت 32 بايت
40 العلامات المجزّأة

الجدول 9: إطار FMDN يدعم منحنى 256 بت

احتساب معرّف الملف الشخصي المؤقت (EID)

يتم إنشاء عشوائية بواسطة AES-ECB-256 وتشفير بنية البيانات التالية باستخدام مفتاح الهوية المؤقت:

ثُمانِي واحد الحقل الوصف
من 0 إلى 10 مساحة متروكة القيمة = 0xFF
11 K أس فترة التدوير
من 12 إلى 15 عامًا الدعم الفني[0]...TS[3] عدّاد وقت المرشد، بتنسيق كبير 32 بت. يتم محو أقل البتات.
بين 16 و26 عامًا مساحة متروكة القيمة = 0x00
27 K أس فترة التدوير
من 28 إلى 31 الدعم الفني[0]...TS[3] عدّاد وقت المرشد، بتنسيق كبير 32 بت. يتم محو أقل البتات.

الجدول 10: إنشاء رقم زائف.

وتكون نتيجة هذه العملية الحسابية عبارة عن رقم مكوَّن من 256 بت، يرمز إليه r'.

بالنسبة إلى العمليات الحسابية المتبقية، يتم استخدام SECP160R1 أو SECP256R1 لعمليات تشفير المنحنى الإهليلجي. اطّلِع على تعريفات المنحنى في SEC 2: مَعلمات نطاق منحنى المنحنى البيضاوي المقترَحة، والتي تعرّف 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-ed مع أقل بايت من SHA256(r) أهمية.

لاحظ أنه يجب محاذاة r مع حجم المنحنى. أضف الأصفار باعتبارها أكثر البتات أهمية إذا كان تمثيلها أقصر من 160 أو 256 بت، أو يجب اقتطاع وحدات البت الأكثر أهمية إذا كان تمثيلها أكبر من 160 أو 256 بت.

إذا كان المرشد لا يوفّر مؤشر مستوى البطارية، ولم يكن في وضع حماية التتبّع غير المرغوب فيه، فسيُسمح له بحذف هذا البايت بالكامل من الإعلان.

التشفير باستخدام معرّف شريحة SIM المضمّنة (EID)

لتشفير رسالة m، سيتخذ أحد المشاهدين (بعد قراءة Rx من المرشد) ما يلي:

  1. اختَر رقمًا عشوائيًا s في Fp، كما هو محدّد في قسم حساب معرّف شريحة SIM المضمّنة (EID).
  2. احسب S = s * G.
  3. احسب R = (Rx, Ry) من خلال التعويض في معادلة المنحنى واختيار قيمة Ry عشوائية من النتائج المحتملة.
  4. احسب مفتاح 256 بت AES k = HKDF-SHA256((s * R)x) حيث يكون (s * R)x هو إحداثي x لنتيجة ضرب المنحنى. لم يتم تحديد قيمة الملح.
  5. دع URx وLRx يمثلان الحد الأقصى والأدنى لـ Rx بتات 80 بت، على التوالي، في تنسيق كبير. بطريقة مماثلة، يمكنك تحديد USx وLSx للسمة S.
  6. احسب nonce = LRx || LSx.
  7. احسب (m’, tag) = AES-EAX-256-ENC(k, nonce, m).
  8. إرسال (URx, Sx, m’, tag) إلى المالك، ربما من خلال خدمة عن بُعد غير موثوق بها.

فك تشفير القيم المشفَّرة باستخدام معرّف شريحة SIM المضمّنة (EID)

يفك عميل المالك، الذي يملك EIK وأسّ فترة التدوير، الرسالة على النحو التالي:

  1. بالنسبة إلى URx، يجب الحصول على قيمة عدّاد وقت الإشارة التي تستند إليها URx. يمكن إجراء ذلك من خلال عميل المالك الذي يحسب قيم Rx لقيم عدّاد وقت المرشد للماضي الأخير والمستقبلي القريب.
  2. بالنظر إلى قيمة عدّاد وقت الإشارة التي تستند إليها السمة URx، عليك احتساب القيمة المتوقّعة لـ r كما هو محدّد في قسم حساب EID.
  3. احسب R = r * G وتحقَّق من تطابقها مع قيمة URx التي يقدّمها المشاهد.
  4. احسب S = (Sx, Sy) من خلال التعويض في معادلة المنحنى واختيار قيمة Sy عشوائية من النتائج المحتملة.
  5. احسب k = HKDF-SHA256((r * S)x) حيث يكون (r * S)x هو إحداثي x لنتيجة ضرب المنحنى.
  6. احسب nonce = LRx || LSx.
  7. احسب m = AES-EAX-256-DEC(k, nonce, m’, tag).

عرض أرقام التعريف بالتناوب

يجب استخدام عنوان BLE قابلة للحلّ (RPA) أو غير قابل للحلّ (NRPA) للإعلان عن إطارات FMDN. يجب توفّر RPA مع أجهزة LE Audio (LEA)، ويُنصَح باستخدامه للأجهزة الأخرى باستثناء علامات تحديد الموقع الجغرافي التي لا تستخدم الروابط.

يجب أن يتم عرض إعلانات ميزة "الإقران السريع" وإعلانات FMDN وعناوين BLE المقابلة بتدوير في الوقت نفسه. يجب أن تحدث التناوب كل 1024 ثانية في المتوسط. إنّ النقطة الدقيقة التي يبدأ عندها المرشد في الإعلان عن المعرّف الجديد يجب توزيعها عشوائيًا داخل النافذة.

ومن النهج الموصى به لتحديد وقت الدوران عشوائيًا ضبطه على وقت الدوران التالي المتوقَّع (في حال عدم تطبيق أي توزيع عشوائي) إضافة إلى عامل زمني إيجابي عشوائي يتراوح بين ثانية واحدة و204 ثانية.

عندما يكون الجهاز في وضع حماية من التتبُّع غير المرغوب فيه، يجب إصلاح عنوان تقنية البلوتوث المنخفض الطاقة (BLE) لإعلان FMDN، ويجب أن يستمر تدوير عنوان BLE لإعلان FMDN غير القابل للاكتشاف (مثل "الإقران السريع"). من المقبول استخدام عناوين مختلفة للبروتوكولات المختلفة.

استعادة البيانات بعد انقطاع التيار الكهربائي

يرتبط حلّ المعرّف المؤقت بشكل كبير بقيمة الساعة المحدّدة في وقت عرض الإعلان، لذلك من المهم أن يتمكّن موفّر الخدمة من استعادة قيمة الساعة في حال انقطاع التيار الكهربائي. ينصح موفّر الخدمة بكتابة قيمة الساعة الحالية إلى ذاكرة غير متطايرة مرة واحدة على الأقل يوميًا، وأن يتحقّق موفّر الخدمة في وقت التشغيل من الجهاز لمعرفة ما إذا كانت هناك قيمة مطلوبة لبدء عملية الضبط. ستُنفذ أدوات تحديد المعرّف المؤقت الحلول خلال فترة زمنية كافية للسماح بكل من الانحراف المعقول للساعة وهذا النوع من استعادة الطاقة المفقودة.

على مقدّمي الخدمات بذل كل ما في وسعهم للحدّ من تغيُّرات الساعة، لأنّ الفترة الزمنية المحدّدة لحلّ المشكلة محدودة. يجب تنفيذ طريقة إضافية واحدة على الأقل لمزامنة الساعة (إعلانات إطارات "الإقران السريع" غير القابلة للاكتشاف أو تنفيذ بث الرسائل).

إرشادات تنفيذ ميزة "الإقران السريع"

يوضّح هذا القسم جوانب خاصة لتنفيذ ميزة "الإقران السريع" على مقدّمي الخدمات الذين يتيحون استخدام FMDN.

الإرشادات الخاصة بعلامة الموقع الجغرافي

  • إذا تم إقران الموفر، ولكن لم تتم إدارة FMDN في غضون 5 دقائق (أو في حالة تطبيق تحديث عبر الهواء أثناء إقران الجهاز ولكن ليس خاضعًا لـ FMDN)، على مقدم الخدمة العودة إلى الضبط على الإعدادات الأصلية ومحو مفاتيح الحساب المخزنة.
  • بعد إقران المزوّد، يجب ألا يغيّر عنوان MAC الخاص به إلا بعد توفير FMDN أو حتى مرور 5 دقائق.
  • في حال محو مفتاح الهوية المؤقت من الجهاز، من المفترض أن يُعيد الجهاز ضبط الإعدادات على الإعدادات الأصلية ومحو مفاتيح الحساب المخزّنة أيضًا.
  • على موفّر الخدمة رفض محاولات إقران البلوتوث العادية وعدم قبول سوى الإقران السريع.
  • يجب أن يتضمن الموفر آلية تتيح للمستخدمين إيقاف الإعلان مؤقتًا بدون إعادة ضبط الجهاز على الإعدادات الأصلية (على سبيل المثال، الضغط على مجموعة من الأزرار).
  • بعد انقطاع التيار الكهربائي، من المفترض أن يعلن الجهاز عن الإطارات باستخدام ميزة "الإقران السريع" غير القابلة للاكتشاف حتى موعد الاستدعاء التالي لمَعلمات قراءة الإشارات. يتيح هذا للباحث اكتشاف الجهاز ومزامنة الساعة حتى لو حدث انحراف كبير في الساعة.
  • عند الإعلان عن الإطارات التي تستخدم ميزة "الإقران السريع" غير القابلة للاكتشاف، يجب عدم تفعيل مؤشرات واجهة المستخدم.
  • يجب عدم الإعلان عن الإطارات التي تستخدم ميزة "الإقران السريع" القابلة للاكتشاف عندما يكون الموفّر متوفرًا لـ FMDN.
  • يجب ألا يكشف موفّر المحتوى أي معلومات تحدّد الهوية بطريقة غير مصادق عليها (مثل الأسماء أو المعرّفات).

الإرشادات الخاصة بجهاز بلوتوث الكلاسيكي

يوضّح هذا القسم الجوانب الخاصة للأجهزة الكلاسيكية التي تتضمّن بلوتوث والتي تتوافق مع FMDN.

توفير FMDN للأجهزة المقترنة حاليًا

لا يكون موفّر الخدمة دائمًا مؤهلاً لـ FMDN عند الإقران مع "الباحث"، ولكن بعد ذلك بفترة. في هذه الحالة، قد لا يكون لدى موفّر الخدمة عنوان MAC حديث لمعيار BLE المطلوب لإنشاء اتصال GATT. يجب أن يتيح موفّر الخدمة طريقة واحدة على الأقل من الطرق التالية كي يحصل الباحث على عنوان تقنية البلوتوث المنخفض الطاقة أثناء إقرانه:

  • يمكن لمقدّم الخدمة الإعلان بشكل دوري عن بيانات حساب ميزة "الإقران السريع" التي تتيح للباحث العثور على عنوان BLE من خلال فحص BLE.
    يناسب هذا الأسلوب مقدّمي الخدمات الذين لا ينفّذون بث الرسائل.
  • يمكن لموفّر الخدمة تقديم هذه البيانات من خلال بث رسائل ميزة "الإقران السريع" عبر البلوتوث الكلاسيكي.
    يناسب هذا الأسلوب مقدّمي الخدمات الذين لا يعلنون عن إطارات ميزة "الإقران السريع" عندما يكونون متّصلين بأداة البحث عبر البلوتوث.

ويؤدي دعم كلا الأسلوبين إلى زيادة فرص توفير الجهاز لتقنية FMDN.

ساحة مشاركات رسائل ميزة "الإقران السريع"

يمكن لموفّر المحتوى تنفيذ بث رسائل ميزة "الإقران السريع" واستخدامه لإشعار مقدِّم الخدمة بشأن معلومات الجهاز. يؤدي تنفيذ بث الرسائل إلى تفعيل ميزات معيّنة كما هو موضّح في هذا القسم

ينبغي أن يرسل موفّر المحتوى رسائل معلومات الجهاز مرة واحدة في كل مرة يتم فيها إنشاء قناة بروتوكول RFCOMM لبث الرسائل.

إصدار البرامج الثابتة (رمز معلومات الجهاز 0x09) وإمكانية التتبُّع

عندما يضيف تحديث البرامج الثابتة إمكانية استخدام FMDN إلى مقدّم الخدمة، يمكن للباحث المرتبط إعلام المستخدم بذلك وعرض توفير الخدمة له. بخلاف ذلك، يجب على المستخدم الانتقال يدويًا إلى قائمة الأجهزة التي تتضمّن بلوتوث لبدء توفير FMDN.

للسماح بذلك، على موفّر الخدمة استخدام خاصية إصدار البرامج الثابتة (الرمز 0x09) للإبلاغ عن قيمة سلسلة تمثّل إصدار البرامج الثابتة. بالإضافة إلى ذلك، يجب أن يتوافق موفّر المحتوى مع البروتوكول الذي يتيح للباحث معرفة تغييرات الإمكانيات الناتجة عن تحديثات البرامج الثابتة.

ثُمانِي واحد نوع البيانات الوصف القيمة
0 uint8 حدث معلومات الجهاز 0×03
1 uint8 إصدار البرامج الثابتة 0x09
من 2 إلى 3 uint16 طول البيانات الإضافية تختلف
var صفيفة بايت سلسلة الإصدار تختلف

الجدول 11: حدث معلومات الجهاز: إصدار البرامج الثابتة المُعدَّل

عند تلقّي طلب تعديل القدرة (0x0601)، إذا فعّل مقدّم الخدمة إمكانية تتبُّع FMDN، يجب أن يستجيب كما هو موضّح في الجدول 12.

ثُمانِي واحد نوع البيانات الوصف القيمة
0 uint8 حدث مزامنة إمكانيات الجهاز 0×06
1 uint8 تتبُّع FMDN 0×03
من 2 إلى 3 uint16 طول البيانات الإضافية 0×0007
4 uint8 حالة توفير FMDN 0x00 في حال عدم توفيره، و0x01 في حال توفيره من خلال أي حساب
5 - 10 صفيفة بايت عنوان MAC الحالي لميزة BLE MAC للجهاز تختلف

الجدول 12: حدث مزامنة إمكانيات الجهاز: إمكانية التتبّع المضافة.

المعرّف المؤقت الحالي (رمز معلومات الجهاز 0x0B)

يمكن لموفّر الخدمة استخدام المعرّف المؤقت الحالي (الرمز 0x0B) للإبلاغ عن معرّف EID الحالي وقيمة الساعة الحالية عندما يكون موفّر الخدمة متاحًا لاستخدام FMDN، ولمزامنة أداة البحث في حال تغيُّر الساعة (على سبيل المثال، بسبب نفاد طاقة البطارية). وإلا، يبدأ الباحث اتصالاً أكثر تكلفة وأقل موثوقية لهذا الغرض.

ثُمانِي واحد نوع البيانات الوصف القيمة
0 uint8 حدث معلومات الجهاز 0×03
1 uint8 المعرّف المؤقت الحالي 0×0 ب
من 2 إلى 3 uint16 طول البيانات الإضافية 0x0018 أو 0x0024
من 4 إلى 7 مرات صفيفة بايت قيمة الساعة مثال: 0x13F9EA80
من 8 إلى 19 أو 31 صفيفة بايت معرّف شريحة SIM المضمّنة (EID) الحالي مثال: 0x1122334455667788990011223344556677889900

الجدول 13: حدث معلومات الجهاز: مزامنة الساعة

إعادة الضبط على الإعدادات الأصلية

بالنسبة إلى الأجهزة التي تتيح إعادة الضبط على الإعدادات الأصلية: في حال إجراء إعادة ضبط على الإعدادات الأصلية، على موفّر الخدمة إيقاف الإشارة ومحو مفتاح الهوية المؤقت وجميع مفاتيح الحساب المخزّنة، بما في ذلك مفتاح حساب المالك.

بعد إعادة الضبط على الإعدادات الأصلية (سواء كانت يدوية أو آلية)، من المفترض ألّا يبدأ موفّر الخدمة في عرض إعلانات عن ميزة "الإقران السريع" على الفور لمنع بدء تدفق الإقران مباشرةً بعد أن يحذف المستخدم الجهاز.

منع التتبُّع غير المرغوب فيه

يجب أيضًا أن تستوفي أجهزة FMDN المعتمدة المتطلبات الواردة في إصدار تنفيذ المواصفات من عدّة منصات بشأن رصد أدوات تتبُّع المواقع الجغرافية غير المرغوب فيها (DULT).

الإرشادات ذات الصلة الخاصة بـ FMDN للتوافق مع مواصفات DULT:

  • يجب تسجيل أي جهاز متوافق مع FMDN في "وحدة التحكم في الأجهزة المجاورة" وتفعيل ميزة "العثور على جهازي".
  • يجب أن ينفِّذ الجهاز خدمة الملحق غير المالك والميزة المحدّدة في إصدار تنفيذ مواصفات DULT، بما في ذلك عمليات معلومات الملحق وعناصر التحكم التي لا يملكها غير المالك.
  • خلال فترة التوافق مع الأنظمة القديمة، كما هو محدّد في مواصفات DULT، لا تكون هناك أي تغييرات على الإطار المُعلَن عنه على النحو المحدّد في هذا المستند.
  • يتم ربط "وضع حماية التتبُّع غير المرغوب فيه" المدرَج في هذا المستند بالحالة المنفصلة" المُشار إليها في مواصفات DULT.
  • إرشادات حول تنفيذ رموز عمليات معلومات الملحق:
    • من المفترض أن تعرض Get_Product_Data معرّف النموذج الذي تقدمه وحدة التحكم، بدون إضافة أي قيمة لتناسب متطلبات الـ 8 بايت. على سبيل المثال، يتم عرض معرّف النموذج 0xFFFFFF على النحو التالي 0x0000000000FFFFFF.
    • يجب أن يتطابق Get_Manufacturer_Name وGet_Model_Name مع القيم المقدمة في وحدة التحكم.
    • يمكن أن تعرض Get_Accessory_Category قيمة "أداة تتبُّع المواقع الجغرافية" العامة إذا لم تكن هناك فئة أخرى تناسب نوع الجهاز بشكلٍ أفضل.
    • يجب أن تشير Get_Accessory_Capages إلى إتاحة الرنين بالإضافة إلى البحث عن معرّف BLE.
    • من المفترض أن يعرض Get_Network_ID معرّف Google (0x02).
  • إرشادات تنفيذ رمز التشغيل Get_Identifier:
    • يجب أن تعرض العملية استجابة صالحة لمدة 5 دقائق فقط بعد أن يفعّل المستخدم وضع "تحديد الهوية"، والذي يتطلب مجموعة من الضغطات على الأزرار. يجب أن تشير الإشارة المرئية أو الصوتية للمستخدم إلى أن المزود قد دخل هذا الوضع. يجب تقديم التعليمات الخاصة بالنموذج لتفعيل هذا الوضع إلى Google كشرط للحصول على شهادة اعتماد، وقبل 10 أيام على الأقل من أي تعديل أو تعديل للتعليمات.
    • يتم إنشاء الاستجابة على النحو التالي: أول 10 بايت من المعرّف المؤقت الحالي، متبوعًا بأول 8 بايت من HMAC-SHA256(recovery key, the truncated current ephemeral identifier).
  • إرشادات لتنفيذ رمز العملية Sound_Start:
    • من المفترض أن يؤدي الأمر إلى تشغيل الرنين في جميع المكونات المتاحة.
    • يجب استخدام الحد الأقصى لمستوى الصوت المسموح به.
    • المدة الموصى بها للرنين هي 12 ثانية.
  • يجب أن تتضمّن علامات تحديد الموقع آلية تتيح للمستخدمين إيقاف عرض الإعلانات مؤقتًا بدون إعادة ضبط الجهاز على الإعدادات الأصلية (على سبيل المثال، الضغط على مجموعة من الأزرار).
    • يجب توثيق تعليمات الإيقاف في عنوان URL متاح للجميع، وتقديمه إلى Google كشرط للحصول على شهادة اعتماد، قبل 10 أيام على الأقل من إجراء أي تعديل أو تعديل للتعليمات.
    • يجب أن يتيح عنوان URL الأقلمة. واعتمادًا على العميل، سيتم توفير اللغة إما على هيئة مَعلمة طلب بحث ("hl=en") أو باستخدام عنوان HTTP يتضمن "accept-language".

إرشادات البروتوكولات القابلة للتبديل

  • يجب استخدام بروتوكول واحد فقط في كل مرة. تأكد من عدم إمكانية تشغيل أكثر من شبكة واحدة على الجهاز في وقت واحد. وهذا الشرط ضروري لضمان عدم خلط بيانات المستخدم الحساسة بين بروتوكولات متفاوتة.
  • نقترح دمج سير عمل إعادة تعيين القرص الثابت في الجهاز والذي يسمح للمستخدم بإعادة إعداد الجهاز باستخدام شبكة مختلفة.
  • يجب أن تكون عملية تحديث الجهاز إلى الشبكة سهلة الاستخدام ومنصفة بين الشبكات. يجب أن يكون المستخدم قادرًا على اختيار الشبكة التي يريد استخدامها دون إعطاء الأفضلية لإحدى الشبكات. يجب أن يوافق فريق Google على هذا التدفق.

تحديثات البرامج الثابتة

يجب أن يدير الشريك عملية التحديثات عبر الهواء (OTA) وتوزيعها باستخدام سير العمل الخاص به لتطبيق الأجهزة الجوّالة أو تطبيق الويب.

التوافق

تتطلب شبكة "العثور على جهازي" تفعيل خدمات الموقع الجغرافي والبلوتوث. يجب توفّر خدمة شبكة الجوّال أو اتصال بالإنترنت. تعمل على الإصدار 9 من نظام Android أو الإصدارات الأحدث وفي بلدان معيّنة للمستخدمين المؤهلين حسب الفئة العمرية.

سجلّ التغييرات

إصدار FMDN التاريخ تعليق
v1 الإصدار الأولي من مواصفات FMDN لاستخدام الميزة قبل إطلاقها
v1.1 Feb 2023
  • تمت إضافة إشارة نص واضح لوضع حماية التتبع غير المرغوب فيه.
  • تمت إضافة خيار لتخطّي مصادقة طلبات الرنين أثناء تفعيل وضع الحماية من التتبُّع غير المرغوب فيه.
v1.2 نيسان (أبريل) 2023
  • تم تعديل تعريف AK لأحد المالكين.
  • تمت إضافة توصية بشأن التعافي من انقطاع التيار الكهربائي في علامات محدّد الموقع.
  • تمت إضافة توضيح بشأن التوزيع العشوائي لعناوين MAC.
  • تمت إضافة توضيح بشأن تغيير عنوان MAC أثناء استخدام وضع حماية التتبُّع غير المرغوب فيه.
  • تمت إضافة إرشادات بشأن طريقة إيقاف علامة محدِّد المواقع.
v1.3 كانون الأول (ديسمبر) 2023
  • تمت إضافة توضيح بشأن تحديد المعلومات التي يتم الكشف عنها من خلال علامات محدِّد المواقع.
  • تمت إضافة مطلب لتنفيذ مواصفات منع التتبع غير غير المرغوب فيه.
  • تمت إضافة إرشادات خاصة بأجهزة البروتوكول القابلة للتبديل.