> KeyIndex : byte > Key0 : array{byte} > PSK : array{byte} Do we really need a PSK and a Key0 here? And, if we have a KeyIndex, where is Key1, Key2 and Key3? I'd say rename Key0 to Key, and then it can hold a Wep-Key or a PSK or whatever. For the PSK: the PSK can come as text string or as a hex sequence. How do you differentiate between those two?