ข้อมูลเบื้องลึก: ภาพรวมสถาปัตยกรรม
Dropbox ได้รับการออกแบบโดยมาพร้อมการปกป้องหลายชั้น ได้แก่ การโอนย้ายข้อมูลที่ปลอดภัย การเข้ารหัส การกำหนดค่าเครือข่าย และการควบคุมในระดับแอปพลิเคชัน ซึ่งกระจายอยู่ในโครงสร้างพื้นฐานที่ปลอดภัยและปรับขนาดได้
โครงสร้างพื้นฐานของไฟล์
ผู้ใช้ Dropbox สามารถเข้าถึงไฟล์และโฟลเดอร์ได้ทุกเมื่อจากอินเตอร์เฟสที่หลากหลาย ไม่ว่าจะเป็นเดสก์ท็อป เว็บ และไคลเอนท์อุปกรณ์เคลื่อนที่ หรือผ่านทางแอปพลิเคชันของนักพัฒนาภายนอกที่เชื่อมต่อกับ Dropbox โดยแต่ละอินเตอร์เฟสจะมีการตั้งค่าการรักษาความปลอดภัยและคุณสมบัติต่างๆ ซึ่งทำหน้าที่ประมวลผลและปกป้องข้อมูลผู้ใช้พร้อมกับให้การเข้าถึงที่ง่ายดาย ไคลเอนท์ทั้งหมดเหล่านี้จะเชื่อมต่อกับเซิร์ฟเวอร์ที่ปลอดภัยเพื่อให้การเข้าถึงยังไฟล์ อนุญาตการแบ่งปันไฟล์กับบุคคลอื่น และอัพเดทอุปกรณ์ที่เชื่อมโยงเมื่อมีการเพิ่ม เปลี่ยนแปลง หรือลบไฟล์ต่างๆ
โครงสร้างพื้นฐานของไฟล์ของเราประกอบด้วยองค์ประกอบต่อไปนี้
เซิร์ฟเวอร์นิยามข้อมูล
ข้อมูลพื้นฐานบางอย่างเกี่ยวกับข้อมูลของผู้ใช้ ซึ่งเรียกว่า “นิยามข้อมูล” จะได้รับการเก็บรักษาในบริการพื้นที่จัดเก็บข้อมูลแยกต่างหาก และจะทำหน้าที่เป็นดัชนีสำหรับข้อมูลในบัญชีของผู้ใช้ นิยามข้อมูลจะประกอบด้วยบัญชีพื้นฐานและข้อมูลผู้ใช้ เช่น ที่อยู่อีเมล ชื่อ และชื่ออุปกรณ์ นิยามข้อมูลยังประกอบด้วยข้อมูลพื้นฐานเกี่ยวกับไฟล์ รวมถึงชื่อและประเภทของไฟล์ ซึ่งจะช่วยสนับสนุนคุณสมบัติต่างๆ เช่น ประวัติเวอร์ชัน การกู้คืน และการซิงค์
ฐานข้อมูลของนิยามข้อมูล
นิยามข้อมูลของไฟล์จะได้รับการจัดเก็บไว้ในบริการฐานข้อมูลที่สนับสนุนโดย MySQL ซึ่งจะแยกส่วนและจำลองข้อมูลตามความจำเป็น เพื่อให้เป็นไปตามข้อกำหนดด้านประสิทธิภาพและความพร้อมใช้งานในระดับสูง
เซิร์ฟเวอร์บล็อก
ตามการออกแบบแล้ว Dropbox จะมีกลไกการรักษาความปลอดภัยเฉพาะตัวที่เหนือกว่าการเข้ารหัสแบบเดิมเพื่อปกป้องข้อมูลของผู้ใช้ เซิร์ฟเวอร์บล็อกจะประมวลผลไฟล์จากแอปพลิเคชัน Dropbox โดยแยกแต่ละไฟล์ออกเป็นบล็อก เข้ารหัสแต่ละบล็อกไฟล์โดยใช้รหัสที่รัดกุม และทำการซิงค์เฉพาะบล็อกที่มีการเปลี่ยนแปลงระหว่างการแก้ไขเท่านั้น เมื่อแอปพลิเคชัน Dropbox ตรวจพบไฟล์ใหม่หรือตรวจพบการเปลี่ยนแปลงในไฟล์ที่มีอยู่ แอปพลิเคชันจะแจ้งเตือนเซิร์ฟเวอร์บล็อกถึงการเปลี่ยนแปลงนั้น และระบบจะประมวลผลและโอนย้ายบล็อกไฟล์ใหม่หรือบล็อกไฟล์ที่มีการแก้ไขไปยังเซิร์ฟเวอร์จัดเก็บข้อมูลบล็อก นอกจากนี้ เซิร์ฟเวอร์บล็อกยังใช้ในการส่งไฟล์และแสดงตัวอย่างแก่ผู้ใช้อีกด้วย
เซิร์ฟเวอร์จัดเก็บข้อมูลบล็อก
เนื้อหาจริงของไฟล์จากผู้ใช้จะได้รับการจัดเก็บไว้ในบล็อกที่เข้ารหัสด้วยเซิร์ฟเวอร์จัดเก็บข้อมูลบล็อก เนื้อหาจริงของไฟล์จากผู้ใช้จะได้รับการจัดเก็บไว้ในบล็อกที่เข้ารหัสด้วยเซิร์ฟเวอร์จัดเก็บข้อมูลบล็อก ไคลเอนท์ Dropbox จะแยกไฟล์ออกเป็นบล็อกไฟล์ก่อนส่ง เพื่อเตรียมพร้อมสำหรับการจัดเก็บ เซิร์ฟเวอร์จัดเก็บข้อมูลบล็อกจะทำหน้าที่เป็นระบบ Content-Addressable Storage (CAS) ซึ่งจะดึงข้อมูลบล็อกไฟล์ที่เข้ารหัสแต่ละบล็อกตามค่าแฮช
เซิร์ฟเวอร์แสดงตัวอย่าง
เซิร์ฟเวอร์แสดงตัวอย่างจะทำหน้าที่สร้างตัวอย่างของไฟล์ ตัวอย่างจะแสดงไฟล์ของผู้ใช้ในรูปแบบไฟล์ต่างๆ ที่เหมาะกับการแสดงผลอย่างรวดเร็วบนอุปกรณ์ของผู้ใช้ปลายทางมากกว่า เซิร์ฟเวอร์แสดงตัวอย่างจะดึงข้อมูลบล็อกไฟล์จากเซิร์ฟเวอร์จัดเก็บข้อมูลบล็อกเพื่อสร้างตัวอย่าง เมื่อมีการส่งคำขอแสดงตัวอย่างไฟล์ เซิร์ฟเวอร์แสดงตัวอย่างจะดึงตัวอย่างที่แคชเอาไว้จากเซิร์ฟเวอร์จัดเก็บข้อมูลตัวอย่างและโอนย้ายตัวอย่างนั้นไปยังเซิร์ฟเวอร์บล็อก ในท้ายที่สุด เซิร์ฟเวอร์บล็อกจะแสดงตัวอย่างให้แก่ผู้ใช้
เซิร์ฟเวอร์จัดเก็บข้อมูลตัวอย่าง
ระบบจะจัดเก็บการแสดงตัวอย่างที่แคชไว้ในรูปแบบที่เข้ารหัสในเซิร์ฟเวอร์จัดเก็บข้อมูลตัวอย่าง
บริการการแจ้งเตือน
บริการนี้เป็นบริการแยกต่างหากสำหรับการติดตามตรวจสอบโดยเฉพาะ หากมีการเปลี่ยนแปลงเกิดขึ้นกับบัญชี Dropbox ทั้งนี้ จะไม่มีการจัดเก็บหรือการโอนย้ายข้อมูลไฟล์หรือนิยามข้อมูลใดๆ ที่นี่ ไคลเอนท์แต่ละรายจะสร้างการเชื่อมต่อระยะยาวกับบริการการแจ้งเตือนและจะรอให้มีการเปลี่ยนแปลง เมื่อมีการเปลี่ยนแปลงเกิดขึ้นกับไฟล์ใน Dropbox บริการการแจ้งเตือนจะส่งสัญญาณการเปลี่ยนแปลงไปยังไคลเอนท์ที่เกี่ยวข้องโดยปิดการเชื่อมต่อระยะยาว การปิดสัญญาณการเชื่อมต่อที่ไคลเอนท์ต้องเชื่อมต่อกับเซิร์ฟเวอร์นิยามข้อมูลอย่างปลอดภัยเพื่อทำการซิงค์การเปลี่ยนแปลง
โครงสร้างพื้นฐานของ Dropbox Paper
ผู้ใช้ Dropbox สามารถเข้าถึงเอกสาร Paper ได้ทุกเมื่อจากเว็บและไคลเอนท์อุปกรณ์เคลื่อนที่ หรือผ่านทางแอปพลิเคชันของนักพัฒนาภายนอกที่เชื่อมต่อกับแอปพลิเคชัน Dropbox Paper ไคลเอนท์ทั้งหมดเหล่านี้จะเชื่อมต่อกับเซิร์ฟเวอร์ที่ปลอดภัยเพื่อให้การเข้าถึงยังเอกสาร Paper, อนุญาตการแบ่งปันเอกสารกับบุคคลอื่น และอัพเดทอุปกรณ์ที่เชื่อมโยงเมื่อมีการเพิ่ม เปลี่ยนแปลง หรือลบเอกสารต่างๆ
โครงสร้างพื้นฐานของ Dropbox Paper ประกอบด้วยองค์ประกอบต่อไปนี้
เซิร์ฟเวอร์แอปพลิเคชัน Paper
เซิร์ฟเวอร์แอปพลิเคชัน Paper จะประมวลผลคำขอผู้ใช้ สร้างเอาต์พุตของเอกสาร Paper ที่แก้ไขแล้วกลับไปให้ผู้ใช้ และให้บริการการแจ้งเตือน เซิร์ฟเวอร์แอปพลิเคชัน Paper จะเขียนการแก้ไขของผู้ใช้ไปยังฐานข้อมูล Paper ซึ่งจะมีการจัดเก็บการแก้ไขเหล่านั้นไว้ในพื้นที่จัดเก็บข้อมูลถาวร เซสชันการสื่อสารระหว่างเซิร์ฟเวอร์แอปพลิเคชัน Paper กับฐานข้อมูล Paper จะได้รับการเข้ารหัสโดยใช้รหัสที่รัดกุม
ฐานข้อมูล Paper
เนื้อหาจริงของเอกสาร Paper ของผู้ใช้ รวมถึงนิยามข้อมูลบางอย่างที่เกี่ยวกับเอกสาร Paper เหล่านี้จะได้รับการเข้ารหัสไว้ในพื้นที่จัดเก็บข้อมูลถาวรบนฐานข้อมูล Paper ซึ่งรวมถึงข้อมูลเกี่ยวกับเอกสาร Paper (เช่น ชื่อ ความเป็นสมาชิกและสิทธิ์ที่ใช้ร่วมกัน ความเชื่อมโยงของโปรเจ็กต์และโฟลเดอร์ และข้อมูลอื่นๆ) ตลอดจนเนื้อหาในเอกสาร Paper รวมถึงความคิดเห็นและงานต่างๆ ฐานข้อมูล Paper ได้รับการแยกส่วนและทำซ้ำตามความจำเป็นด้านประสิทธิภาพและความพร้อมใช้งานระดับสูง
เซิร์ฟเวอร์เมทาดาต้า
Paper ใช้เซิร์ฟเวอร์ข้อมูลเมตาเดียวกันกับที่อธิบายไว้ในไดอะแกรมโครงสร้างพื้นฐานของ Dropbox เพื่อประมวลผลข้อมูลเกี่ยวกับเอกสาร Paper เช่น ประวัติการแก้ไขไฟล์เอกสาร Paper และการเป็นสมาชิกโฟลเดอร์ที่แบ่งปัน โดย Dropbox จะจัดการเซิร์ฟเวอร์ข้อมูลเมตาโดยตรง ซึ่งตั้งอยู่ในศูนย์ข้อมูลแบบใช้พื้นที่ร่วมกันของบุคคลที่สาม
ฐานข้อมูลของนิยามข้อมูล
Paper ใช้ฐานข้อมูลเมตาเดียวกันกับที่อธิบายไว้ในไดอะแกรมโครงสร้างพื้นฐานของ Dropbox เพื่อจัดเก็บข้อมูลเกี่ยวกับเอกสาร Paper เช่น การแบ่งปัน สิทธิ์ และการเชื่อมโยงโฟลเดอร์ ระบบจะเก็บข้อมูลเมตาของเอกสาร Paper ไว้ในบริการฐานข้อมูลที่สนับสนุนโดย MySQL และแบ่งส่วนรวมถึงจำลองข้อมูลตามความจำเป็นเพื่อให้เป็นไปตามข้อกำหนดด้านประสิทธิภาพและความพร้อมใช้งานสูง
เซิร์ฟเวอร์จัดเก็บรูปภาพของ Paper
รูปภาพที่อัปโหลดไปยังเอกสาร Paper จะได้รับการจัดเก็บและเข้ารหัสเมื่อไม่ได้ใช้งาน โดยเก็บไว้บนเซิร์ฟเวอร์จัดเก็บรูปภาพของ Paper การส่งข้อมูลรูปภาพระหว่างแอปพลิเคชัน Paper กับเซิร์ฟเวอร์จัดเก็บรูปภาพของ Paper จะเกิดขึ้นในเซสชันที่เข้ารหัส
เซิร์ฟเวอร์แสดงตัวอย่าง
เซิร์ฟเวอร์แสดงตัวอย่างจะสร้างตัวอย่างทั้งภาพที่อัปโหลดไปยังเอกสาร Paper และไฮเปอร์ลิงก์ที่ฝังอยู่ภายในเอกสาร Paper สำหรับรูปภาพที่อัปโหลดไปยังเอกสาร Paper เซิร์ฟเวอร์แสดงตัวอย่างจะดึงข้อมูลรูปภาพที่จัดเก็บไว้ในเซิร์ฟเวอร์จัดเก็บรูปภาพของ Paper ผ่านช่องทางที่เข้ารหัส สำหรับไฮเปอร์ลิงก์ที่ฝังอยู่ภายในเอกสาร Paper เซิร์ฟเวอร์แสดงตัวอย่างจะดึงข้อมูลรูปภาพและแสดงตัวอย่างรูปภาพโดยใช้การเข้ารหัสตามที่ลิงก์ต้นทางระบุไว้ ในท้ายที่สุด เซิร์ฟเวอร์บล็อกจะแสดงตัวอย่างให้แก่ผู้ใช้
เซิร์ฟเวอร์จัดเก็บข้อมูลตัวอย่าง
เซิร์ฟเวอร์จัดเก็บข้อมูลตัวอย่างจะใช้เซิร์ฟเวอร์จัดเก็บข้อมูลตัวอย่างเดียวกับที่ระบุไว้ในแผนภาพโครงสร้างพื้นฐานของ Dropbox เพื่อจัดเก็บตัวอย่างรูปภาพที่แคชเอาไว้ ระบบจะจัดเก็บการแสดงตัวอย่างส่วนที่แคชไว้ในรูปแบบที่เข้ารหัสในเซิร์ฟเวอร์จัดเก็บข้อมูลตัวอย่าง
ทีมงานรักษาความปลอดภัยภายในโดยตรงของเราและผู้เชี่ยวชาญด้านการรักษาความปลอดภัยขององค์กรภายนอกต่างปกป้องบริการเหล่านี้ผ่านการยืนยันตัวบุคคล ตลอดจนการลดความเสี่ยงและจุดอ่อนต่างๆ กลุ่มดังกล่าวดำเนินการทดสอบและตรวจสอบแอปพลิเคชัน เครือข่าย และการรักษาความปลอดภัยอื่นๆ เป็นประจำ เพื่อให้มั่นใจได้ถึงการรักษาความปลอดภัยของเครือข่ายส่วนประมวลผลของเรา นอกจากนั้น นโยบายการเปิดเผยข้อมูลอย่างรับผิดชอบของเรายังส่งเสริมให้มีการค้นพบและรายงานจุดอ่อนด้านการรักษาความปลอดภัยอีกด้วย
กลุ่มเซิร์ฟเวอร์ศูนย์ข้อมูล
ระบบองค์กรและการผลิตของ Dropbox จะอยู่ที่กลุ่มเซิร์ฟเวอร์ศูนย์ข้อมูลสำหรับองค์กรบริการย่อยจากภายนอก และได้รับการจัดการโดยผู้ให้บริการในสหรัฐอเมริกา ผู้ให้บริการภายนอกเหล่านี้มีหน้าที่รับผิดชอบในการควบคุมระบบการรักษาความปลอดภัยทั้งทางกายภาพ สภาพแวดล้อม และการดำเนินงาน ตามขอบเขตโครงสร้างพื้นฐานของ Dropbox Dropbox มีหน้าที่รับผิดชอบในการรักษาความปลอดภัยเชิงตรรกะ เครือข่าย และแอปพลิเคชันของโครงสร้างพื้นฐานของเราซึ่งอยู่ที่กลุ่มเซิร์ฟเวอร์ศูนย์ข้อมูลภายนอก
การเข้ารหัส
ไฟล์ Dropbox และเอกสาร Dropbox Paper เมื่อไม่ได้ใช้งานจะถูกเข้ารหัสโดยใช้มาตรฐานการเข้ารหัสขั้นสูง (Advanced Encryption Standard หรือ AES) 256 บิต สำหรับการปกป้องข้อมูลที่กำลังรับส่งระหว่างแอป Dropbox (ปัจจุบันคือเดสก์ท็อป, อุปกรณ์เคลื่อนที่, API หรือเว็บ) กับเซิร์ฟเวอร์ของเรา Dropbox จะใช้ Secure Sockets Layer (SSL)/Transport Layer Security (TLS) สำหรับการโอนย้ายข้อมูล เพื่อสร้างอุโมงค์ส่งผ่านข้อมูลที่ได้รับการปกป้องโดยใช้มาตรฐานการเข้ารหัสขั้นสูง (AES) 128 บิตขึ้นไป ในทำนองเดียวกัน ข้อมูลที่กำลังรับส่งระหว่างไคลเอนท์ Paper (บนอุปกรณ์เคลื่อนที่, API หรือเว็บ) กับบริการที่โฮสต์จะได้รับการเข้ารหัสผ่าน SSL/TLS
การปักหมุดใบรับรอง
Dropbox ใช้การปักหมุดใบรับรองในการซิงค์ไฟล์ของเราและแบ่งปันไคลเอนท์เดสก์ท็อปและมือถือ การปักหมุดใบรับรองเป็นการตรวจสอบเพิ่มเติมเพื่อให้แน่ใจว่าลูกค้าของเราจะเชื่อมต่อกับเซิร์ฟเวอร์ที่มีใบรับรองดิจิทัลจากผู้รับรองที่มีรายชื่อในรายการที่ได้รับอนุญาตเท่านั้น เราใช้วิธีนี้เพื่อป้องกันผู้โจมตีในระดับรัฐหรือระดับชาติซึ่งมีอำนาจควบคุมผู้รับรองเถื่อน รวมถึงปกป้องคุณจากมัลแวร์ในพื้นที่ซึ่งอาจช่วงชิงการเชื่อมต่อของคุณไป
Perfect Forward Secrecy
สำหรับปลายทางที่เราควบคุม (เดสก์ท็อปและอุปกรณ์เคลื่อนที่) และเบราว์เซอร์รุ่นใหม่ เราใช้การเข้ารหัสที่แน่นหนาและรองรับ Perfect Forward Secrecy เรานำ Perfect Forward Secrecy มาใช้เพื่อที่ว่าแม้แต่คีย์ส่วนตัวของใบรับรองก็ไม่สามารถใช้ถอดรหัสการรับส่งข้อมูลทางอินเทอร์เน็ตที่ผ่านมาได้ วิธีนี้จะช่วยปกป้องการสื่อสารกับ Dropbox ที่มีการเข้ารหัสให้รัดกุมขึ้นอีกขั้น โดยตัดการเชื่อมต่อแต่ละเซสชันออกจากเซสชันก่อนหน้าทั้งหมด นอกจากนั้น เรายังระบุค่าสถานะของคุกกี้การพิสูจน์ตัวตนทั้งหมดบนเว็บว่ามีความปลอดภัย พร้อมทั้งเปิดการทำงาน HTTP Strict Transport Security (HSTS)
การจัดการคีย์
โครงสร้างพื้นฐานในการจัดการคีย์ของ Dropbox ออกแบบขึ้นโดยมาพร้อมการควบคุมการรักษาความปลอดภัยทั้งในระดับการทำงาน เทคนิค และขั้นตอน โดยจำกัดการเข้าถึงคีย์โดยตรงอย่างเข้มงวด การสร้าง การแลกเปลี่ยน และการจัดเก็บคีย์การเข้ารหัสจะได้รับการจัดสรรเพื่อการประมวลผลแบบกระจายส่วน
Dropbox จะจัดการการเข้ารหัสไฟล์ในนามของผู้ใช้เพื่อไม่ให้เกิดความยุ่งยาก สามารถรองรับคุณสมบัติผลิตภัณฑ์ขั้นสูง และเปิดการทำงานการควบคุมการเข้ารหัสลับที่รัดกุม ระบบจะสร้าง จัดเก็บ และปกป้องคีย์การเข้ารหัสไฟล์ด้วยการควบคุมการรักษาความปลอดภัยโครงสร้างพื้นฐานของระบบการผลิตและนโยบายการรักษาความปลอดภัย การเข้าถึงระบบการผลิตจะถูกจำกัดโดยคู่คีย์ SSH เฉพาะตัว นโยบายและกระบวนการในการรักษาความปลอดภัยจะต้องใช้การปกป้องด้วยคีย์ SSH ระบบภายในจะจัดการกระบวนการแลกเปลี่ยนคีย์สาธารณะ และคีย์ส่วนตัวจะได้รับการจัดเก็บอย่างปลอดภัย
ดูรายละเอียดเพิ่มเติมเกี่ยวกับคุณสมบัติการควบคุมและการมองเห็นของเราในเอกสารรายงานการรักษาความปลอดภัยของ Dropbox