Program ini digunakan untuk mengenkripsi teks dari file dan menghasilkan file Python untuk mendekripsi teks tersebut.
- Enkripsi teks menggunakan algoritma AES (Advanced Encryption Standard).
- Opsi untuk memasukkan password sendiri atau menggunakan password acak.
- Pembuatan file Python untuk mendekripsi teks terenkripsi.
- Python 3.x
- Modul
pycryptodome
(akan diinstal secara otomatis jika belum ada)
-
Clone repository ini:
git clone https://github.com/DioneAlFarisi/encrypt-file-python.git cd encrypt-file-python
-
Jalankan script utama:
python main.py
-
Jalankan script
main.py
:python main.py
-
Ikuti instruksi yang muncul di terminal:
- Masukkan nama file yang ingin dienkripsi.
- Pilih apakah Anda ingin memasukkan password sendiri atau menggunakan password acak.
- Jika memasukkan password sendiri, pastikan password terdiri dari 16 karakter.
-
Setelah proses enkripsi selesai, program akan menampilkan kunci enkripsi dalam format hex. Simpan kunci ini di tempat yang aman.
-
Program akan membuat file Python untuk mendekripsi teks yang telah dienkripsi. Nama file akan mengikuti format
<nama_file_asli>.decrypt.py
.
Fungsi ini mencoba mengimpor modul yang diperlukan (pycryptodome
). Jika modul tidak ada, ia akan mencoba menginstalnya menggunakan pip
.
Fungsi ini membersihkan layar terminal, tergantung pada sistem operasi yang digunakan.
Fungsi ini meminta pengguna untuk memilih antara memasukkan password sendiri atau menggunakan password acak. Jika pengguna memilih untuk memasukkan password, password harus 16 karakter.
Fungsi ini mengenkripsi teks menggunakan AES dalam mode CBC, kemudian mengembalikan vektor inisialisasi (IV) dan ciphertext yang telah dienkode dalam base64.
Fungsi ini membuat file Python untuk mendekripsi ciphertext. Isi file tergantung pada apakah pengguna memilih untuk memasukkan password sendiri atau menggunakan password acak. Kode untuk dekripsi dimasukkan ke dalam file, kemudian file tersebut dikompilasi menjadi file .pyc
.
Fungsi ini mengatur alur utama program:
- Membersihkan layar.
- Meminta nama file yang akan dienkripsi.
- Membaca isi file.
- Meminta pengguna untuk memasukkan password atau menggunakan password acak.
- Mengenkripsi teks.
- Membuat file untuk mendekripsi ciphertext.
Proyek ini dilisensikan di bawah lisensi MIT. Lihat file LICENSE untuk informasi lebih lanjut.
Lihat CHANGELOG.md untuk rincian perubahan.