Часто слово хакер используют для того чтобы описать человека, который на самом деле занимается взломом программного обеспечения (software cracking). Такая путаница возникай из за того, что считается что все хакеры — это те, кто взламывают систему для кражи информации. Это не всегда так и часто наносит ущерб репутации талантливых хакеров во всем мире.
Хакеру прежде всего интересно узнать о функционировании операционной системы компьютера, и он обычно знаком с языками программирования. Знание программирования помогает хакеру обнаружить лазейки в системе и причины этих лазеек. Хакеры постоянно пытаются узнать о недостатках в новых системах или программном обеспечении, а затем поделиться тем, что они обнаружили, с разработчиками. Если, это конечно белые шляпы.
Крякеры (cracker) — это человек, который взламывает программное обеспечение, чтобы повредить систему и украсть информацию для личной выгоды. Взломщики получают несанкционированный доступ к системе или связанной с ней сети, крадут информацию, останавливают службы системы, влияющие на подлинных клиентов, и сеют хаос для владельца системы. Выявить Крякеров очень легко по их злонамеренным действиям.