Hacker ya da diğer adıyla bilgisayar korsanı, şahsî bilgisayarlara veya çeşitli kurum ve kuruluşlara ait bilgisayarlara ve ağlara izinsiz olarak giriş yapan kişi olarak tanımlanabilir.
Bilgisayar ve haberleşme teknolojileri konusunda uzman olan,bilgisayar programlama alanında standartın üzerinde beceriye sahip bulunan ve böylece ileri düzeyde yazılımlar geliştiren ve onları kullanabilen kişi olarak da tanımlanabilir.Bilgisayar programcılığı alanında, bir hacker bir exploit'e bir dizi düzeltme uygulama ya da varolan kodları kullanma yoluyla bir amaca ulaşan ya da onu 'kıran' bir programcıdır. Bazıları için, hacker sözcüğünün olumsuz bir çağrışımı vardır ve sistem "kıran" gibi çirkin, verimsiz ve kaba saba programcılık görevlerini yapan kişileri anımsatır. Hacker ile Cracker birbirine karıştırılmamalıdır. Cracker programları kırmaz, yalnızca program üzerinde ayarlandığı gibi değişiklikler yaparak ücretsiz kullanım, tema, dil gibi değişiklikleri program üzerine kurarlar. Türkçede 'crack' yerine 'ilaç' sözcüğü de kullanılmaktadır.
crack; program kırma eylemine ve ters mühendisliğe verilen isimdir. hack ise kelime anlamı olarak "küçük parçalar koparmak" anlamındadır ve hacker'lerin algoritmik düşünme, nesnel bir topoloji oluşturma, istatistik (makul aralıklar içinde iterasyon yapma ve uyumu (korelasyon) yorumlama) yetenekleri tesadüfi gelişmiştir. düşük seviye programlama; donanım üzerinde sağlam geçmişleri ve iddiaları yoktur.