ricq icon indicating copy to clipboard operation
ricq copied to clipboard

[feat] fetch ECDH key from key rotate server by HTTPS

Open xtexChooser opened this issue 2 years ago • 1 comments

看起来rs-qq并没有从keyrotate服务器获取密钥的实现?

QQ(oicq.wtlogin.tools.e)会从https://keyrotate.qq.com/rotate_key?cipher_suite_ver=305&uin=${uin}获取指定用户的ECDH密钥并使用,QuerySpan为按秒计算的有效期。

Mirai实现:EcdhInitialPublicKeyUpdater.kt#L80 MiraiGo实现:crypto.go?L52

xtexChooser avatar Feb 12 '22 03:02 xtexChooser

看起来rs-qq并没有从keyrotate服务器获取密钥的实现?

QQ(oicq.wtlogin.tools.e)会从https://keyrotate.qq.com/rotate_key?cipher_suite_ver=305&uin=${uin}获取指定用户的ECDH密钥并使用,QuerySpan为按秒计算的有效期。

Mirai实现:EcdhInitialPublicKeyUpdater.kt#L80 MiraiGo实现:crypto.go?L52

这个有 V1 和 V2,会优先用 V2,如果从服务器获取失败了,会用 V1 兜底(固定的)。现在暂时只写了 V1 的,因为比较方便。

lz1998 avatar Feb 12 '22 12:02 lz1998