Category Archives: MariaDB

Panduan Lengkap Menggunakan Fungsi Matematika di MySQL

Halo sobat, pada kesempatan kali ini saya akan membahas tentang berbagai fungsi matematika yang tersedia di MySQL. Fungsi-fungsi ini sangat berguna untuk melakukan operasi matematika pada data yang tersimpan di database, mulai dari perhitungan dasar hingga fungsi yang lebih kompleks. Dengan memahami fungsi-fungsi ini, sobat bisa lebih leluasa memanipulasi dan mengolah data sesuai kebutuhan aplikasi. » Read more

Panduan Penggunaan Fungsi Enkripsi dan Dekripsi di MySQL untuk Keamanan Data

Halo sobat, pada kesempatan kali ini saya akan membahas berbagai fungsi enkripsi dan dekripsi di MySQL. Fungsi-fungsi ini digunakan untuk melindungi data sensitif yang tersimpan dalam database, sehingga data yang disimpan tetap aman dari akses yang tidak diinginkan. Tidak hanya itu, ada juga fungsi untuk encoding, kompresi, dan hashing yang dapat membantu mengelola data secara efisien.

Fungsi Enkripsi & Dekripsi

MySQL menyediakan beberapa fungsi untuk mengenkripsi dan mendekripsi data, di antaranya:

  • AES_ENCRYPT() dan AES_DECRYPT() – Fungsi ini digunakan untuk mengenkripsi dan mendekripsi data menggunakan algoritma AES. Contoh penggunaannya:
-- Enkripsi data SELECT AES_ENCRYPT('s3ns1t1f', 'k3y') AS encrypted_data; -- Dekripsi data SELECT AES_DECRYPT(AES_ENCRYPT('s3ns1t1f', 'k3y'), 'k3y') AS decrypted_data; 
  • DES_ENCRYPT() dan DES_DECRYPT() – Fungsi untuk enkripsi menggunakan standar DES.
  • ENCRYPT() – Fungsi enkripsi standar yang digunakan untuk membuat hash dari sebuah string.
  • PASSWORD() – Menghasilkan hash password MySQL dari string input, biasanya untuk keperluan autentikasi.

Fungsi Encoding & Decoding

Selain enkripsi, MySQL juga menyediakan fungsi untuk encoding dan decoding data. Contoh penggunaannya dengan fungsi ENCODE() dan DECODE() adalah sebagai berikut:

-- Encoding data SELECT ENCODE('s3ns1t1f', 'k3y') AS encoded_data; -- Decoding data SELECT DECODE(ENCODE('s3ns1t1f', 'k3y'), 'k3y') AS decoded_data; 

Fungsi Kompresi & Dekompresi

Untuk menghemat ruang penyimpanan, sobat juga dapat menggunakan fungsi COMPRESS() dan UNCOMPRESS() yang berguna untuk mengompresi dan mendekompresi data. Berikut contohnya:

-- Kompresi data SELECT COMPRESS('Ini adalah teks yang akan dikompresi') AS compressed_data; -- Dekompresi data SELECT UNCOMPRESS(COMPRESS('Ini adalah teks yang akan dikompresi')) AS decompressed_data; 

Selain itu, fungsi UNCOMPRESSED_LENGTH() dapat mengembalikan panjang data setelah didekompresi:

SELECT UNCOMPRESSED_LENGTH(COMPRESS('Ini adalah teks yang akan dikompresi')) AS decompressed_length; 

Fungsi Hashing

MySQL juga menyediakan beberapa fungsi hashing untuk menghasilkan nilai hash dari data yang diberikan. Fungsi-fungsi ini sangat berguna untuk keamanan data dan verifikasi integritas data. Berikut adalah contohnya:

  • MD5() – Menghasilkan hash MD5 dari sebuah string.
SELECT MD5('Ini adalah teks yang akan di-hash') AS hashed_data; 
  • SHA1() – Menghasilkan hash SHA1 dari sebuah string.
SELECT SHA1('Ini adalah teks yang akan di-hash') AS hashed_data; 
  • SHA2() – Menghasilkan hash SHA2 dengan panjang bit yang ditentukan (misalnya 256 bit).
SELECT SHA2('Ini adalah teks yang akan di-hash', 256) AS hashed_data; 
  • OLD_PASSWORD() – Menghasilkan hash password lama MySQL untuk string input. Fungsi ini masih ada untuk kompatibilitas, meskipun sebaiknya menggunakan metode hash yang lebih modern.
SELECT OLD_PASSWORD('s3cr3t') AS hashed_password; 
Itulah sobat, rangkuman dari berbagai fungsi enkripsi, dekripsi, encoding, kompresi, dan hashing yang ada di MySQL. Dengan menggunakan fungsi-fungsi ini, kita bisa melindungi data sensitif dan mengelola penyimpanan data dengan lebih efisien. Jangan ragu untuk mencoba contoh kode di atas dan eksplorasi lebih lanjut sesuai kebutuhan proyek kalian.

Semoga artikel ini bermanfaat dan bisa membantu sobat dalam mengoptimalkan keamanan dan performa database MySQL. Selamat mencoba dan semoga sukses!