Recently I have had a task to check whether one of our products can send messages to email addresses with non-ASCII characters. Surprisingly for me that task was full of unexpected findings and challenges. And the most advance challenge was to get one of these non-ASCII character email addresses!
The second challenge was caused by the fact that many Email Service providers have not switched on international character support in email addresses yet. The RFC 6530 protocol allowing addresses with non-Latin and accented Latin characters was released in 2012. However, nothing has been changed since that time. Or, pretty much nothing. If you didn’t know, the previous protocol, RFC 3696 doesn’t allow register and use of unicode character email addresses at all. Anyway, let’s talk about that in detail!
A long time ago… in a land far, far away… when the internet was small and when everyone was speaking English on the internet, it was decided do not use non-English characters in domain names when developing DNS. In 1990s, after the web spread everywhere around the globe, IDN was introduced to allow use of any language in domain names. Browsers started support non-English domain names and people started registering these domains. However, all first level domains remain English until 2009. It was also allowed to register domain names using right to left languages and Asian languages as well!
Registering unicode character email address
Somehow I was sure there are plenty of email services and websites in Japan and China using non-ASCII characters in email addresses and domain names. However, it turned out they tend to use lating characters as well as the rest of the world. I asked few of my colleagues from China and Japan if they know any of Email Services allowing usage of non-ASCII characters but didn’t get any luck. For sure you can search for them on your own – may be you are luckier than me, however you are pretty much doomed without knowledge of language and without having a proper keyboard. Google Translate and virtual keyboard can potentially help you with that issue but add a bit of hassle.
One of the big advantages I have is that I can speak Russian language which is based on cyrillic alphabet which is indeed, requires unicode. Unfortunately none of well-known in Russia Email services like GMail, Yandex or Mail.ru allows you to register an email address with cyrillic characters in the local part (also known as user name) which goes before @ character.
However, Yandex allows to register email address with latin characters in the local part and cyrillic characters in domain part, which goes after @ character. So you can technically register your cyrillic domain and then add any* email address for that domain.
*Yandex announced support for cyrillic domains back in 2010 and promissed they will remove the non-ASCII character limitation for the local part of email address in the nearest future. After almost 7 years it is still hasn’t been implemented. Unfortunately, I do not own any cyrillic character domain, so this option doesn’t work for me.
After doing some research, I found out a couple of recently established Email services which allow you to register cyrillic character email addresses. I think it worth to mention DataMail by Data xgen technologies which supports Russian, Chinese, Arabic, Hindi and plenty of other languages I couldn’t use because it requires Russian registered sim-card in my case in order to sign up for the service. So I’ll quickly jump to another, Russian owned Email service письмо.рф I was using during my little experiment. Oh yes, they don’t use https protocol which is quite unsecure, I have already noticed that.
Sending an email to the full unicode character email address
I have successfully registered an email address with cyrillic characters in both local and domain part and sent a test email to that address using Gmail, Yandex and Mail.ru services.
In 2014 Google announced they are going to gain support for non-ASCII email addresses. According to their announcement, “A first step toward more global email”, adopting a new e-mail standard is difficult because every server between sender and recipient has to support unicode character sets used for email addressing. And they were ready to be that someone. This meant Gmail users will be able to send emails to, and receive emails from people who have these characters in their email addresses (e.g. 武＠メール.グーグル).
As I said, I have tried to send email from GMail to a cyrillic character email address.. and I failed. Gmail returned message not delivered error: “local-part of envelope RCPT address contains utf8 but remote server did not offer SMTPUTF8”. And apparently the problem is caused by Email service provider письмо.рф who doesn’t offer SMTPUTF8.
Mail.ru refused to send email: The “To” field contains the incorrect recipient address. Correct the error and resend the email.
Yandex was the only one who successfully delivered the email to the cyrillic character email address.
Sending an email to unicode character email address through SMTP
Finally, using SMTP to send an email was the last part of my test. As you may already guessed there was no point to use GMail smtp since their web interface already gave me an error due the fact that Email service письмо.рф did not offer SMTPUTF8. Same thing with Mail.ru who simply refused to deliver such an email. So I have used smtp.yandex.ru to send email to full unicode email adress and got error ‘The client or server is only configured for E-mail addresses with ASCII local-parts’ 😐
Sending an email to the email address with ASCII character local part and unicode character domain part
So this time I registered another cyrillic email address with ASCII characters in local part. Unfortunately Email service письмо.рф doesn’t allow latin characters in local part so I had to use numbers, e.g 1234567890@письмо.рф.
Both GMail, Yandex and Mail.ru succeeded in this test.
Sending email through yandex SMTP was successful as well.
As you may noticed, using non-ASCII character email addresses is not easy and gives you a lot of problems since it is not widely supported yet. Moreover, there are some security issues when using unicode in domain names due to unlimited phishing opportunities. Here, you can also read another good article about Phishing with Unicode Domains. Apparently you have to be a real patriot to use a non-ASCII emails or domain names.
That’s it, folks! :neutral:
Ivan Grigoryev's Blog
Living in New Zealand. Blogging about the country, beautiful places, everyday life.
Do a skydive - halfway completed; get 1400 - still working on; reach 300kph - completed by 96.6%