Pengantar Algoritma AES
Advanced Encryption Standard (AES) adalah algoritma enkripsi simetris yang sangat aman dan efisien. Algoritma ini sering digunakan untuk mengenkripsi data sensitif karena kecepatan dan kekuatan enkripsinya. AES menggunakan kunci simetris, artinya kunci yang sama digunakan untuk enkripsi dan dekripsi data. contoh penerapan sederhana ada pada SSL Website.
AES bekerja dengan berbagai ukuran kunci: 128-bit, 192-bit, dan 256-bit. Semakin besar kunci, semakin kuat enkripsi, namun juga membutuhkan lebih banyak waktu untuk prosesnya.
Cara Kerja AES
AES melakukan serangkaian operasi pada data input dan kunci untuk menghasilkan ciphertext (teks yang terenkripsi). Data yang sudah terenkripsi tidak dapat dibaca oleh orang yang tidak memiliki kunci dekripsi. Begitu pula, dekripsi memerlukan kunci yang sama untuk mengembalikan data ke bentuk aslinya.
Praktek Enkripsi dan Dekripsi Menggunakan OpenSSL di CLI Linux
Di Linux, kita bisa menggunakan OpenSSL untuk mengimplementasikan enkripsi dan dekripsi AES. Pastikan OpenSSL sudah terinstal di sistem Anda. Jika belum, Anda bisa menginstalnya dengan perintah berikut:
sudo apt update
sudo apt install openssl
Enkripsi File Menggunakan AES-256-CBC
AES-256-CBC adalah salah satu mode enkripsi AES yang sering digunakan. Berikut adalah perintah untuk mengenkripsi sebuah file:
openssl enc -aes-256-cbc -salt -in file.txt -out file.txt.enc -k "password123"
Penjelasan:
enc -aes-256-cbc
: menggunakan AES dengan ukuran kunci 256-bit dalam mode CBC.-salt
: menambahkan salt untuk menambah keamanan.-in file.txt
: file yang ingin dienkripsi.-out file.txt.enc
: file output yang terenkripsi.-k "password123"
: kunci atau kata sandi untuk enkripsi (gantilah dengan kata sandi Anda sendiri).
Dekripsi File yang Telah Dienkripsi
Untuk mendekripsi file yang sudah terenkripsi, kita perlu menggunakan perintah yang mirip dengan enkripsi, tetapi kali ini menambahkan opsi -d
untuk dekripsi:
openssl enc -aes-256-cbc -d -in file.txt.enc -out file_decrypted.txt -k "password123"
Penjelasan:
-d
: mengaktifkan mode dekripsi.-in file.txt.enc
: file input yang ingin didekripsi.-out file_decrypted.txt
: file output hasil dekripsi yang berisi teks asli.-k "password123"
: kunci yang sama digunakan untuk dekripsi.
Verifikasi Hasil Enkripsi dan Dekripsi
Setelah proses enkripsi dan dekripsi, Anda dapat memverifikasi bahwa file file_decrypted.txt
sesuai dengan file asli file.txt
dengan perintah berikut:
diff file.txt file_decrypted.txt
Penutup
Menggunakan algoritma AES dengan OpenSSL di CLI Linux cukup mudah, dan sangat berguna untuk menjaga kerahasiaan data. Dengan memahami proses enkripsi dan dekripsi ini, Anda dapat meningkatkan keamanan data Anda terutama saat data tersebut harus disimpan atau dikirimkan.