ZeroTier的planet文件格式分析

本文分析了ZeroTier的planet文件格式,包括1个字节的类型、8字节的ID、公钥和签名,以及根节点和稳定端点的数据结构。每个根节点包含身份信息、稳定端点数量和地址,而稳定端点由地址、公钥、私钥(可选)和协议类型组成。
摘要由CSDN通过智能技术生成


C:\ProgramData\ZeroTier\One\planet 文件格式


1个字节的类型         TYPE_PLANET = 1,     TYPE_MOON = 127  
8字节的ID
8字节的ts
ZT_C25519_PUBLIC_KEY_LEN=64字节的公钥
ZT_C25519_SIGNATURE_LEN=96字节的签名
1个字节的根节点数量,最大为ZT_WORLD_MAX_ROOTS=4
        然后是循环取根节点的数据
        for(unsigned int k=0;k<numRoots;++k) {
            _roots.push_back(Root());
            Root &r = _roots.back();
            p += r.identity.deserialize(b,p);
            unsigned int numStableEndpoints = b[p++];
            if (numStableEndpoints > ZT_WORLD_MAX_STABLE_ENDPOINTS_PER_ROOT)
                throw ZT_EXCEPTION_INVALID_SERIALIZED_DATA_OVERFLOW;
            for(unsigned int kk=0;kk<numStableEndpoints;++kk) {
                r.stableEndpoints.push_back(InetAddress());
                p += r.stableEndpoints.back()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

langeldep

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值