ข้ามไปยังเนื้อหา

ความเป็นส่วนตัวและความปลอดภัยของข้อมูล

ความเป็นส่วนตัวเป็นค่านิยมหลักของ DevLingo เราอธิบายอย่างละเอียดว่าข้อมูลไหลอย่างไร จัดเก็บที่ไหน ใครสามารถเข้าถึงได้

สถานการณ์ที่ 1: การสืบค้นครั้งเดียว (ไม่มีการซิงค์คลาวด์)

หัวข้อที่มีชื่อว่า “สถานการณ์ที่ 1: การสืบค้นครั้งเดียว (ไม่มีการซิงค์คลาวด์)”
ขั้นตอน 1: คุณเลือก "idempotent" ใน Slack
ขั้นตอน 2: กด ⌘⇧D
ขั้นตอน 3: แอป Mac ตรวจสอบคลังในเครื่องและแคช
ขั้นตอน 4: หากไม่ตรง ส่งการสืบค้นไปยัง Cloudflare Workers (เข้ารหัส HTTPS)
คำขอประกอบด้วย:
• ข้อความที่เลือก: "idempotent"
• บริบท (ข้อความก่อนและหลัง)
• ตัวระบุแอป (Slack)
• โหมด: Word
ขั้นตอน 5: Workers เรียก Claude API
ขั้นตอน 6: Claude คืนผลลัพธ์ JSON แบบโครงสร้าง
ขั้นตอน 7: แอป Mac ได้รับผลลัพธ์
ขั้นตอน 8: เว้นแต่ผู้ใช้คลิก "บันทึก" ผลลัพธ์จะไม่ถูกจัดเก็บ
(หน้าต่างลอยปิดแล้วข้อมูลหายไป)
ขั้นตอน 1-7: เหมือนด้านบน
ขั้นตอน 8: ผู้ใช้คลิก "Save to Word Book"
ขั้นตอน 9: ข้อมูลถูกจัดเก็บใน SwiftData ในเครื่อง
(อยู่ในอุปกรณ์เท่านั้น ไม่อัปโหลดคลาวด์)
ขั้นตอน 10: สวิตช์ซิงค์สมุดคำศัพท์ปิด → เสร็จ (เฉพาะในเครื่อง)
สวิตช์ซิงค์สมุดคำศัพท์เปิด → ขั้นตอน 11
ขั้นตอน 11: อุปกรณ์ผู้ใช้ซิงค์ไปยัง Cloudflare D1
(ฐานข้อมูลส่วนตัวผู้ใช้ มีการยืนยันตัวตน)

สำคัญ: ข้อความใดก็ตามที่ DevLingo ส่งผ่าน Claude API จะไม่ถูกใช้สำหรับการฝึก Claude หรือโมเดลอื่นใด เราปฏิบัติตามนโยบายเริ่มต้นของ Anthropic

✓ ข้อความของคุณใช้ครั้งเดียว
✓ Claude ประมวลผลแล้วทิ้งทันที (ไม่จัดเก็บ)
✓ ไม่ใช้สำหรับการขุดข้อมูลในรูปแบบใด

:::note วิธีการตรวจสอบ คำขอ Claude API ทั้งหมดถูกทำเครื่องหมาย “user=” แสดงว่า “นี่คือข้อมูลผู้ใช้ปลายทาง ไม่ควรใช้สำหรับการฝึก” :::

การจัดเก็บในเครื่องปิดการซิงค์คลาวด์เป็นค่าเริ่มต้น

หัวข้อที่มีชื่อว่า “การจัดเก็บในเครื่องปิดการซิงค์คลาวด์เป็นค่าเริ่มต้น”

สมุดคำศัพท์ (Word Book) บันทึกบน Mac ของคุณเท่านั้นเป็นค่าเริ่มต้น โดยใช้ SwiftData:

~/Library/Containers/com.devglish.com/Data/
└── default.store/
└── word_entries.db (SQLite ในเครื่อง)

ฐานข้อมูลนี้เป็นส่วนตัวของอุปกรณ์ มีเพียงแอป DevLingo เท่านั้นที่เข้าถึงได้

หากคุณต้องการซิงค์สมุดคำศัพท์บน Mac หลายเครื่อง สามารถเลือกเปิดใช้งานการซิงค์คลาวด์:

Settings → iCloud Sync → Toggle ON

เมื่อเปิดใช้งาน สมุดคำศัพท์จะถูกเข้ารหัสแล้วอัปโหลดไปยัง Cloudflare D1:

การเข้ารหัส: เข้ารหัสฝั่งไคลเอนต์ (Curve25519) → เซิร์ฟเวอร์จัดเก็บ
การยืนยันตัวตน: JWT token ของผู้ใช้ (โทเค็นความปลอดภัย)
การควบคุมการเข้าถึง: ผู้ใช้แต่ละคนเข้าถึงได้เฉพาะข้อมูลของตน
การแยก: แยกระดับแถวฐานข้อมูล ป้องกันการเข้าถึงข้ามผู้ใช้

:::caution การโอนข้อมูล หลังเปิดใช้งานการซิงค์คลาวด์ หากคุณยกเลิกสมาชิกหรือลบบัญชี ข้อมูลคลาวด์จะถูกลบโดยอัตโนมัติหลัง 30 วัน SwiftData ในเครื่องไม่ได้รับผลกระทบ ยังคงอยู่บนอุปกรณ์ของคุณ :::

DevLingo ปฏิบัติตามหลักการ “เก็บรวบรวมน้อยที่สุด” อย่างเคร่งครัด:

✗ เนื้อหาโค้ด (แม้คุณอาจใช้ใน Xcode)
✗ ประวัติการเรียกดูหรือประวัติการใช้แอปทั้งหมด
✗ บันทึกแชทหรือเนื้อหาอีเมล
✗ ประวัติ Git ของคุณ
✗ ไฟล์ส่วนตัวอื่นๆ บนอุปกรณ์
✓ ข้อความที่คุณเลือกสืบค้น
✓ บริบท 50 ตัวอักษรก่อนและหลัง (ใช้สำหรับ AI เข้าใจ)
✓ Bundle Identifier ของแอปปัจจุบัน (ช่วย AI ปรับสไตล์)
✓ การตั้งค่าภาษาแม่ของคุณ (สำหรับคำแนะนำ L1 Interference)
✓ เนื้อหาสมุดคำศัพท์ (เฉพาะเมื่อเปิดใช้งานการซิงค์คลาวด์อย่างชัดเจน)

แบ็กเอนด์ DevLingo (Cloudflare Workers) ถือ Claude API Key แอป Mac ของคุณไม่จำเป็นต้องเปิดเผย key โดยตรง แต่ส่งคำขอ API ทั้งหมดผ่าน Workers

Mac App Workers (edge)
↓ (HTTPS) ↓
│── Bearer: user_jwt ────────→ │
│ │
│ (อายุ 1 ชั่วโมง) │ (Claude API Key)
│ │
│← Structured Response ←────── Claude API

ข้อดี:

  • Key ไม่ถูกจัดเก็บในเครื่อง (ไม่รั่วไหล)
  • การเรียก API ทั้งหมดจัดการบน Cloudflare edge ที่เชื่อถือได้
  • แม้ Mac ของคุณถูกโจมตี key ก็ยังปลอดภัย

ผู้ใช้ได้รับ JWT token อายุสั้น (1 ชั่วโมง) เมื่อเข้าสู่ระบบ:

อัลกอริทึม: HS256 (HMAC SHA-256)
คีย์ลายเซ็น: Cloudflare Secret (ไม่จัดเก็บในเครื่อง)
ตำแหน่งจัดเก็บ: macOS Keychain (เข้ารหัสระบบ)
รีเฟรช: รีเฟรชอัตโนมัติเมื่อโทเค็นใกล้หมดอายุ

การสื่อสารทั้งหมดจาก Mac ไปยัง Cloudflare Workers เข้ารหัส HTTPS:

TLS 1.3 (โปรโตคอลล่าสุด)
ใบรับรอง: LetsEncrypt (อัปเดตอัตโนมัติ)
Perfect Forward Secrecy (ความลับแบบส่งต่อสมบูรณ์)

ระบบสืบค้นแบบหลายชั้นของ DevLingo รับประกันว่าคุณสามารถใช้งานแบบออฟไลน์ได้:

เลือก "idempotent" ในโหมดเครื่องบิน
สืบค้นคลังศัพท์เทคนิคในเครื่อง (85+ คำ) → สำเร็จ!
ผลลัพธ์แสดงทันที ไม่ต้องใช้เครือข่าย

กรณีที่ต้องใช้เครือข่าย:

✓ สืบค้นคำศัพท์ใหม่ที่ไม่อยู่ในคลังในเครื่อง
✓ ซิงค์สมุดคำศัพท์ไปยังคลาวด์
✓ ดาวน์โหลดแคชเสียง TTS ล่าสุด

95% ของการสืบค้นอื่นๆ สามารถทำแบบออฟไลน์ได้ทั้งหมด

หากคุณตัดสินใจลบบัญชี DevLingo:

ขั้นตอน 1: Settings → Account → Delete Account
ขั้นตอน 2: ระบบจะขอให้คุณยืนยันอีกครั้ง
ขั้นตอน 3: Cloudflare ลบ:
• บัญชีผู้ใช้
• สมุดคำศัพท์บนคลาวด์
• ประวัติการเข้าสู่ระบบ
• บันทึกการใช้ API
(ลบอย่างสมบูรณ์หลัง 30 วัน)
ขั้นตอน 4: ข้อมูลในเครื่องไม่ได้รับผลกระทบ
(ยังอยู่บน Mac ของคุณ ให้คุณลบเอง)

:::caution ความถาวรของข้อมูล เมื่อลบบัญชีแล้วไม่สามารถกู้คืนข้อมูลคลาวด์ได้ แต่คุณสามารถส่งออกสมุดคำศัพท์ในเครื่องเป็น CSV เพื่อเก็บถาวร :::

DevLingo ปฏิบัติตามข้อกำหนดต่อไปนี้:

ภูมิภาคข้อกำหนดสถานะ
สหภาพยุโรปGDPR (ข้อกำหนดการปกป้องข้อมูลทั่วไป)✓ ปฏิบัติตาม
สหรัฐอเมริกาCCPA / CPRA✓ ปฏิบัติตาม
จีนการจัดเก็บข้อมูลในประเทศ✓ เฉพาะการจัดเก็บในเครื่อง; การซิงค์คลาวด์ใช้ Cloudflare (ทางเลือก)

:::note เจ้าหน้าที่คุ้มครองข้อมูล หากมีคำถามเกี่ยวกับความเป็นส่วนตัว ติดต่อ [email protected] เราตอบกลับภายใน 24 ชั่วโมง :::

ทีมวิศวกรรม DevLingo ดำเนินการเป็นประจำ:

• ตรวจสอบความปลอดภัยโค้ด (OWASP Top 10)
• สแกนการพึ่งพา (npm audit, Xcode security)
• ทดสอบการเจาะระบบ (บุคคลที่สาม)
• ตรวจสอบการเข้าถึงฐานข้อมูล (ใครเข้าถึงอะไร)

รายงานการตรวจสอบเผยแพร่อย่างโปร่งใสทุกไตรมาส


สรุป: การออกแบบความเป็นส่วนตัวของ DevLingo เป็นไปตามหลักการ “Zero Trust” สมมติว่าเครือข่ายถูกดักฟัง สมมติว่าอุปกรณ์ถูกโจมตี แต่ผ่านการเข้ารหัส การยืนยันตัวตน การเก็บรวบรวมน้อยที่สุด รับประกันว่าข้อมูลของคุณอยู่ภายใต้การควบคุมเสมอ