התכונה 'רנדומיזציה של כתובת MAC' מאפשרת למכשירים להשתמש בכתובת MAC אקראית כשהם מתחברים לרשת Wi-Fi. הוראות להטמעה מפורטות במאמר הטמעת רנדומיזציה של MAC. בדף הזה מתוארת ההתנהגות של רנדומיזציה של MAC ב-Android.
מכשירים משתמשים בכתובות MAC כשהם מתחברים לרשת Wi-Fi או לנקודת גישה. מכיוון שכתובות ה-MAC האלה מועברות ללא הצפנה, אפשר לתעד אותן ולהשתמש בהן כדי לעקוב אחרי המיקום של המשתמש. בעבר, מכשירים השתמשו בכתובת ה-MAC של היצרן כדי לשייך לרשת Wi-Fi. כתובת ה-MAC של היצרן היא ייחודית וסטטית בעולם, ומאפשרת לעקוב אחרי המכשיר ולזהות אותו באופן אישי.
התכונה 'רנדומיזציה של כתובת MAC' מגבירה את פרטיות המשתמשים באמצעות שימוש בכתובת MAC אקראית בהתחברות לרשת Wi-Fi.
כתובות MAC באורך 48 ביט, ובדרך כלל הן מיוצגות על ידי 12 ספרות הקסדצימליות (6 אוקטטים, כי כל אוקטט מכיל 8 ביט), כמו 00:11:22:AA:BB:CC
. התכונה של רנדומיזציה של MAC משנה את הכתובת באופן אקראי על ידי הגדרת הבייט locally administered ל-1 והבייט unicast ל-0. 46 הביטים האחרים הם אקראיים.
במכשירים עם Android מגרסה 10 ואילך, המערכת משתמשת בכתובת MAC אקראית כברירת מחדל. משתמשים יכולים להפעיל או להשבית את האפשרות של רנדומיזציה של MAC ברשתות נפרדות דרך האפשרות במסך פרטי הרשת בקטע הגדרות, כפי שמוצג באיור 1. אם משתמש משבית את הרנדומיזציה של כתובת ה-MAC לרשת, המערכת תשתמש בכתובת ה-MAC של היצרן (כתובת ייחודית בעולם).
איור 1. אפשרות של רנדומיזציה של כתובת MAC.
סוגי רנדומיזציה של כתובות MAC
במסגרת Android נעשה שימוש בשני סוגים של רנדומיזציה של כתובות MAC: רנדומיזציה מתמשכת ורנדומיזציה לא מתמשכת. אם המשתמש משבית את הקצאת ה-MAC האקראית, המערכת משתמשת בכתובת ה-MAC של היצרן.
מערכת Android קובעת באיזה סוג יצירת כתובת MAC אקראית להשתמש כשהמכשיר משויך לרשת Wi-Fi. כברירת מחדל, Android משתמשת ב-persistent randomized. החל מגרסה 12 של Android, מערכת Android משתמשת ברנדומיזציה לא מתמשכת במצבים הבאים:
- אפליקציה להצעות של רשתות מציינת שנעשה שימוש ברנדומיזציה לא עקבית ברשת דרך ה-API
WifiNetworkSuggestion.Builder#setMacRandomizationSetting
. - הרשת היא רשת פתוחה שלא נתקלה בפורטל שבוי, והשכבה
config_wifiAllowEnhancedMacRandomizationOnOpenSsids
מוגדרת ל-true
. שכבת-העל הזו מושבתת כברירת מחדל (מוגדרת כ-false
).
ארגון בסדר אקראי קבוע
כשהתכונה 'רנדומיזציה של כתובת MAC' מופעלת, מערכת Android משתמשת כברירת מחדל בסוג הרנדומיזציה המתמיד. מערכת Android יוצרת כתובת MAC שרירותית ועקבית על סמך הפרמטרים של פרופיל הרשת, כולל SSID, סוג האבטחה או FQDN (לרשתות Passpoint). כתובת ה-MAC הזו לא משתנה עד לאיפוס להגדרות המקוריות. כתובת ה-MAC לא נוצרת מחדש באופן אקראי אם המשתמש שוכח את רשת ה-Wi-Fi ומוסיף אותה מחדש, כי כתובת ה-MAC תלויה בפרמטרים של פרופיל הרשת.
כתובות MAC קבועות נדרשות במקרים שבהם רשתות מסתמכות על הקביעות של כתובת ה-MAC כדי לספק למשתמשים פונקציונליות שימושית. לדוגמה, כדי לזכור מכשיר ולאפשר למשתמשים לעקוף את מסך הכניסה כמצופה, או כדי להפעיל אמצעי בקרת הורים.
ב-Android 10 ו-11, כשמפעילים רנדומיזציה של כתובות MAC, המערכת משתמשת ברנדומיזציה מתמשכת בכל הרשתות.
רנדומיזציה לא מתמשכת
בסוג הרנדומיזציה הלא עקבי, שמשומש ברשתות מסוימות ב-Android 12 ואילך, מודול ה-Wi-Fi יוצר מחדש את כתובת ה-MAC באופן אקראי בתחילת כל חיבור, או שהמסגרת משתמשת בכתובת ה-MAC הקיימת שנוצרה באופן אקראי כדי להתחבר לרשת. מודול ה-Wi-Fi מבצע רנדומיזציה מחדש של כתובת ה-MAC במצבים הבאים:
- פג התוקף של תקופת החכירה ב-DHCP וחלפו יותר מ-4 שעות מאז שהמכשיר התנתק מהרשת הזו בפעם האחרונה.
- ה-MAC האקראי הנוכחי של פרופיל הרשת נוצר לפני יותר מ-24 שעות. רנדומיזציה מחדש של כתובת ה-MAC מתבצעת רק בתחילת חיבור חדש. חיבור ה-Wi-Fi לא ינותק באופן פעיל כדי ליצור מחדש כתובת MAC אקראית.
אם אף אחד מהמצבים האלה לא רלוונטי, המסגרת משתמשת בכתובת ה-MAC שהותאמה באופן אקראי מראש כדי להתחבר לרשת.
אפשרות למפתחים לבחירת רנדומיזציה לא מתמשכת
במכשירים עם Android מגרסה 11 ואילך, המשתמשים יכולים להפעיל רנדומיזציה לא מתמשכת של כתובות MAC באופן גלובלי לכל רשתות ה-Wi-Fi (שבהן פועלת רנדומיזציה של כתובות MAC) דרך המסך אפשרויות למפתחים. האפשרות להפעיל רנדומיזציה של כתובות MAC משתנות לכל הפרופילים נמצאת בקטע הגדרות > אפשרויות למפתחים > רנדומיזציה של כתובות MAC משתנות ברשתות Wi-Fi.
איור 2. אפשרות של רנדומיזציה של כתובות MAC משתנות ברשתות Wi-Fi.