随笔分类 - stun协议与代码实现
摘要:背景: 根据此前STUN系列可以通过C实现stun包的解析和打包,并进一步了解stun协议的详细使用细节。 本文所实现根据rfc5389版本实现的简版stun协议,如果需要可以自行添加更多的属性处理流程 。 windows端stun协议处理代码如下: 1:stun.h 定义stun的包类型,属性类型
阅读全文
摘要:fingeprint属性计算所有stun头到fingeprint之前的二进制进行crc32校验。 代码如下: #include <stdio.h> unsigned int gCrc32Table[256] = { 0x00000000, 0x77073096, 0xee0e612c, 0x9909
阅读全文
摘要:HMAC运算利用哈希算法,以一个密钥和一个消息为输入,生成一个消息摘要作为输出。HMACSHA1 接受任何大小的密钥,并产生长度为 160 位(20字节)的哈希序列。 linux平台代码: 依赖openssl库,先安装openssl依赖库: yum install openssl openssl-d
阅读全文
摘要:1:STUN消息头 消息头有20个字节组成:00 + 消息类型 + 消息体长度 + 魔术字 + 事务ID 前2个字节: 其中00占2位:固定全是0 消息类型占14位:其中根据消息头的前两个字节和C1C0划分为0x000:请求,0x001:指示,0x010:成功响应,0x011:错误响应。则消息方法只
阅读全文
摘要:英文原版可以看stun系列01:https://www.cnblogs.com/a4234613/p/15533433.html 翻译不足之处还请指正。 STUN(Session Traversal Utilities for NAT)NAT会话穿越应用程序 摘要: Session Traversa
阅读全文
摘要:原文地址://tools.ietf.org/html/rfc5389 后续提供rfc5389协议中文版 中文翻译版:https://www.cnblogs.com/a4234613/p/15533464.html 内容如下: Network Working Group J. RosenbergReq
阅读全文

浙公网安备 33010602011771号