You should check out ATI’s Stream 2.0 driver stack if you own a compatible GPU and happen to be able to jump through all the hoops required to get it working. My HD4850 did around 8.000 PMKs/s on Stream 1.4 (aka Brook+) and now does around 17.000 PMKs/s on Stream 2.0 (OpenCL).
Finally there is a benefit to ruin your system-installation with ATIs broken driver packages…
I’ve just submitted code to svn that brings a long-awaited feature to 0.2.5: Using SSE2 to compute the Key Confirmation Key and the Message Integrity Code when attacking a EAPOL-handshake. Long story short: The commands attack_cowpatty and attack_db (aka “cracking the password via precomputed tables“) are MUCH faster than before. Using Pyrit 0.2.5-svn r208, my MacBook Pro 2×2.5Ghz and a precomputed database I got around 300.000 keys per second. With r209 I get around 1.000.000 keys per second; we are more than 3x as fast as before.
I’ve also fixed a stupid performance regression and improved the performance of the storage-backend. All in all you should see some flying wheels with r209.
Two new cli-functions have found their way into svn recently:
Let’s you add passwords from a file-like source just like ‘import_passwords‘ but skips the whole ‘uniqueness-checking’. While this command provides a much better (and constant) performance, you can easily poison your database with multiple entries of the same password. Use this command if you have a large source of passwords where you know that every entry is guaranteed to be unique.
This command improves Pyrit’s network-functionality by serving a local or foreign storage-source via RPC. It enables you to have multiple network-clients of Pyrit work on the same storage, without letting each of the clients access that storage directly. You can have network-based access to storage source that don’t provide network-access on their own (like file:// and sqlite://) or hide a mysql-database behind a firewall and let multiple clients access that database only via Pyrit’s RPC-interface.
The port 17934 must be open for TCP-connections for this function to work.
The server on 192.168.0.100 (where all the data is):
pyrit -u sqlite:////var/local/pyrit.db relay
A client on another host (with the big GPU):
pyrit -u http://192.168.0.100:17934 batch
Please note that “cpyrit-stream” will be removed from trunk and is no longer supported. ATI now provides a “stable” (in ATI-terms) OpenCL-driver that is supported through “cpyrit-opencl”
Favourite Hack: Analysis of DECT implementation flaws and attacks against DECT-Standard-Cipher
DECT (Digital Enhanced Cordless Telecommunications) is a standard for cordless phones. The goal of deDECTed.org is to better understand DECT and its security and to create an Open Source implementation of the DECT standard. (http://www.dedected.org)
Favourite release: Fedora 12
Fedora is a Linux-based operating system that showcases the latest in free and open source software. Fedora is always free for anyone to use, modify, and distribute. (http://www.fedoraproject.org)
Favourite music-album: Cryptik Howling – Them