Module wlan_common::security

source ·
Expand description

Wireless network security descriptors and authenticators.

This module describes wireless network security protocols as well as credentials used to authenticate using those protocols. Types in this module provide two important features: conversions from and into FIDL types used within the WLAN stack and consistency. Here, consistency means that types have no invalid values; given an instance of a type, it is always valid. For example, a SecurityAuthenticator always represents a valid protocol-credential pair.

The SecurityDescriptor and SecurityAuthenticator types form the primary API of this module. A descriptor merely describes (names) a security protocol such as WPA2 Personal using TKIP. An authenticator describes a security protocol and additionally contains credentials used to authenticate using that protocol such as WPA Personal using TKIP with a PSK credential. Authenticators can be converted into descriptors (which drops any associated credentials).


Types in this module support conversion into and from datagrams in the package. When interacting with FIDL, most code should prefer conversions between FIDL types and this module’s SecurityDescriptor and SecurityAuthenticator types, though conversions for intermediate types are also provided.

The models used by this module and the FIDL package differ, so types do not always have a direct analog, but the table below describes the most straightforward and important mappings.

Rust TypeFIDL TypeRust to FIDLFIDL to Rust

§Cryptography and RSN

This module does not implement any security protocols nor cryptography and only describes them with limited detail as needed at API boundaries and in code that merely interacts with these protocols. See the rsn crate for implementations of the IEEE Std 802.11-2016 Robust Security Network (RSN).


  • IEEE Std 802.11-2016 WEP descriptors and credentials.
  • IEEE Std 802.11-2016 WPA descriptors and credentials.