LAN Manager hash (disingkat menjadi LM hash) adalah salah satu metode yang digunakan oleh sistem operasi Microsoft Windows dan LAN Manager untuk menyimpan password milik pengguna yang memiliki panjang kurang dari 15 karakter. Dilihat dari namanya, metode ini hanyalah digunakan oleh Microsoft LAN Manager. Meskipun demikian, Microsoft Windows juga, hingga Windows Millennium Edition menggunakannya. Bahkan dalam versi-versi terbaru Windows juga ada, meski tidak digunakan, untuk alasan kompatibilitas ke belakang.

Algoritme

sunting

LM Hash dapat dihitung dengan cara berikut:

  1. Password milik pengguna akan diubah menjadi huruf besar semua (upper case), setelah sebelumnya diubah terlebih dahulu menjadi OEM string.
  2. Password tersebut, akan dipotong menjadi 14 bita, meski ia telah ditambahkan karakter null ke dalamnya.
  3. Password yang memiliki panjang tetap tersebut akan dibagi ke dalam dua buah bagian sama besar berukuran 7 bita.
  4. Nilai-nilai yang didapat tersebut nantinya akan digunakan untuk membuat dua buah kunci enkripsi dengan algoritme Data Encryption Standard (DES), dengan mengubah 7 bita ke dalam aliran bit, dan memabahkan sebuah bit 0 setelah 7 bit tersebut. Ini akhirnya akan membuat kuncinya memiliki panjang 56 kunci, sama seperti yang dibutuhkan oleh algoritme DES.
  5. Setiap kunci terssebut digunakan untuk melakukan enkripsi dengan algoritme DES terhadap konstanta string ASCII "KGS!@#$%", sehingga menghasilkan dua buah nilai ciphertext berukuran 8 bita.
  6. Dua buah nilai ciphertext tersebut digabungkan untuk membentuk nilai 16 bita yang baru, yang kemudian disebut sebagai LM hash itu sendiri.