<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://lms.onnocenter.or.id/wiki/index.php?action=history&amp;feed=atom&amp;title=Praktik_Encrypt_%26_Decrypt_data</id>
	<title>Praktik Encrypt &amp; Decrypt data - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://lms.onnocenter.or.id/wiki/index.php?action=history&amp;feed=atom&amp;title=Praktik_Encrypt_%26_Decrypt_data"/>
	<link rel="alternate" type="text/html" href="https://lms.onnocenter.or.id/wiki/index.php?title=Praktik_Encrypt_%26_Decrypt_data&amp;action=history"/>
	<updated>2026-04-20T07:02:58Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.45.1</generator>
	<entry>
		<id>https://lms.onnocenter.or.id/wiki/index.php?title=Praktik_Encrypt_%26_Decrypt_data&amp;diff=72584&amp;oldid=prev</id>
		<title>Unknown user at 01:28, 21 April 2025</title>
		<link rel="alternate" type="text/html" href="https://lms.onnocenter.or.id/wiki/index.php?title=Praktik_Encrypt_%26_Decrypt_data&amp;diff=72584&amp;oldid=prev"/>
		<updated>2025-04-21T01:28:20Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;https://lms.onnocenter.or.id/wiki/index.php?title=Praktik_Encrypt_%26_Decrypt_data&amp;amp;diff=72584&amp;amp;oldid=72532&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>Unknown user</name></author>
	</entry>
	<entry>
		<id>https://lms.onnocenter.or.id/wiki/index.php?title=Praktik_Encrypt_%26_Decrypt_data&amp;diff=72532&amp;oldid=prev</id>
		<title>Unknown user: Created page with &quot;Berikut adalah **Modul 9: Proteksi Data Pribadi** dengan fokus pada **Enkripsi &amp; Dekripsi Data**, serta bagaimana melakukan **pencarian (search)** dan **pembaruan (update)** d...&quot;</title>
		<link rel="alternate" type="text/html" href="https://lms.onnocenter.or.id/wiki/index.php?title=Praktik_Encrypt_%26_Decrypt_data&amp;diff=72532&amp;oldid=prev"/>
		<updated>2025-04-13T02:51:37Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;Berikut adalah **Modul 9: Proteksi Data Pribadi** dengan fokus pada **Enkripsi &amp;amp; Dekripsi Data**, serta bagaimana melakukan **pencarian (search)** dan **pembaruan (update)** d...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Berikut adalah **Modul 9: Proteksi Data Pribadi** dengan fokus pada **Enkripsi &amp;amp; Dekripsi Data**, serta bagaimana melakukan **pencarian (search)** dan **pembaruan (update)** data yang terenkripsi di **MySQL pada Ubuntu 24.04**.&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## 🔐 **Modul 9: Proteksi Data Pribadi**&lt;br /&gt;
### 🧭 Subtopik: Enkripsi &amp;amp; Dekripsi Data + Search dan Update&lt;br /&gt;
&lt;br /&gt;
### 🎯 **Tujuan Pembelajaran**&lt;br /&gt;
- Mahasiswa memahami konsep dasar enkripsi simetris untuk data pribadi.&lt;br /&gt;
- Mahasiswa mampu mengimplementasikan enkripsi dan dekripsi dalam basis data MySQL.&lt;br /&gt;
- Mahasiswa mengetahui batasan search dan update terhadap data terenkripsi.&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## 🛠️ **Contoh Implementasi di MySQL Ubuntu 24.04**&lt;br /&gt;
&lt;br /&gt;
### ✅ **1. Instalasi MySQL**&lt;br /&gt;
```bash&lt;br /&gt;
sudo apt update&lt;br /&gt;
sudo apt install mysql-server&lt;br /&gt;
sudo systemctl start mysql&lt;br /&gt;
sudo mysql_secure_installation&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## 🔧 **2. Persiapan Database**&lt;br /&gt;
### Buat database dan tabel:&lt;br /&gt;
```sql&lt;br /&gt;
CREATE DATABASE db_privasi;&lt;br /&gt;
USE db_privasi;&lt;br /&gt;
&lt;br /&gt;
CREATE TABLE pengguna (&lt;br /&gt;
    id INT AUTO_INCREMENT PRIMARY KEY,&lt;br /&gt;
    nama VARBINARY(255),&lt;br /&gt;
    email VARBINARY(255)&lt;br /&gt;
);&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
&amp;gt; Catatan: Gunakan `VARBINARY` agar data hasil enkripsi dapat disimpan.&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## 🛡️ **3. Enkripsi dan Dekripsi dengan AES**&lt;br /&gt;
&lt;br /&gt;
&amp;gt; Di MySQL, kita bisa menggunakan fungsi `AES_ENCRYPT()` dan `AES_DECRYPT()`.&lt;br /&gt;
&lt;br /&gt;
**Contoh: Menyisipkan data terenkripsi**&lt;br /&gt;
```sql&lt;br /&gt;
SET @kunci = &amp;#039;rahasia123&amp;#039;;&lt;br /&gt;
&lt;br /&gt;
INSERT INTO pengguna (nama, email)&lt;br /&gt;
VALUES (&lt;br /&gt;
    AES_ENCRYPT(&amp;#039;Dzaq Rayhan&amp;#039;, @kunci),&lt;br /&gt;
    AES_ENCRYPT(&amp;#039;dzaq@example.com&amp;#039;, @kunci)&lt;br /&gt;
);&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
### 🔍 **4. Melihat Data (Dekripsi saat SELECT)**&lt;br /&gt;
```sql&lt;br /&gt;
SELECT &lt;br /&gt;
    id,&lt;br /&gt;
    CAST(AES_DECRYPT(nama, @kunci) AS CHAR) AS nama_dekripsi,&lt;br /&gt;
    CAST(AES_DECRYPT(email, @kunci) AS CHAR) AS email_dekripsi&lt;br /&gt;
FROM pengguna;&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
### 🔍 **5. Search (Pencarian Data Terenkripsi)**&lt;br /&gt;
Kamu **tidak bisa** search langsung pakai `LIKE` atau `= &amp;#039;nama&amp;#039;` pada data terenkripsi. Solusinya:&lt;br /&gt;
&lt;br /&gt;
```sql&lt;br /&gt;
SELECT * FROM pengguna&lt;br /&gt;
WHERE nama = AES_ENCRYPT(&amp;#039;Dzaq Rayhan&amp;#039;, @kunci);&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
&amp;gt; Harus **mengenkripsi** kata kunci pencarian dengan kunci yang sama.&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
### ✏️ **6. Update (Pembaruan Data Terenkripsi)**&lt;br /&gt;
```sql&lt;br /&gt;
UPDATE pengguna&lt;br /&gt;
SET email = AES_ENCRYPT(&amp;#039;rayhan@newmail.com&amp;#039;, @kunci)&lt;br /&gt;
WHERE nama = AES_ENCRYPT(&amp;#039;Dzaq Rayhan&amp;#039;, @kunci);&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## ⚠️ **Catatan Penting**&lt;br /&gt;
- **Tidak bisa full-text search** atau `LIKE &amp;#039;%rayhan%&amp;#039;` pada data terenkripsi.&lt;br /&gt;
- Enkripsi ini bersifat **deterministik** (hasilnya tetap jika input &amp;amp; kunci sama).&lt;br /&gt;
- Simpan kunci enkripsi di luar MySQL (misalnya: file `.env`, app backend).&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## 💡 **Tips Keamanan**&lt;br /&gt;
- Gunakan **AES-256** jika menggunakan `AES_ENCRYPT(data, key, &amp;#039;aes-256-cbc&amp;#039;)` (jika didukung MySQL 8+).&lt;br /&gt;
- Gunakan **prepared statement** di aplikasi untuk hindari SQL injection.&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
Kalau kamu mau aku buatin contoh integrasi **PHP/Python** untuk enkripsi data langsung dari aplikasi, tinggal bilang ya!&lt;/div&gt;</summary>
		<author><name>Unknown user</name></author>
	</entry>
</feed>