ScanResult capabilities interpretation

喜夏-厌秋 提交于 2019-12-09 15:37:42

问题


I want to analyze the capabilities string of a ScanResult. However, the names ther are grouped in up to four square brackets e.g.

[WPA-PSK-TKIP+CCMP][WPA2-PSK-TKIP-CCMP][WPS][ESS]

Is there some kind of documentation describing which bracket relates to what, considering that some names may apear in various brackets. It would be great if there was a list of all possible capabilities somewhere as well.


回答1:


Last year there was a topic about this issue. You can find some help in this stackoverflow answer. In fact, there is little Android documentation about WiFi access points capabilities. Even in the offical Javadoc, regarding the signal level, the attribute level is only documented with:

The detected signal level in dBm. At least those are the units used by the TI driver.

It seems this is a very volatile information about the WiFi handling in Android.




回答2:


This string is generated by wpa_supplicant. Unfortunately there is little documentation on this, but at least we can look at the precise code! There are three main functions reponsible for creating the string we see in Android:

  • wpa_supplicant_ctrl_iface_scan_result: This takes a struct wpa_bss as argument, which contains the information about one networks, and converts it to a string. You can see tags such as [ESS] and WPA2 being added. It also (indirectly) calls the following two functions. So this function add the general capabilities of the network.
  • wpa_supplicant_ie_txt: This add the [PSK] and/or [EAP] tags. In other words the type of handshake being used.
  • wpa_write_ciphers: Adds the type of WPA1 or WPA2 encryption being used. So TKIP or CCMP. It's only called if the network is WPA1 or WPA2.

By reading these three functions you will know exactly what kind of parameters in the string that you can expect. You can always confirm your understanding by creating your own network and confirming the string corresponding to your own network!




回答3:


i found this topic :

How do I connect to a WiFi Network with an unknown encryption algorithm in Android?

the user who asked the question seems to know what does it mean :

I have assumed, based on some research, that these are bracket-separated capabilities, and the first item for each of these is a - separated String showing:

[Authentication Algorithm - Key Management Algorithm - Pairwise Cipher]



来源:https://stackoverflow.com/questions/11956874/scanresult-capabilities-interpretation

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!