Privasi Data dan Keamanan
Privasi adalah nilai inti DevLingo. Kami menjelaskan secara detail bagaimana data mengalir, di mana disimpan, dan siapa yang dapat mengaksesnya.
Transparansi Aliran Data
Section titled “Transparansi Aliran Data”Skenario 1: Pencarian Tunggal (Tanpa Sinkronisasi Cloud)
Section titled “Skenario 1: Pencarian Tunggal (Tanpa Sinkronisasi Cloud)”Langkah 1: Anda memilih "idempotent" di Slack ↓Langkah 2: Menekan ⌘⇧D ↓Langkah 3: Aplikasi Mac memeriksa pustaka lokal dan cache ↓Langkah 4: Jika tidak ditemukan, mengirim query ke Cloudflare Workers (enkripsi HTTPS) Permintaan berisi: • Teks yang dipilih: "idempotent" • Konteks (teks sebelum dan sesudah) • Identitas aplikasi (Slack) • Mode: Word ↓Langkah 5: Workers memanggil Claude API ↓Langkah 6: Claude mengembalikan hasil JSON terstruktur ↓Langkah 7: Aplikasi Mac menerima hasil ↓Langkah 8: Kecuali pengguna mengklik "Simpan", hasil tidak disimpan (data menghilang setelah jendela mengambang ditutup)Skenario 2: Menyimpan ke Buku Kata
Section titled “Skenario 2: Menyimpan ke Buku Kata”Langkah 1-7: Sama seperti di atas ↓Langkah 8: Pengguna mengklik "Save to Word Book" ↓Langkah 9: Data disimpan di SwiftData lokal (sepenuhnya di perangkat, tidak ke cloud) ↓Langkah 10: Toggle sinkronisasi buku kata MATI → Selesai (hanya lokal) Toggle sinkronisasi buku kata HIDUP → Langkah 11 ↓Langkah 11: Perangkat pengguna sinkron ke Cloudflare D1 (database pribadi pengguna, dengan autentikasi)Komitmen Utama
Section titled “Komitmen Utama”Teks Tidak Digunakan untuk Pelatihan Model
Section titled “Teks Tidak Digunakan untuk Pelatihan Model”Penting: Teks apa pun yang dikirim DevLingo melalui Claude API tidak akan digunakan untuk melatih Claude atau model lainnya. Kami mengikuti kebijakan default Anthropic.
✓ Teks Anda digunakan sekali saja✓ Claude membuangnya segera setelah diproses (tidak disimpan)✓ Tidak digunakan untuk bentuk data mining apa pun:::note Cara Verifikasi
Semua permintaan API Claude Anthropic ditandai dengan “user=
Penyimpanan Lokal dengan Sinkronisasi Cloud Mati Secara Default
Section titled “Penyimpanan Lokal dengan Sinkronisasi Cloud Mati Secara Default”Buku Kata (Word Book) secara default hanya disimpan di Mac Anda, menggunakan SwiftData:
~/Library/Containers/com.devglish.com/Data/└── default.store/ └── word_entries.db (SQLite lokal)Database ini bersifat privat per perangkat, hanya aplikasi DevLingo yang dapat mengaksesnya.
Sinkronisasi Cloud Bersifat Opsional
Section titled “Sinkronisasi Cloud Bersifat Opsional”Jika Anda ingin menyinkronkan buku kata di beberapa Mac, Anda dapat secara eksplisit mengaktifkan sinkronisasi cloud:
Settings → iCloud Sync → Toggle ONSetelah diaktifkan, buku kata akan dienkripsi lalu diunggah ke Cloudflare D1:
Enkripsi: Enkripsi sisi klien (Curve25519) → Disimpan di serverAutentikasi: Token JWT pengguna (token keamanan)Kontrol akses: Setiap pengguna hanya dapat mengakses datanya sendiriIsolasi: Isolasi tingkat baris database, mencegah akses lintas pengguna:::caution Transfer Data Setelah mengaktifkan sinkronisasi cloud, jika Anda membatalkan langganan atau menghapus akun, data cloud akan otomatis dihapus setelah 30 hari. SwiftData lokal tidak terpengaruh, tetap ada di perangkat Anda. :::
Apa yang Kami Tidak Kumpulkan
Section titled “Apa yang Kami Tidak Kumpulkan”DevLingo secara ketat mengikuti prinsip “pengumpulan minimal”:
Data yang Tidak Dikumpulkan
Section titled “Data yang Tidak Dikumpulkan”✗ Konten kode (meskipun Anda mungkin menggunakannya di Xcode)✗ Riwayat browsing lengkap atau riwayat penggunaan aplikasi✗ Log chat atau konten email✗ Riwayat Git Anda✗ File pribadi lainnya di perangkat AndaHanya Data yang Diperlukan
Section titled “Hanya Data yang Diperlukan”✓ Teks yang Anda pilih untuk di-query✓ 50 karakter konteks sebelum dan sesudah (hanya untuk pemahaman AI)✓ Bundle Identifier aplikasi saat ini (membantu AI menyesuaikan gaya)✓ Pengaturan bahasa ibu Anda (untuk tips interferensi L1)✓ Konten buku kata (hanya jika sinkronisasi cloud diaktifkan secara eksplisit)Keamanan API Key
Section titled “Keamanan API Key”Claude API Key
Section titled “Claude API Key”Backend DevLingo (Cloudflare Workers) memegang Claude API key. Aplikasi Mac Anda tidak perlu mengekspos key secara langsung, melainkan memproksikan semua permintaan API melalui Workers.
Aplikasi Mac Workers (edge) ↓ (HTTPS) ↓ │── Bearer: user_jwt ────────→ │ │ │ │ (masa berlaku 1 jam) │ (Claude API Key) │ │ │← Structured Response ←────── Claude APIKeuntungan:
- Key tidak disimpan secara lokal (tidak akan bocor)
- Semua panggilan API diproses di edge Cloudflare yang tepercaya
- Bahkan jika Mac Anda diserang, key tetap aman
Token JWT Pengguna
Section titled “Token JWT Pengguna”Pengguna mendapatkan token JWT jangka pendek (masa berlaku 1 jam) saat login:
Algoritma: HS256 (HMAC SHA-256)Kunci tanda tangan: Cloudflare Secret (tidak disimpan secara lokal)Lokasi penyimpanan: macOS Keychain (enkripsi sistem)Refresh: Otomatis diperbarui saat token hampir kedaluwarsaTingkat keamanan Keychain:
Terikat dengan kunci unlock iCloud MacSistem meminta konfirmasi pengguna setiap kali diaksesBahkan jika seseorang mencuri hard drive Anda, data tidak bisa dibacaKeamanan Transmisi Jaringan
Section titled “Keamanan Transmisi Jaringan”Semua komunikasi dari Mac ke Cloudflare Workers dienkripsi HTTPS:
TLS 1.3 (protokol terbaru)Sertifikat: LetsEncrypt (pembaruan otomatis)Perfect Forward SecrecyKemampuan Offline
Section titled “Kemampuan Offline”Sistem pencarian berlapis DevLingo memastikan Anda dapat menggunakan secara offline:
Dalam mode pesawat, memilih "idempotent" ↓Mencari pustaka kosakata teknis lokal (85+ kata) → Berhasil! ↓Hasil langsung ditampilkan, tanpa perlu jaringanHanya situasi berikut yang memerlukan jaringan:
✓ Mencari kosakata baru yang tidak ada di pustaka lokal✓ Menyinkronkan buku kata ke cloud✓ Mendapatkan cache audio TTS terbaru95% pencarian lainnya dapat sepenuhnya dilakukan secara offline.
Penghapusan Akun dan Pembersihan Data
Section titled “Penghapusan Akun dan Pembersihan Data”Jika Anda memutuskan untuk menghapus akun DevLingo:
Langkah 1: Settings → Account → Delete Account ↓Langkah 2: Sistem akan meminta konfirmasi ulang ↓Langkah 3: Cloudflare menghapus: • Akun pengguna • Buku kata cloud • Riwayat login • Log penggunaan API (dihapus sepenuhnya setelah 30 hari) ↓Langkah 4: Data lokal tidak terpengaruh (tetap di Mac Anda, Anda yang menghapus sendiri):::caution Permanen Setelah akun dihapus, data cloud tidak dapat dipulihkan. Tetapi Anda dapat mengekspor buku kata lokal sebagai CSV dan menyimpannya secara permanen. :::
Kepatuhan
Section titled “Kepatuhan”DevLingo mematuhi peraturan berikut:
| Wilayah | Peraturan | Status |
|---|---|---|
| Uni Eropa | GDPR (Peraturan Perlindungan Data Umum) | ✓ Patuh |
| Amerika Serikat | CCPA / CPRA | ✓ Patuh |
| Indonesia | Perlindungan data | ✓ Hanya penyimpanan lokal; sinkronisasi cloud menggunakan Cloudflare (opsional) |
:::note Petugas Perlindungan Data Jika ada pertanyaan privasi, hubungi [email protected]. Kami merespons dalam 24 jam. :::
Audit Keamanan Berkala
Section titled “Audit Keamanan Berkala”Tim engineering DevLingo secara berkala melakukan:
• Audit keamanan kode (OWASP Top 10)• Pemindaian dependensi (npm audit, Xcode security)• Pengujian penetrasi (pihak ketiga)• Audit akses database (siapa mengakses apa)Laporan audit dipublikasikan secara transparan kepada pengguna setiap kuartal.
Ringkasan: Desain privasi DevLingo mengikuti prinsip “zero trust” — mengasumsikan jaringan dipantau, mengasumsikan perangkat diserang, tetapi melalui enkripsi, autentikasi, dan pengumpulan minimal, memastikan data Anda selalu dalam kendali Anda.