Program ini adalah implementasi dari beberapa algoritma cipher, yaitu Vigenere, Playfair, dan Hill Cipher. Program menggunakan antarmuka GUI berbasis Tkinter untuk memudahkan pengguna dalam melakukan enkripsi dan dekripsi teks.
- Vigenere Cipher: Menggunakan sebuah kata kunci untuk melakukan pergeseran pada setiap karakter dari teks.
- Playfair Cipher: Menggunakan sebuah tabel 5x5 dengan pasangan karakter untuk mengenkripsi dan mendekripsi teks.
- Hill Cipher: Menggunakan matriks 3x3 untuk melakukan enkripsi dan dekripsi teks berbasis aljabar linear.
- Python 3.x
- Library Tkinter
- Clone repository atau unduh program ini.
- Install library yang dibutuhkan.
-
Buka terminal di direktori tempat menyimpan file program ini.
-
Jalankan program dengan perintah:
python chiper.py
-
Buka Visual Studio Code atau editor kode Python lain yang digunakan.
-
Buka folder proyek di mana program berada:
- Pilih File > Open Folder di Visual Studio Code.
- Arahkan ke folder tempat menyimpan file program ini, kemudian klik Select Folder.
-
Jalankan program:
- Di Visual Studio Code, pastikan telah membuka file
chiper.py
. - Tekan tombol F5 atau pilih Run > Start Debugging untuk menjalankan program.
- Jendela GUI akan muncul dan program dapat digunakan.
- Di Visual Studio Code, pastikan telah membuka file
-
Pilih metode cipher: Bisa memilih antara tiga metode cipher yang tersedia:
- Vigenere
- Playfair
- Hill
-
Masukkan Kunci: Kunci harus minimal 12 karakter. Kunci ini akan digunakan untuk proses enkripsi atau dekripsi.
-
Masukkan teks: Dapat mengetikkan teks secara langsung di kotak teks atau mengunggah file
.txt
yang berisi teks yang akan dienkripsi atau didekripsi. -
Klik 'Enkripsi' atau 'Dekripsi': Pilih operasi yang diinginkan. Program akan menampilkan hasilnya di bagian "Hasil".
-
Unggah file: Jika ingin mengenkripsi atau mendekripsi teks dari file, klik tombol "Unggah File" dan pilih file teks.
- Pastikan kunci yang digunakan cocok dengan cipher yang dipilih. Misalnya, kunci untuk Hill Cipher harus bisa diubah menjadi matriks 3x3.
- Saat menggunakan Hill Cipher, pastikan teks yang dimasukkan panjangnya merupakan kelipatan dari 3. Jika tidak, teks akan diisi dengan karakter tambahan.
- vigenere_cipher(): Fungsi untuk enkripsi dan dekripsi dengan Vigenere cipher.
- playfair_cipher(): Fungsi untuk enkripsi dan dekripsi dengan Playfair cipher.
- hill_cipher(): Fungsi untuk enkripsi dan dekripsi dengan Hill cipher.
- matrix_mod_inv(): Fungsi untuk menghitung invers matriks 3x3 untuk Hill cipher.
- encrypt(): Fungsi untuk meng-enkripsi teks yang dimasukkan.
- decrypt(): Fungsi untuk mendekripsi teks yang dimasukkan.
- upload_file(): Fungsi untuk mengunggah file teks yang akan dienkripsi atau didekripsi.