Anda di halaman 1dari 6

Thacher Shields

The Benefits of GPU Parallel


Processing In the Application of
Brute Force Password Cracking
Introduction
Central Processing Units (CPU) and Graphics Processing Units (GPU) are
unique pieces of computer hardware that perform high speed calculations to
run programs. CPUs typically perform sequential logic operations and GPUs
typically render images to be displayed on the screen. It has been observed,
however, that there are some logic and math operations which the GPU is
more suited. This will discuss the benefits and drawbacks of using GPUs to
perform logic and mathematical operations.

Architecture
CPU architecture is very different from GPU architecture. CPUs often
have a low core count and high cycle rate. As such, they can complete many
sequential operations very quickly, but are unable to perform many
operations simultaneously. Conversely, GPU architecture is designed to
perform thousands of operations at the same time, but, as a result, are
slower when performing sequential processes. The analogy can be made that
a CPU is like a four lane high way with an eighty mph speed limit and a GPU
is like a 1200 lane highway with a five mph speed limit.

Thacher Shields

CPUs are designed with sequential processing in mind. The CPU runs
programs such as the operating system, web browsing, word processing, and
spreadsheets. It is very well suited to perform sequential operations.
Sequential operations are operations that require completion of the current
task in order to begin the next task. Most decision making operations and
logical algorithms are sequential processes. For example, a flow chart is a
sequential process. The user must make the current decision before
considering the following decision.
GPU architecture is very different. GPUs are used in visual applications.
Their application is in video games, photo editing, 3D modeling, and media
production. The GPUs main task is to calculate colors and render images on
a display. Full high definition (FHD) is very common in modern systems. FHD
is defined as 1920 pixels across and 1080 pixels high. That comes out to
around two million pixels. At 24-bit color depth, the GPU must process twenty
four calculations per pixel. Since most screens display sixty images per
second, the GPU is usually performing 2,985,984,000 operations each
second. While a CPU could technically meet this requirement as well, it would
be very inefficient, and take processing power away from other critical
applications like the operating system.

Cracking Passwords
Since GPUs are well suited to parallel processing, they are often used
for tasks such as analyzing large datasets or cracking passwords. Password

Thacher Shields

cracking is very highly parallel. When cracking wireless passwords, there are
only two feasible methods. The first method is called brute force hashing.
Brute force hashing works by first collecting the wireless authentication hash
and then testing procedurally generated passwords against the original. The
other method is called a dictionary attack. Dictionary attacks work in a very
similar way. The only difference is that the list of hashes to attempt is prewritten and does not need to be generated on the fly. The advantage of using
a dictionary attack is that the word list only contains passwords that are
likely to be correct. For example, a brute force attack may need to guess
billions and billions of possible passwords, but a dictionary attack may only
need to guess a few million possibilities. The drawback to a dictionary attack
is that the word list may not contain the correct password, while a brute
force attack, given enough time, will always correctly guess the password.
Wireless networks are most often encrypted with Wi-Fi Protected
Access 2 (WPA2). WPA2 uses MD5 hashes to encrypt connection information.
When a user attempts to connect to an access point protected by WPA2, it
first encrypts the connection information using the MD5 hash algorithm.
Once encrypted, the password and connection details are sent over the air to
the access point. Once received by the access point, the information is
verified and the connection is made.
Hacking this connection is difficult, but not complicated. A hacker must
simply listen for the connection information to be sent over the air to the
access point. This connection information is known as a handshake. Once the

Thacher Shields

hacker has obtained the handshake, they can pull the encrypted password
out of it. Then, the hacker runs either a brute force or dictionary attack
against the encrypted password until a match is found.

CPU Speed vs GPU Speed


The GPU has a clear advantage here. A CPU has the capability to
complete the task, but it will take much longer. The GPU can test thousands
of passwords at the same time. A CPU can only test three or four at once. As
a result, the GPU can complete the task much more quickly. Furthermore,
users can add more GPUs to their system to increase power. CPU computing
is usually limited to a single CPU. GPU computing can be scaled up to as
many as four GPUs in a single system. When another GPUs are added to a
system, the systems computing performance dramatically increases.

Conclusion
It can be concluded that GPUs are better suited to highly parallel tasks,
such as password cracking. Password cracking requires a great deal of
computing power and is a non-sequential process. As such, GPUs are a better
option than CPUs. Due to their aptitude for parallel tasks and their high data
bandwidth, GPUs should be used to crack passwords.

Thacher Shields

Thacher Shields
1. Zonenberg, Andrew. Distributed Hash Cracker: A Cross-Platform GPUAccelerated Password Recovery System. Cracker.pdf. GPUComputing.net, 28
Apr. 2009. Web. 23 Feb. 2016.
<http://www.gpucomputing.net/sites/default/files/papers/916/cracker.pdf>.
2. Kasabov, Aleksandar, Jochem Van Kerkwijk, Marc Smeets, KPMG, and Michiel
Van Veen, KPMG. Distributed GPU Password Cracking. P11_report.pdf.
Universiteit Van Amsterdam System & Network Engineering, 20 May 2011.
Web. 25 Feb. 2016. <https://caldav.os3.nl/_media/20102011/courses/rp1/p11_report.pdf>.
3. "MD5." Wikipedia. Wikimedia Foundation, 24 Mar. 2016. Web. 24 Mar. 2016.
<https://en.wikipedia.org/wiki/MD5>.
4. "WHAT IS GPU COMPUTING?" What Is GPU Computing? Nvidia Corporation,
2016. Web. 24 Mar. 2016.
5. "Wi-Fi Protected Access." Wikipedia. Wikimedia Foundation, 24 Mar. 2016.
Web. 24 Mar. 2016. <https://en.wikipedia.org/wiki/Wi-Fi_Protected_Access>.
6. "Aircrack-ng." Cracking_wpa [Aircrack -ng]. Web. 24 Mar. 2016.
<http://www.aircrack-ng.org/doku.php?id=cracking_wpa>.
7. Baker, Marcus, and Roel Van Der Jagt. GPU-based Password Cracking. Rep.
University of Amsterdam System and Network Engineering, 5 Feb. 2010. Web.
24 Mar. 2016. <https://homepages.staff.os3.nl/~delaat/rp/20092010/p34/report.pdf>.
8. Burkels, Marc. "5 Reasons to Offload Your CPU with a GPU." Web log post.
Leaseweb/blog. Leaseweb, 15 Jan. 2014. Web. 7 Apr. 2016.
<http://blog.leaseweb.com/2014/01/15/5-reasons-offload-cpu-gpu/>.
9. "Ray Tracing (graphics)." Wikipedia. Wikimedia Foundation, 15 Jan. 2016.
Web. 07 Apr. 2016. <https://en.wikipedia.org/wiki/Ray_tracing_(graphics)>.

Anda mungkin juga menyukai