Ethereum เป็นแพลตฟอร์มแบบเปิดของ Blockchain ที่ทำให้ทุกคนสามารถสร้างและใช้งานแอปพลิเคชันแบบกระจายข้อมูล (decentralized) ซึ่งทำงานบนเทคโนโลยี Blockchain ได้ Ethereum มีความคล้าย Bitcoin ตรงที่ไม่มีใครสามารถควบคุมหรือเป็นเจ้าของ Ethereum ได้ เนื่องจาก Ethereum เป็นโครงการแบบโอเพนซอร์ส (open-source project) ที่สร้างขึ้นโดยผู้คนเป็นจำนวนมากจากทั่วโลก แต่ Ethereum มีความแตกต่างจากโปรโตคอล Bitcoin เนื่องจาก Ethereum ถูกออกแบบมาเพื่อให้สามารถปรับตัวได้และมีความยืดหยุ่น การสร้างแอ็พพลิเคชันใหม่ ๆ บนแพลตฟอร์ม Ethereum เป็นเรื่องง่าย และการเปิดตัว Homestead ก็ทำให้ทุกคนสามารถใช้งานแอปพลิเคชันเหล่านี้ได้อย่างปลอดภัย

Blockchain รุ่นต่อไป

เทคโนโลยี Blockchain เป็นเทคโนโลยีพื้นฐานของ Bitcoin ซึ่งผู้เขียนชื่อ Satoshi Nakamoto ได้การอธิบายรายละเอียดในงานเขียนของเขาว่า “Bitcoin: ระบบเงินอิเล็กทรอนิกส์แบบ Peer-to-Peer”  ซึ่งตีพิมพ์ในปี 2551 ในระยะเวลาไม่กี่ปีต่อมา เทคโนโลยี Blockchain ก็พัฒนาขึ้นตามคำนิยามโดยทั่วไปนี้ Blockchain เป็นสถาปัตยกรรมคอมพิวเตอร์แบบกระจายข้อมูล ซึ่งทุกโหนดเครือข่าย (network node) จะประมวลผลและบันทึกธุรกรรมแบบเดียวกันโดยจัดกลุ่มข้อมูลเหล่านั้นให้เป็นบล็อก (block) โดยสามารถเพิ่มบล็อกได้ครั้งละหนึ่งบล็อก และทุกบล็อกจะมีพิสูจน์ทางคณิตศาสตร์เพื่อยืนยันว่าบล็อกมีลำดับสอดคล้องกับบล็อกก่อนหน้านี้

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

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

ซึ่งโครงการหลายโครงการใช้รูปแบบของ “alt coins” ซึ่งแยก Blockchain ออกจากสกุลเงินดิจิตอลของมัน ซึ่งได้ถูกพัฒนาปรับปรุงในโปรโตคอล Bitcoin เดิม เพื่อเพิ่มคุณสมบัติหรือความสามารถใหม่ ๆ ในช่วงปลายปี 2013 Vitalik Buterin ซึ่งเป็นผู้ประดิษฐ์ Ethereum เสนอ Blockchain เดี่ยวที่สามารถปรับโครงสร้างเพื่อดำเนินการคำนวณที่ซับซ้อนได้เอง อาจรวมเอาโครงการอื่น ๆ เหล่านี้เข้าด้วยกัน

ในปี 2014 Vitalik Buterin, Gavin Wood และ Jeffrey Wilcke ซึ่งเป็นผู้ประดิษฐ์ Ethereum ได้เริ่มทำงานในโครงการ Blockchain ยุคใหม่ โดยมีความตั้งใจแรงกล้าที่จะใช้เป็นแพลตฟอร์มในการทำสัญญา ต่าง ๆ แบบอัจฉริยะซึ่งมีระดับปลอดภัยสูงสุดและใช้งานได้โดยทั่วไป

ระบบปฏิบัติการเสมือนจริงของ Ethereum

  • Ethereum เป็น Blockchain ที่เขียนชุดคำสั่งได้ ซึ่งแทนที่จะให้ผู้ใช้ชุดปฏิบัติการที่ถูกกำหนดไว้ล่วงหน้าแล้ว (pre-defined operations) (เช่น ธุรกรรมเกี่ยวกับ Bitcoin) Ethereum กลับช่วยให้ผู้ใช้สามารถสร้างปฏิบัติการให้มีความซับซ้อนตามที่ผู้ใช้ต้องการได้ ด้วยวิธีนี้ Ethereum จะทำหน้าที่เป็นแพลตฟอร์มสำหรับแอปพลิเคชัน Blockchain ที่มีรูปแบบหลากหลาย ซึ่งสามารถใช้สกุลเงินดิจิตอลได้อย่างไม่จำกัด
  • Ethereum ในความหมายอย่างแคบ (narrow sense) หมายถึงชุดของโปรโตคอลที่กำหนดแพลตฟอร์มสำหรับแอปพลิเคชันแบบกระจายข้อมูล หัวใจสำคัญของมันคือ Ethereum Virtual Machine (“EVM”) ซึ่งสามารถประมวลผลซึ่งมีอัลกอริทึมที่ซับซ้อนได้เอง ในแง่ของวิทยาการคอมพิวเตอร์ Ethereum นั้นอยู่ในระดับ “Turing complete” (แก้ปัญหาได้เทียบเท่าเครื่องคอมพิวเตอร์) นักพัฒนาซอฟต์แวร์สามารถสร้างแอปพลิเคชันที่ทำงานบน EVM โดยใช้ภาษาโปรแกรมที่รองรับได้ซึ่งมีตัวแบบเป็นภาษาที่มีอยู่ เช่น JavaScript และ Python
  • Ethereum ยังมีโปรโตคอลเครือข่ายแบบ peer-to-peer เช่นเดียวกับ Blockchain ทั้งนี้ ฐานข้อมูล Blockchain ของ Ethereum ถูกเก็บรักษาและพัฒนาปรับปรุงโดยโหนดหลายโหนดที่เชื่อมต่อกันเป็นเครือข่าย โหนดแต่ละโหนดในเครือข่ายจะเรียกใช้ EVM และใช้คำสั่งเดียวกัน ด้วยเหตุผลนี้ Ethereum จึงถูกอธิบายว่าเป็น “คอมพิวเตอร์ระดับโลก (world computer)”

การประมวลผลขนานขนาดใหญ่ในเครือข่าย Ethereum ไม่ได้ทำให้การคำนวณมีประสิทธิภาพมากขึ้น เพราะในความเป็นจริงแล้วขั้นดังกล่าวทำให้การคำนวณบน Ethereum ช้าลงและมีค่าใช้จ่ายสูงกว่าการคำนวณบน “คอมพิวเตอร์” แบบดั้งเดิม ดังนั้น โหนด Ethereum ทุกโหนดจะประมวลผลโดยใช้ EVM เพื่อรักษาระดับความความสัมพันธ์ระหว่าง Blockchain ทั้งนี้ การกระจายข้อมูลจะช่วยให้ Ethereum สามารถทนข้อบกพร่องต่าง ๆ ในระดับรุนแรงได้ (extreme levels of fault tolerance) ทำให้มั่นใจได้ว่าไม่มีการหยุดทำงานของระบบ (ensures zero downtime) และทำให้ข้อมูลที่เก็บอยู่ใน Blockchain ไม่เปลี่ยนแปลงและสามารถกันการดักจับต่าง ๆ ได้ (censorship-resistant) ตลอดไป

ตัวของแพลตฟอร์ม Ethereum เองนั้น เป็นสิ่งที่ไม่มีคุณลักษณะพิเศษใด ๆ (featureless) หรือไม่มีมูลค่า (value-agnostic) เช่นเดียวกับภาษาโปรแกรม (programming languages) ซึ่งก็ขึ้นอยู่กับผู้ประกอบการและนักพัฒนาจะตัดสินใจว่าควรจะใช้ภาษานั้นสำหรับทำอะไร อย่างไรก็ตาม เห็นได้ชัดว่าแอปพลิเคชันบางประเภทใช้ประโยชน์จากความสามารถของ Ethereum มากกว่าแอพลิเคชันอื่น

ซึ่ง Ethereum นั้นเหมาะอย่างยิ่งสำหรับแอปพลิเคชันที่ก่อให้เกิดการปฏิสัมพันธ์ทางตรงโดยอัตโนมัติระหว่างผู้ใช้ด้วยกัน หรืออำนวยความสะดวกในการประสานงานของกลุ่มต่าง ๆ ในเครือข่าย Ethereum ตัวอย่างเช่น แอปพลิเคชันสำหรับการประสานงานในตลาดซื้อขายแบบ peer-to-peer (peer-to-peer marketplaces) หรือระบบอัตโนมัติเพื่อทำสัญญาทางการเงินที่ไม่ซับซ้อน Bitcoin ช่วยให้บุคคลสามารถแลกเปลี่ยนเงินตราได้โดยไม่ต้องผ่านพ่อค้าคนกลาง เช่น สถาบันการเงิน ธนาคาร หรือรัฐบาล ซึ่งเครือข่าย Ethereum อาจส่งผลกระทบแผ่ขยายออกไปได้มาก

โดยในทางทฤษฎีแล้วการปฏิสัมพันธ์ด้านการเงินหรือการซื้อขายแลกเปลี่ยนที่มีความซับซ้อนก็สามารถทำได้โดยอัตโนมัติและมีความน่าเชื่อถือผ่านการใช้รหัสที่ประมวลผลบน Ethereum นอกเหนือจากการเป็นแอปพลิเคชันทางการเงินแล้ว การดำเนินงาน อาทิ การลงทะเบียนสินทรัพย์ (asset-registries) การลงคะแนน (votin) การกำกับดูแล (governance) และการเชื่อมโยงเครือข่ายอินเทอร์เน็ตของสิ่งต่าง ๆ (internet of things) อาจได้รับอิทธิพลจากอย่างมากจากแพลตฟอร์ม Ethereum เนื่องจากการดำเนินการเหล่านี้ที่เน้นความสำคัญของปัจจัยแวดล้อมซึ่งมีความน่าเชื่อถือ (trust) ความปลอดภัย (security) และความคงที่ (permanence)

Ethereum ทำงานอย่างไร?

Ethereum นั้นรวบรวมคุณลักษณะและเทคโนโลยีมากมายที่ผู้ใช้ Bitcoin คุ้นเคย ในขณะเดียวกันก็มีการปรับปรุงคุณสมบัติและมีนวัตกรรมมากมายเป็นของตนเอง

ในขณะที่ Blockchain ของ Bitcoin เป็นรายการการทำธุรกรรมอย่างแท้จริง (list of transactions) โดยเป็นหน่วยพื้นฐานของ Ethereum คือบัญชี (account) ซึ่ง Blockchain ของ Ethereum จะติดตามสถานะของทุกบัญชี และการเปลี่ยนสถานะของบัญชีบน Blockchain ของ Ethereum จะเป็นการโอนค่าและข้อมูลระหว่างบัญชี ซึ่งแบ่งประเภทของบัญชีได้ 2 ประเภท ได้แก่

  • บัญชีที่มีเจ้าของจากภายนอก (Externally Owned Accounts, EOAs) ซึ่งถูกควบคุมโดยกุญแจส่วนตัว (private key)
  • บัญชีสัญญา (Contract Accounts) ซึ่งควบคุมโดยรหัสสัญญา (contract code) และสามารถใช้งานได้ (activate) โดย EOA เท่านั้น

สำหรับผู้ใช้ส่วนใหญ่ ความแตกต่างพื้นฐานระหว่างสองบัญชีนี้คือ ผู้ใช้ซึ่งเป็นมนุษย์ (human users) จะเป็นผู้ควบคุม EOA เนื่องจากผู้ใช้เหล่านี้เป็นผู้ควบคุมกุญแจส่วนตัวซึ่งควบคุม EOA อยู่ ในทางตรงกันข้าม บัญชีสัญญา (Contract Accounts) จะถูกควบคุมโดยรหัสภายในบัญชีนั้น หากจะกล่าวว่าบัญชีสัญญาถูก “ควบคุม” โดยผู้ใช้ที่เป็นมนุษย์ ก็สามารถอธิบายได้ในแง่ที่ว่าบัญชีสัญญาเหล่านี้ได้รับการกำหนดชุดคำสั่งให้ถูกควบคุมโดย EOA ซึ่ง EOA นั้นก็ถูกควบคุมโดยใครก็ตามที่ถือกุญแจส่วนตัวซึ่งควบคุม EOA ไว้อีกที คำว่า “สัญญาอัจฉริยะ (smart contracts)” หมายถึง รหัสในบัญชีสัญญา ซึ่งเป็นโปรแกรมที่จะดำเนินการเมื่อมีการส่งธุรกรรมไปยังบัญชีนั้น ทั้งนี้ ผู้ใช้สามารถสร้างสัญญาใหม่ได้ด้วยการปรับรหัสที่ Blockchain

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

ผู้ใช้จะต้องเสียค่าธรรมเนียมการทำธุรกรรมจำนวนเล็กน้อยให้แก่เครือข่าย Ethereum เช่นเดียวกับ Bitcoin ซึ่งจะช่วยป้องกันไม่ให้ Blockchain ของ Ethereum ประมวลผลสิ่งไม่สำคัญหรือป้องกันระบบจากการประสงค์ร้าย เช่น การโจมตีแบบ Distributed Denial of Service (DDoS) เพื่อให้ระบบหยุดการทำงาน หรือเกิดลูปแบบไม่สิ้นสุด ผู้ส่งธุรกรรมจะต้องจ่ายเงินสำหรับขั้นตอนแต่ละขั้นตอนของ “โปรแกรม” ที่ใช้งาน รวมถึงการคำนวณและการจัดเก็บหน่วยความจำ ค่าธรรมเนียมเหล่านี้จะต้องจ่ายเป็นเงิน Ether ซึ่งเป็นสกุลเงินหลักของ Ethereum

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

miner จะรับหน้าที่แก้ปัญหาทางคณิตศาสตร์ที่ซับซ้อนเพื่อที่จะสร้างบล็อกให้สำเร็จเช่นเดียวกับในเครือข่าย Bitcoin ซึ่งเรียกกลไกนี้ว่า “Proof of Work” การแก้ปัญหาด้านการประมวลผลที่ต้องใช้ทรัพยากรในปริมาณที่มากขึ้นเพื่อแก้ปัญหาเชิงอัลกอริทึมที่มากกว่าปกตินั้นถือว่าเป็นการแข่งขันที่ดีในกลไก Proof of Work ทั้งนี้ Ethereum ได้เลือกใช้ขั้นตอนการคำนวณที่ใช้ฮาร์ดดิสก์อย่างหนักเพื่อการกีดกันการรวมศูนย์ข้อมูลจากการใช้ฮาร์ดแวร์เฉพาะ (เช่น ASIC) อย่างที่เคยเกิดขึ้นในเครือข่าย Bitcoin ซี่งในความเป็นจริงถ้าการคำนวณดังกล่าวต้องใช้หน่วยการประมวลผลแบบ CPU แล้ว ฮาร์ดแวร์ที่เหมาะสมที่สุดก็คือคอมพิวเตอร์แบบทั่วไป ซึ่งทำให้กลไก Proof of Work ของ Ethereum สามารถกันการใช้ ASIC (ASIC-resistant) โดยสามารถกระจายความปลอดภัยได้มากกว่า Blockchain ที่มีการทำเหมืองข้อมูลผ่านฮาร์ดแวร์เฉพาะทาง (specialized hardware) ดังเช่นในเครือข่าย Bitcoin

Comments

comments

Summary
ถ้าบทความเหล่านี้ถูกใจคุณ สละเวลาให้คะแนนที่ดาวข้างล่างนี้สักแป้บนะ .. จะได้เป็นกำลังใจให้ทีมงาน เพื่อปรับปรุงคุณภาพบทความต่อไปงัย
0 %
คะแนนเฉลี่ย 4.2 ( 2 จำนวนผู้ให้คะแนน)
แสดงหัวข้ออื่น ๆ เพิ่มเติม
Load More By Paitoon Pairor
Load More In Ethereum