Kata sandi adalah jawaban atas pertanyaan yang sangat tua: apakah kamu salah satu dari kami?
Bukan komputasi yang menciptakannya. Polybius, pada abad kedua SM, menggambarkan bagaimana tentara Romawi setiap malam mengedarkan sebuah kata yang ditulis pada lempeng kayu — tessera — yang berpindah dari satuan ke satuan lalu kembali ke komando. Yang tahu adalah bagian dari mereka. Yang tidak, bukan.
Dua ribu tahun kemudian kita melakukan hal yang persis sama. Yang berubah hanya siapa yang bertanya, dan secepat apa dia bisa mencoba menebak jawabannya.
1961 kata sandi masuk ke komputer
Pada November 1961, MIT mendemonstrasikan CTSS (Compatible Time-Sharing System), dipimpin Fernando Corbató. Ini gagasan baru: satu komputer yang sangat mahal, dipakai bersama beberapa orang sekaligus.
Dan di situlah masalahnya muncul. Kalau mesinnya milik semua orang, berkas masing-masing harus tetap miliknya. Komputer butuh cara untuk tahu siapa yang sedang mengetik. Solusinya paling jelas dan sekaligus paling Romawi: setiap pengguna diberi satu kata miliknya sendiri.
Perlu dikatakan dengan tepat: Corbató tidak menciptakan kata sandi. Ia menciptakan kata sandi per pengguna pada komputer multipengguna, dan itu hal lain. Di usia tuanya ia sendiri mengatakan bahwa semua itu telah menjadi “mimpi buruk”.
1962 kebocoran pertama, dan itu soal waktu mesin
Setahun kemudian Allan Scherr, mahasiswa doktoral di MIT yang sama, punya masalah yang sangat membumi: ia hanya dijatah empat jam komputer per minggu dan butuh lebih untuk disertasinya.
Maka ia meminta sistem mencetak berkas kata sandi. Hanya itu. Berkas itu ada di sana, dalam teks biasa, dan tak seorang pun mengira ada yang akan memintanya. Dengan cetakan di tangan, ia memakai akun orang lain untuk terus bekerja.
Yang menarik bukan triknya. Melainkan motifnya: kebocoran kata sandi pertama dalam sejarah tidak dilakukan penjahat, melainkan seseorang yang ingin terus bekerja. Enam puluh tahun kemudian, sebagian besar lubang keamanan masih lahir dari orang-orang masuk akal yang mencari jalan pintas.
1979 seseorang sadar bahwa kata sandi tak boleh disimpan
Selama hampir dua dekade, banyak sistem menyimpan kata sandi apa adanya. Kalau ada yang membaca berkasnya, ia membawa semuanya.
Pada 1979, Robert Morris dan Ken Thompson menerbitkan di Communications of the ACM artikel berjudul “Password Security: A Case History”, tentang apa yang mereka lakukan di Unix. Dua gagasan yang kini menjadi dasar segalanya:
- Jangan simpan kata sandinya, simpan hash-nya. Sistem tak perlu tahu apa kata sandimu; ia hanya perlu bisa memeriksa apakah yang baru kamu ketik menghasilkan hasil yang sama.
- Garam: menambahkan nilai acak ke setiap kata sandi sebelum di-hash, agar dua orang dengan kata sandi sama tidak punya hash sama, dan agar tak ada yang bisa menghitung tabel di muka lalu membobol semuanya sekaligus.
Ketika hari ini kita bilang sebuah layanan “seharusnya tidak tahu kata sandimu”, kita sedang mengutip artikel tahun 1979.
2003 aturan yang kita semua pelajari, dan dari mana asalnya
Pada 2003, Bill Burr dari NIST Amerika menulis dokumen yang kelak mengatur bagaimana separuh dunia meminta kata sandi: SP 800-63. Dari sanalah semua yang langsung kamu kenali:
Minimal satu huruf besar, satu angka, dan satu simbol. Ganti setiap 90 hari.
Kedengarannya ilmiah. Bukan. Burr tidak punya data bagus tentang kata sandi nyata — nyaris tidak ada — jadi ia bersandar pada yang ada dan menalar ke arah yang tampak masuk akal: lebih banyak ragam karakter, lebih banyak kombinasi, lebih aman.
Masalahnya, manusia bukan generator acak. Minta huruf besar, ia taruh di
depan. Minta angka, ia taruh di belakang. Minta simbol, jadinya !. Dan kalau
kamu paksa ganti tiap tiga bulan, Musim2024! jadi Hujan2024!.
Hasilnya: satu generasi penuh kata sandi yang tampak rumit tapi sepele, dan pengguna yang kelelahan lalu memakainya ulang di mana-mana karena sudah tak tahan.
2017 NIST menarik ucapannya, Burr juga
Pada 2017 NIST menerbitkan SP 800-63B dan membalik hampir semuanya:
- Panjang lebih penting daripada kerumitan.
- Tidak ada rotasi paksa kecuali ada indikasi pembobolan.
- Periksa kata sandi terhadap daftar kebocoran, alih-alih menuntut simbol.
Tahun itu juga Burr mengatakan kepada Wall Street Journal bahwa ia menyesali sebagian besar yang ia tulis. Itu salah satu ralat paling jujur yang pernah dihasilkan keamanan komputer — dan sampai kini ribuan formulir masih menuntut simbol gara-gara dokumen yang penulisnya sendiri tolak.
Mengapa ini bukan sejarah kuno
Semua ini punya akibat yang sangat konkret, dan kamu bisa melihatnya di sini.
Pemeriksa kami sendiri sampai belum lama ini berjalan dengan
logika 2003: menghitung huruf besar, angka, dan simbol. Ia memberi 92 % “Sangat
Kuat” pada Contraseña1! — harfiah kata Spanyol untuk “kata sandi” — dan 0 %
“Sangat Lemah” pada frasa lima kata acak, yang jauh lebih baik.
Ia mengganjar persis hal yang keliru. Kami menggantinya: sekarang ia mencari kata sandimu di kamus kata, nama, kota, dan pola papan ketik, lalu memberi tahu berapa lama sebenarnya ia akan jatuh.
Dan karena itulah generator menampilkan bit entropi, bukan persentase. Persentase tak berarti apa-apa. Bit berarti: itu berapa kali seseorang yang tak tahu apa pun tentangmu harus mencoba.
Apa yang harus dilakukan, dalam dua baris
- Panjang mengalahkan berbelit. Empat atau lima kata acak mengalahkan
P@ssw0rdsejauh banyak orde besaran. - Berbeda di setiap tempat, dan di dalam pengelola. Itu satu-satunya aturan 2003 yang masih berdiri — dan yang paling kita abaikan.
Pertanyaannya sama seperti di Roma abad kedua: apakah kamu salah satu dari kami? Yang berubah, si penanya kini bisa mencoba semiliar jawaban per detik. Sebaiknya jawabanmu tidak ada di kamus.
Sumber: F. J. Corbató dan CTSS (MIT, 1961) · kesaksian Allan Scherr sendiri tentang 1962 · R. Morris dan K. Thompson, “Password Security: A Case History”, Communications of the ACM, 1979 · NIST SP 800-63 (2003) dan SP 800-63B (2017) · pernyataan Bill Burr kepada Wall Street Journal, Agustus 2017.