Teknologi dan data GO BLAST
Versi 1.0 — Oktober 2026
Mesin Pengirim
GO BLAST dibangun menggunakan bahasa pemrograman Go dan pustaka sumber terbuka whatsmeow (go.mau.fi/whatsmeow). whatsmeow menyambung ke jaringan WhatsApp sebagai perangkat tertaut, mirip seperti cara kerja WhatsApp Web pada peramban. Sistem ini bukan merupakan API resmi WhatsApp Business. Akibatnya, WhatsApp dapat membatasi atau memblokir nomor telepon yang terdeteksi melakukan aktivitas pengiriman massal, dan hal ini merupakan risiko yang sudah tertulis di Syarat dan Ketentuan. Pesan kampanye dikirim satu per satu ke nomor tujuan dengan jeda waktu sesuai profil kecepatan yang dipilih.
Perlakuan terhadap Akun WhatsApp Pekerja
Sesi WhatsApp pekerja hanya aktif di server selama berstatus tersambung. Setelah sesi terputus atau server di-restart, pekerja perlu melakukan scan QR ulang untuk melanjutkan. Sistem tidak membaca atau menyimpan percakapan pribadi maupun pesan masuk milik pekerja. Untuk keperluan protokol perpesanan, whatsmeow membuat tabel lokal pada database (seperti whatsmeow_device, whatsmeow_sessions, whatsmeow_contacts). Metadata kontak yang disinkronkan oleh WhatsApp selama sesi aktif dapat tersimpan sementara di tabel whatsmeow_contacts. Seluruh data pada tabel whatsmeow_* dihapus dari server saat sesi dihentikan (logout), akun dihapus oleh pekerja, atau saat server restart, serta dikecualikan dari berkas cadangan database.
Keamanan Sistem
- Kata sandi di-hash menggunakan algoritma Argon2id.
- Tujuan penarikan saldo dienkripsi dengan AES-256-GCM dan baru didekripsi saat Pengelola memprosesnya dengan verifikasi dua langkah (TOTP). Perubahan tujuan penarikan yang sudah ada atau perubahan kata sandi menahan penarikan selama 24 jam.
- Pengelola wajib melewati verifikasi dua langkah (TOTP).
- Akses web dilindungi melalui HTTPS dan jaringan Cloudflare.
- Tersedia pembatasan percobaan login (rate limiting) dan captcha Turnstile.
- Cadangan database (.gbak) dienkripsi dengan kunci terpisah (AES-256-GCM).
- Nomor penerima tidak pernah dikirim ke peramban pekerja dan disamarkan di log server.
Di Mana Data Disimpan
Rincian penyimpanan data, lokasi penyimpanan, masa retensi, dan pihak yang memiliki akses:
| Jenis Data | Disimpan di Mana | Berapa Lama | Siapa yang Bisa Melihat |
|---|---|---|---|
| Akun pekerja (username, email opsional, hash kata sandi) | Database PostgreSQL (tabel users) | Selama akun berstatus aktif | Pengelola (username dan email), sistem autentikasi (hash) |
| Tujuan penarikan terenkripsi (rekening bank BCA/SeaBank, dompet elektronik DANA/OVO/GoPay, atau alamat USDT BEP-20) | Database PostgreSQL (tabel users, terenkripsi AES-256-GCM) | Selama akun berstatus aktif | Hanya Pengelola setelah verifikasi TOTP saat proses penarikan, dan pekerja pemilik akun |
| Saldo dan riwayat upah (catatan buku besar) | Database PostgreSQL (tabel ledger_entries, append-only) | Permanen untuk keakuratan saldo | Pekerja pemilik akun, Pengelola |
| Nomor customer dan data campaign | Database PostgreSQL (tabel campaign_numbers, campaign_numbers_archive, dan campaigns) | Nomor tujuan dan data kampanye disimpan sampai Pengelola menjalankan pembersihan kampanye: nomor yang belum dikirim dihapus, sedangkan nomor yang sudah diproses (terkirim, gagal, atau tidak terdaftar) dianonimkan serta nama penerima dan data tambahannya dikosongkan agar riwayat hitungan dan saldo tetap akurat | Pengelola (nomor penerima tidak pernah ditampilkan ke pekerja) |
| Sesi WhatsApp (kunci sesi, metadata kontak, dan metadata protokol) | Database lokal (tabel whatsmeow_*) | Selama sesi digunakan (dihapus saat sesi dihentikan/logout, akun dihapus, atau server restart; tidak masuk ke berkas cadangan) | Sistem otomasi whatsmeow |
| Berkas sementara unggahan (potongan file daftar nomor) | Penyimpanan lokal server (direktori data/tmp/) | Paling lama 1 jam (dibersihkan otomatis) | Proses internal unggahan Pengelola |
| Cadangan database (.gbak) | Penyimpanan lokal server / cadangan (terenkripsi AES-256-GCM) | Sesuai kebijakan retensi cadangan Pengelola | Pengelola pemegang kunci cadangan |
| Log audit login gagal, sesi login web, dan notifikasi | Database PostgreSQL (tabel audit_logs, web_sessions, dan notifications; alamat IP disimpan tidak disamarkan pada sesi dan log keamanan) | Log login gagal 30 hari; sesi web 7 hari (pekerja) atau 24 jam (Pengelola); notifikasi yang sudah dibaca 90 hari saat pemeliharaan penyimpanan | Pengelola (log dan sesi), pekerja penerima (notifikasi) |
| Log operasional server | Berkas log server / stdout | Sesuai rotasi log server | Pengelola teknis server |
Pihak Ketiga yang Terlibat
Cloudflare digunakan untuk perutean lalu lintas web, perlindungan DDoS, dan captcha Turnstile. Aplikasi dan database dijalankan pada infrastruktur server virtual (VPS) yang dikelola oleh Pengelola. Pengiriman pesan berjalan melalui jaringan WhatsApp.