Keamanan Data

Perlindungan menyeluruh untuk data sensitif perusahaan Anda melalui enkripsi AES-256-CBC, penegakan HTTPS, dan praktik terbaik keamanan informasi di seluruh modul OnePlatform.

Kepatuhan Keamanan
OnePlatform mengimplementasikan enkripsi tingkat enterprise untuk melindungi data identitas, data pribadi (PII), dan data keuangan. Semua data sensitif dienkripsi secara otomatis sebelum disimpan ke database menggunakan standar AES-256-CBC.

Enkripsi AES-256-CBC

OnePlatform menggunakan algoritma AES-256-CBC (Advanced Encryption Standard dengan 256-bit key dan Cipher Block Chaining mode) yang merupakan standar enkripsi yang digunakan oleh pemerintah, perbankan, dan institusi keuangan di seluruh dunia.

Kunci 256-bit

Menggunakan kunci enkripsi sepanjang 256 bit yang secara praktis tidak mungkin dipecahkan dengan brute force. Diperlukan 2256 percobaan untuk memecahkan kunci ini.

Mode CBC

Cipher Block Chaining memastikan setiap blok data terenkripsi bergantung pada blok sebelumnya, sehingga pola data tidak terlihat meskipun ada data berulang.

APP_KEY Laravel

Kunci enkripsi diturunkan dari APP_KEY di file .env. Kunci ini di-generate secara kriptografis aman menggunakan php artisan key:generate.

Enkripsi Otomatis

Menggunakan Laravel encrypted cast pada model Eloquent. Data dienkripsi saat disimpan dan didekripsi saat dibaca -- sepenuhnya transparan bagi pengguna.

Modul yang Dilindungi

Enkripsi data diterapkan pada modul-modul berikut yang menangani informasi sensitif:

Accounting

Nomor rekening bank, SWIFT code, IBAN, routing number, konfigurasi API perbankan, dan data online banking.

Finance

Nomor kartu kredit, nama pemegang kartu, tanggal kedaluwarsa, nomor pajak vendor dan customer, detail bank.

Point of Sales

Data anggota POS termasuk nomor telepon, email, tanggal lahir, dan alamat pelanggan.

Koperasi

Simpanan pokok, simpanan wajib anggota koperasi, dan saldo tabungan yang bersifat rahasia.

Purchasing

Nomor rekening bank pembayaran dan nomor referensi transaksi pembelian.

Kategori Data Terenkripsi

Data yang dienkripsi dikelompokkan dalam tiga kategori utama berdasarkan sensitivitasnya:

Kategori Deskripsi Contoh Data Tingkat Risiko
Data Identitas (Pajak & Bank) Informasi identitas keuangan yang digunakan untuk transaksi resmi NPWP, nomor rekening bank, SWIFT code, IBAN, routing number Kritis
Data Pribadi (PII) Personally Identifiable Information -- data yang dapat mengidentifikasi seseorang Nomor telepon, email, tanggal lahir, alamat, nama pemegang kartu Tinggi
Data Keuangan Informasi keuangan yang bersifat rahasia dan berkaitan dengan nilai moneter Simpanan pokok, simpanan wajib, saldo tabungan, nomor kartu kredit Kritis

Penegakan TLS/HTTPS

Selain enkripsi data-at-rest di database, OnePlatform juga mendukung penegakan enkripsi data-in-transit melalui HTTPS/TLS:

Pengalihan HTTPS Otomatis

Ketika pengaturan FORCE_HTTPS=true diaktifkan di file .env, seluruh request HTTP akan secara otomatis dialihkan ke HTTPS. Ini memastikan data tidak pernah dikirimkan dalam bentuk plaintext melalui jaringan.

Sertifikat SSL/TLS

Untuk lingkungan produksi, diperlukan sertifikat SSL/TLS yang valid dari Certificate Authority (CA) terpercaya. Disarankan menggunakan sertifikat minimal TLS 1.2 dengan cipher suite yang kuat.

Cookie Secure

Ketika HTTPS aktif, session cookies secara otomatis ditandai sebagai Secure, mencegah pengiriman cookie melalui koneksi HTTP yang tidak terenkripsi.

Penting untuk Produksi
Untuk lingkungan produksi, selalu aktifkan FORCE_HTTPS=true dan pastikan sertifikat SSL/TLS terpasang dengan benar. Data sensitif yang dikirimkan melalui HTTP tanpa enkripsi sangat rentan terhadap serangan man-in-the-middle.

Alur Enkripsi Data

Berikut adalah alur bagaimana data sensitif dilindungi dari input pengguna hingga penyimpanan di database:

1
Input Pengguna

Data sensitif dimasukkan melalui form yang dilindungi HTTPS

2
Validasi

Data divalidasi di server melalui Form Request Laravel

3
Enkripsi

Eloquent encrypted cast mengenkripsi data dengan AES-256-CBC

4
Penyimpanan

Data terenkripsi (ciphertext) disimpan di database

5
Dekripsi

Saat dibaca, data otomatis didekripsi kembali oleh Eloquent

Transparansi Pengguna
Enkripsi dan dekripsi data berjalan sepenuhnya di belakang layar. Pengguna tidak perlu melakukan tindakan khusus -- mereka mengisi form dan melihat data seperti biasa. Perlindungan keamanan berlangsung secara otomatis di level aplikasi.