Skip to main content

gpt

什么是Device Token? 在苹果的开发者文档中,Device Token 是通过 DCDevice 类的 generateToken 方法生成的。这个方法为设备创建一个临时的、匿名的标识符,常用于验证设备的完整性和身份。该 Token 主要用于与服务器交互时,帮助服务器验证发起请求的设备是否为合法设备,从而增加应用的安全性。生成 Token 的过程不会泄露用户的个人信息,确保了用户隐私的保护。 经过不严谨的研究,Device Token的生成是与开发者账号绑定的,也就是说,非openai开发者生成的账号是无法用在openai的认证服务中的。所以自己开发程序是无法获得openai需要的Device token的,必须通过抓包程序获取。

为什么需要Device Token? 因为Device Token可以获取 preauth_cookie,有了这个就可以获取到对应账号的refresh token,实现refresh token自由!

本教程将利用mitmproxy中间人攻击工具帮助你获取Device token

你需要: 1.一台苹果设备(以及可以在Apple Store下载ChatGPT的Apple ID) 2.一台计算机可以用来充当中间人代理苹果设备的流量 3.一台可以在苹果设备上登录的OpenAI账号

操作步骤:

1.在你的计算机上安装mitmproxy

Windows安装

pip install mitmproxy

Mac安装

brew install mitmproxy 或者 pip install mitmproxy

PS:其他系统可以自己尝试找一下安装方法

2. 命令行启动服务

mitmweb

默认监听端口为8080端口, 可以加 -p 参数指定监听端口 注意,使用mitmproxy时,苹果设备的梯子会失效,需要走本地(计算机端)代理 像这样(假设你的代理是 http://127.0.0.1:7890 7):

mitmweb --mode upstream:http://127.0.0.1:7890

3. 苹果设备设置代理 打开设置-无线局域网-点击你的WIFI(需要链接在计算机的同一个网络下)-配置代理-代理选择手动 设置服务器主机名(就是自己电脑本机IP地址)和端口(默认8080)

主机名获取方法: windows电脑通过 ipconfig 查看,mac 电脑通过 ifconfig 查看(IPv4那一个)

4. 苹果设备安装证书 手机浏览器输入http://mitm.it,点击这个获取描述文件并安装

image

image1968×686 99.7 KB

然后,在通用-关于本机-证书信任设置:信任该证书

image

image1728×382 33 KB

5. 苹果设备下载或者重装ChatGPT应用

在App Store下载或者重装ChatGPT应用,并随便登录一个OpenAI账号

6.在mitmweb获取你的Device token 在Search栏搜索https://ios.chat.openai.com/backend-api/preauth_devicecheck 27 里面有一条很长的device_token记录,复制它就可以正常使用了:smile:

恭喜:tada:,你已经成功获取了OpenAI颁发给你苹果设备的专属device token了,你可以拿它去获取refresh token了:tada::tada::tada::tada::tada:

那么接下来,可以参考论坛中这一篇文章,继续获取refresh token:https://linux.do/t/topic/42253

不是三级号也可以实现refresh token自由啦(bushi:tada::tada::tada: 如果您觉得有用,请给我这个快要升二级升三级的新手号一个赞吧:+1: 阿里嘎多3Q斯密达~