通过GPU获取心仪的PGP秘钥
前因
某知名PGP&GNUK&FIDO群组突然开始刷PGP刷上瘾了,因此研究了一个下午,大概搞明白运作模式了
准备工作
本教程基于Ubuntu20系统
- 云服务器(GPU型)
- ssh连接
- 耐心
- CNY
正文
购买并准备云服务器
首先第一步就是买服务器了,虽然本地跑也没人拦着你,但是没啥好显卡,我索性就去租一个服务器了。
前往平台点我前往(AFF警告),注册账号,并且申请一台服务器。
注册我就不多写了吧,直接快进到买服务器那里
选择我的实例
-租用新实例
然后根据自身需求选择合适的显卡(一般刷12位3090足以)
镜像推荐选ubuntu20的最好
选择后等待一小会,应该就能看到服务器的链接命令和密码了
复制连接命令到cmd中,然后复制密码过去就行
连接成功后应该是这样
然后就可以进入下一步了
安装软件
首先,开网页到这个地址https://github.com/cuihaoleo/gpg-fingerprint-filter-gpu
把教程看一遍!!!
然后在命令面板中输入下面的命令
git clone https://github.com/cuihaoleo/gpg-fingerprint-filter-gpu
可能会卡一会(国内连github本身就是个随缘的事情),下载完成后应该是这样的
之后,我们直接进入项目目录
cd gpg-fingerprint-filter-gpu/
然后安装前置插件,中途可能会有多次按y的提示,按下即可。
apt update
apt install libgcrypt20-dev screen
安装完毕后,就可以执行编译命令了(记得在项目目录中)
make
等待一小阵子,应该会编译成功
同时,你会看到一个绿色的东西
这样就说明安装成功了
使用软件
使用就很简单了,一条命令和时间就行
./gpg-fingerprint-filter-gpu -a ed25519 -t 155520000 'x{12}' ./xxx
其中-a代表秘钥类型 -t代表最大时间戳(这个东西决定了你运算占用率),后面的x{12}
代表算多少位相同的数字,比如我需要12个0,就0{12},x{12}
代表从12个0到12个f去匹配。最后是输出文件名称。
然后就无脑刷起来吧,刷完了之后就用FTP下载到本地,执行下面这个命令注册到你自己的秘钥库中
gpg --allow-non-selfsigned-uid --import ./xxx
保护
为了防止你突然断网导致运算丢失,可以使用screen
保护你的ssh,命令如下
screen -U -S speed
在之后的弹框中,执行命令即可
如果意外ssh连接掉了,使用下面命令重新连接即可
screen -U -r speed
注意,-U代表使用utf-8,他们家的服务器用的中文,会乱码,所以一定要加哦!