In the 1700's and earlier, most people lived in small villages and went by a single name, like "Robert". In the occasional event when there was more than one "Robert", people would add a qualifier such as "Robert the blacksmith" or "Robert John's son" or "Robert from Westford". When people were born in and lived their whole lives in a small village, this system worked.
In the 1800's, and 1900's with the reduced cost of long-distance travel and the increase of the urban lifestyle, most people lived in communities from thousands to a few millions in size and routinely used two names like "Robert Johnson" and had a middle name to use rarely only to resolve ambiguity such as on official documents and such. Some people use their middle names almost like a password - reluctantly using the name for fear of identity theft.
IMO, starting in the 2000's, the advent of the global Internet community, population 7+ billion, has rendered the two-name system obsolete. I suggest that in the modern Internet age, use of three names should be routine. The DNS system is actually a good start on allowing people to acquire and keep a globally unique name. Unfortunately, due to the top-level-domain silliness of the DNS system, there could be "robert-millford-johnson.com" and "robert-millford-johnson.net" etc.
Maybe there should be a top level domain specific to personal names - .name for example. At birth, each person could have a unique domain name assigned to them by their parents. A newborn's birth certificate might show the domain robert-millford-johnson.name, thus guaranteeing the person a unique name throughout life. If people really want to have a password as part of their name, they could have a fourth name not included in the URL.