3.1 不要注册IDNs域名
什么是IDNs域名呢? IDNs域名即为国际化域名,又称多语种域名,它的英文全称是Internationalized Domain Names,是指非英语国家为推广本国语言的域名系统的一个总称,例如含有日文的为日文域名,含有中文的域名为中文域名。
IDNs域名的使用难度实际上要比我们常见的域名的使用难度大。首先,全世界的键盘基本上都是基于英语开发出来的。我们常用的“QWERTY”布局的键盘实际上已经有一百多年的历史了,由于这个原因,输入IDNs域名首先得安装一个相应的输入法,而且得经过好几道转换才能打出来,会给使用者造成非常多的时间上的浪费。不幸的是,大部分人没有这个耐心。还有另外一个重要的原因,就是IDNs的域名实际上是把目标客户群定位在了高端用户身上。这些高端用户的受教育程度比较高,有能力轻松地把自己国家的相应IDNs域名用键盘打出来。但是互联网上也有很多受教育程度不高的普通用户,他们就无法轻松完成了,让这些人一边查询字典一边打字基本上是不可能的。国际化域名的初衷是为了方便人们使用,但是实际上却会加大目标用户的使用难度,仅从这点来看,IDNs域名就不值得注册。
目前IDNs域名还出现了安全上的问题——同形异义字钓鱼攻击。这种攻击产生的原因是国际化域名为了支持多语种域名,使用了域名代码(Punycode)编写,而其中一些非拉丁字符语种的字母(例如西里尔字母)与拉丁字符非常相似,单从字面上看很难区分其差别,人的肉眼几乎无法识别出来。
尽管Chrome、Firefox等主流浏览器在新版本中修复了这个安全问题,但还有很多人、企业和机关单位的浏览器版本较旧,他们无法完全避免这个安全问题。就算是修复了的新版本浏览器,也无法完全避免这个问题,因为浏览器如果发现域名的一个字段里所有字符都是同一种语言,就不会进行编码。由于这个复杂的原因,导致如Chrome这样的浏览器,在碰到这样的域名时,有时候不能以域名代码的方式安全显示出来。
如果未来有一天,如Chrome这样的现代浏览器把上面的问题完全解决了,即统一用域名代码的方式安全显示出来,但是这样又会使推广IDNs域名的努力白费。因为这样一长串字符,有几个人能记住呢?
截至本文写作完成时,已经有很多这样的域名被注册了,这些被发现的同形异义字钓鱼域名,都是用西里尔字母注册的。目前国内不少知名网站的西里尔字母域名已经被注册了,部分域名名单如表3-1所示。
表3-1 部分域名名单
图3-1所示是西里尔字母Unicode代码表。其详细信息的链接为http://www. unicode.org/charts/PDF/U0400.pdf。相关的西里尔字母增补Unicode代码表的链接为http://www.unicode.org/charts/PDF/U0500.pdf。
图3-1 西里尔字母Unicode代码表
根据这些信息,相信未来会有更多同形异义字钓鱼域名出现在世人面前。更多相关详细信息请访问链接http://www.freebuf.com/articles/web/136729.html。
下面以IDNs域名中的中文域名为例,生动详实地说明IDNs域名不值得注册的理由。
中文域名实际上是不适合个人使用的。这些中文域名,有很大一部分是被中大型企业所购买,企业购买它们实际上是出于品牌保护的考虑,而且购买了以后基本上都不会正式启用。由于近年来中国域名市场的火爆,故有一部分域名被一些自以为了解中国的外国人士购买,企图从中分得一杯羹;还有一些则被一些被忽悠的小企业和各大高校(例如作者本人所毕业的学校)购买。
中文域名不是主流常见域名,不便于输入,而且价格也不便宜。记得中文域名刚推出时,在万网(现属于阿里云旗下品牌)的价格为320元左右,这么多年过去了,价格跟其他主流域名相比,还是没有什么优势,而且有些后缀还有收智商税的嫌疑。以下来自国内主流域名商——阿里云,相关链接为https://wanwang.aliyun.com/domain/searchresult/?keyword=老王经销商&suffix=.com,如图3-2所示。
图3-2 在万网搜索可注册的中文域名
大家可以看到,最后的那个“老王经销商.集团”,价格达到了五位数的恐怖数字。这样的价格,完全不适合个人使用(是否适合公司使用有待商榷)。最关键的是,中文域名实际上还是英文域名,而且还是又丑又长很难记忆的那种。
图3-3中展示的结果是用中文域名转码工具转换的。(工具网址链接https://www.yunaq.com/tools/dnstranscoding/;工具简介:中文域名在解析的时候,须经转换为xn-xxxxxxxx.com/.cn形式的ASCII码,后者称为Puny Code。“.中国”后缀不被标准的解析服务器支持,所以CNNIC同时赠送同名的.cn中文域名,所以“.中国”和“.cn”中文域名是等价的。类似地,“.公司”实际使用是需要附加.cn后缀,或者安装CNNIC的中文域名插件访问,因此DNS解析的Punycode会被转换为.xn-55qx5d.cn后缀,“.网络”也类似。)从图3-3可以看出,这样做相当于使用了一个障眼法。
图3-3 使用中文域名转码工具
中文域名还有一个小缺点,就是域名绑定比较困难。在绑定到服务器时,由于基础设施架构的缘故,绑定比较麻烦或者干脆不支持,即使能绑定,大部分只能用转码后的域名。