Encryption
Overview
AirPlay 2 encryption is associated to any of the
SupportsCoreUtilsPairingAndEncryption bits in the receiver features.
The minimal set of features described in Multi-room support allow to disable the outer encryption layer of the protocol. The audio frames are still encrypted.
Disabled encryption
Declaring only SupportsUnifiedPairSetupAndMFi without using any of the
CoreUtilsPairingAndEncryption bits, we jump straight to the AirPlay 2
streaming protocol. Messages at this point are exchanged in clear text.
if !CoreUtilsPairingAndEncryption && (avoid_auth/is_apple_internal_build)
log("*** authentication/encryption disabled ***")
If CoreUtilsPairingAndEncryption bits (38, 46, 43, 48) are disabled and the
AirPlay sender is an Apple internal build, or avoid_auth, both authentication
and encryption are disabled.
The avoid_auth appears to be an internal condition and needs further reversing.