Skip to main content

การซ่อนข้อมูลคืออะไร?

การซ่อนข้อมูลเป็นวิธีที่ใช้ในการเขียนโปรแกรมเชิงวัตถุเพื่อซ่อนข้อมูลภายในรหัสคอมพิวเตอร์วัตถุภายในรหัสไม่ได้เป็นเอกชนต่อข้อมูลที่ถือว่าซ่อนอยู่มันนำเสนอข้อดีหลายประการสำหรับโปรแกรมเมอร์เนื่องจากวัตถุไม่สามารถเชื่อมต่อกับข้อมูลที่ไม่เกี่ยวข้องและแฮ็กเกอร์มีโอกาสน้อยที่จะเข้าถึงข้อมูลได้ในเวลาเดียวกันการซ่อนข้อมูลอาจทำให้โปรแกรมโปรแกรมเมอร์ยากขึ้นซึ่งอาจจำเป็นต้องใช้รหัสเพิ่มเติมเพื่อสร้างเอฟเฟกต์ในข้อมูลที่ซ่อนอยู่มากกว่าที่จำเป็นหากข้อมูลเป็นสาธารณะ

การเขียนโปรแกรมเชิงวัตถุเป็นประเภทของการเขียนโปรแกรมในส่วนใดของรหัสถูกแบ่งออกเป็นวัตถุแต่ละวัตถุเหล่านี้ถูกตั้งโปรแกรมในแคปซูลดังนั้นแต่ละวัตถุมีการเข้ารหัสของตัวเองที่ใช้กับวัตถุนั้นเท่านั้นโดยไม่ต้องระบุข้อมูลที่ซ่อนอยู่ข้อมูลทั้งหมดจะเปิดให้กับวัตถุ

การซ่อนข้อมูลใช้รหัสบางส่วนและซ่อนส่วนเหล่านั้นจากวัตถุวัตถุไม่สามารถเข้าถึงข้อมูลใด ๆ ที่ซ่อนอยู่ได้โดยตรงหากวัตถุเข้าถึงข้อมูลที่ซ่อนอยู่มันจะส่งคืนข้อผิดพลาดนี่เป็นเพราะวัตถุไม่สามารถมองเห็นข้อมูลได้ดังนั้นฟังก์ชั่นหรือข้อมูลใด ๆ ที่ติดป้ายว่าซ่อนอยู่จะมองไม่เห็นกับวัตถุเวลาส่วนใหญ่ข้อมูลที่ซ่อนอยู่เป็นส่วนประกอบภายในที่ผู้ใช้ไม่ต้องการและสามารถพิสูจน์ได้ว่าเป็นอันตรายหากข้อมูลถูกเปิดสำหรับผู้ใช้

ข้อได้เปรียบสำหรับโปรแกรมเมอร์คือไม่มีวิธีสำหรับโปรแกรมเมอร์เชื่อมโยงไปยังข้อมูลที่ไม่ถูกต้องโดยไม่ได้ตั้งใจการซ่อนข้อมูลช่วยให้มั่นใจได้ว่าหากโปรแกรมเมอร์ทำลิงค์นี้โปรแกรมจะส่งคืนข้อผิดพลาดเพื่อให้โปรแกรมเมอร์สามารถแก้ไขข้อผิดพลาดได้อย่างรวดเร็วสิ่งนี้ยังช่วยให้มั่นใจได้ว่าวัตถุทั้งหมดเป็นหน่วยที่แยกได้อย่างแท้จริงซึ่งเป็นแนวคิดหลักของการเข้ารหัสเชิงวัตถุโดยทั่วไปแล้วข้อมูลที่ผันผวนจะถูกซ่อนไว้เพราะหากข้อมูลดังกล่าวได้รับการเปิดเผยต่อสาธารณะมันสามารถสร้างความเสียหายให้กับวัตถุและทำลายโปรแกรมทั้งหมด

ข้อได้เปรียบอีกประการหนึ่งของการซ่อนข้อมูลคือการรักษาความปลอดภัยที่เพิ่มขึ้นกับแฮ็กเกอร์หากข้อมูลภายในทั้งหมดเป็นแบบสาธารณะแฮ็กเกอร์สามารถบีบลงในข้อมูลภายในได้อย่างง่ายดายและทำการเปลี่ยนแปลงใด ๆ เพื่อจัดการกับโปรแกรมอย่างเป็นอันตรายด้วยการซ่อนข้อมูลมันยากที่จะถอดรหัสรหัสเนื่องจากข้อมูลจะปรากฏขึ้นกับวัตถุและแฮ็กเกอร์

ข้อเสียของการซ่อนข้อมูลคือบางครั้งมันสามารถบังคับให้โปรแกรมเมอร์ใช้การเข้ารหัสพิเศษหากโปรแกรมเมอร์สามารถเชื่อมโยงไปยังข้อมูลที่ซ่อนอยู่สามารถทำให้วัตถุทำงานได้เร็วขึ้นหรือลดรหัสจำนวนมากโปรแกรมเมอร์ส่วนใหญ่ไม่ได้ให้ข้อมูลสาธารณะทั้งหมดเนื่องจากปัญหาทั้งหมดที่เกี่ยวข้องกับการเข้ารหัสประเภทนี้