根据 RFC 2812,第3.1节,为了连接到IRC服务器,用户必须按以下顺序发出三个命令:
PASS <a password>
NICK <a nickname>
USER <a username> <mode> <unused> <a real name>
所以我们有一个密码,我们有三个不同的“名字”:昵称,用户名和真实姓名。
当我使用IRC时,我只有一个名字:聊天中其他人看到的名字。这是绰号吗?另外两个是什么?什么是密码?我知道IRC中有一个功能,您可以注册一个昵称和密码,这样只有您可以使用它,这个密码是什么?
提供的昵称 NICK
是用于在IRC上为您解决的名称。昵称在整个网络中必须是唯一的,因此您不能使用当时已在使用的昵称。
提供的用户名 USER
就是这个 user
参与你的 user@host
在IRC上向其他人显示的主机掩码,显示您的连接源自哪里(如果您从未见过这些,那么您的客户端可能正在隐藏它们)。在IRC的早期阶段,人们通常在多用户计算机上运行其IRC客户端,并且用户名与该计算机上的本地用户名相对应。有些人仍然使用来自多用户shell服务器的IRC,但在大多数情况下,用户名是残留的。
提供的真实姓名 USER
用于填充有人使用时出现的实名字段 WHOIS
命令你的昵称。与其他两个字段不同,此字段可能相当长并且包含大多数字符(包括空格)。有些人确实在这里写了真名,但很多人没有。
该 PASS
命令是可选的。如果您使用的IRC服务器需要密码,它将用于提供密码。某些服务器将使用提供的密码尝试将您登录到IRC服务。
请注意,RFC2812并不代表IRC的共识视图 - 它是由IRC的一个特定实现创作并专注于标准的更新。 RFC1459仍然是IRC的通用语言。
提供的昵称 NICK
是用于在IRC上为您解决的名称。昵称在整个网络中必须是唯一的,因此您不能使用当时已在使用的昵称。
提供的用户名 USER
就是这个 user
参与你的 user@host
在IRC上向其他人显示的主机掩码,显示您的连接源自哪里(如果您从未见过这些,那么您的客户端可能正在隐藏它们)。在IRC的早期阶段,人们通常在多用户计算机上运行其IRC客户端,并且用户名与该计算机上的本地用户名相对应。有些人仍然使用来自多用户shell服务器的IRC,但在大多数情况下,用户名是残留的。
提供的真实姓名 USER
用于填充有人使用时出现的实名字段 WHOIS
命令你的昵称。与其他两个字段不同,此字段可能相当长并且包含大多数字符(包括空格)。有些人确实在这里写了真名,但很多人没有。
该 PASS
命令是可选的。如果您使用的IRC服务器需要密码,它将用于提供密码。某些服务器将使用提供的密码尝试将您登录到IRC服务。
请注意,RFC2812并不代表IRC的共识视图 - 它是由IRC的一个特定实现创作并专注于标准的更新。 RFC1459仍然是IRC的通用语言。
我做了一些实验,唯一似乎重要的是缺口。密码确实用于注册您,并与之关联 缺口,而不是用户名或真实姓名。至少在Foonetic上。
首先,我使用昵称“Iggle”登录,还有一些随机的其他数据:
PASS stuff
NICK Iggle
USER whatever 0 * somerealname
然后我注册了
PRIVMSG nickserv register pinetree myemail@gmail.com
并验证了它。所以现在“pinetree”是Nick的密码:Iggle,用户名:无论如何,真实姓名:somerealname。
我断开连接并重新连接。
PASS something
NICK Iggle
USER whatever 0 * somerealname
它登录了我,但抱怨密码无效。好的:
PRIVMSG nickserv identify pinetree
这很有用,它给了我+ r。所以 PASS
命令确实对应于您向NickServ注册的密码。干 WHOIS Iggle
显示用户名“whatever”和真实姓名“some real name”。我再次断开连接并重新连接。
PASS pinetree
NICK Iggle
USER canada 0 * ghana
这让我陷入困境并且没有抱怨密码,直接给我+ r!这证实了 PASS
命令与给予nickserv的密码相同,并且因为我使用了不同的用户名和真实姓名,所以它表明这些都与密码无关 - 只有尼克很重要。 WHOIS Iggle
显示用户名“canada”和真实姓名“ghana”,没有提到我在之前登录时使用的数据。因此,每次连接到服务器时甚至可以使用不同的用户名和真实姓名,似乎没有人注意到。
结论: 这个缺口似乎是唯一重要的事情。一旦在nickserv中注册,它就永久地附加到密码上,并且用户名和真实姓名无关紧要,并且可以在每次登录时更改。它们甚至似乎都没有被服务器存储在任何地方。