rfc9724v5.txt   rfc9724.txt 
skipping to change at line 73 skipping to change at line 73
2.1. MAC Address Usage 2.1. MAC Address Usage
2.2. MAC Address Randomization 2.2. MAC Address Randomization
2.3. Privacy Workshop, Tutorial, and Experiments at IETF and 2.3. Privacy Workshop, Tutorial, and Experiments at IETF and
IEEE 802 Meetings IEEE 802 Meetings
3. Activities Relating to Randomized and Changing MAC Addresses in 3. Activities Relating to Randomized and Changing MAC Addresses in
the IEEE 802 the IEEE 802
4. Recent Activities Related to MAC Address Randomization in the 4. Recent Activities Related to MAC Address Randomization in the
WBA WBA
5. IPv6 Address Randomization in the IETF 5. IPv6 Address Randomization in the IETF
6. Taxonomy of MAC Address Selection Policies 6. Taxonomy of MAC Address Selection Policies
6.1. Per-Vendor OUI MAC (PVOM) Address 6.1. Per-Vendor OUI MAC Address (PVOM)
6.2. Per-Device Generated MAC (PDGM) Address 6.2. Per-Device Generated MAC Address (PDGM)
6.3. Per-Boot Generated MAC (PBGM) Address 6.3. Per-Boot Generated MAC Address (PBGM)
6.4. Per-Network Generated MAC (PNGM) Address 6.4. Per-Network Generated MAC Address (PNGM)
6.5. Per-Period Generated MAC (PPGM) Address 6.5. Per-Period Generated MAC Address (PPGM)
6.6. Per-Session Generated MAC (PSGM) Address 6.6. Per-Session Generated MAC Address (PSGM)
7. OS Current Practices 7. OS Current Practices
8. IANA Considerations 8. IANA Considerations
9. Security Considerations 9. Security Considerations
10. Informative References 10. Informative References
Acknowledgments Acknowledgments
Authors' Addresses Authors' Addresses
1. Introduction 1. Introduction
Privacy is becoming a huge concern, as more and more devices are Privacy is becoming a huge concern, as more and more devices are
skipping to change at line 182 skipping to change at line 182
Since universally administered MAC addresses are by definition Since universally administered MAC addresses are by definition
globally unique, when a device uses this MAC address over a shared globally unique, when a device uses this MAC address over a shared
medium to transmit data -- especially over the air -- it is medium to transmit data -- especially over the air -- it is
relatively easy to track this device by simple medium observation. relatively easy to track this device by simple medium observation.
Since a device is usually directly associated to an individual, this Since a device is usually directly associated to an individual, this
poses a privacy concern [link_layer_privacy]. poses a privacy concern [link_layer_privacy].
MAC addresses can be easily observed by a third party, such as a MAC addresses can be easily observed by a third party, such as a
passive device listening to communications in the same L2 network. passive device listening to communications in the same L2 network.
In an 802.11 network, a station (STA) exposes its MAC address in two In an 802.11 network, a device (also known as an IEEE 802.11 station
different situations: or STA) exposes its MAC address in two different situations:
* While actively scanning for available networks, the MAC address is * While actively scanning for available networks, the MAC address is
used in the Probe Request frames sent by the device. used in the Probe Request frames sent by the device.
* Once associated to a given Access Point (AP), the MAC address is * Once associated to a given Access Point (AP), the MAC address is
used in frame transmission and reception, as one of the addresses used in frame transmission and reception, as one of the addresses
used in the unicast address fields of an IEEE 802.11 frame. used in the unicast address fields of an IEEE 802.11 frame.
One way to address this privacy concern is by using randomly One way to address this privacy concern is by using randomly
generated MAC addresses. IEEE 802 addressing includes one bit to generated MAC addresses. IEEE 802 addressing includes one bit to
skipping to change at line 266 skipping to change at line 266
with other privacy features at higher layers. with other privacy features at higher layers.
Since then, MAC address randomization has been further implemented by Since then, MAC address randomization has been further implemented by
mobile OSes to provide better privacy for mobile phone users when mobile OSes to provide better privacy for mobile phone users when
connecting to public wireless networks [privacy_ios] connecting to public wireless networks [privacy_ios]
[privacy_windows] [privacy_android]. [privacy_windows] [privacy_android].
3. Activities Relating to Randomized and Changing MAC Addresses in the 3. Activities Relating to Randomized and Changing MAC Addresses in the
IEEE 802 IEEE 802
Practical experiences with Randomized and Changing MAC (RCM) Practical experiences with Randomized and Changing MAC addresses
addresses in devices (some of which are explained in Section 6) (RCM) in devices (some of which are explained in Section 6) helped
helped researchers fine-tune their understanding of attacks against researchers fine-tune their understanding of attacks against
randomization mechanisms [when_mac_randomization_fails]. Within the randomization mechanisms [when_mac_randomization_fails]. Within the
IEEE 802.11 group, these research experiences eventually formed the IEEE 802.11 group, these research experiences eventually formed the
basis for a specified mechanism that randomizes MAC addresses, which basis for a specified mechanism that randomizes MAC addresses, which
was introduced in IEEE Std 802.11aq [IEEE_802.11aq] in 2018. was introduced in IEEE Std 802.11aq [IEEE_802.11aq] in 2018.
More recent developments include turning on MAC address randomization More recent developments include turning on MAC address randomization
in mobile OSes by default, which has an impact on the ability of in mobile OSes by default, which has an impact on the ability of
network operators to customize services [rcm_user_experience_csd]. network operators to customize services [rcm_user_experience_csd].
Therefore, follow-on work in the IEEE 802.11 mapped effects of a Therefore, follow-on work in the IEEE 802.11 mapped effects of a
potentially large uptake of randomized MAC identifiers on a number of potentially large uptake of randomized MAC identifiers on a number of
skipping to change at line 332 skipping to change at line 332
4. Recent Activities Related to MAC Address Randomization in the WBA 4. Recent Activities Related to MAC Address Randomization in the WBA
In the Wireless Broadband Alliance (WBA), the Testing and In the Wireless Broadband Alliance (WBA), the Testing and
Interoperability Work Group has been looking at issues related to MAC Interoperability Work Group has been looking at issues related to MAC
address randomization and has identified a list of potential impacts address randomization and has identified a list of potential impacts
of these changes to existing systems and solutions, mainly related to of these changes to existing systems and solutions, mainly related to
Wi-Fi identification. Wi-Fi identification.
As part of this work, the WBA has documented a set of use cases that As part of this work, the WBA has documented a set of use cases that
a Wi-Fi Identification Standard should address in order to scale and a Wi-Fi Identification Standard should address in order to scale and
achieve longer-term sustainability of deployed services. A first achieve longer-term sustainability of deployed services (see
version of that document, a paper titled "Wi-Fi Identification In a [wba_paper]).
post MAC Randomization Era v1.0" [wba_paper], was created while
liaising with the IETF MADINAS Working Group.
5. IPv6 Address Randomization in the IETF 5. IPv6 Address Randomization in the IETF
[RFC4862] specifies Stateless Address Autoconfiguration (SLAAC) for [RFC4862] specifies Stateless Address Autoconfiguration (SLAAC) for
IPv6, which typically results in hosts configuring one or more IPv6, which typically results in hosts configuring one or more
"stable" addresses composed of a network prefix advertised by a local "stable" addresses composed of a network prefix advertised by a local
router and an Interface Identifier (IID). [RFC8064] formally updated router and an Interface Identifier (IID). [RFC8064] formally updated
the original IPv6 IID selection mechanism to avoid generating the IID the original IPv6 IID selection mechanism to avoid generating the IID
from the MAC address of the interface (via EUI64), as this from the MAC address of the interface (via EUI64), as this
potentially allowed for tracking of a device at L3. Additionally, potentially allowed for tracking of a device at L3. Additionally,
skipping to change at line 438 skipping to change at line 436
| designed to minimize disclosure of identifying information. | designed to minimize disclosure of identifying information.
[RFC7844] also indicates that the link-layer address, IP address, and [RFC7844] also indicates that the link-layer address, IP address, and
DHCP identifier shall evolve in synchrony. DHCP identifier shall evolve in synchrony.
6. Taxonomy of MAC Address Selection Policies 6. Taxonomy of MAC Address Selection Policies
This section documents different policies for MAC address selection. This section documents different policies for MAC address selection.
Some OSes might use a combination of multiple policies. Some OSes might use a combination of multiple policies.
6.1. Per-Vendor OUI MAC (PVOM) Address | Note: The naming convention for the terms defined in this
| section aligns with 802.11/Wi-Fi terminology in that the "A"
| for "address" is not included in the acronym. For example,
| "PVOM" stands for "Per-Vendor OUI MAC address", and "PNGM"
| stands for "Per-Network Generated MAC address".
6.1. Per-Vendor OUI MAC Address (PVOM)
This form of MAC address selection is the historical default. This form of MAC address selection is the historical default.
The vendor obtains an OUI from the IEEE. This is a 24-bit prefix The vendor obtains an OUI from the IEEE. This is a 24-bit prefix
(including two upper bits that are set specifically) that is assigned (including two upper bits that are set specifically) that is assigned
to the vendor. The vendor generates a unique 24-bit value for the to the vendor. The vendor generates a unique 24-bit value for the
lower 24 bits, forming the 48-bit MAC address. It is not unusual for lower 24 bits, forming the 48-bit MAC address. It is not unusual for
the 24-bit value to be used as an incrementing counter that was the 24-bit value to be used as an incrementing counter that was
assigned at the factory and burnt into non-volatile storage. assigned at the factory and burnt into non-volatile storage.
Note that IEEE Std 802.15.4 [IEEE_802.15.4] uses 64-bit MAC Note that IEEE Std 802.15.4 [IEEE_802.15.4] uses 64-bit MAC
addresses, and the IEEE assigns 32-bit prefixes. The IEEE has addresses, and the IEEE assigns 32-bit prefixes. The IEEE has
indicated that there may be a future Ethernet specification that uses indicated that there may be a future Ethernet specification that uses
64-bit MAC addresses. 64-bit MAC addresses.
6.2. Per-Device Generated MAC (PDGM) Address 6.2. Per-Device Generated MAC Address (PDGM)
This form of MAC address is randomly generated by the device, usually This form of MAC address is randomly generated by the device, usually
upon first boot. The resulting MAC address is stored in non-volatile upon first boot. The resulting MAC address is stored in non-volatile
storage and is used for the rest of the device lifetime. storage and is used for the rest of the device lifetime.
6.3. Per-Boot Generated MAC (PBGM) Address 6.3. Per-Boot Generated MAC Address (PBGM)
This form of MAC address is randomly generated by the device each This form of MAC address is randomly generated by the device each
time the device is booted. The resulting MAC address is *not* stored time the device is booted. The resulting MAC address is *not* stored
in non-volatile storage. It does not persist across power cycles. in non-volatile storage. It does not persist across power cycles.
This case may sometimes be a PDGM address where the non-volatile This case may sometimes be a PDGM where the non-volatile storage is
storage is no longer functional (or has failed). no longer functional (or has failed).
6.4. Per-Network Generated MAC (PNGM) Address 6.4. Per-Network Generated MAC Address (PNGM)
This form of MAC address is generated each time a new network This form of MAC address is generated each time a new network
attachment is created. attachment is created.
This is typically used with Wi-Fi networks (i.e., 802.11 networks) This is typically used with Wi-Fi networks (i.e., 802.11 networks)
where the network is identified by an SSID Name. The generated where the network is identified by an SSID Name. The generated
address is stored in non-volatile storage, indexed by the SSID. Each address is stored in non-volatile storage, indexed by the SSID. Each
time the device returns to a network with the same SSID, the device time the device returns to a network with the same SSID, the device
uses the saved MAC address. uses the saved MAC address.
It is possible to use a PNGM address for wired Ethernet connections It is possible to use PNGM for wired Ethernet connections through
through some passive observation of network traffic (such as spanning some passive observation of network traffic (such as spanning tree
tree protocols [IEEE_802.1Q], the Link Layer Discovery Protocol protocols [IEEE_802.1Q], the Link Layer Discovery Protocol (LLDP)
(LLDP) [IEEE_802.1AB], DHCP, or Router Advertisements) to determine [IEEE_802.1AB], DHCP, or Router Advertisements) to determine which
which network has been attached. network has been attached.
6.5. Per-Period Generated MAC (PPGM) Address 6.5. Per-Period Generated MAC Address (PPGM)
This form of MAC address is generated periodically, typically around This form of MAC address is generated periodically, typically around
every twelve hours. Like PNGM addresses, it is used primarily with every twelve hours. Like PNGM, it is used primarily with Wi-Fi.
Wi-Fi.
When the MAC address changes, the station disconnects from the When the MAC address changes, the station disconnects from the
current session and reconnects using the new MAC address. This will current session and reconnects using the new MAC address. This will
involve a new 802.1x session, as well as obtaining or refreshing a involve a new 802.1x session, as well as obtaining or refreshing a
new IP address (e.g., using DHCP or SLAAC). new IP address (e.g., using DHCP or SLAAC).
If DHCP is used, then a new DHCP Unique Identifier (DUID) is If DHCP is used, then a new DHCP Unique Identifier (DUID) is
generated so as to not link to the previous connection; this usually generated so as to not link to the previous connection; this usually
results in the allocation of new IP addresses. results in the allocation of new IP addresses.
6.6. Per-Session Generated MAC (PSGM) Address 6.6. Per-Session Generated MAC Address (PSGM)
This form of MAC address is generated on a per-session basis. How a This form of MAC address is generated on a per-session basis. How a
session is defined is implementation-dependent, for example, a session is defined is implementation-dependent, for example, a
session might be defined by logging in to a portal, VPN, etc. Like session might be defined by logging in to a portal, VPN, etc. Like
PNGM and PPGM addresses, it is used primarily with Wi-Fi. PNGM and PPGM, it is used primarily with Wi-Fi.
Since the address only changes when a new session is established, Since the address only changes when a new session is established,
there is no disconnection/reconnection involved. there is no disconnection/reconnection involved.
7. OS Current Practices 7. OS Current Practices
By default, most modern OSes (especially mobile ones) do implement By default, most modern OSes (especially mobile ones) do implement
some MAC address randomization policies. Since the mechanism and some MAC address randomization policies. Since the mechanism and
policies that OSes implement can evolve with time, the content is now policies that OSes implement can evolve with time, the content is
hosted at [OS_current_practices]. For completeness, a snapshot of hosted at <https://wiki.ietf.org/en/group/madinas/RFC9724>. For
the content at the time of publication of this document is included completeness, a snapshot of the content at the time of publication of
below. Note that the extensive testing reported in this document was this document is included below. Note that the extensive testing
conducted in 2021, but no significant changes have been detected at reported in this document was conducted in 2021, but no significant
the time of publication of this document. changes have been detected at the time of publication of this
document.
Table 1 summarizes current practices for Android and iOS at the time Table 1 summarizes current practices for Android and iOS at the time
of writing this document (the original source is available at of writing this document (the original source is available at
[private_mac]) and also includes updates based on findings from the [private_mac]) and also includes updates based on findings from the
authors. authors.
+=============================================+===================+ +=============================================+===================+
| Android 10+ | iOS 14+ | | Android 10+ | iOS 14+ |
+=============================================+===================+ +=============================================+===================+
| The randomized MAC address is bound to the | The randomized | | The randomized MAC address is bound to the | The randomized |
skipping to change at line 732 skipping to change at line 736
IEEE 802 LAN/MAN Standards Committee, "IEEE 802 EC Privacy IEEE 802 LAN/MAN Standards Committee, "IEEE 802 EC Privacy
Recommendation Study Group", Recommendation Study Group",
<http://www.ieee802.org/PrivRecsg/>. <http://www.ieee802.org/PrivRecsg/>.
[link_layer_privacy] [link_layer_privacy]
O'Hanlon, P., Wright, J., and I. Brown, "Privacy at the O'Hanlon, P., Wright, J., and I. Brown, "Privacy at the
link-layer", W3C/IAB workshop on Strengthening the link-layer", W3C/IAB workshop on Strengthening the
Internet Against Pervasive Monitoring (STRINT), February Internet Against Pervasive Monitoring (STRINT), February
2014. 2014.
[OS_current_practices]
"OS current practices", commit 795739b, July 2024,
<https://github.com/ietf-wg-madinas/draft-ietf-madinas-
mac-address-randomization/blob/main/OS-current-
practices.md>.
[privacy_android] [privacy_android]
Android Open Source Project, "MAC randomization behavior", Android Open Source Project, "MAC randomization behavior",
Android OS Documentation, Android OS Documentation,
<https://source.android.com/devices/tech/connect/wifi-mac- <https://source.android.com/devices/tech/connect/wifi-mac-
randomization-behavior>. randomization-behavior>.
[privacy_ios] [privacy_ios]
Apple Inc., "Use private Wi-Fi addresses on Apple Apple Inc., "Use private Wi-Fi addresses on Apple
Devices", Apple Support, Devices", Apple Support,
<https://support.apple.com/en-us/102509>. <https://support.apple.com/en-us/102509>.
skipping to change at line 773 skipping to change at line 771
[private_mac] [private_mac]
Pantaleone, D., "Private MAC address on iOS 14", Wayback Pantaleone, D., "Private MAC address on iOS 14", Wayback
Machine archive, September 2020, Machine archive, September 2020,
<https://web.archive.org/web/20230905111429/ <https://web.archive.org/web/20230905111429/
https://www.fing.com/news/private-mac-address-on-ios-14>. https://www.fing.com/news/private-mac-address-on-ios-14>.
[rcm_privacy_csd] [rcm_privacy_csd]
IEEE 802.11 WG RCM SG, "IEEE 802.11 Randomized And IEEE 802.11 WG RCM SG, "IEEE 802.11 Randomized And
Changing MAC Addresses Study Group CSD on user experience Changing MAC Addresses Study Group CSD on user experience
mechanisms", doc.:IEEE 802.11-20/1346r1, 2020. Download mechanisms", doc.:IEEE 802.11-20/1346r4, 2020. Download
available at <https://mentor.ieee.org/802.11/ available at <https://mentor.ieee.org/802.11/
dcn/20/11-20-1346-04-0rcm-csd-draft-for-privacy-amendment- dcn/20/11-20-1346-04-0rcm-csd-draft-for-privacy-amendment-
of-rcm- project.docx>. of-rcm- project.docx>.
[rcm_privacy_par] [rcm_privacy_par]
IEEE 802.11 WG RCM SG, "IEEE 802.11 Randomized And IEEE 802.11 WG RCM SG, "IEEE 802.11 Randomized And
Changing MAC Addresses Study Group PAR on privacy Changing MAC Addresses Study Group PAR on privacy
mechanisms", doc.:IEEE 802.11-19/854r7, 2020. Download mechanisms", doc.:IEEE 802.11-19/854r7, 2020. Download
available at <https://mentor.ieee.org/802.11/ available at <https://mentor.ieee.org/802.11/
dcn/20/11-20-0854-07-0rcm-par-proposal-for-privacy.docx>. dcn/20/11-20-0854-07-0rcm-par-proposal-for-privacy.docx>.
skipping to change at line 795 skipping to change at line 793
[rcm_tig_final_report] [rcm_tig_final_report]
IEEE 802.11 WG RCM TIG, "IEEE 802.11 Randomized And IEEE 802.11 WG RCM TIG, "IEEE 802.11 Randomized And
Changing MAC Addresses Topic Interest Group Report", Changing MAC Addresses Topic Interest Group Report",
doc.:IEEE 802.11-19/1442r9, 2019. Download available at doc.:IEEE 802.11-19/1442r9, 2019. Download available at
<https://mentor.ieee.org/802.11/ dcn/19/11-19-1442-09- <https://mentor.ieee.org/802.11/ dcn/19/11-19-1442-09-
0rcm-rcm-tig-draft-report-outline.odt>. 0rcm-rcm-tig-draft-report-outline.odt>.
[rcm_user_experience_csd] [rcm_user_experience_csd]
IEEE 802.11 WG RCM SG, "IEEE 802.11 Randomized And IEEE 802.11 WG RCM SG, "IEEE 802.11 Randomized And
Changing MAC Addresses Study Group CSD on user experience Changing MAC Addresses Study Group CSD on user experience
mechanisms", doc.:IEEE 802.11-20/1117r3, 2020. Download mechanisms", doc.:IEEE 802.11-20/1117r5, 2020. Download
available at <https://mentor.ieee.org/802.11/ available at <https://mentor.ieee.org/802.11/
dcn/20/11-20-1117-05-0rcm-rcm-sg-proposed-rcm-csd- dcn/20/11-20-1117-05-0rcm-rcm-sg-proposed-rcm-csd-
draft.docx>. draft.docx>.
[rcm_user_experience_par] [rcm_user_experience_par]
IEEE 802.11 WG RCM SG, "IEEE 802.11 Randomized And IEEE 802.11 WG RCM SG, "IEEE 802.11 Randomized And
Changing MAC Addresses Study Group PAR on user experience Changing MAC Addresses Study Group PAR on user experience
mechanisms", doc.:IEEE 802.11-20/742r5, 2020. Download mechanisms", doc.:IEEE 802.11-20/742r6, 2020. Download
available at <https://mentor.ieee.org/802.11/ available at <https://mentor.ieee.org/802.11/
dcn/20/11-20-0742-06-0rcm-proposed-par-draft.docx>. dcn/20/11-20-0742-06-0rcm-proposed-par-draft.docx>.
[RFC4291] Hinden, R. and S. Deering, "IP Version 6 Addressing [RFC4291] Hinden, R. and S. Deering, "IP Version 6 Addressing
Architecture", RFC 4291, DOI 10.17487/RFC4291, February Architecture", RFC 4291, DOI 10.17487/RFC4291, February
2006, <https://www.rfc-editor.org/info/rfc4291>. 2006, <https://www.rfc-editor.org/info/rfc4291>.
[RFC4862] Thomson, S., Narten, T., and T. Jinmei, "IPv6 Stateless [RFC4862] Thomson, S., Narten, T., and T. Jinmei, "IPv6 Stateless
Address Autoconfiguration", RFC 4862, Address Autoconfiguration", RFC 4862,
DOI 10.17487/RFC4862, September 2007, DOI 10.17487/RFC4862, September 2007,
skipping to change at line 893 skipping to change at line 891
The authors would also like to thank Jerome Henry, Hai Shalom, The authors would also like to thank Jerome Henry, Hai Shalom,
Stephen Farrell, Alan DeKok, Mathieu Cunche, Johanna Ansohn Stephen Farrell, Alan DeKok, Mathieu Cunche, Johanna Ansohn
McDougall, Peter Yee, Bob Hinden, Behcet Sarikaya, David Farmer, McDougall, Peter Yee, Bob Hinden, Behcet Sarikaya, David Farmer,
Mohamed Boucadair, Éric Vyncke, Christian Amsüss, Roman Danyliw, Mohamed Boucadair, Éric Vyncke, Christian Amsüss, Roman Danyliw,
Murray Kucherawy, and Paul Wouters for their reviews and comments on Murray Kucherawy, and Paul Wouters for their reviews and comments on
previous draft versions of this document. In addition, the authors previous draft versions of this document. In addition, the authors
would like to thank Michael Richardson for his contributions on the would like to thank Michael Richardson for his contributions on the
taxonomy section. Finally, the authors would like to thank the IEEE taxonomy section. Finally, the authors would like to thank the IEEE
802.1 Working Group for its review and comments (see 802.1 Working Group for its review and comments (see
https://datatracker.ietf.org/liaison/1884/). <https://datatracker.ietf.org/liaison/1884/>).
Authors' Addresses Authors' Addresses
Juan Carlos Zúñiga Juan Carlos Zúñiga
Cisco Cisco
Montreal QC Montreal QC
Canada Canada
Email: juzuniga@cisco.com Email: juzuniga@cisco.com
Carlos J. Bernardos (editor) Carlos J. Bernardos (editor)
 End of changes. 20 change blocks. 
47 lines changed or deleted 45 lines changed or added

This html diff was produced by rfcdiff 1.48.