RAR GPU Password Recovery


At december 2010 igrargpu was finally transformed into commercial version with multi-GPU, multicore-CPU and GUI support. You can download it here. Screenshot:

AccentRPR running at ATI HD 5970

Chart with RAR 3.x performance for password length == 4.

RAR 3.x password recovery performance


I'll keep igrargpu v0.5 available for download here but you should count it only as demo version as it misses a lot of AccentRPR's options.

However, it was world first program using both ATI and nVidia GPUs to recover RAR 3.x passwords. And world fastest one.

Download it here.
View documentation.


October, 9 2009

v0.5 released.

Many changed been made, many bugs fixed, speed increased for ATI GPUs, etc, etc.
Check out the history.txt.

Now it looks like:

ighashgpu v0.5

June, 22 2009

Updated version released.

Dictionary based attack with modifiers based on rules implemented. It really easy now to crack passwords like "adminnn" or "Password12". In fact it's possible to define almost any transformation "normal word" -> "something that looks like a strong password".

June, 1 2009

Updated version released.

Support for RAR archives without encrypted headers added. Brute-force attack (with optional mask) implemented.

Example output for ATI HD4770:

D:\PROJECTS\GPURAR\RELEASE\>igrargpu.exe /a:b /c:s /min:1 /max:4 ppmd.rar
****************************************************************
***              RAR GPU Password Recovery v0.3              ***
***    For ATI RV 7x0 cards and nVidia 'CUDA' ones (G80+)    ***
***         (c) 2009 Ivan Golubev, http://golubev.com        ***
***             see "readme.txt" for more details            ***
****************************************************************

Opened [ppmd.rar]
CAL device: GPU clock = 750 Mhz, SP = 640.
Blocksize = 128 (x 64)
Starting brute-force attack, Charset Len = 26, Min passlen = 1, Max passlen = 4
Charset [abcdefghijklmnopqrstuvwxyz]
Starting from [a]
8192 passwords (len = 1) done in 2028 ms [speed = 4039.448]
8192 passwords (len = 2) done in 2418 ms [speed = 3387.924]
8192 passwords (len = 3) done in 2449 ms [speed = 3345.039]
8192 passwords (len = 3) done in 2450 ms [speed = 3343.673]
8192 passwords (len = 3) done in 2480 ms [speed = 3303.226]
8192 passwords (len = 4) done in 2715 ms [speed = 3017.311]
8192 passwords (len = 4) done in 2714 ms [speed = 3018.423]
8192 passwords (len = 4) done in 2730 ms [speed = 3000.733]
...
8192 passwords (len = 4) done in 2730 ms [speed = 3000.733]
8192 passwords (len = 4) done in 2730 ms [speed = 3000.733]
8192 passwords (len = 4) done in 2792 ms [speed = 2934.097]
8192 passwords (len = 4) done in 2730 ms [speed = 3000.733]
>>> Found password [ppmd] <<<
Processed 327680 passwords (including "fillers") in 111915 ms.
Thus, 2927.936 passwords per second in average.

Have fun and very productive day!

May, 13 2009

Updated version released.

nVidia CUDA cards support added.

May, 12 2009

Updated version released.

Only unicode dictionaries now supported. Block size parameter implemented.

May, 9 2009

Just tested RAR GPU recovery on freshly purchased ATI HD4770. I was expecting a bit more performance (by simple calculation HD4770 vs HD4850 as 750Mhz/625Mhz 640SP/800SP == 0.96 ratio). But in fact it more like 0.86.

4096 passwords (len = 6) done in 1828 ms [speed = 2240.700]
4096 passwords (len = 7) done in 1984 ms [speed = 2064.516]
4096 passwords (len = 8) done in 2125 ms [speed = 1927.529]
4096 passwords (len = 5) done in 1688 ms [speed = 2426.540]

Increasing block size helps. With 8192 passwords processing it hits theoretical 0.96 ratio.

8192 passwords (len = 6) done in 3234 ms [speed = 2533.086]
8192 passwords (len = 7) done in 3500 ms [speed = 2340.571]
8192 passwords (len = 8) done in 3766 ms [speed = 2175.252]
8192 passwords (len = 5) done in 2953 ms [speed = 2774.128]

While performance on HD4850 remains almost the same:

8192 passwords (len = 6) done in 3120 ms [speed = 2625.641]
8192 passwords (len = 7) done in 3386 ms [speed = 2419.374]
8192 passwords (len = 8) done in 3635 ms [speed = 2253.645]
8192 passwords (len = 5) done in 2871 ms [speed = 2853.361]

Looks like calibration for different cards required.

May, 6 2009

World first program using ATI GPU for RAR password recovery released. Shortly, recovery speed at ATI HD 4850 about 19x faster than on single core of Intel Q6600 @ 2.4Ghz.

Comments are welcome! rargpu (at) golubev (dot) com.

Example output:

***************************************************************
***                 RAR GPU Password Recovery               ***
***                    For ATI 48xx cards                   ***
***        (c) 2009 Ivan Golubev, http://golubev.com        ***
*** v 0.1 (more "proof of concept" than real "recovery" ^^) ***
***              see "readme.txt" for more details          ***
***************************************************************

Opened [trulala.rar]
140623 words at [insidepro.dic] (only with lengths >= 3 && <= 18).
4096 passwords (len = 6) done in 1576 ms [speed = 2598.985]
4096 passwords (len = 7) done in 1701 ms [speed = 2407.995]
4096 passwords (len = 8) done in 1840 ms [speed = 2226.087]
4096 passwords (len = 5) done in 1450 ms [speed = 2824.828]
4096 passwords (len = 6) done in 1576 ms [speed = 2598.985]
4096 passwords (len = 7) done in 1701 ms [speed = 2407.995]
4096 passwords (len = 8) done in 1841 ms [speed = 2224.878]
4096 passwords (len = 4) done in 1310 ms [speed = 3126.718]
4096 passwords (len = 5) done in 1451 ms [speed = 2822.881]
4096 passwords (len = 6) done in 1576 ms [speed = 2598.985]
4096 passwords (len = 9) done in 2324 ms [speed = 1762.478]
4096 passwords (len = 7) done in 1700 ms [speed = 2409.412]
4096 passwords (len = 6) done in 1591 ms [speed = 2574.481]
4096 passwords (len = 8) done in 1841 ms [speed = 2224.878]
4096 passwords (len = 5) done in 1451 ms [speed = 2822.881]
4096 passwords (len = 7) done in 1700 ms [speed = 2409.412]
4096 passwords (len = 6) done in 1591 ms [speed = 2574.481]
4096 passwords (len = 8) done in 1825 ms [speed = 2244.384]
4096 passwords (len = 4) done in 1326 ms [speed = 3088.989]
4096 passwords (len = 6) done in 1576 ms [speed = 2598.985]
4096 passwords (len = 5) done in 1451 ms [speed = 2822.881]
4096 passwords (len = 7) done in 1716 ms [speed = 2386.946]
4096 passwords (len = 6) done in 1576 ms [speed = 2598.985]
4096 passwords (len = 8) done in 1825 ms [speed = 2244.384]
4096 passwords (len = 9) done in 2309 ms [speed = 1773.928]
4096 passwords (len = 7) done in 1700 ms [speed = 2409.412]
4096 passwords (len = 5) done in 1451 ms [speed = 2822.881]
4096 passwords (len = 6) done in 1576 ms [speed = 2598.985]
4096 passwords (len = 8) done in 1825 ms [speed = 2244.384]
4096 passwords (len = 4) done in 1326 ms [speed = 3088.989]
4096 passwords (len = 7) done in 1700 ms [speed = 2409.412]
>>> Possible match [trulala] <<<
Finishing out.
4: 525 left, 4096 passwords (len = 4) done in 1310 ms [speed = 3126.718]
5: 3471 left, 4096 passwords (len = 5) done in 1451 ms [speed = 2822.881]
6: 3375 left, 4096 passwords (len = 6) done in 1591 ms [speed = 2574.481]
7: 52 left, 4096 passwords (len = 7) done in 1716 ms [speed = 2386.946]
>>> Possible match [trulala] <<<
8: 507 left, 4096 passwords (len = 8) done in 1841 ms [speed = 2224.878]
9: 1744 left, 4096 passwords (len = 9) done in 2324 ms [speed = 1762.478]
10: 3972 left, 4096 passwords (len = 10) done in 2465 ms [speed = 1661.663]
13: 1 left, 4096 passwords (len = 13) done in 2933 ms [speed = 1396.522]
0 passwords were skipped due to its length.
Processed 159744 passwords (including "fillers") in 69327 ms.
Thus, 2304.210 passwords per second in average.

Have fun and very productive day!