Well, there are tons of different DRM algorithms, but none of them are backed by secure cryptography since you cannot logically restrict people from "saving" but not from "viewing". There's no mathematical backing to the idea. This is probably why Grooveshark didn't bother using a complex algorithm... they already know that DRM is fragile and will be broken by someone who's determined enough. So the performance cost of a real encryption scheme just isn't worth it.
As for storing passwords with something like that: that's terrible. We have great hashing / salting algorithms, and tools like bcrypt make them very easy to use. Of course, in this case you're not letting anyone (including yourself) _view_ the password (you're just checking for correctness against a known hash), so the solution is very different and is theoretically secure (unlike DRM).
> Well, there are tons of different DRM algorithms, but none of them are backed by secure cryptography since you cannot logically restrict people from "saving" but not from "viewing"
Actually you can, but this requires smart viewer. You sending encrypted data into viewer where data is decrypted. Secret keys storing inside viewer and retrieving them is hard task. Of course that requires DRM-enabled display, participating video card, drivers, etc.
As for storing passwords with something like that: that's terrible. We have great hashing / salting algorithms, and tools like bcrypt make them very easy to use. Of course, in this case you're not letting anyone (including yourself) _view_ the password (you're just checking for correctness against a known hash), so the solution is very different and is theoretically secure (unlike DRM).