โอเพ่นซอร์สคืออะไร?

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


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

อะไรคือแหล่งที่มาปิด?

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

ดังนั้นปัญหาคืออะไร?

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

ทำไมโอเพ่นซอร์สจึงเป็นทางออกที่ดีที่สุด?

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

แม้ว่ารหัสดังกล่าวจะไม่ได้รับการตรวจสอบ แต่ความจริงที่ว่ามันสามารถตรวจสอบได้อย่างอิสระนั้นมีข้อบ่งชี้ที่แข็งแกร่งว่าเชื่อถือได้เนื่องจากไม่น่าเป็นไปได้ที่นักพัฒนาซอฟต์แวร์จะรวมรหัสที่เป็นอันตรายแล้วเปิดทิ้งไว้ ใส่ใจ.

ไม่ใช่ทางออกที่สมบูรณ์แบบ ...

น่าเสียดายที่มีบุคคลจำนวน จำกัด ที่มีทั้งทักษะและเวลาในการตรวจสอบซอฟต์แวร์โอเพนซอร์ซ (โดยทั่วไปจะฟรี) ซึ่งหมายความว่าโปรแกรมโอเพ่นซอร์สส่วนใหญ่ยังไม่ได้รับการตรวจสอบ.

ปัญหานี้ประกอบไปด้วยความจริงที่ว่าหลายโปรแกรมโอเพนซอร์สมีความซับซ้อนอย่างมากโดยมีหลายพันเส้นของรหัสดังนั้นแม้ว่าพวกเขาจะได้รับการตรวจสอบแล้วมันเป็นไปได้ทั้งหมดที่ผู้ตรวจสอบบัญชีพลาดปัญหา ปกปิดโดยเจตนา).

แต่…

ดังนั้นโอเพนซอร์สจึงไม่รับประกันว่าโปรแกรมจะ“ สะอาด” แต่ก็เป็นการรับประกันที่ดีที่สุดที่เรามี (หรือมี) ว่าเป็นเช่นนั้น ทางเลือกเป็นแหล่งข้อมูลปิดซึ่งไม่รับประกันสิ่งใด ๆ.

ตรวจสอบโปรแกรมโอเพนซอร์สเสมอ

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

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

“ แฮกเกอร์สร้าง ISO Mint Linux ที่ได้รับการดัดแปลงโดยมีแบ็คดอร์อยู่และทำการแฮ็คเว็บไซต์ของเราให้ชี้ไปที่มัน”

อิมเมจ Linux ISO ที่ติดไวรัสติดตั้งระบบปฏิบัติการที่สมบูรณ์ด้วยสึนามิ (Internet Relay Chat) ซึ่งเป็นช่องทางลับๆสึนามิซึ่งทำให้ผู้โจมตีเข้าถึงระบบของผู้ใช้ผ่านเซิร์ฟเวอร์ IRC ดังนั้นการคุกคามจึงเป็นเรื่องจริง.

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

ดีกว่ามากสำหรับนักพัฒนาซอฟต์แวร์ที่เซ็นชื่อแบบดิจิทัลเพื่อให้ผู้ใช้สามารถตรวจสอบที่มาของไฟล์ (นักพัฒนามิ้นท์ถูกหละหลวมมากในเรื่องนี้เนื่องจากซอฟต์แวร์ของพวกเขาไม่ได้เซ็นชื่อแบบดิจิทัลและแม้แต่ฟังก์ชั่นแฮช MD5 จะแตก!)

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

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

โอเพ่นซอร์ส: บทสรุป

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

Brayan Jackson Administrator
Sorry! The Author has not filled his profile.
follow me