Keamanan KasPoint: SHA-256, PIN, dan Proteksi Data

Daftar Isi
Bedah keamanan KasPoint: enkripsi SHA-256+SALT untuk password, numpad PIN visual, dan sesi token 8 jam. Data keuangan aman terlindungi.

PoinTru.com - Ketika memilih aplikasi untuk mengelola data keuangan pribadi atau bisnis, pertanyaan soal keamanan adalah yang pertama harus dijawab.KasPoint mengambil pendekatan keamanan yang serius untuk aplikasi yang tidak memerlukan server berbayar-menggunakan enkripsi SHA-256, sistem PIN, dan manajemen sesi yang proper. Di artikel ini, Saya akan bedah seluruh lapisan keamanan yang ada di KasPoint agar Anda bisa membuat keputusan yang informasi.

Saya shock waktu pertama kali membaca dokumentasi teknisnya: untuk aplikasi gratis berbasis Google Sheets, lapisan keamanan yang diimplementasikan KasPoint lebih canggih dari banyak aplikasi berbayar yang pernah Saya coba.

Enkripsi Password: SHA-256 + SALT

Password yang Anda gunakan untuk login KasPoint tidak pernah tersimpan dalam bentuk teks biasa di database. Proses keamanannya adalah sebagai berikut:

  • Saat Anda membuat atau mengubah password, teks password dikirim via HTTPS ke Google Apps Script
  • Di sisi server (Apps Script), sistem menghitung nilaiSHA-256(SALT + password) - menggabungkan nilai SALT yang unik untuk instalasi Anda dengan password, lalu dienkripsi dengan algoritma SHA-256
  • Nilai hash yang dihasilkan (bukan password aslinya) yang disimpan di sheet USERS
  • Saat login, proses yang sama diulang dan hasilnya dibandingkan dengan hash yang tersimpan
  • Jika cocok, sesi token dibuat dan dikirim ke browser-bukan password-nya

Yang kritis di sini adalah nilaiSALT. SALT adalah string unik yang Anda tentukan sendiri saat setup awal (mengganti nilai default di kode). Ini berarti dua instalasi KasPoint dengan password yang sama akan menghasilkan hash yang berbeda-sehingga bahkan jika database seseorang bocor, hash-nya tidak bisa digunakan di instalasi KasPoint lain.

DataDisimpan DiFormat Penyimpanan
UsernameGoogle Sheets (USERS)Plaintext
PasswordGoogle Sheets (USERS)SHA-256 hash + SALT
PINGoogle Sheets (CONFIG)SHA-256 hash + SALT
URL Apps ScriptlocalStorage browserPlaintext
Sesi loginlocalStorage browserToken + waktu kadaluarsa 8 jam
Data transaksiGoogle SheetsPlaintext

Sistem PIN: Lapisan Kedua untuk Aksi Sensitif

Salah satu fitur keamanan yang paling thoughtful di KasPoint adalah sistem PIN. Ini bukan PIN untuk login-PIN ini digunakan sebagai verifikasi tambahan sebelum Anda bisamengedit atau menghapus data yang sudah tersimpan.

Logikanya sederhana: bahkan jika seseorang berhasil login ke akun KasPoint Anda (misalnya Anda lupa logout di perangkat bersama), mereka tidak bisa sembarangan menghapus atau mengubah data tanpa mengetahui PIN yang terpisah.

  • PIN terdiri dari 4-6 digit angka
  • Dibuat dan dikelola di Settings - PIN
  • Disimpan dengan enkripsi yang sama: SHA-256(SALT + PIN) di sheet CONFIG
  • Wajib dimasukkan sebelum setiap aksi Edit atau Hapus di tab Riwayat
  • Input PIN dilakukan vianumpad visual khusus di layar, bukan keyboard biasa-ini mencegah keylogger atau screen recorder menangkap input PIN Anda

Oh iya, desain numpad visual ini detail yang Saya apresiasi. Di banyak aplikasi keuangan, PIN dimasukkan via keyboard standar yang rentan terhadap keylogger. KasPoint menggunakan numpad custom yang hanya bisa dioperasikan dengan sentuhan/klik di layar.

Buat PIN yang berbeda dari password login Anda. Ini praktik keamanan standar: jika satu kredensial dikompromikan, yang lain tetap aman. PIN yang direkomendasikan: 6 digit yang tidak mudah ditebak (hindari 123456, tanggal lahir, atau pola berulang).

Manajemen Sesi: Token 8 Jam

KasPoint menggunakan sistem sesi berbasis token, bukan menyimpan password di browser. Setelah login berhasil:

  • Server membuatsession token unik yang dikirim ke browser
  • Token disimpan di localStorage browser (bukan cookie) bersama timestamp kadaluarsa
  • Sesi otomatis kadaluarsa setelah8 jam (bisa dikonfigurasi di CONFIG session_hours)
  • Setelah kadaluarsa, Anda harus login ulang
  • Password tidak pernah tersimpan di browser-hanya token sementara

Menariknya, durasi sesi 8 jam ini bisa diubah oleh admin melalui Settings - Config. Untuk lingkungan yang lebih sensitif, bisa di-set lebih pendek. Untuk penggunaan personal yang nyaman, 8 jam adalah default yang reasonable.

Jangan gunakan KasPoint di perangkat bersama (komputer warnet, laptop kantor yang dipakai banyak orang) tanpa logout terlebih dahulu. Meski sesi akan kadaluarsa otomatis setelah 8 jam, data yang sudah terbuka di browser tetap bisa dilihat sampai browser ditutup atau token dihapus.

Rekomendasi Keamanan Tambahan dari Saya

Selain fitur keamanan bawaan KasPoint, ada beberapa langkah tambahan yang sangat Saya rekomendasikan:

  • Ganti nilai SALT sebelum deploy pertama - ini adalah langkah paling penting. SALT default yang ada di file kode sudah diketahui publik; SALT yang Anda buat sendiri tidak.
  • Aktifkan 2-Step Verification di akun Google yang digunakan untuk Apps Script - karena seluruh keamanan data bergantung pada keamanan akun Google ini
  • Jangan bagikan URL Web App kepada yang tidak berhak - URL ini adalah pintu masuk ke backend sistem Anda
  • Backup Sheets berkala - minimal sebulan sekali via File - Download -.xlsx di Google Sheets
  • Gunakan password minimal 8 karakter yang mengandung huruf besar, huruf kecil, dan angka

Cara Reset PIN Jika Lupa

PIN tidak bisa dipulihkan karena disimpan sebagai hash (nilai hash tidak bisa dibalikkan ke nilai aslinya). Yang bisa dilakukan adalah reset-menghapus hash lama dan membuat PIN baru. Ada tiga cara:

  • Via Menu Sheets: Klik KasPoint - Reset PIN Aplikasi - Konfirmasi - buat PIN baru di Settings - PIN
  • Via Apps Script Editor: Dropdown fungsi - pilihresetAppPin - Run - buat PIN baru
  • Via Edit Sheet Langsung: Buka sheet CONFIG - cari barisapp_pin - hapus nilai di kolom B - buat PIN baru

Semua metode reset mengharuskan Anda memiliki akses ke Google Sheets yang terhubung-ini adalah desain yang tepat, karena hanya pemilik akun Google yang bisa melakukan reset.

Apakah URL Web App bisa disalahgunakan jika bocor?
URL Web App saja tidak cukup untuk mengakses data. Setiap permintaan data sensitif memerlukan session token yang valid, dan token hanya bisa didapat melalui login dengan username dan password yang benar. Jika URL bocor, orang yang mengetahuinya masih perlu username dan password untuk bisa mengakses data Anda. Namun sebagai praktik keamanan yang baik, tetap jaga kerahasiaan URL tersebut.
Apa yang terjadi jika SALT diubah setelah ada user terdaftar?
Semua password yang tersimpan sebagai hash akan menjadi tidak valid karena hash yang tersimpan menggunakan SALT lama, sementara saat login sistem akan menghitung hash dengan SALT baru yang berbeda-hasilnya tidak akan pernah cocok. Solusinya: reset password semua user via menu KasPoint - Reset Password User di Google Sheets. Ini adalah alasan kenapa dokumentasi KasPoint sangat tegas: jangan ubah SALT setelah ada user terdaftar.
Apakah admin bisa melihat password pengguna lain?
Tidak. Password disimpan dalam bentuk hash SHA-256, bukan plaintext. Bahkan admin yang punya akses langsung ke sheet USERS hanya bisa melihat nilai hash yang tidak bisa dibalikkan ke password aslinya. Jika lupa password, satu-satunya opsi adalah reset via menu Sheets-bukan melihat password lama.

Akhir Kata

Jadi, intinya KasPoint mengimplementasikan keamanan yang sangat serius untuk aplikasi gratis berbasis Google Sheets: SHA-256+SALT untuk enkripsi credential, numpad PIN visual untuk verifikasi aksi sensitif, dan session token dengan kadaluarsa otomatis. Dari pengalaman Saya, langkah paling kritis yang sering dilewatkan adalah mengganti SALT sebelum deploy pertama-jangan sampai terlewat. Kalau ada pertanyaan, feel free buat komen di bawah ya!

Untuk membaca artikel lainnya, cek aja diSitemap.

Posting Komentar

Baca Juga Artikel Terbaru

Memuat artikel...