Generating addresses starting with certain characters such as "JoeAnonymousUserB7pMqyVa8JRcpZdCQLQ" Similar to how the SHA256 hash competition exists to validate a transaction, I wonder if this concept can be ported to addresses, so that the first few characters is significant to a human reader.


Is there value in making a public key address start with human readable text?
What approaches exist to accomplish this?  Must the key pair be re-generated continuously or there there space to place a nonce?
Could this cause legal issues?  ...such as a key that contains text matching censored information which is replicated to countries that ban that information
Yes, the concept is known, and called "vanity address". The problem with it is that it takes a lot of computing power. However, there is also a "split-key" method of generating vanity addresses, which lets you commission other people for the computing work. And finally, I created a website called Vanity Pool that handles a sort of free market of vanity miners and buyers.

As for the legal issues, I have already included a so called "illegal number" in the block chain as a part of my master thesis. So far Bitcoin hasn't been banned;).