โปรโตคอลโอเพ่นซอร์ส (open-source protocols) คืออะไร และทำงานอย่างไร

โปรโตคอลโอเพ่นซอร์ส (open-source protocols) คืออะไร และทำงานอย่างไร
ทำความเข้าใจกับโปรโตคอลโอเพ่นซอร์ส (open-source protocols)
โปรโตคอลโอเพ่นซอร์สได้กลายเป็นแกนนำในโลกเทคโนโลยีและกำลังได้รับความสนใจเนื่องจากผลประโยชน์มากมายที่พวกเขาเสนอให้เหนือโปรโตคอลที่เป็นกรรมสิทธิ์ (proprietary protocols)
โดยทั่วไปโปรโตคอลจะถูกสร้างขึ้นโดยมีจุดประสงค์เพื่อให้สาธารณชนใช้งาน ทำให้ทุกคนสามารถตรวจสอบ, แก้ไข และแบ่งปันรหัสของตนได้ ประโยชน์ของโปรโตคอลโอเพ่นซอร์สมีหลายแง่มุม ตั้งแต่ความโปร่งใสโดยธรรมชาติไปจนถึงการเข้าถึงที่กว้างขึ้น
นอกจากนี้ โปรโตคอลโอเพ่นซอร์ส ยังอาศัยการประเมินจากผู้รู้เดียวกัน ซึ่งเป็นโมเดลที่คุ้มค่าและครอบคลุม ซึ่งทำให้แตกต่างจากคู่แข่งอย่างโปรโตคอลที่เป็นกรรมสิทธิ์ (proprietary protocols) ตัวอย่างที่โดดเด่นของซอฟต์แวร์โอเพ่นซอร์ส ได้แก่ ระบบปฏิบัติการที่ใช้กันอย่างแพร่หลาย เช่น Linux และ Android และเว็บเบราว์เซอร์ Firefox ยอดนิยม
เมื่อพูดถึงโปรโตคอลการเข้ารหัสแบบโอเพ่นซอร์ส เครือข่ายบล็อกเชน อย่าง Bitcoin, Ethereum, Cardano และ Polkadot ถือได้ว่าโดดเด่นในฐานะตัวอย่างโปรโตคอลบล็อกเชนที่น่าสนใจ
อ่านบทความที่เกี่ยวข้อง:กลไกฉันทามติ (consensus mechanism) ของบล็อคเชน คืออะไร?
โปรโตคอลโอเพ่นซอร์ส กับโปรโตคอลที่เป็นกรรมสิทธิ์
โปรโตคอลแบบโอเพ่นซอร์สและโปรโตคอลที่เป็นกรรมสิทธิ์ แสดงถึงแนวทางที่แตกต่างกัน 2 แนวทางในการพัฒนาโปรโตคอล โดยแต่ละแนวทางมีชุดหลักการของตัวเองเมื่อพูดถึงการนำโปรโตคอลไปใช้
ต่อไปนี้เป็นการแยกความแตกต่างที่สำคัญ:

กระบวนการพัฒนาสำหรับโปรโตคอลโอเพ่นซอร์สคืออะไร?
การพัฒนาโปรโตคอลโอเพ่นซอร์สเกี่ยวข้องกับขั้นตอนที่แตกต่างกันหลายขั้นตอน ซึ่งแต่ละขั้นตอนเป็นส่วนสำคัญของวิวัฒนาการของโปรโตคอล ทุกอย่างเริ่มต้นด้วยขั้นตอนการวางแนวความคิด โดยที่นักพัฒนาวางรากฐานที่กำหนดมาตรฐานและวัตถุประสงค์ของโปรโตคอล
โดยปกติแล้ว แนวคิดพื้นฐานจะขึ้นอยู่กับโปรโตคอลที่มีอยู่พร้อมกับการปรับปรุงบางอย่าง ขั้นตอนการวางแนวความคิดทำหน้าที่เป็นรากฐานที่นักพัฒนาจะวางโครงร่างสถาปัตยกรรมและคุณลักษณะอย่างพิถีพิถัน ก่อให้เกิดรากฐานทางทฤษฎีที่แข็งแกร่ง ในระยะนี้ นักพัฒนาจะจัดทำแผนผังแผนงานที่ถูกกำหนดไว้อย่างดี คล้ายกับแผนเชิงกลยุทธ์ เพื่อเป็นแนวทางในแนวทางของโครงการ
ขั้นตอนต่อมาในกระบวนการพัฒนามักจะเป็นขั้นตอนการสร้างต้นแบบ ในขั้นตอนนี้ นักพัฒนาจะสร้างแบบจำลองการทำงานของโปรโตคอลที่รวมคุณลักษณะสำคัญที่เสนอไว้ โดยทั่วไปแล้วต้นแบบจะเปิดให้สาธารณชนเข้าถึงได้เป็นเวอร์ชันเบต้า
การเปิดตัวเวอร์ชันเบต้าจะทำให้ซอฟต์แวร์ขึ้นอยู่กับสถานการณ์จริงและการโต้ตอบของผู้ใช้ ช่วยให้นักพัฒนาสามารถแยกแยะจุดแข็งและจุดอ่อนได้ ขั้นตอนนี้ยังช่วยให้นักพัฒนาได้รับคำติชมจากชุมชนโอเพ่นซอร์สเกี่ยวกับคุณสมบัติใหม่ที่อาจเกิดขึ้นก่อนที่จะรวมโปรโตคอลขั้นสุดท้าย ดังนั้นขั้นตอนนี้จึงถูกเรียกว่า การทดสอบเบต้า หรือการทดสอบการยอมรับของผู้ใช้ (user acceptance testing : UAT)
ข้อเสนอแนะและการอัปเดตอย่างต่อเนื่องทำให้มั่นใจได้ว่าโปรโตคอลยังคงตอบสนองต่อความต้องการและความคาดหวังที่เปลี่ยนแปลงไปของฐานผู้ใช้ หลังจากใช้การอัปเกรดโปรโตคอลที่เกี่ยวข้องเพื่อแก้ไขปัญหาความเสถียรและความน่าเชื่อถือที่ทราบหลายประการ เวอร์ชันของโปรโตคอลก็จะถึงระดับความเสถียรที่รับประกันการกำหนด เรียกว่า “stable release” ซึ่งเป็นเวอร์ชันที่มักจะเชื่อถือได้เท่าที่นักพัฒนาสามารถทำได้
อย่างไรก็ตาม กระบวนการนี้ไม่ได้สิ้นสุดแค่เวอร์ชัน “stable release” โครงการโอเพ่นซอร์สจำเป็นต้องมีการบำรุงรักษาโปรโตคอลอย่างต่อเนื่อง กระบวนการนี้มักจะเกี่ยวข้องกับการปล่อยการแก้ไขจุดบกพร่อง เช่น แพตช์ความปลอดภัย และการอัปเดตโค้ดเพื่อเพิ่มความเข้ากันได้
โปรโตคอลโอเพ่นซอร์สมีลิขสิทธิ์หรือไม่?
เมื่อนักพัฒนาเผยแพร่โค้ดของตนในรูปแบบโอเพ่นซอร์ส พวกเขาจะแชร์โค้ดกับสาธารณะ โดยอนุญาตให้ผู้อื่นใช้, แก้ไข และแจกจ่ายโค้ดได้ อย่างไรก็ตาม การทำให้โค้ดเป็นแบบสาธารณะไม่ได้หมายถึงการใช้งานได้อย่างไม่จำกัด
กฎหมายลิขสิทธิ์มีผลบังคับใช้กับโปรโตคอลโอเพ่นซอร์ส เช่นเดียวกับที่ใช้กับซอฟต์แวร์ที่เป็นกรรมสิทธิ์ กฎหมายจะปกป้องงานสร้างสรรค์ต้นฉบับใดๆ โดยอัตโนมัติ รวมถึงโปรโตคอลโอเพ่นซอร์ส โดยให้สิทธิ์แก่ผู้สร้างซอฟต์แวร์แต่เพียงผู้เดียวในการควบคุมการใช้และการเผยแพร่
เมื่อพูดถึงการออกใบอนุญาตโปรโตคอลโอเพ่นซอร์ส นักพัฒนามักจะแนบใบอนุญาตไปด้วย ซึ่งทำหน้าที่เป็นชุดแนวทางที่อธิบายอย่างชัดเจนว่าอะไรได้รับอนุญาตและอะไรคือขีดจำกัดนอกขอบเขตที่เกี่ยวข้องกับโค้ด
ใบอนุญาตโอเพ่นซอร์สมักจะให้สิทธิ์แก่ผู้ใช้อย่างกว้างขวางโดยไม่ต้องได้รับการอนุมัติอย่างชัดเจนจากผู้เขียนต้นฉบับ อย่างไรก็ตาม ใบอนุญาตโอเพ่นซอร์สมี 2 ประเภทหลัก ได้แก่ permissive (แบบอนุญาต) และ copyleft (แบบลิขสิทธิ์)
ใบอนุญาตแบบอนุญาต (permissive license) บางครั้งเรียกว่าใบอนุญาตแบบ BSD หรือแบบ Apache จะมีการกำหนดข้อกำหนดขั้นต่ำเกี่ยวกับวิธีการแก้ไขหรือแจกจ่ายซอฟต์แวร์ อย่างไรก็ตาม โครงการที่ใช้ใบอนุญาตประเภทนี้จำเป็นต้องผนวกข้อจำกัดความรับผิดชอบในการรับประกัน ตัวอย่างคลาสสิกของ permissive license คือ ใบอนุญาต MIT ใบอนุญาตนี้จะอนุญาตให้ใครก็ตามสามารถใช้, แก้ไข และแจกจ่ายรหัส โดยไม่ต้องได้รับความยินยอมล่วงหน้า
โดยทั่วไปโครงการที่ใช้รหัสลิขสิทธิ์ของ MIT จะต้องรวมประกาศลิขสิทธิ์ต้นฉบับและข้อจำกัดความรับผิดชอบที่ระบุอย่างชัดเจนว่าซอฟต์แวร์มาโดยไม่มีการรับประกันใด ๆ ข้อจำกัดความรับผิดชอบชี้แจงว่าผู้ถือลิขสิทธิ์ไม่รับผิดชอบต่อการเรียกร้องหรือความรับผิดใด ๆ ที่เกิดจากการใช้งานซอฟต์แวร์
ใบอนุญาตประเภทนี้ ได้รับอนุญาตอย่างยิ่งและได้รับการออกแบบมาเพื่อให้นักพัฒนามีอิสระสูงสุด แม้ว่าจะอนุญาตให้รวมและเผยแพร่รหัสในผลิตภัณฑ์เชิงพาณิชย์ก็ตาม
สำหรับ copyleft licenses (ใบอนุญาตแบบมีลิขสิทธิ์) โครงการที่ใช้ลิขสิทธิ์ดังกล่าวจำเป็นต้องแนบคำจำกัดความรับผิดด้วย มีข้อจำกัดมากขึ้น โดยเฉพาะอย่างยิ่งเกี่ยวกับการเผยแพร่เวอร์ชันโปรโตคอลที่แก้ไข ตัวอย่างเช่น copyleft GNU General Public License (GPL) ซึ่งเป็นใบอนุญาตโอเพ่นซอร์สที่ใช้กันอย่างแพร่หลาย รับประกันว่าซอฟต์แวร์จะยังคงเปิดอยู่และฟรี เช่นเดียวกับใบอนุญาต MIT, GPL กำหนดข้อจำกัดความรับผิดชอบในการรับประกัน
Copyleft licenses รับประกันว่าโปรโตคอลหรือซอฟต์แวร์โอเพ่นซอร์ส จะสามารถนำไปใช้, ปรับแต่ง และแบ่งปันได้โดยไม่มีข้อจำกัด อย่างไรก็ตาม งานที่แก้ไขใดๆ จะต้องเป็นไปตามข้อกำหนดเดียวกัน โดยรักษาความเปิดกว้างของโปรโตคอลในเวอร์ชันต่อๆ ไปทั้งหมด
เมื่อพูดถึงโปรโตคอลที่เป็นกรรมสิทธิ์ (proprietary protocols) ภาพรวมจะเปลี่ยนไปอย่างมาก โดยโปรโตคอลจะกำหนดข้อจำกัดที่เข้มงวดในเอกสารโปรโตคอล ซึ่งมักมีข้อจำกัดในการแก้ไขหรือวิศวกรรมย้อนกลับของโค้ด
เพื่อรักษาความปลอดภัยของโปรโตคอล โครงการที่เป็นกรรมสิทธิ์มักจะรวมส่วนคำสั่งการรักษาความลับไว้ในใบอนุญาต เพื่อป้องกันไม่ให้ผู้ใช้เปิดเผยการทำงานของโปรโตคอลหรือข้อมูลที่เป็นกรรมสิทธิ์ใด ๆ ที่พวกเขาอาจพบเจอ
ในแง่ของต้นทุน ใบอนุญาตของโอเพ่นซอร์ส แบบ permissive และ แบบ copyleft นั้นฟรี ทำให้ผู้ใช้สามารถใช้และแจกจ่ายซอฟต์แวร์ได้โดยไม่มีค่าใช้จ่าย ในทางตรงกันข้าม สิทธิ์การใช้งานที่เป็นกรรมสิทธิ์ (proprietary licenses) มักกำหนดให้ผู้ใช้ต้องชำระเงินสำหรับการเข้าถึงและใช้งานซอฟต์แวร์
อนาคตของโปรโตคอลโอเพ่นซอร์ส
ในขณะที่โลกกลายเป็นดิจิทัลมากขึ้นและเชื่อมโยงถึงกัน โปรโตคอลโอเพ่นซอร์สก็พร้อมที่จะมีบทบาทสำคัญในการเปิดใช้งานนวัตกรรม โดยเฉพาะอย่างยิ่งเมื่อเป็นเรื่องของการสนับสนุนการทำงานร่วมกันระหว่างระบบ แอปพลิเคชัน และอุปกรณ์ต่างๆ
การเปลี่ยนแปลงดังกล่าวได้รับแรงผลักดันจากการใช้งานโปรโตคอลที่สร้างสรรค์โดยนักพัฒนาต่างๆ อย่างกว้างขวางและพร้อมกันทุกวัน ด้วยเหตุนี้ โปรโตคอลโอเพ่นซอร์ส โดยเฉพาะอย่างยิ่งโปรโตคอลที่อนุญาตให้มีการแก้ไขโดยบุคคลที่สามและสนับสนุนระบบที่ทำงานร่วมกันได้ จะต้องเป็นศูนย์กลางของขอบเขตเทคโนโลยีใหม่
เมื่อพิจารณาจากแนวโน้มในปัจจุบัน โครงการโอเพ่นซอร์สยังมีแนวโน้มที่จะมุ่งเน้นไปที่ความยั่งยืน, ประสิทธิภาพการใช้พลังงาน และการแก้ปัญหา ซึ่งสอดคล้องกับการผลักดันระดับโลกสำหรับโซลูชันเทคโนโลยีที่เป็นมิตรต่อสิ่งแวดล้อม
นอกจากนี้ โครงการริเริ่มโปรโตคอลเครือข่ายโอเพ่นซอร์สคาดว่าจะพัฒนาโปรโตคอลอินเทอร์เน็ตแบบเพียร์ทูเพียร์ (P2P) ต่อไป โปรโตคอลอำนวยความสะดวกในการสื่อสารโดยตรงระหว่างระบบ โดยไม่จำเป็นต้องใช้ระบบตัวกลางแบบรวมศูนย์ โปรโตคอล P2P มีแอปพลิเคชันที่หลากหลายมากขึ้น โดยเฉพาะอย่างยิ่งในการเปิดใช้งานธุรกรรม P2P และการสื่อสารผ่านโปรโตคอลแบบกระจายอำนาจ
ที่มา LINK