Using valid characters in your e-mail address
By Ian "Gizmo" Richards "Windows Secrets"
E-mail standards let you use characters other than letters and
numbers in your addresses.
Unfortunately, various ISPs and webmail systems have differing
rules governing which addresses are acceptable, making the whole
area a bit of a mess.
E-mail address standards ignored by some ISPs
If you've ever sent an e-mail that's gone missing, or if you
failed to receive a message someone sent you, it's possible that
an invalid e-mail address was the culprit. The trick is in
knowing a properly crafted address from an invalid one. This
isn't as easy a matter as it may seem.
Allow me to demonstrate with this quick test: Which of the
addresses below is invalid?
john.smith.@somewhere.com
All.Geeks.are." #$%&*"@[72.52.134.216]
From the point of view of Internet standards, the first rather
innocuous-looking address is actually invalid, because it's
illegal to have a period next to the @ sign. The ghastly-looking
second address, by contrast, is perfectly valid, though it's
unacceptable to at least one major webmail service — Hotmail —
and probably others. To find out why, read on.
The allowable form of e-mail addresses is explained in an
Internet Engineering Task Force document known as RFC 5322 and,
to a lesser extent, in IETF document RFC 5321. These documents
are pretty impenetrable, so let me translate the relevant bits
into simple English for you.
An e-mail address consists of two parts separated by the @ sign.
The bit to the left of the @ sign is called the local-part, and
the bit to the right is called the domain. So if your e-mail
address is joebloggs@hotmail.com, then "joebloggs" is the
local-part and "hotmail.com" is the domain.
You may be surprised to learn that, according to the strict
standard, the local-part is case-sensitive. That means joebloggs@hotmail.com
is a different e-mail address from JoeBloggs@hotmail.com.
However, this part of the standard is ignored by most ISPs,
webmasters, and webmail services, which usually treat the
local-part as case-insensitive. This, as we shall see, is just
one of several areas where practice rather than standards
defines the validity of a particular e-mail address.
Another example is the use of special characters. According to
the standard, the local-part can be up to 64 characters long and
can consist of a mix of letters, numbers, or any of the
following 20 special characters:
! # $ % & ' * + - / = ? ^ _ ` . { | } ~
These characters, except the period, may appear anywhere in the
local-part of the address The period may not be used as the
first or last character of the local-part nor twice in
succession.
That may be what the standard says, but most e-mail providers
avoid issuing addresses that contain these special characters.
For example, many services allow only a single period to be used
in the local-part of an address.
E-mail services often allow you to create addresses containing
hyphens and underscores in the local-part, but this practice is
far from universal. For example, Gmail won't allow hyphens or
underscores. (Note that Gmail uses a plus sign [+] to designate
throwaway addresses; more on these address extensions below.)
Likewise, the IETF standard allows up to 64 characters in the
local-part, but very few e-mail services allow addresses
anywhere near that long.
So we have a very strange situation: clearly, defined standards
exist for e-mail address validity, yet the standards are largely
ignored by webmail services, ISPs, and other e-mail providers,
each of whom sets its own standards.
Real-world standards: Gmail, Yahoo, and Hotmail
I decided to find out exactly what e-mail addresses are allowed
by the major webmail services: Hotmail, Gmail, and Yahoo Mail.
There are actually two issues: which e-mail addresses these
services will issue to users, and which addresses the services
accept for outbound mail.
I was hopeful this would be neatly documented, but it's not. I
had to conduct my own experiments, applying for new e-mail
accounts to determine which addresses each service will
accommodate.
1. Gmail. Google's Gmail will issue e-mail addresses only when
the local-part is between six and 30 characters and consists of
letters, numbers, and a single period. Furthermore, the first
and last characters of the local-part cannot be a period. Oddly,
a period within the local-part is effectively ignored, so
john.smith@gmail.com is regarded by Gmail as the same address as
johnsmith@gmail.com.
Once you have a Gmail address, you can expand it by adding a
plus sign to the local-part and then some additional characters
to create a throwaway address for signing up at questionable
sites. Should that address become a spam magnet, you can create
a filter that redirects to your spam folder or trash folder any
mail using it. Unfortunately, many of the webforms used at major
sites don't recognize plus signs in e-mail addresses.
2. Yahoo. Yahoo Mail's system for creating temporary addresses
based on your primary address is more practical. This is a
principal reason Scott Dunn gives Yahoo Mail the edge over
competing webmail systems in his July 24, 2008, review of the
services.
The local-part of a Yahoo Mail address must be between four and
32 characters and must start with a letter. It may contain
letters, numbers, underscores, and one period but can't end with
a period or underscore.
3. Hotmail. Microsoft's Hotmail service takes a different
approach: the local-part must be between one and 38 characters
long. It may contain letters, numbers, periods, hyphens, and
underscores. However, the local-part must start with a letter
and must not end with a period. As with Gmail and Yahoo Mail,
adjacent periods are not allowed.
The conclusion is immediate. There are no universal standards;
every mail system sets its own.
Only three characters are universally accepted
In the second part of my test, I tried to send an e-mail from
Gmail, Yahoo Mail, and Hotmail accounts to a special e-mail
address I set up at my Web site: !#$%&'*+-/=?^_`{|}~@techsupportalert.com.
That's a perfectly valid address from the point of view of the
Internet standard, but it's well outside what's acceptable to
these three services for their own users' addresses.
Both Gmail and Yahoo Mail allowed me to send mail to this
strange address. Furthermore, the e-mail arrived at that account
on my site's mail server. That's good news. It means that even
though Gmail and Yahoo Mail are very restrictive in what
addresses they're prepared to issue to their users, they're not
as strict when it comes to e-mail sent from their system. In
effect, you can send e-mail to virtually any valid address from
these services.
With Hotmail, it was a different story. Hotmail would not allow
me to send messages to my strange-but-legal e-mail address — I
got an error message as soon as I pressed the Send button. I did
a little experimentation, and it looks like Hotmail won't accept
any special characters in an address you're sending to, with the
exception of hyphens, underscores, and periods: - _ .
If one of your friends has an address containing other special
characters, you're out of luck.
I suspect Hotmail isn't the only e-mail service that won't let
you send to legally valid addresses containing special
characters. You can test your mail system's support for these
characters by sending a test message to !#$%&'*+-/=?^_`{|}~@techsupportalert.com.
How to craft a well-formed e-mail address
There are definite standards that define which e-mail addresses
are valid. However, these standards are largely ignored by mail
services, which instead define their own standards for the forms
of address that are acceptable.
In this somewhat chaotic situation, your best bet is to use an
e-mail address that everyone accepts — the lowest common
denominator.
I suggest that your address start with a letter and that the
local-part consist of six or more characters — letters and
numbers only. Stay away from special characters, even though the
e-mail standards permit them. That includes hyphens and
underscores. The use of a period is OK, provided it doesn't
occur at the start or end of the local-part. Avoid using two
periods, and certainly never have two periods next to each
other.
To play it really safe, stick with lower-case letters.
You may get away with using a more complex address, but by
following the advice in this article, you're unlikely to have
your e-mail bounce due to address-validity problems. As a bonus,
you're never going to have your address rejected when
registering at Web sites or signing up for newsletters. |
|