Dua istilah ini paling sering disebutkan ketika kita berbicara mengenai keamanan data. Hacker dan cracker dianggap sebagai orang yang bertanggung jawab atas pelbagai kes jenayah komputer (cybercrime) yang semakin marak dewasa ini. Padahal jika kita mau melihat siapa dan apa yang dilakukan oleh hacker dan cracker, maka anggapan tersebut bisa dikatakan tidak 100% benar.
Hacker adalah sebutan untuk mereka yang menggunakan keahliannya dalam hal komputer untuk melihat, menemukan dan memperbaiki kelemahan sistem keamanan dalam sebuah sistem komputer ataupun dalam sebuah software. Keputusan pekerjaan mereka biasanya dipublikasikan secara luas dengan harapan sistem atau software yang didapati memiliki kelemahan dalam hal keselamatan dapat disempurnakan di masa yang akan datang.Sedangkan cracker memanfaatkan kelemahan-kelamahan pada sebuah sistem atau software untuk melakukan tindak kejahatan.
Dalam masyarakat hacker, dikenal hirarki atau tingkatan. Hacker menduduki tempat kedua dalam tingkatan tersebut dan cracker berada pada tingkat ketiga. Selain itu masih ada beberapa tingkatan lain seperti lamer (wanna be). Berbeza dengan hacker dan craker yang mencari dan menemukan sendiri kelemahan sebuah sistem, seorang lamer menggunakan hasil temuan itu untuk melakukan tindak kejahatan. Seorang lamer biasanya hanya memiliki pengetahuan yang sedikit mengenai komputer terutama mengenai sistem keamanan dan pemrograman. Dalam komuniti hacker, lamer merupakan sebutan yang bisa dibilang memalukan.
Seorang hacker memiliki tujuan yaitu untuk menyempurnakan sebuah sistem sedangkan seorang cracker lebih bersifat destruktif. Umumnya cracker melakukan cracking untuk menggunakan sumber daya di sebuah sistem untuk kepentingan sendiri.