ทำไมการปลูกถ่ายเพื่อสุขภาพควรมีรหัสโอเพ่นซอร์ส

ทำไมการปลูกถ่ายเพื่อสุขภาพควรมีรหัสโอเพ่นซอร์ส

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

ในช่วงไม่กี่ปีที่ผ่านมา นักวิจัยหลายคนได้เปิดเผยช่องโหว่ที่อันตราย

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

แต่ “ข้อบกพร่อง” ในรหัสก็เป็นปัญหาเช่นกัน Marie Moe นักวิจัยเพิ่งค้นพบสิ่งนี้โดยตรงเมื่อเครื่องกระตุ้นหัวใจด้วยไฟฟ้าแบบฝังในหัวใจ (ICD) ของเธอเข้าสู่ “โหมดปลอดภัย” โดยไม่คาดคิด สิ่งนี้ทำให้อัตราการเต้นของหัวใจของเธอลดลงครึ่งหนึ่งโดยมีผลตามมาอย่างมาก

Moe ใช้เวลาหลายเดือนกว่าจะรู้ว่าเกิดอะไรขึ้นกับอวัยวะเทียมของเธอ และสิ่งนี้ยากขึ้นเพราะรหัสที่เรียกใช้ใน ICD เป็นกรรมสิทธิ์หรือแหล่งที่มาแบบปิด เหตุผล? โค้ดแบบปิดแบบวิศวกรรมย้อนกลับถือเป็นอาชญากรรมภายใต้กฎหมายหลายฉบับ รวมถึงDigital Millennium Copyright Act 1998ของ สหรัฐอเมริกา เป็นการละเมิดลิขสิทธิ์ การขโมยทรัพย์สินทางปัญญา และอาจเป็นการละเมิดกฎหมายสิทธิบัตร

ทำไมนักวิจัยไม่สามารถดูโค้ดได้

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

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

คอมพิวเตอร์ถึงวิธีการสร้างส่วนประกอบและรายละเอียดวิธีการทำงาน 

คำสั่งเหล่านี้เป็นซอร์สโค้ดทั้งหมด – คำสั่งที่มนุษย์อ่านได้โดยใช้คำกริยาคล้ายภาษาอังกฤษ (อ่าน, เขียน, ออก) ผสมกับสัญลักษณ์ต่างๆ ซึ่งทั้งโปรแกรมเมอร์และคอมพิวเตอร์เข้าใจตรงกัน

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

ทางเลือก

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

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

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

ปิดแหล่งที่มาหรือโอเพ่นซอร์ส?

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

การยืนยันทั้งสองเป็นเรื่องยากที่จะพิสูจน์ พบ ช่องโหว่ด้านความปลอดภัยในopenSSH (เครื่องมือโอเพ่นซอร์สสำหรับการเชื่อมต่อที่ปลอดภัย) อยู่เรื่อยๆ และการโจมตี Heartbleed ในปี 2014เกิดขึ้นจากบั๊กในโค้ดที่มีมานานกว่า 12 ปี ในทางกลับกันพบช่องโหว่ในโปรแกรมติดตั้งไดรเวอร์เครื่องพิมพ์อัตโนมัติของ Windows (แบบปิด) ซึ่งอยู่ในโค้ดดังกล่าวมาเกือบ 20 ปี

ผู้สนับสนุนแบบปิดกล่าวว่ารหัสของพวกเขาดีกว่าเพราะมืออาชีพ (ไม่ใช่มือสมัครเล่นและอาสาสมัคร) ได้รับเงินเพื่ออ่านรหัสและค้นหาจุดบกพร่อง คนที่ใช้โอเพ่นซอร์สชี้ให้เห็นว่าผลิตภัณฑ์โอเพ่นซอร์สจำนวนมาก (เช่น Windows, Microsoft Office และ Adobe Acrobat) มีขนาดใหญ่มากจนไม่มีใครเข้าใจโค้ดทั้งหมด ไม่ว่าจะจ่ายเงินหรือไม่ก็ตาม

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

รหัสได้รับการแก้ไขอย่างไร

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

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

Credit : เว็บสล็อตแท้