ในยุคที่ข้อมูลดิจิทัล และการสื่อสารที่แพร่หลาย ข้อมูลกระจายอยู่ทั่วไปในทุกที่ซึ่งแน่นอนว่าการรักษาความปลอดภัย และความเป็นส่วนตัวของข้อมูลกลายเป็นเรื่องที่สำคัญ การ การเข้ารหัส (Encryption) ข้อมูลเป็นอีกหนึ่งในวิธีที่มีประสิทธิภาพที่สุดในการป้องกันการเข้าถึงข้อมูลโดยไม่ได้รับอนุญาต แต่ว่าปัญหาที่พบในการเข้ารหัสแบบเดิมก็คือ ข้อมูลที่ถูกเข้ารหัสแล้วจะไม่สามารถประมวลผลได้โดยตรง นั่นหมายความว่าถ้าหากต้องการใช้ข้อมูลนั้น ผู้ใช้งานจะต้องทำการถอดรหัสเสียก่อนซึ่งทำให้เกิดความเสี่ยงต่อความปลอดภัย
การเข้ารหัสแบบโฮโมมอร์ฟิก (Homomorphic Encryption) ถูกพัฒนาขึ้นเพื่อตอบแก้ปัญหานี้โดยเป็นเทคนิคการเข้ารหัสที่อนุญาตให้ผู้ใช้สามารถประมวลผลข้อมูลที่เข้ารหัสโดยไม่ต้องถอดรหัสข้อมูลออกมา ซึ่งช่วยเพิ่มระดับความปลอดภัยในการประมวลผลข้อมูลโดยเฉพาะในสภาพแวดล้อมที่ต้องการรักษาความลับของข้อมูลอย่างเคร่งครัด
และในบทความนี้จะพาผู้อ่านทุกคนไปรู้จักกับแนวคิดเบื้องต้นของการเข้ารหัสแบบโฮโมมอร์ฟิก, ประเภท , การนำไปใช้งาน รวมถึงความท้าทาย และแนวโน้มในอนาคตของเทคโนโลยีนี้กัน
การเข้ารหัสโฮโมมอร์ฟิก (Homomorphic Encryption) คือการแปลงข้อมูลให้กลายเป็นข้อความที่ทำการเข้ารหัส (Ciphertext) ซึ่งสามารถวิเคราะห์ และทำงานกับข้อมูลได้เหมือนกับว่ายังคงอยู่ในรูปแบบดั้งเดิม ซึ่งการเข้ารหัสโฮโมมอร์ฟิก จะสามารถช่วยให้สามารถดำเนินการทางคณิตศาสตร์ที่ซับซ้อน กับข้อมูลที่เข้ารหัสได้ โดยไม่ทำให้การเข้ารหัสนั้นเกิดความเสียหาย
ภาพจาก : https://atos.net/en/lp/cybersecurity-magazine-enter-a-new-cybersecurity-era/the-challenges-of-homomorphic-encryption
หากมองในมุมของคณิตศาสตร์ โฮโมมอร์ฟิก ก็จะหมายถึงการแปลงชุดข้อมูลหนึ่งไปเป็นอีกชุดหนึ่งในขณะที่ยังรักษาความสัมพันธ์ระหว่างองค์ประกอบในทั้งสองชุดข้อมูลไว้ ซึ่งคำนี้มาจากคำภาษากรีกที่มีความหมายว่า "โครงสร้างเดียวกัน" เนื่องจากข้อมูลในรูปแบบการเข้ารหัสโฮโมมอร์ฟิกยังคงรักษาโครงสร้างดั้งเดิมเอาไว้ หากใช้การดำเนินการทางคณิตศาสตร์ที่เหมือนกัน ก็จะส่งผลให้ผลลัพธ์ที่เท่าเทียมกัน ไม่ว่าจะดำเนินการกับข้อมูลที่เข้ารหัสหรือข้อมูลที่ถอดรหัสแล้วก็ตาม
การเข้ารหัสโฮโมมอร์ฟิกแตกต่างจากวิธีการเข้ารหัสทั่วไป เนื่องจากมันเป็นรูปแบบการเข้ารหัสที่อนุญาตให้สามารถทำการคำนวณบนข้อมูลที่เข้ารหัสได้ โดยไม่ต้องถอดรหัสข้อมูลนั้นก่อน ผลลัพธ์ของการคำนวณจะยังคงอยู่ในรูปแบบที่เข้ารหัส ซึ่งเมื่อถอดรหัสแล้วจะได้ผลลัพธ์ที่เหมือนกับการคำนวณบนข้อมูลที่ไม่ได้เข้ารหัส ทำให้มีประโยชน์ในหลายกรณี เช่น การประมวลผลข้อมูลที่เป็นความลับในระบบ คลาวด์ (Cloud) โดยที่ผู้ให้บริการ Cloud ไม่สามารถเข้าถึงข้อมูลที่แท้จริงได้
เพื่อให้การเข้ารหัสโฮโมมอร์ฟิกสามารถดำเนินการทางคณิตศาสตร์กับข้อมูลที่เข้ารหัสได้ จำเป็นจะต้องมีความสัมพันธ์ระหว่าง ข้อความธรรมดา หรือข้อความที่ยังไม่ได้รับการเข้ารหัส (Plaintext) และ ข้อความที่ถูกเข้ารหัสแล้ว (Ciphertext) ซึ่ง Plaintext คือข้อความธรรมดาที่เราสามารถอ่านได้ ในขณะที่ Ciphertext คือข้อความที่เข้ารหัสแล้วซึ่งถูกแปลงมาจาก Plaintext โดยใช้อัลกอริทึมการเข้ารหัสในการแปลงไปนั่นเอง
ภาพจาก : https://sslinsights.com/plaintext-vs-ciphertext/
ตัวอย่างเช่น ในการเข้ารหัสโฮโมมอร์ฟิก Ciphertext สองตัวควรสามารถบวก หรือคูณกันแล้วได้ผลลัพธ์เช่นเดียวกันกับการนำเอา Plaintext สองตัวมาบวก หรือคูณกันโดยตรง การเข้ารหัสโฮโมมอร์ฟิกถูกนำมาใช้เพื่อซ่อนข้อมูลที่นำดำเนินการทางคณิตศาสตร์นี้จากบุคคลที่สามนั่นเอง
ภาพจาก : https://www.craigstuntz.com/posts/2010-03-18-what-is-homomorphic-encryption.html
อย่างไรก็ตาม การอนุญาตให้ทำการบวก หรือคูณข้อมูลที่เข้ารหัสได้อย่างไม่จำกัดนั้นเป็นเรื่องที่ทำได้ยาก และซับซ้อน ดังนั้นการเข้ารหัสโฮโมมอร์ฟิกจึงสามารถแบ่งออกเป็นประเภทต่าง ๆ ได้ตามวิธีการที่ออกแบบระบบ
หากอัลกอริทึมเป็นโฮโมมอร์ฟิกแบบบวก การบวก Ciphertext สองตัวเข้าด้วยกันจะให้ผลลัพธ์เดียวกับผลรวมของ Plaintext สองตัวเช่นเดียวกัน และถ้าหากอัลกอริทึมเป็นโฮโมมอร์ฟิกแบบคูณ การคูณ Ciphertext สองตัวด้วย Key เดียวกัน ก็จะเทียบเท่ากับการยกกำลังผลคูณของ Plaintext ไปเป็นกำลังของคีย์ลับนั้น
การเข้ารหัสโฮโมมอร์ฟิกสามารถเป็นแบบบวก หรือแบบคูณ และยังสามารถเป็นแบบบางส่วน (Partially), ค่อนข้าง (Somewhat) หรือสมบูรณ์ (Fully) ได้อีกด้วย
ภาพจาก : https://www.splunk.com/en_us/blog/learn/homomorphic-encryption.html
การเข้ารหัสประเภทนี้อนุญาตให้ดำเนินการบางประเภทกับข้อมูลที่ถูกเข้ารหัส (Ciphertext) ได้อย่างไม่จำกัด ตัวอย่างเช่น การบวกอย่างต่อเนื่อง หรือการคูณอย่างต่อเนื่องกับข้อมูลที่ถูกเข้ารหัส แม้ว่ารูปแบบนี้จะมีความเรียบง่าย และไม่ซับซ้อนเท่ากับวิธีการเข้ารหัสอื่น ๆ แต่ก็มีประโยชน์ในบางกรณีที่ต้องการความรวดเร็ว และความง่ายในการประมวลผล
การเข้ารหัสโฮโมมอร์ฟิกประเภทนี้อนุญาตให้ดำเนินการทางคณิตศาสตร์ เช่น การบวก หรือการคูณกับข้อมูลที่เข้ารหัสได้เพียงจำนวนจำกัด เมื่อเทียบกับการเข้ารหัสแบบบางส่วน แม้ว่าการรองรับทั้งสองการดำเนินการจะทำให้การเข้ารหัสประเภทนี้มีประโยชน์มากขึ้น แต่ข้อจำกัดในจำนวนการดำเนินการที่ทำได้ยังคงเป็นความท้าทายในการออกแบบระบบ
การเข้ารหัสประเภทนี้ถือเป็นขั้นสูงสุดของเทคนิคการเข้ารหัสแบบโฮโมมอร์ฟิก เนื่องจากอนุญาตจะให้ดำเนินการทางคณิตศาสตร์ใด ๆ เช่น การบวก และการคูณกับข้อมูลที่เข้ารหัสได้อย่างไม่จำกัด โดยสามารถประมวลผลข้อมูลที่เข้ารหัสด้วยโปรแกรมหรือฟังก์ชันใด ๆ ก็ได้ และผลลัพธ์ที่ได้จะยังคงอยู่ในรูปแบบที่เข้ารหัสทำให้การเข้ารหัสแบบสมบูรณ์เป็นเครื่องมือที่ทรงพลัง และยืดหยุ่นมากที่สุดในการรักษาความปลอดภัยของข้อมูลระหว่างการประมวลผล
ภาพจาก : https://futureskillsprime.in/knowledge-center/tech-simplified/heres-why-you-should-learn-cloud-computing-in-2022
การเข้ารหัสโฮโมมอร์ฟิกมีศักยภาพที่จะช่วยปฏิวัติการประมวลผลบนคลาวด์ โดยเปิดโอกาสให้องค์กรสามารถจัดเก็บ และประมวลผลข้อมูลที่เข้ารหัสบน คลาวด์สาธารณะ (Public Cloud) ได้อย่างปลอดภัยมากยิ่งขึ้น ข้อมูลที่เข้ารหัสแล้วสามารถส่งไปยังคลาวด์เพื่อใช้บริการวิเคราะห์ โดยไม่ต้องกังวลว่าข้อมูลจะถูกเปิดเผย หรือเข้าถึงโดยไม่ได้รับอนุญาต
ด้วยการเข้ารหัสโฮโมมอร์ฟิกข้อมูลสามารถประมวลผลโดยบุคคลที่สามได้โดยไม่จำเป็นต้องเชื่อถือบริการที่นำเอาข้อมูลไปประมวลผลมากนักในแง่ของความปลอดภัย ข้อมูลจะยังคงปลอดภัย และไม่สามารถเข้าถึงได้หากไม่มีคีย์ถอดรหัสที่ถูกต้อง ทำให้การวิเคราะห์ข้อมูลที่ละเอียดอ่อนในอุตสาหกรรมต่าง ๆ เช่น การดูแลสุขภาพ, บริการทางการเงิน และเทคโนโลยีสารสนเทศ สามารถดำเนินการได้โดยไม่ละเมิดความเป็นส่วนตัวของลูกค้า
ภาพจาก : https://theconversation.com/what-does-gdpr-mean-for-me-an-explainer-96630
การเข้ารหัสโฮโมมอร์ฟิกยังมีบทบาทสำคัญในการช่วยให้องค์กรปฏิบัติตามข้อกำหนดทางกฎหมาย ตัวอย่างเช่น มันช่วยให้บริษัทที่อยู่ภายในสหภาพยุโรป (EU) สามารถปฏิบัติตามข้อกำหนดของ กฎหมาย GDPR ได้ ซึ่งทาง GDPR ได้กำหนดไว้ว่าข้อมูลของ EU ต้องถูกเก็บรักษาไว้ใน EU หรือในประเทศที่มีมาตรฐานความปลอดภัยเทียบเท่า แต่ข้อกำหนดเหล่านี้ใช้ไม่ได้กับข้อมูลที่เข้ารหัส ทำให้การเข้ารหัสโฮโมมอร์ฟิกกลายเป็นเครื่องมือสำคัญในการหลีกเลี่ยงข้อปฏิบัติตามกฎระเบียบเหล่านี้
ภาพจาก : https://humanfocus.co.uk/blog/15-types-of-cyber-attack/
การเข้ารหัสโฮโมมอร์ฟิกยังช่วยปกป้ององค์กรจากการโจมตีไซเบอร์อีกด้วย หากข้อมูลที่ส่งไปยัง บุคคลที่สาม (3rd-Party) ถูกเข้ารหัส และยังคงเข้ารหัสอยู่ บุคคลที่สามจะไม่สามารถทำลายความปลอดภัยของข้อมูล หรือขัดขวางการทำงานได้
ภาพจาก : https://www.aimtechnologies.co/2023/05/25/social-media-analytics-for-brands-the-secrets-of-data-driven/
ในด้านธุรกิจ การเข้ารหัสโฮโมมอร์ฟิกยังสามารถนำมาใช้ในเชิงกลยุทธ์ได้ เช่น ในกรณีของ Meta (เดิมชื่อ Facebook) ที่มักขายข้อมูลผู้ใช้ให้กับบุคคลที่สามเพื่อการโฆษณาแบบกำหนดเป้าหมาย ด้วยการเข้ารหัสโฮโมมอร์ฟิก Meta สามารถวิเคราะห์ข้อมูลผู้ใช้ และนำเสนอการโฆษณาแบบกำหนดเป้าหมายได้อย่างมีประสิทธิภาพโดยไม่ต้องเปิดเผยข้อมูลดั้งเดิม ซึ่งช่วยรักษาความเป็นส่วนตัวของผู้ใช้ได้อย่างดีเยี่ยม
การเข้ารหัสโฮโมมอร์ฟิกอาจมีประโยชน์อย่างมากสำหรับความปลอดภัยของข้อมูล อย่างไรก็ตาม มันยังคงช้าเกินไปที่จะมีการใช้งานจริง เนื่องจาก Ciphertext ต้องถูกบวก หรือคูณอย่างไม่จำกัด ทำให้การเข้ารหัสโฮโมมอร์ฟิกแบบสมบูรณ์ ช้ากว่าการดำเนินการที่เทียบเท่าใน Plaintext ถึง 1 ล้านเท่า กันเลยทีเดียว
ในเดือนกันยายน ค.ศ. 2009 (พ.ศ. 2551) นักศึกษาของมหาวิทยาลัยสแตนฟอร์ด Craig Gentry ได้เผยแพร่ วิทยานิพนธ์ เรื่อง "A Fully Homomorphic Encryption Scheme" ซึ่งนำเสนออัลกอริทึมที่เป็นไปได้ครั้งแรก และระบุว่าอัลกอริทึมการเข้ารหัสโฮโมมอร์ฟิกนั้นทำงานได้ในทางทฤษฎี แต่ช้าเกินไปที่จะใช้งานได้
องค์กรต่าง ๆ เช่น IBM และ Microsoft ก็กำลังทำงานเกี่ยวกับรูปแบบการเข้ารหัสโดยลดภาระการคำนวณที่จำเป็นสำหรับการเข้ารหัสโฮโมมอร์ฟิก ในปี ค.ศ. 2018 (พ.ศ. 2561) Microsoft ได้เปิดตัว SEAL ซึ่งเป็น ไลบรารี (Library) การเข้ารหัสโฮโมมอร์ฟิกแบบ โอเพ่นซอร์ส (Open Source) สามารถเรียกใช้ได้บน Azure แต่ยังเป็นซอฟต์แวร์ข้ามแพลตฟอร์มได้อีกด้วย และในปีเดียวกัน IBM ได้เปิดตัวเวอร์ชันของไลบรารี HElib C++ แบบโอเพ่นซอร์สที่ใช้งานการเข้ารหัสโฮโมมอร์ฟิก ซึ่งเร็วกว่าเวอร์ชันเดิมของ IBM ถึง 2 ล้านเท่า แต่ยังช้ากว่าการดำเนินการของ Plaintext ถึง 1 ล้านเท่า การดำเนินการเดียวที่ใช้เวลา 1 วินาที ในการดำเนินการ Plaintext จะใช้เวลา 11-12 วันในการดำเนินการให้เสร็จสิ้นผ่านอัลกอริทึมเข้ารหัสแบบโฮโมมอร์ฟิก
ภาพจาก : https://github.com/microsoft/SEAL
การทำให้การเข้ารหัสโฮโมมอร์ฟิกเป็นมาตรฐานมากขึ้นอาจช่วยให้กระบวนการง่ายขึ้น แต่อย่างไรก็ตาม การเข้ารหัสโฮโมมอร์ฟิกก็อาจไม่สามารถใช้ศักยภาพได้อย่างเต็มที่ เพราะเนื่องจากประสิทธิภาพที่ยังไม่ดีนัก และกำลังถูกแทนที่ด้วยทางเลือกใหม่กว่า
การเข้ารหัสโฮโมมอร์ฟิกเป็นเทคโนโลยีที่มีศักยภาพสูงในการรักษาความปลอดภัยข้อมูลในยุคดิจิทัล โดยอนุญาตให้ดำเนินการกับข้อมูลที่เข้ารหัสได้โดยไม่ต้องถอดรหัส ช่วยเพิ่มความปลอดภัยในการประมวลผลข้อมูล แม้ว่าจะยังมีความท้าทายด้านประสิทธิภาพ แต่การพัฒนาที่กำลังดำเนินอยู่มีแนวโน้มที่จะทำให้เทคโนโลยีนี้กลายเป็นเครื่องมือที่ทรงพลัง และสำคัญในอนาคต การเข้ารหัสโฮโมมอร์ฟิกอาจเป็นกุญแจสำคัญในการรักษาความปลอดภัยของข้อมูลบนคลาวด์ และในสภาพแวดล้อมที่ต้องการความปลอดภัยสูงนั่นเอง
|