apg - menghasilkan beberapa kata sandi acak
apg [-a algorithm] [-M mode] [-E char_string] [-n num_of_pass] [-m min_pass_len] [-x max_pass_len] [-r dictfile] [-b filter_file] [-p min_substr_len] [-s] [-c cl_seed] [-d] [-y] [-l] [-t] [-q] [-h] [-v]
apg menghasilkan beberapa kata sandi acak. Ini menggunakan beberapa algoritma pembuatan kata sandi (saat ini dua) dan generator nomor acak semu bawaan.
Algoritme default adalah algoritme pembuatan kata sandi yang dapat diucapkan yang dirancang oleh Morrie Gasser dan dijelaskan dalam Penghasil Kata Acak Untuk Kata Sandi yang Dapat Diucapkan Layanan Informasi Teknis Nasional (NTIS) AD-A-017676. Makalah asli sudah sangat tua dan belum pernah online, jadi saya harus menggunakan implementasi NIST yang dijelaskan dalam FIPS-181.
Algoritme lain adalah algoritma pembuatan karakter acak sederhana, tetapi menggunakan empat set simbol yang ditentukan pengguna untuk menghasilkan kata sandi acak. Ini berarti bahwa pengguna dapat memilih jenis simbol yang harus muncul dalam kata sandi. Himpunan simbol adalah: himpunan simbol numerik (0,...,9), himpunan simbol huruf kapital (A,...,Z), himpunan simbol huruf kecil (a,...,z) dan himpunan simbol simbol khusus ( #,@,!,...).
Generator bilangan acak semu bawaan adalah implementasi algoritme yang dijelaskan dalam Lampiran C ANSI X9.17 atau RFC 1750 dengan pengecualian bahwa ia menggunakan CAST atau SHA-1 alih-alih Triple DES. Ini menggunakan waktu lokal dengan presisi mikrodetik (lihat gettimeofday(2)) dan /dev/random (jika tersedia) untuk menghasilkan benih acak awal.
apg juga memiliki kemampuan untuk memeriksa kualitas kata sandi yang dihasilkan menggunakan kamus. Anda dapat menggunakan kemampuan ini jika menentukan opsi baris perintah -r dictfile atau -b namafilter di mana dictfile adalah nama file kamus dan namafilter adalah nama file filter Bloom. Dalam kamus itu Anda dapat menempatkan kata-kata (satu per baris) yang seharusnya tidak muncul sebagai kata sandi yang dihasilkan. Misalnya: nama pengguna, kata-kata umum, dll. Anda bahkan dapat menggunakan salah satu kamus yang disertakan dengan cracker kata sandi kamus. File filter Bloom harus dibuat dengan apgbfm(1 ) utilitas termasuk dalam distribusi apg. Dalam rilis mendatang saya berencana menerapkan beberapa teknik lain untuk memeriksa kata sandi (seperti pemeriksaan pola) hanya untuk membuat hidup lebih mudah.
Gunakan algoritma untuk pembuatan sandi.
0 - pembuatan kata sandi yang dapat diucapkan (default)
1 - pembuatan kata sandi karakter acak
Hasilkan num_of_pass jumlah kata sandi. Standarnya adalah 6.
Hasilkan kata sandi dengan panjang minimum min_pass_len. Jika min_pass_len > max_pass_len maka max_pass_len=min_pass_len. Panjang kata sandi minimum default adalah 8.
Hasilkan kata sandi dengan panjang maksimum max_pass_len. Jika min_pass_len > max_pass_len maka max_pass_len=min_pass_len. Panjang kata sandi maksimum default adalah 10.
Gunakan kumpulan simbol yang ditentukan dengan mode untuk pembuatan sandi. mode adalah string teks yang terdiri dari karakter S, s, N, n , C, c, L, l. Di mana:
Generator harus menggunakan rangkaian simbol khusus untuk setiap kata sandi yang dibuat.
Generator harus menggunakan kumpulan simbol khusus untuk pembuatan kata sandi.
Generator harus menggunakan rangkaian simbol angka untuk setiap kata sandi yang dibuat.
Generator harus menggunakan rangkaian simbol angka untuk pembuatan sandi.
Generator harus menggunakan rangkaian simbol kapital untuk setiap kata sandi yang dibuat.
Generator harus menggunakan rangkaian simbol kapital untuk pembuatan sandi.
Generator harus menggunakan set simbol huruf kecil untuk setiap kata sandi yang dihasilkan (selalu ada jika algoritme pembuatan kata sandi yang dapat diucapkan digunakan).
Generator harus menggunakan set simbol huruf kecil untuk pembuatan sandi.
Tidak didukung lagi. Gunakan opsi -E char_string sebagai gantinya.
mode tidak boleh lebih dari 4 karakter.
Catatan:
Penggunaan L, M, S, C akan memperlambat proses pembuatan password.
Examples:
-M sncl -M SNCL -M Cn
Exclude characters in char_string from password generation process (in pronounceable password generation mode you can not exclude small letters). To include special symbols that can be recognized by shell (apostrophe, quotes, dollar sign, etc.) in char_string use the backslashed versions.
Contoh:
Perintah apg -a 1 -M n -n 3 -m 8 -E 23456789 akan menghasilkan sekumpulan kata sandi yang akan terlihat seperti ini:
10100110 01111000 11011101
Perintah apg -a 1 -M nc -n 3 -m 26 -E GHIJKLMNOPQRSTUVWXYZ akan menghasilkan sekumpulan kata sandi yang akan terlihat seperti ini:
16A1653CD4DE5E7BD9584A3476 C8F78E06944AFD57FB9CB882BC 8C8DF37CD792D36D056BBD5002
Periksa kata sandi yang dihasilkan untuk kemunculannya di dictfile
Periksa kata sandi yang dihasilkan untuk kemunculannya di filter_file. file_filter harus dibuat dengan utilitas apgbfm(1).
Opsi ini memberi tahu apg(1) untuk memeriksa setiap substring kata sandi yang dihasilkan untuk kemunculan di filter_file. Jika salah satu dari substring tersebut ditemukan di filter_file maka kata sandi yang dihasilkan akan ditolak dan apg(1) akan menghasilkan yang lain. min_substr_len menentukan panjang substring minimum untuk diperiksa. Opsi ini aktif hanya jika opsi -b ditentukan.
Minta pengguna untuk urutan acak untuk pembuatan kata sandi
Gunakan cl_seed sebagai benih acak untuk pembuatan kata sandi. Saya menggunakannya ketika saya harus membuat kata sandi dalam skrip Shell.
Contoh:
-c /dev/urandom -c /tmp/seed_file
JANGAN gunakan pembatas apa pun di antara kata sandi yang dibuat. Saya menggunakannya ketika saya harus membuat kata sandi dalam skrip Shell.
Cetak kata sandi yang dibuat dan kata sandi terenkripsi (lihat crypt(3))
Mode diam (jangan cetak peringatan)
Eja kata sandi yang dihasilkan. Berguna ketika Anda ingin membaca kata sandi yang dihasilkan melalui telepon.
PERINGATAN: Pikirkan dua kali sebelum membaca kata sandi Anda melalui telepon.
Cetak pengucapan untuk menghasilkan kata sandi yang dapat diucapkan. Diabaikan jika -a 1 disetel.
Cetak informasi bantuan dan keluar
Cetak informasi versi dan keluar
apg -a 0 -M sncl -n 6 -x 10 -m 8
Jika Anda ingin menghasilkan kata sandi yang benar-benar aman, Anda harus menggunakan opsi -s. Untuk menyederhanakan penggunaan apg, Anda dapat menulis skrip shell kecil. Misalnya:
[begin]----> pwgen.sh #!/bin/sh /usr/local/bin/apg -m 8 -x 12 -s [ end ]----> pwgen.sh
Setelah berhasil menyelesaikan tugasnya, apg akan selesai dengan kode keluar 0. Kode keluar -1 menunjukkan terjadi kesalahan. Kesalahan tekstual ditulis ke aliran kesalahan standar.
Jika /dev/random tidak tersedia, apg akan menampilkan pesan tentang hal itu.
Tidak ada.
Tidak ada. Jika Anda menemukannya, kirimkan deskripsi bug ke penulisnya.
apgbfm(1)
Adel I. Mirzazhanov,
Beranda proyek: http://www.adel.nursat.kz/apg/