Actually, we can encode (with a hash) a username in author URLs, but sadly, there is another and bigger problem. Nice guys behind WP use usernames (logins) and user IDs everywhere in HTML code. For instance, look at the body tag on any author page. It contains the CSS class with – guess what – the username and the user ID. Cheers! Moreover, many theme developers do the same things and stylize pages by using usernames and user IDs. Class names, element IDs, img alts. All pages literally packed with user details. ??
After that many users ask me “how do hackers and bots find out my personal login that is known only to me”. Who knows buddy, who knows…
It looks incredible, but any freshly installed WordPress powered site can be hacked in no time in a fully automatic mode. A bot takes username from an author page link of a first post which created automatically with admin username, uses it to find a password via a simple brute-force attack (modern networks allow to do that in a few minutes) and then install some malicious code or an infected plugin on the website. Cheers! Owner of the website doesn’t even know what happened. To be exact that hapless owner has no chances at all!
So we have to install any reliable security plugin immediately after installing WordPress