在我最近的帖子将Fios家庭路由器的SSID设置为表情符号后,我决定将我的WiFis SSID设置为“̶̛̛́̓̿̈͐͆̐̇̒̑̈́͘͝aaa”。该名称是36个八位字节,超过了2012年标准802.11第6.3.11.2.2节规定的最大32个八位字节。我的路由器只是将名称减少到32个八位字节,但为了保持顺从。这是根据iw a\xcc\xb6\xcc\x81\xcc\x93\xcc\xbf\xcc\x88\xcc\x9b\xcc\x9b\xcd\x90\xcd\x98\xcd\x86\xcc\x90\xcd\x9d\xcc\x87\xcc\x92\xcc\x91\xcd发送的,原始十六进制为97ccb6cc81cc93ccbfcc88cc9bcc9bcd90cd98cd86cc90cd9dcc87cc92cc91cd.。
我决定看看它是如何在不同的设备上显示的,并得到了一些相当奇怪的结果。下面是经过测试的设备,大致按照它们的操作方式进行了分类。
S8和Firestick都以我认为正确的方式呈现了结果,只显示了一些垂直字符截断的名称。
接下来是iPhone和Apple TV。起初,我不知道他们把这些人物描绘成什么样子。起初我以为它只是扩展的ASCII,但是第三个字符∂不在扩展的ASCII中。在Apple Discorde服务器上打听了一番后,有人说它可能使用的是Mac OS罗马字符集。事实证明,这很奇怪,因为iOS内部使用的是UTF-8,而不是Mac OS Roman,因为随着MacOSX的发布,UTF-8已经被逐步淘汰。
说到苹果设备,将不会有任何MacOS的照片,尽管不是因为没有尝试过。我无法让我的任何一台Macbook承认这个WiFi网络的存在。无论是Wifi下拉菜单还是机场命令行实用程序都不会显示它。
Windows10正在使用我认为是每个八位字节的UTF-8字符来呈现它。这与将wifi名称分割成8位字节并将其用作UTF-8字符时的原始十六进制相匹配。
ChromeOS只是被吓坏了,不知道如何呈现除了单数a之外的任何字符。
Kindle和Vizio TV都显示了与a一起返回的ic,然后转义的十六进制字符。