What happens if two people with the same Battle Tag are on my friends list or in my game?

Solution 1:

From the point of view of an attacker who wants your stuff, impersonating another friend you have seems like a relatively difficult thing to pull off.

  1. You can only change your BattleTag once, so someone can't endlessly cycle their name looking for easy marks. A level 1 asking for high-level gear is a bit suspicious; investing a great deal of time to get to 50-60 for a con that might work a handful of times is probably a lost cause.

  2. You either need to
    • accept a friend request out of the blue from someone you do not know or feigns it "Hey cute stuff, I didn't know you played D3 ;-)"
    • a "duplicate" friend request; hopefully seeing two identical names in your list would raise flags
    • or one shortly after an "oh, I'll add you on BNet" comment likely made off BNet. If they're able to monitor the latter, then you either are
      1. screwed anyways because the keylogger on your computer has already recorded your Battle.NET user/password, or
      2. royally screwed as they're tapping your home/phone/work (or standing right behind you).

  3. Once your friend, they would need to maintain some level of rapport that is consistent with what your past experiences.

If you are still worried, you could take the following steps:

  1. Do not add people you do not know to your friends list. If they add you, contact them through some other means (e.g. SE chat room, IM, whatever) and tell them to put something identifiable in the message that is attached with the friend request (as an aside, I've probably rejected a half-dozen requests made because my name was on the GSE list and I didn't recognize them) or check their numeric identifier afterwards (right-click name, "View Profile"):

    enter image description here

  2. Use RealID as Melini mentions. This is unique and will display their real name.

  3. Talk to/interact with your "friends" before blindly giving them stuff. If they're level 1, don't give them stuff for their or their "other friend's" "level 59 Witch Doctor". If you're worried about giving away level 1-20 stuff, the opportunity cost of simply talking with your "friend" is vastly higher than grinding mobs in Hell/Inferno. If they are level 50-60 somehow (dubious, see above), don't blindly give them a ton of gear. Hopefully your friend would be offering other gear in return as they happen across it.

Solution 2:

Ok so there are basically two kinds of friends. realID friends and battletagfriends you add during a game. Most of my friends have their own name so you can see the battletag as well as the name they use as "private name"/realID. When you have two EliteD00d's you may be able to see their "private name" if one of them is a realID friend so EliteD00d#1 would be James for example. I cant imagine it to be very likely anyhow to have two guys with the same name. But your worries ingame should be easily fixed because the likeliness of the same RealID name as well as the charactername and level is pretty low and your friends will notice it when a lvl 51 barb named EliteD00d chats with them instead of your demonhunter. I guess you really have to piss someone off before they try to impersonate you ;)

Sorry if this is not the best technical answer but logic dictates you will never have those problems anyway and your RealID friends will know when it's not you.

EDIT: (Blizzards Answer from the Battle.net BattleTag™ FAQ) If my BattleTag isn't unique, what makes me uniquely identifiable? How will I know I'm adding the right friend to my friends list? Each BattleTag is automatically assigned a numeric BattleTag code, which combines with your chosen name to create a unique identifier (e.g. FallenSlayer#3592). Your BattleTag and code are viewable when you log in to Battle.net Account Management and within the Diablo III game client’s “Social” interface, and can be shared with other players who wish to send you a friend request manually. You will also be able to send BattleTag friend requests list within the context of a without knowing their BattleTag code -- by clicking a person’s BattleTag when they send you a message or group with you, for example. In either case, both players must agree to become BattleTag friends before either of you will be added to friends lists.