USERID-feltet i SOCKS4 på ledningen
Forklarer USERID-feltet i SOCKS4 og hvorfor tolkningen av det avhenger av serveren og ikke av SOCKS5-autentisering med brukernavn/passord.
SOCKS4 inneholder en USERID-streng med variabel lengde som avsluttes av en nullbyte. Serveren tolker denne identifikatoren etter sin policy; protokollen følger den ikke med SOCKS5-underforhandling av brukernavn/passord.
En SOCKS4 CONNECT-forespørsel til dokumentasjonsadressen 203.0.113.8, port 443, med en tom USERID er:
04 01 01 bb cb 00 71 08 00
Den niende byten, 0x00, avslutter det tomme feltet. Det er ikke tegnet 0, hvis ASCII-verdi er 0x30. Utelates det, forblir USERID uavsluttet.
Hva serveren forventer
En tom identifikator kan være passende når tjenesten ikke krever noen. Hvis den krever en bestemt identifikator eller en annen tilgangsmekanisme, følg dens dokumenterte policy. Et oppgitt navn etablerer identitet bare hvis serveren validerer det.
SOCKS4a utvider håndteringen av destinasjonens vertsnavn; det legger ikke til SOCKS5-autentisering. En tjeneste som krever en SOCKS5-konto, trenger en kompatibel klient og metode. Å sette et passord i SOCKS4 USERID kan ikke erstatte den utvekslingen og kan avsløre en uvedkommende legitimasjon.
Ved en avvisning, kontroller SOCKS-versjonen, den forespurte destinasjonen og brukerpolicyen hver for seg.