c语言中的socks代理认证

c语言中的socks代理认证,c,sockets,packet,socks,C,Sockets,Packet,Socks,我有一个设计用来制作袜子握手包的函数;但是我找不到任何关于如何填写授权字段的信息。身份验证数据包是如何格式化的 void socks_auth(int sd, char *buffer) { char *ptrBuff; ptrBuff = buffer; *(ptrBuff++) = SOCKS_V; *(ptrBuff++) = 2; *(ptrBuff++) = 0x00; *(ptrBuff++) = 0x02; send(sd,

我有一个设计用来制作袜子握手包的函数;但是我找不到任何关于如何填写授权字段的信息。身份验证数据包是如何格式化的

void socks_auth(int sd, char *buffer) {
    char *ptrBuff;
    ptrBuff = buffer;
    *(ptrBuff++) = SOCKS_V;
    *(ptrBuff++) = 2;
    *(ptrBuff++) = 0x00;
    *(ptrBuff++) = 0x02;
    send(sd, ptrBuff, ptrBuff - buffer, 0);
    recv(sd, buffer, 2, 0);
    if (buffer[1] == 0xFF) write(STDOUT_FILENO, "not supported\n", 14);
    if (buffer[1] == 0x02) {

    };
}

我建议您从SOCKS协议版本5开始,可能还有针对SOCKS版本5的GSS-API身份验证方法


如果这两种方法都不起作用,也许可以查看的源代码(可以充当SOCKS5代理)会有所帮助。

我建议您从SOCKS协议版本5开始,可能还有针对SOCKS版本5的GSS-API身份验证方法


如果这两种方法都没有帮助,也许可以查看的源(可以充当SOCKS5代理)也会有所帮助。

身份验证和安全数据传输是在应用程序级别完成的,您填写的是传输层。检查SSL/TLS。它应该很容易实现您需要使用的功能OpenSSL@Elalfer我认为这个问题是关于客户端向SOCKS代理进行身份验证,以便允许使用该代理。身份验证和安全数据传输是在应用程序级别完成的,您填写的是传输层。检查SSL/TLS。它应该很容易实现您需要使用的功能OpenSSL@Elalfer我认为这个问题是关于客户端向SOCKS代理验证自己,以便允许使用代理。