Scallion:一款基于GPU的Onion哈希生成器

枫少@KillBoy
枫少@KillBoy
管理员
220
文章
0
粉丝
资源分享508,3991字数 1183阅读3分56秒阅读模式
AI智能摘要
想秒级生成专属Tor隐藏服务地址?Scallion这款开源神器正颠覆传统方案——它巧妙调用GPU算力,将.onion哈希生成速度飙至5760 MH/s(GTX 1080实测),比CPU方案快百倍!通过正则表达式可精准定制多模式地址前缀/后缀,同时支持GPG密钥生成。本文深度解析其OpenCL加速机制、跨平台部署要点及性能优化秘籍,安全研究员和隐私技术爱好者必备实战指南。告别漫长等待,高效构建你的匿名服务网络。
— AI 生成的文章内容摘要

Scallion:一款基于GPU的Onion哈希生成器-图片1

Scallion

Scallion可以帮助我们使用OpenCL来创建GPG密钥以及针对Tor隐藏服务的.onion地址。Scallion基于Mono软件平台开发和运行,并已在Arch linux平台上成功测试,工具的运行依赖.NET 3.5+(已在Windows 7和Windows Server 2008平台上测试)。

Scallion当前仍处于测试阶段,正在积极开发中,但是它目前已经可以正常使用了。我们的开发当前主要集中在性能、用户界面和安装难度方面的改进上,而不是在生成密钥以及相关算法方面。

工具依赖

1、安装并配置好OpenCL以及相关驱动器。

2、OpenSSL,在Windows环境下,已包含有预内置的x64 DLL。

3、尽在Windows平台下,需要VC++ Redistributable 2008

工具下载

最新版本源码压缩包:【点我下载

linux环境下构建

依赖组件

针对自己的Linux发行版,获取最新版本的Mono:【传送门

使用下列命令安装常用依赖组件:

sudo apt-get update

sudo apt-get install libssl-dev mono-devel

AMD/OpenSource构建命令:

sudo apt-get install ocl-icd-opencl-dev

Nvidia构建命令:

sudo apt-get install nvidia-opencl-dev nvidia-opencl-icd

最后,运行下列命令:

msbuild scallion.sln

Docker Linux配置(Nvidia GPU)

1、获取nvidia-docker容器运行时环境:【点我获取】。

2、运行下列命令构建容器:

docker build -t scallion -f Dockerfile.nvidia

3、运行下列命令:

docker run --runtime=nvidia -ti --rm scallion -l

Windows环境下构建

1、在VS中打开“scallion.sln”

2、构建解决方案

工具使用

枚举设备:

$ mono scallion/bin/Debug/scallion.exe -l

生成哈希:

$ mono scallion/bin/Debug/scallion.exe -d 0 prefix
 Cooking up some delicious scallions...
 Using kernel optimized from file kernel.cl (Optimized4)
 Using work group size 128
 Compiling kernel... done.
 Testing SHA1 hash...
 CPU SHA-1: d3486ae9136e7856bc42212385ea797094475802
 GPU SHA-1: d3486ae9136e7856bc42212385ea797094475802
 Looks good!
 LoopIteration:40  HashCount:671.09MH  Speed:9.5MH/s  Runtime:00:01:10  Predicted:00:00:56  Found new key! Found 1 unique keys.
 <XmlMatchOutput>
   <GeneratedDate>2014-08-05T07:14:50.329955Z</GeneratedDate>
   <Hash>prefix64kxpwmzdz.onion</Hash>
   <PrivateKey>-----BEGIN RSA PRIVATE KEY-----
 MIICXAIBAAKBgQCmYmTnwGOCpsPOqvs5mZQbIM1TTqOHK1r6zGvpk61ZaT7z2BCE
 FPvdTdkZ4tQ3/95ufjhPx7EVDjeJ/JUbT0QAW/YflzUfFJuBli0J2eUJzhhiHpC/
 1d3rb6Uhnwvv3xSnfG8m7LeI/Ao3FLtyZFgGZPwsw3BZYyJn3sD1mJIJrQIEB/ZP
 ZwKBgCTUQTR4zcz65zSOfo95l3YetVhfmApYcQQd8HTxgTqEsjr00XzW799ioIWt
 vaKMCtJlkWLz4N1EqflOH3WnXsEkNA5AVFe1FTirijuaH7e46fuaPJWhaSq1qERT
 eQT1jY2jytnsJT0VR7e2F83FKINjLeccnkkiVknsjrOPrzkXAkEA0Ky+vQdEj64e
 iP4Rxc1NreB7oKor40+w7XSA0hyLA3JQjaHcseg/bqYxPZ5J4JkCNmjavGdM1v6E
 OsVVaMWQ7QJBAMweWSWtLp6rVOvTcjZg+l5+D2NH+KbhHbNLBcSDIvHNmD9RzGM1
 Xvt+rR0FA0wUDelcdJt0R29v2t19k2IBA8ECQFMDRoOQ+GBSoDUs7PUWdcXtM7Nt
 QW350QEJ1hBJkG2SqyNJuepH4PIktjfytgcwQi9w7iFafyxcAAEYgj4HZw8CQAUI
 3xXEA2yZf9/wYax6/Gm67cpKc3sgKVczFxsHhzEml6hi5u0FG7aNs7jQTRMW0aVF
 P8Ecx3l7iZ6TeakqGhcCQGdhCaEb7bybAmwQ520omqfHWSte2Wyh+sWZXNy49EBg
 d1mBig/w54sOBCUHjfkO9gyiANP/uBbR6k/bnmF4dMc=
 -----END RSA PRIVATE KEY-----
 </PrivateKey>
<PublicModulusBytes>pmJk58BjgqbDzqr7OZmUGyDNU06jhyta+sxr6ZOtWWk+89gQhBT73U3ZGeLUN//ebn44T8exFQ43ifyVG09EAFv2H5c1HxSbgZYtCdnlCc4YYh6Qv9Xd62+lIZ8L798Up3xvJuy3iPwKNxS7cmRYBmT8LMNwWWMiZ97A9ZiSCa0=</PublicModulusBytes>
   <PublicExponentBytes>B/ZPZw==</PublicExponentBytes>
 </XmlMatchOutput>
 init: 491ms / 1 (491ms, 2.04/s)
 generate key: 1193ms / 6 (198.83ms, 5.03/s)
 cpu precompute: 10ms / 6 (1.67ms, 600/s)
 total without init: 70640ms / 1 (70640ms, 0.01/s)
 set buffers: 0ms / 40 (0ms, 0/s)
 write buffers: 3ms / 40 (0.08ms, 13333.33/s)
 read results: 67442ms / 40 (1686.05ms, 0.59/s)
 check results: 185ms / 40 (4.63ms, 216.22/s)
 9.50 million hashes per second
 Stopping the GPU and shutting down...

多模式哈希

Scallion支持通过原语正则表达式语句来搜索单一或多模式哈希,目前仅支持字符类型(例如[absd])。“.”字符代表任意字符,Onion地址长度固定为16个字符,GPG指纹为40个字符。你可以通过“$”来寻找前缀或后缀匹配,例如DEAD$。除此之外,你还可以使用pipe语句(例如pattern1|pattern2)来寻找多模式哈希,当然了,这种搜索模式下运行速度肯定不乐观。

查询样例

mono scallion.exe prefix[234567]
mono scallion.exe -c prefix scallion hashes
mono scallion.exe -c "prefix|scallion|hashes"
mono scallion.exe .........badbeef
mono scallion.exe --gpg badbeef$ # 生成GPG密钥
mono scallion.exe "suffixa$|suffixb$|prefixa|prefixb|a.suffix$|a.test.$"

Scallion工作机制

1、使用OpenSSL以及CPU生成RSA密钥

2、向GPU发送密钥

3、增加密钥的公共指数

4、对密钥进行哈希计算

5、如果生成的哈希非部分冲突,则返回第三步

6、如果生成的密钥未通过PKCS #1 v2.1的及健全性检查,则返回第三步

7、生成全新的密钥

速度/性能

初始的RSA密钥生成是在CPU上完成的,SHA1哈希计算则是在GPU上完成的。下面给出的是常见GPU的计算速度表:

GPU型号 速度
Intel i7-2620M 9.9 MH/s
Intel i5-5200U 118 MH/s
NVIDIA GT 520 38.7 MH/s
NVIDIA Quadro K2000M 90 MH/s
NVIDIA GTS 250 128 MH/s
NVIDIA GTS 450 144 MH/s
NVIDIA GTX 670 480 MH/s
NVIDIA GTX 970 2350 MH/s
NVIDIA GTX 980 3260 MH/s
NVIDIA GTX 1050 (M) 1400 MH/s
NVIDIA GTX 1070 4140 MH/s
NVIDIA GTX 1070 TI 5100 MH/s
NVIDIA GTX TITAN X 4412 MH/s
NVIDIA GTX 1080 5760 MH/s
NVIDIA Tesla V100 11646 MH/s
AMD A8-7600 APU 120 MH/s
AMD Radeon HD5770 520 MH/s
AMD Radeon HD6850 600 MH/s
AMD Radeon RX 460 840 MH/s
AMD Radeon RX 470 957 MH/s
AMD Radeon R9 380X 2058 MH/s
AMD FirePro W9100 2566 MH/s
AMD Radeon RX 480 2700 MH/s
AMD Radeon RX 580 3180 MH/s
AMD Radeon R9 Nano 3325 MH/s
AMD Vega Frontier Edition 7119 MH/s

MH/s = 百万哈希/秒

工具运行截图

Scallion:一款基于GPU的Onion哈希生成器-图片2

项目地址

Scallion:【GitHub传送门

https://www.freebuf.com/sectool/226179.html

 
枫少@KillBoy
评论  50  访客  50
    • 甜橙小兔
      甜橙小兔 0

      在Windows上装OpenCL驱动麻烦不?

      • 灵幡飘摇
        灵幡飘摇 0

        这工具名字取得挺有意思,葱和洋葱hhh

        • 糖糖仔
          糖糖仔 0

          GTX1070居然能跑到4100MH/s,有点厉害啊

            • 韵染丹心
              韵染丹心 0

              @ 糖糖仔 这速度真是惊人,显卡还能再挖掘点潜力。

              • VoidHacker
                VoidHacker 0

                @ 糖糖仔 4100MH/s这数据看着是真猛,我这老显卡泪目了

              • 雨音薰
                雨音薰 1

                之前搞过类似的东西,显卡差点烧了

                • DesolateDreamer
                  DesolateDreamer 0

                  为啥只支持.NET 3.5+?现在都4.8了

                  • 群聊窥屏怪
                    群聊窥屏怪 0

                    生成.onion地址要多久?

                      • 哗哗雨
                        哗哗雨 0

                        @ 群聊窥屏怪 用1070ti试了下,确实能到5000MH/s左右

                      • 魂灯摇
                        魂灯摇 0

                        AMD显卡支持怎么样?

                          • 蔫儿精
                            蔫儿精 1

                            @ 魂灯摇 AMD的卡稍慢点,但还能跑到几百MH,够玩了👍

                            • 个性如风
                              个性如风 0

                              @ 魂灯摇 A卡用开源驱动还行,闭源驱动各种坑

                            • 奈何桥畔
                              奈何桥畔 0

                              看不懂,但感觉很厉害的样子

                                • 温顺麋鹿
                                  温顺麋鹿 0

                                  @ 奈何桥畔 说实话,我也一头雾水,不过跑得快我还是乐呵。

                                • 阴阳童
                                  阴阳童 1

                                  这个能用来干啥?

                                    • 茶农尤
                                      茶农尤 1

                                      @ 阴阳童 主要用来建tor隐藏服务,你懂的

                                    • SolarMirage
                                      SolarMirage 0

                                      Docker配置那块没太看明白

                                      • 鱼泡泡
                                        鱼泡泡 0

                                        装OpenCL驱动折腾死我了,AMD显卡驱动总报错

                                        • 海原美
                                          海原美 0

                                          用GTX1060跑这个速度怎么样?

                                          • 兰皋
                                            兰皋 0

                                            这玩意儿搞出来的地址真能直接用?

                                            • 冷酷
                                              冷酷 0

                                              之前试过类似工具,linux下编译一堆依赖要装

                                              • 樱桃小丸
                                                樱桃小丸 0

                                                为啥非要mono啊,直接native不好吗

                                                • ZenithOrb
                                                  ZenithOrb 0

                                                  看到GPU速度表惊了,现在显卡都这么猛了?

                                                  • QuantumHaze
                                                    QuantumHaze 0

                                                    Docker那段完全没看懂,有更简单的教程没

                                                    • 懒骨头
                                                      懒骨头 1

                                                      生成密钥的时候CPU会不会成为瓶颈?

                                                      • 忧郁的黄瓜
                                                        忧郁的黄瓜 1

                                                        这种工具会不会被滥用啊🤔

                                                        • 溯光
                                                          溯光 0

                                                          葱和洋葱…这命名脑洞可以

                                                          • 青苔石板路
                                                            青苔石板路 0

                                                            AMD显卡支持咋样?有谁试过没?

                                                            • 懒猫晒太阳
                                                              懒猫晒太阳 0

                                                              这配置在M1芯片上能跑吗?

                                                                • 夜梦不醒
                                                                  夜梦不醒 0

                                                                  @ 懒猫晒太阳 M1芯片跑不了,ARM架构+OpenCL支持太差,别折腾了

                                                                • 火焰程序员
                                                                  火焰程序员 0

                                                                  折腾OpenCL驱动真费劲,上次搞了一下午

                                                                  • 内卷人
                                                                    内卷人 0

                                                                    看到葱的图片饿了…

                                                                    • 冰凌剔透
                                                                      冰凌剔透 0

                                                                      为啥非要用mono,直接写C++不行吗?

                                                                      • 翠微听雨
                                                                        翠微听雨 0

                                                                        生成.onion要等多久啊?

                                                                        • 落日刀锋
                                                                          落日刀锋 1

                                                                          GTX1060跑这个速度咋样?

                                                                            • 韵语嫣然
                                                                              韵语嫣然 1

                                                                              @ 落日刀锋 GTX1060实测大概1800MH/s,还行吧

                                                                            • 残骸猎人
                                                                              残骸猎人 0

                                                                              之前玩过类似工具,显卡风扇狂转

                                                                              • 傲骨寒霜
                                                                                傲骨寒霜 0

                                                                                Docker那段确实写得不太清楚

                                                                                • 山神斧
                                                                                  山神斧 0

                                                                                  命名玩双关倒是挺逗,但能不能别总拿菜名起项目名😂

                                                                                  • ZeroVector
                                                                                    ZeroVector 0

                                                                                    这东西生成的.onion地址真能稳定上线用?怕不是秒被封

                                                                                    • 象踏平原
                                                                                      象踏平原 0

                                                                                      Docker配置那段看得迷糊,有没有完整示例啊

                                                                                      • 云朵熊猫
                                                                                        云朵熊猫 0

                                                                                        AMD显卡跑这玩意儿发热严重不?R9 380X的老卡还能抢救下不

                                                                                        • 山魈
                                                                                          山魈 0

                                                                                          看到图片里的葱,我第一反应是下锅炒蛋,hhh

                                                                                          • 孤独旅人
                                                                                            孤独旅人 1

                                                                                            之前搞过一次,跑了三天才出个匹配前缀的密钥,太煎熬

                                                                                            • GlowUp
                                                                                              GlowUp 0

                                                                                              linux下编译依赖是真的烦,openssl版本不对直接GG

                                                                                              • 花花牛
                                                                                                花花牛 0

                                                                                                这工具名字比功能还出圈,葱和洋葱也算扯上亲戚了

                                                                                                • RedBrick
                                                                                                  RedBrick 1

                                                                                                  GPU跑这速度表挺有参考价值,我的老卡该退休了

                                                                                                    • Sapphire Orchid
                                                                                                      Sapphire Orchid 1

                                                                                                      @ RedBrick 老卡还能用就不错啦

                                                                                                    • 幻雾之灵
                                                                                                      幻雾之灵 0

                                                                                                      看不懂技术细节,但感觉这玩意儿能被用来干坏事啊🤔

                                                                                                    匿名

                                                                                                    发表评论

                                                                                                    匿名网友

                                                                                                    拖动滑块以完成验证