मैक रैंडमाइजेशन को लागू करना

एंड्रॉइड 8.0 से शुरू होकर, एंड्रॉइड डिवाइस नए नेटवर्क की जांच करते समय यादृच्छिक मैक पते का उपयोग करते हैं, जबकि वर्तमान में वे किसी नेटवर्क से संबद्ध नहीं हैं। एंड्रॉइड 9 में, आप वाई-फाई नेटवर्क से कनेक्ट होने पर डिवाइस को यादृच्छिक मैक पते का उपयोग करने के लिए एक डेवलपर विकल्प सक्षम कर सकते हैं (यह डिफ़ॉल्ट रूप से अक्षम है )।

एंड्रॉइड 10 में, क्लाइंट मोड, सॉफ्टएप और वाई-फाई डायरेक्ट के लिए मैक रैंडमाइजेशन डिफ़ॉल्ट रूप से सक्षम है।

मैक रैंडमाइजेशन श्रोताओं को डिवाइस गतिविधि का इतिहास बनाने के लिए मैक पते का उपयोग करने से रोकता है, जिससे उपयोगकर्ता की गोपनीयता बढ़ जाती है।

इसके अतिरिक्त, मैक पते को वाई-फाई अवेयर और वाई-फाई आरटीटी संचालन के हिस्से के रूप में यादृच्छिक किया जाता है।

अधिक जानकारी के लिए, मैक रैंडमाइजेशन व्यवहार देखें।

कार्यान्वयन

अपने डिवाइस पर MAC रैंडमाइजेशन लागू करने के लिए:

  1. निम्नलिखित एचएएल विधियों को लागू करने के लिए वाई-फाई चिप विक्रेता के साथ काम करें:

    • IWifiStaIface#setMacAddress : इंटरफ़ेस के MAC पते को कॉन्फ़िगर करता है। डिफ़ॉल्ट कार्यान्वयन इंटरफ़ेस को नीचे लाता है, मैक पते को बदलता है, और इंटरफ़ेस को वापस ऊपर लाता है।
    • IWifiStaIface#getFactoryMacAddress : ioctl कॉल का उपयोग करके wlan0 का फ़ैक्टरी MAC प्राप्त करता है।
    • ISupplicantP2pIface#setMacRandomization : निवेदक में P2P MAC रैंडमाइजेशन को चालू/बंद करता है।
  2. सेटिंग्स config.xml में config_wifi_connected_mac_randomization_supported को true पर सेट करें (यह डिवाइस कस्टम ओवरले में किया जा सकता है)।

    • इस ध्वज का उपयोग यह नियंत्रित करने के लिए किया जाता है कि क्लाइंट-मोड मैक रैंडमाइजेशन सक्षम है या नहीं।
  3. सेटिंग्स config.xml में config_wifi_p2p_mac_randomization_supported को true पर सेट करें (यह डिवाइस कस्टम ओवरले में किया जा सकता है)।

    • इस ध्वज का उपयोग यह नियंत्रित करने के लिए किया जाता है कि वाई-फाई डायरेक्ट मैक रैंडमाइजेशन सक्षम है या नहीं।
  4. सत्यापन में वर्णित विधियों का उपयोग करके अपने कार्यान्वयन का परीक्षण करें।

सिस्टम यूआई को यह करना होगा:

  • प्रत्येक एसएसआईडी के लिए रैंडमाइजेशन को सक्षम या अक्षम करने का विकल्प रखें।
  • सभी नए जोड़े गए नेटवर्क के लिए डिफ़ॉल्ट रूप से MAC रैंडमाइजेशन सक्षम करें।

नए संकेतों को लागू करने के लिए सेटिंग्स यूआई के संदर्भ कार्यान्वयन का उपयोग करें।

एंड्रॉइड 9 या उससे पहले के संस्करण पर चलने वाले उपकरणों में वाई-फाई मैक रैंडमाइजेशन के लिए समर्थन नहीं हो सकता है। ऐसे उपकरणों को एंड्रॉइड 10 में अपग्रेड करते समय, वाई-फाई विक्रेता एचएएल मेक फ़ाइल में WIFI_HIDL_FEATURE_DISABLE_AP_MAC_RANDOMIZATION ध्वज को सही पर सेट करके वाई-फाई मैक रैंडमाइजेशन सुविधा को अक्षम किया जा सकता है।

मान्यकरण

यह सत्यापित करने के लिए कि सुविधा अपेक्षा के अनुरूप काम कर रही है, एक एकीकरण परीक्षण (ACTS) और मैन्युअल परीक्षण दोनों चलाएँ।

एकीकरण परीक्षण चलाने के लिए, यह सत्यापित करने के लिए कि डिवाइस यादृच्छिक MAC पते का उपयोग करता है और प्रत्येक के लिए यादृच्छिक MAC पते को सही ढंग से संग्रहीत करता है, tools/test/connectivity/acts_tests/tests/google/wifi WifiMacRandomizationTest.py स्थित ACTS फ़ाइल, WifiMacRandomizationTest.py का उपयोग करें। नेटवर्क।

मैन्युअल परीक्षण चलाने के लिए:

  1. सत्यापित करें कि डिवाइस ओवरले में config_wifi_connected_mac_randomization_supported को true पर सेट करने की जाँच करके डिवाइस पर MAC रैंडमाइजेशन सक्षम है।
  2. वाई-फ़ाई नेटवर्क से कनेक्ट करें.
  3. नेटवर्क विवरण पृष्ठ पर जाने के लिए नेटवर्क पर टैप करें। सत्यापित करें कि MAC रैंडमाइजेशन चालू है। सत्यापित करें कि प्रदर्शित मैक पता एक यादृच्छिक मैक है, जिसमें स्थानीय रूप से उत्पन्न बिट 1 पर सेट है और मल्टीकास्ट बिट 0 पर सेट है।
  4. मैक रैंडमाइजेशन बंद करें। उसी नेटवर्क से कनेक्ट करें और सत्यापित करें कि फ़ैक्टरी मैक का उपयोग किया जा रहा है।
  5. नेटवर्क विवरण पृष्ठ पर भूल जाएं टैप करके नेटवर्क हटाएं।
  6. उसी नेटवर्क से कनेक्ट करें और सत्यापित करें कि उसी यादृच्छिक मैक पते का उपयोग किया जा रहा है।

एंड्रॉइड 10 या उच्चतर पर अपग्रेड करने वाले प्री-एंड्रॉइड 10 डिवाइस (मैक रैंडमाइजेशन का समर्थन करने में सक्षम) पर मैक रैंडमाइजेशन का परीक्षण करने के लिए:

  1. एंड्रॉइड 9 या उससे पहले के संस्करण पर चलने वाले डिवाइस पर कम से कम एक सहेजा हुआ नेटवर्क रखें।
  2. एंड्रॉइड 10 सिस्टम छवि को फ्लैश करें।
  3. वाई-फाई पिकर में, सत्यापित करें कि सभी सहेजे गए नेटवर्क के लिए मैक रैंडमाइजेशन बंद है।
  4. मैक रैंडमाइजेशन चालू करें। उसी नेटवर्क से कनेक्ट करें और सत्यापित करें कि यादृच्छिक मैक का उपयोग किया जा रहा है।