How do I semi-automatically guess Wifi passwords? In some travel destinations, free wireless APs with simple WEP or WPA PSK passwords are common place. Every hotel, cafe, and so on has one. However, language barriers can make it difficult to communicate the password. Common mistakes include "A" vs. "a", "y" vs. "i", "c" vs. "z", "1" vs. "7", "O" (letter) vs. "0" (number). Frequently, you'll find travellers guessing and discussing passwords. Is there are more efficient solution than manual trial-and-error?

I'm looking for an app or other solution, that


saves the hassle of retyping the same password and variations thereof by remembering previous guesses,
gives faster, better feedback if the connection with the current password fails (weak signal or wrong password?),
can efficiently try a number of passwords (variations of the password I entered or default passwords from a dictionary).


I'm not interested in cracking a network with strong security. I want to  get connected quickly if the waiter tells me "It's just oh, one, two, a, be, zee" while he's on his way to the next table. An efficient WEP or WPA2 cracker would get the job done, but for this purpose it's not required to crack strong passwords.
EDIT:

There's now a project that got monitor mode working on the Galaxy S2 and the Google Nexus One.
See http://bcmon.blogspot.de/

As far as I know there's currently no WEP/WPA cracking app. The fact Android is open and Linux based would allow this basically, however most (all?) wifi chipset drivers don't allow the necessary monitor mode and solutions would be tied to single makes/models with supported chipsets. Using known working USB wifi adapters with OTG ready devices would allow to circumvent this restriction but there has not been a project to do so yet. Update: There's  some effort by the author of Kismet.

This is not covering your question but is somewhat related:
You might however have luck using these 2 tools (root required):
Element53 and ProxyDroid

Background:
Many paid access points allow DNS resolution. Element53 is a TCP-over-DNS tunnel app (DNS has port 53, hence the name) to exploit this. The free version has 10MB traffic limit, here's the explanation from the Google Play:


  Element53, the DNS tunnel for Android.  
  
  Element53 is a ready-to-use DNS-tunnel for Android. It can be used for
  penetration testing (other uses are not supported).