There's a lot of software out there for cracking wireless passwords, and most of it is legal. Why? Because it's sold as a way for network administrators to 'test' their network's security.
Of course, there's nothing to stop you 'testing' a network that you don't own, in a coffee shop or airport, for example.
Most cracking programs use your PC's CPU to do the hardcore number-crunching, but it turns out that the graphics card is actually far better at doing the kinds of calculations necessary.
How good? Well, an above average quad-core CPU, the Intel Q6600 can only accomplish 1,100 passwords per second, whereas a similarly above-average ATI HD4870 graphics card can smash through 15,750 passwords per seconds.
Who woulda thunk it? Luckily, we might be seeing some of this power hit regular programs too, with Nvidia's http://en.wikipedia.org/wiki/CUDA, ATI's http://en.wikipedia.org/wiki/AMD_FireStream, and Apple's http://en.wikipedia.org/wiki/OpenCL frameworks.
The graphics card isn't best at every type of calculation, but if a program can intelligently route calculations to their fastest solver, then we could see blazing program speed increases in the near future. More PlayStation 3 News...