根据IP地址和主机名称和时区生成UUID

上一篇研究了用IP生成UUID

那么如果IP不小心在截图中泄漏了, 再加上我的脚本是开源的. 那么有一定的机会因为知道了IP就推测出UUID, 脚本中其它鉴权因素都是从UUID计算的. 那么就可以因为知道你的IP而连上你的节点. (我的脚本中的实现, 是把比如分流path, shortID, x25519公私钥等信息基于UUID计算得到的)


那么就需要再加一点盐. 

我选择加上hostname. 它就是你创建VPS的时候, 取的名字. 也可以在后台面板修改. 比如下面这些:

它是一个系统变量, 这样就可以得到.

cat /proc/sys/kernel/hostname


还可以加上系统的时区. 它是一个系统变量, 这样就可以得到.

cat /etc/timezone


最终的实现为这样

uuidSeed=$(curl -sL https://www.cloudflare.com/cdn-cgi/trace | grep -oP 'ip=\K.*$')$(cat /proc/sys/kernel/hostname)$(cat /etc/timezone)
default_uuid=$(curl -sL https://www.uuidtools.com/api/generate/v3/namespace/ns:dns/name/${uuidSeed} | grep -oP '[^-]{8}-[^-]{4}-[^-]{4}-[^-]{4}-[^-]{12}') 

评论

The Hot3 in Last 30 Days

无服务器 自建短链服务 Url-Shorten-Worker 完整的部署教程

ClouDNS .asia免费域名 托管到CloudFlare开CDN白嫖Websocket WS通道翻墙 / desec.io