<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="id">
	<id>https://cbtlmsts.my.id/wikits/index.php?action=history&amp;feed=atom&amp;title=Praktik_Encrypt_%26_Decrypt_data</id>
	<title>Praktik Encrypt &amp; Decrypt data - Riwayat revisi</title>
	<link rel="self" type="application/atom+xml" href="https://cbtlmsts.my.id/wikits/index.php?action=history&amp;feed=atom&amp;title=Praktik_Encrypt_%26_Decrypt_data"/>
	<link rel="alternate" type="text/html" href="https://cbtlmsts.my.id/wikits/index.php?title=Praktik_Encrypt_%26_Decrypt_data&amp;action=history"/>
	<updated>2026-08-29T16:43:27Z</updated>
	<subtitle>Riwayat revisi halaman ini di wiki</subtitle>
	<generator>MediaWiki 1.43.1</generator>
	<entry>
		<id>https://cbtlmsts.my.id/wikits/index.php?title=Praktik_Encrypt_%26_Decrypt_data&amp;diff=219&amp;oldid=prev</id>
		<title>Admin: ←Membuat halaman berisi &#039;==Tujuan Pembelajaran== * Mahasiswa memahami konsep dasar enkripsi simetris untuk data pribadi. * Mahasiswa mampu mengimplementasikan enkripsi dan dekripsi dalam basis data MySQL. * Mahasiswa mengetahui batasan search dan update terhadap data terenkripsi.  ==Contoh Implementasi di MySQL Ubuntu 24.04==  &#039;&#039;&#039;1. Instalasi MySQL&#039;&#039;&#039;   sudo apt update  sudo apt install mysql-server  sudo systemctl start mysql  sudo mysql_secure_installation  &#039;&#039;&#039;2. Persiapan Database&#039;&#039;&#039;...&#039;</title>
		<link rel="alternate" type="text/html" href="https://cbtlmsts.my.id/wikits/index.php?title=Praktik_Encrypt_%26_Decrypt_data&amp;diff=219&amp;oldid=prev"/>
		<updated>2025-05-12T18:08:05Z</updated>

		<summary type="html">&lt;p&gt;←Membuat halaman berisi &amp;#039;==Tujuan Pembelajaran== * Mahasiswa memahami konsep dasar enkripsi simetris untuk data pribadi. * Mahasiswa mampu mengimplementasikan enkripsi dan dekripsi dalam basis data MySQL. * Mahasiswa mengetahui batasan search dan update terhadap data terenkripsi.  ==Contoh Implementasi di MySQL Ubuntu 24.04==  &amp;#039;&amp;#039;&amp;#039;1. Instalasi MySQL&amp;#039;&amp;#039;&amp;#039;   sudo apt update  sudo apt install mysql-server  sudo systemctl start mysql  sudo mysql_secure_installation  &amp;#039;&amp;#039;&amp;#039;2. Persiapan Database&amp;#039;&amp;#039;&amp;#039;...&amp;#039;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Halaman baru&lt;/b&gt;&lt;/p&gt;&lt;div&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;
==Contoh Implementasi di MySQL Ubuntu 24.04==&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;1. Instalasi MySQL&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&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;
&amp;#039;&amp;#039;&amp;#039;2. Persiapan Database&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Buat database dan tabel:&lt;br /&gt;
&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;
&amp;gt; Catatan: Gunakan `VARBINARY` agar data hasil enkripsi dapat disimpan.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;3. Enkripsi dan Dekripsi dengan AES&amp;#039;&amp;#039;&amp;#039;&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;
&amp;#039;&amp;#039;&amp;#039;Contoh: Menyisipkan data terenkripsi&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&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;
&amp;#039;&amp;#039;&amp;#039;4. Melihat Data (Dekripsi saat SELECT)&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&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;
&amp;#039;&amp;#039;&amp;#039;5. Search (Pencarian Data Terenkripsi)&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Kamu &amp;#039;&amp;#039;&amp;#039;tidak bisa&amp;#039;&amp;#039;&amp;#039; search langsung pakai `LIKE` atau `= &amp;#039;nama&amp;#039;` pada data terenkripsi. Solusinya:&lt;br /&gt;
&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;
&amp;gt; Harus &amp;#039;&amp;#039;&amp;#039;mengenkripsi&amp;#039;&amp;#039;&amp;#039; kata kunci pencarian dengan kunci yang sama.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;6. Update (Pembaruan Data Terenkripsi)&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&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;
==Catatan Penting==&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Tidak bisa full-text search&amp;#039;&amp;#039;&amp;#039; atau `LIKE &amp;#039;%rayhan%&amp;#039;` pada data terenkripsi.&lt;br /&gt;
* Enkripsi ini bersifat &amp;#039;&amp;#039;&amp;#039;deterministik&amp;#039;&amp;#039;&amp;#039; (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;
==Tips Keamanan==&lt;br /&gt;
* Gunakan &amp;#039;&amp;#039;&amp;#039;AES-256&amp;#039;&amp;#039;&amp;#039; jika menggunakan `AES_ENCRYPT(data, key, &amp;#039;aes-256-cbc&amp;#039;)` (jika didukung MySQL 8+).&lt;br /&gt;
* Gunakan &amp;#039;&amp;#039;&amp;#039;prepared statement&amp;#039;&amp;#039;&amp;#039; di aplikasi untuk hindari SQL injection.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Pranala Menarik==&lt;br /&gt;
&lt;br /&gt;
* [[Database: Kuliah]]&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
</feed>