Mungkin kalau mau bikin fun project yang ada fitur enkripsi dan dekripsi pakai password sederhana, kalian bisa pakai kode ini:
function simpleEncryptDecrypt(text, password) {
let result = '';
for (let i = 0; i < text.length; i++) {
// Dapatkan kode karakter dari teks dan password
const charCode = text.charCodeAt(i);
const passwordCharCode = password.charCodeAt(i % password.length);
// Lakukan operasi XOR
const encryptedCharCode = charCode ^ passwordCharCode;
// Tambahkan karakter yang dienkripsi/dekripsi ke hasil
result += String.fromCharCode(encryptedCharCode);
}
return result;
}
// --- Contoh Penggunaan ---
const originalString = "Ini adalah pesan rahasia!";
const encryptionPassword = "kunciSederhana";
// Enkripsi
const encryptedString = simpleEncryptDecrypt(originalString, encryptionPassword);
console.log("String Asli:", originalString);
console.log("String Terenkripsi:", encryptedString);
// Dekripsi
const decryptedString = simpleEncryptDecrypt(encryptedString, encryptionPassword);
console.log("String Terdekripsi:", decryptedString);
// --- Catatan Keamanan ---
// Peringatan: Metode ini SANGAT TIDAK AMAN untuk data sensitif.
// - Algoritma XOR sederhana mudah dipecahkan.
// - Tidak ada perlindungan terhadap serangan seperti brute-force atau analisis frekuensi.
// - Panjang password yang pendek atau karakter password yang terbatas akan membuat enkripsi lebih lemah.
// Untuk aplikasi yang membutuhkan keamanan yang lebih baik:
// - Gunakan Web Cryptography API (untuk browser)
// - Gunakan 'crypto' module di Node.js
// - Gunakan pustaka kriptografi pihak ketiga yang teruji dan aman.