Perekam ketikan
Perekam ketikan dapat digunakan untuk kepentingan yang baik atau bahkan bisa digunakan untuk kepentingan yang jahat. Kepentingan yang baik antara lain untuk memantau produktivitas karyawan, untuk penegakan hukum dan pencarian bukti kejahatan.[1] Kepentingan yang buruk antara lain pencurian data dan password.
Perekam ketikan
Berbasis hypervisor: Perekam ketikan ini secara teoretis dapat berada dalam malware hypervisor yang berjalan di bawah sistem operasi, yang tetap tak tersentuh. Keylogger ini secara efektif menjadi sebuah mesin virtual. Blue Pill adalah contohnya. Berbasis Kernel: Metode ini sulit baik untuk ditulis maupun untuk dilawan. Keylogger seperti ini berada di tingkat kernel dan dengan demikian sulit untuk dideteksi, terutama untuk aplikasi mode-pengguna. Keylogger ini sering diimplementasikan sebagai rootkit yang menumbangkan kernel sistem operasi dan mendapatkan akses tidak sah ke perangkat keras, membuatnya menjadi sangat kuat. Keylogger yang menggunakan metode ini dapat bertindak sebagai device driver keyboard misalnya, dan dengan demikian bisa mendapatkan akses ke setiap informasi yang diketik pada keyboard selama berada dalam sistem operasi. Berbasis API: Perekam ketikan ini "mengait" API keyboard; kemudian sistem operasi memberitahukan keylogger setiap kali tombol ditekan dan otomatis keylogger akan mencatatnya. API pada Windows, seperti GetAsyncKeyState(), GetForegroundWindow(), dll digunakan untuk menyelidiki keadaan keyboard atau untuk memantau kegiatan keyboard. Keylogger jenis ini adalah yang paling mudah untuk menulis, tetapi pada keylogger ini penyelidikan secara konstan pada setiap kunci diperlukan, hal ini dapat menyebabkan peningkatan penggunaan CPU yang cukup terlihat, dan juga dapat melewatkan beberapa kunci. Contoh keylogger saat ini dapat menyelidiki BIOS untuk pra-boot otentikasi PIN yang belum dibersihkan dari memori. Berbasis menangkap formulir: Perekam ketikan yang menangkap formulir mencatat pengiriman formulir web dengan merekam fungsi pengiriman web browsing. Catatan ini membentuk data sebelum melalui Internet dan melewati enkripsi HTTPS. Packet analyzers: keylogger ini melibatkan penangkapan lalu lintas jaringan yang terkait dengan kegiatan HTTP POST untuk mengambil password yang tidak terenkripsi.