Protocols/OSCAR/Sign On/FLAP
OSCAR Protocol |
Introduction • Terms • Clients |
Basic |
Datatypes • FLAP • SNAC • TLV |
UUIDs • Errors • Tool IDs |
Host Interaction |
Rate Limits • Migration • Messages |
Other Services |
ADMIN • ADVERT • ALERT |
BART • BOS • BUCP • CHAT |
CHAT_NAV |
Tutorials |
Sign On • BART • Rendezvous |
ICBM • Locate • Buddies |
Foodgroups |
OSERVICE (0x0001) |
LOCATE (0x0002) |
BUDDY (0x0003) |
ICBM (0x0004) |
ADVERT (0x0005) |
INVITE (0x0006) |
ADMIN (0x0007) |
POPUP (0x0008) |
PD (0x0009) |
USER_LOOKUP (0x000A) |
STATS (0x000B) |
TRANSLATE (0x000C) |
CHAT_NAV (0x000D) |
CHAT (0x000E) |
ODIR (0x000F) |
BART (0x0010) |
FEEDBAG (0x0013) |
ICQ (0x0015) |
BUCP (0x0017) |
ALERT (0x0018) |
PLUGIN (0x0022) |
UNNAMED_FG_24 (0x0024) |
MDIR (0x0025) |
ARS (0x044A) |
This is for the FLAP-level sign on method. This is the oldest method of sign on, used prior to AIM 3.5. This refers to the FLAP__FRAME_SIGNON authentication method for a user to authenticate to the network. This works similar to, but is not the same as, FLAP__FRAME_SIGNON sequences used to connect to BOSS and other services.
Sequence
Below is a table laying out the sequence, which is further detailed in the sections below. Keep in mind that all of the packets are FLAP packets, and thus only the data is discussed.
Origin | Name | Length | Value | Note |
---|---|---|---|---|
Host | FLAP_VERSION | 4 | 00 00 00 01 | Always 0x01 |
Client | FLAP_FRAME_SIGNON | blob | xx .. | TLV chain containing authentication information |
Host | FLAP_FRAME_SIGNOFF | blob | xx .. | TLV chain of either BOSS or error information |
FLAP_FRAME_SIGNON
X
FLAP_FRAME_SIGNOFF
X
Clients are allowed to, but not required to, send their own empty FLAP_FRAME_SIGNOFF after receiving this one.
Next steps
From Aleksandr Shutko: CLI_IDENT: client authorization request (channel 0x01)
|
Passwords are roasted when sent to the host. This is done so they
aren't sent in "clear text" over the wire, although they are still
trivial to decode. Roasting is performed by first xoring each byte
in the password with the equivalent modulo byte in the roasting
array (
0xF3, 0x26, 0x81, 0xC4, 0x39, 0x86, 0xDB, 0x92,
0x71, 0xA3, 0xB9, 0xE6, 0x53, 0x7A, 0x95, 0x7C
)
|
Example SNAC dump with flap header (uin="777777", pass="password"):
|