MongoDB เปิดตัวฟีเจอร์ Queryable Encryption การคิวรีข้อมูลที่ถูกเข้ารหัสอยู่ได้ โดยจะเป็นฟีเจอร์หนึ่งของ MongoDB 6.0 เวอร์ชันหน้า
กฎหมายด้านการคุ้มครองข้อมูลทั่วโลกที่เข้มงวดขึ้นเรื่อยๆ ทำให้การเก็บข้อมูลองค์กรจำเป็นต้องแยกส่วนข้อมูล (separation of data) เช่น แยกเก็บข้อมูลที่ระบุตัวตนได้ไปไว้อีกส่วน รวมถึงต้องเข้ารหัสข้อมูลเพื่อป้องกันการเข้าถึงจากฐานข้อมูลโดยตรง
การเข้ารหัสข้อมูลในปัจจุบันเป็นการเข้ารหัสระหว่างส่ง (in-transit) และตอนนำไปพักเก็บไว้เฉยๆ (at-rest) แต่การเข้ารหัสขณะใช้งาน (in-use) ยังทำได้ยาก มีความซับซ้อนสูง และมีข้อจำกัดในการคิวรีค้นหาข้อมูล
ฟีเจอร์ Queryable Encryption ออกแบบมาเพื่อแก้ปัญหานี้ แนวคิดของมันคือแยกเลเยอร์ของการเก็บข้อมูล (ฐานข้อมูล MongoDB แบบปกติที่เข้ารหัส) และเพิ่มชั้นของ Driver ที่ใช้จัดการเข้ารหัส-ถอดรหัสข้อมูล
ในการคิวรีข้อมูล ผู้ใช้จะเรียกขอคีย์ (ซึ่งอาจอยู่ที่เซิร์ฟเวอร์ภายนอกองค์กร เช่น บนคลาวด์) แล้วนำคีย์มาเข้ารหัสคิวรีก่อน จากนั้นส่งคิวรีที่เข้ารหัส (เป็น ciphertext) ไปค้นในฐานข้อมูลที่เข้ารหัส ได้ผลลัพธ์เป็นข้อมูลที่เข้ารหัสแล้ว แล้วค่อยนำมาถอดรหัสอีกครั้งที่ระดับของ Driver
MongoDB บอกว่าในมุมของผู้ใช้งานจึงไม่ต้องสนใจด้วยซ้ำว่าฐานข้อมูลเข้ารหัสอยู่หรือไม่ สามารถนำระบบใหม่ไปใช้กับแอพพลิเคชันเดิมได้เลย ไม่ต้องเสียเวลาแก้ไขแอพพลิเคชันอีก
เคล็ดลับของ Queryable Encryption คือใช้ scheme การเข้ารหัสข้อมูลที่ระบุว่าทำงานได้เร็ว และค้นหาได้ สามารถกำหนดเงื่อนไขของคิวรีได้หลายอย่าง เช่น range, equality, prefix, suffix ได้ด้วย (แม้ทั้งคิวรีและฐานข้อมูลเข้ารหัสอยู่) ซึ่ง MongoDB ยังไม่เปิดเผยรายละเอียดตรงนี้ บอกแค่ว่าพัฒนาโดย Advanced Cryptography Research Group ของบริษัทเอง ซึ่งเป็นทีมนักวิจัยที่เชี่ยวชาญด้านการค้นหาแบบเข้ารหัส (encrypted search) อยู่แล้ว
ที่มา - MongoDB
Comments
อย่างเจ๋ง
Texion Business Solutions