WebAssembly (Wasm) เป็นรูปแบบคำสั่งไบนารีแบบพกพาและประสิทธิภาพสูงที่สามารถเรียกใช้บนเว็บเบราว์เซอร์ ได้รับการออกแบบให้เป็นเป้าหมายการคอมไพล์สากลที่สามารถใช้ได้กับภาษาการเขียนโปรแกรมหลายภาษาและทำงานบนแพลตฟอร์มที่แตกต่างกัน
Blockchain เป็นเทคโนโลยีบัญชีแยกประเภทแบบกระจายอำนาจที่รับประกันความปลอดภัยและความน่าเชื่อถือของข้อมูลผ่านการใช้การเข้ารหัสและอัลกอริธึมที่เป็นเอกฉันท์ บล็อกเชนสามารถใช้ในการบันทึกธุรกรรม จัดเก็บข้อมูล และดำเนินการสัญญาอัจฉริยะ รวมถึงแอปพลิเคชันอื่นๆ
มีความสัมพันธ์และสถานการณ์การใช้งานหลายอย่างระหว่าง Wasm และ blockchain:
โดยสรุป การรวมกันของ Wasm และบล็อกเชนทำให้แอปพลิเคชันและบริการบล็อกเชนมีประสิทธิภาพ ปลอดภัย และยืดหยุ่นมากขึ้น ความสะดวกในการพกพาและประสิทธิภาพสูงของ Wasm ทำให้ Wasm เป็นเทคโนโลยีที่สำคัญในด้านบล็อกเชน
WebAssembly เป็นมาตรฐานชุดคำสั่งที่มีประสิทธิภาพและมีน้ำหนักเบาซึ่งพัฒนาโดย World Wide Web Consortium (W3C) ได้รับการยกย่องว่าเป็นผู้ขัดขวางเว็บและคอมพิวเตอร์ประสิทธิภาพสูง ซึ่งสนับสนุนการดำเนินการข้ามเบราว์เซอร์ ซึ่งหมายความว่าเราสามารถรวบรวมภาษาโปรแกรมต่างๆ รวมถึง C/C++, Go, Rust และอื่นๆ อีกมากมาย ให้อยู่ในรูปแบบไบนารี่มาตรฐานแบบครบวงจร และใช้แทน JavaScript โดยทำงานด้วยประสิทธิภาพของโค้ดที่ใกล้เคียงกันในเว็บเบราว์เซอร์
WebAssembly หรือที่เรียกว่า WASM เป็นเทคโนโลยีที่ปลอดภัยต่อหน่วยความจำและไม่ขึ้นกับแพลตฟอร์ม ซึ่งสามารถแมปกับสถาปัตยกรรม CPU ที่แตกต่างกันได้อย่างมีประสิทธิภาพ มีข้อดีที่สำคัญหลายประการ:
นอกจากนี้ เว็บยังเป็นแพลตฟอร์มสากลที่แท้จริงเพียงแพลตฟอร์มเดียวที่อนุญาตให้เข้าถึงแอปพลิเคชันของคุณบนอุปกรณ์ใดก็ได้ นอกจากนี้ยังช่วยให้คุณสามารถรักษาฐานรหัสเดียว ลดความซับซ้อนของการอัปเดต และรับรองว่าผู้ใช้ทุกคนจะสามารถเข้าถึงแอปพลิเคชันของคุณได้ WASM รองรับการดำเนินการจำนวนเต็ม 64 บิตและ 32 บิต ซึ่งสอดคล้องกับคำสั่ง CPU โดยตรง การลบการดำเนินการจุดลอยตัวออก ทำให้สามารถบรรลุพฤติกรรมที่กำหนดได้อย่างง่ายดาย ซึ่งจำเป็นสำหรับอัลกอริธึมที่เป็นเอกฉันท์ WASM ได้รับการสนับสนุนจากโครงการโครงสร้างพื้นฐานคอมไพลเลอร์ LLVM โดยจะได้รับประโยชน์จากการปรับปรุงประสิทธิภาพของคอมไพเลอร์ใน LLVM มานานกว่าทศวรรษ WASM ได้รับการพัฒนาอย่างต่อเนื่องโดยบริษัทใหญ่ๆ เช่น Google, Apple, Microsoft, Mozilla และ Facebook และได้รับการสนับสนุนจากแบ็กเอนด์ของเบราว์เซอร์ที่พัฒนาโดยบริษัทเหล่านี้
ความสวยงามของ WASM อยู่ที่ความสามารถในการทำงานได้ทุกที่โดยไม่จำเป็นต้องดาวน์โหลดหรือติดตั้ง เนื่องจากอยู่ในรูปแบบไบนารี เพียงคลิกเดียว เว็บแอปพลิเคชันก็สามารถดำเนินการได้ทันทีเมื่อจำเป็น มีความปลอดภัยมากกว่าการดาวน์โหลดและเรียกใช้ไฟล์ไบนารีโดยตรง เนื่องจากเบราว์เซอร์มีกลไกความปลอดภัยในตัวที่ป้องกันโค้ดที่เรียกใช้งานไม่ให้เป็นอันตรายต่อระบบของคุณ นอกจากนี้ การแชร์เว็บแอปพลิเคชันก็ทำได้ง่าย โดยสามารถวางลิงก์ไว้ที่ใดก็ได้ในรูปแบบสตริงที่คลิกได้
เว็บได้พัฒนาจากแพลตฟอร์มสำหรับเนื้อหาแบบคงที่และภาษาสคริปต์ขนาดเล็ก มาเป็นแพลตฟอร์มที่ทรงพลังและเป็นที่นิยมซึ่งเต็มไปด้วยแอปพลิเคชันและคุณสมบัติที่น่าทึ่ง ต้องขอบคุณฟังก์ชันการทำงานในตัวของเบราว์เซอร์และการโต้ตอบที่จัดทำโดยเว็บ อย่างไรก็ตาม เว็บแอปพลิเคชันยังคงขับเคลื่อนโดยภาษาสคริปต์เดียวกัน (จาวาสคริปต์) ซึ่งไม่ได้ออกแบบมาเพื่อทำงานเหล่านี้ตั้งแต่แรก
ในตอนแรก JavaScript เป็นภาษาสคริปต์ง่ายๆ ที่มุ่งนำการโต้ตอบมาสู่เอกสารไฮเปอร์เท็กซ์แบบน้ำหนักเบาในแอปพลิเคชันเว็บ การออกแบบให้เรียนรู้และเขียนได้ง่าย และไม่ได้ให้ความสำคัญกับความเร็วรันไทม์ ในช่วงหลายปีที่ผ่านมา การปรับปรุงประสิทธิภาพที่สำคัญในการแยกวิเคราะห์ JavaScript โดยเบราว์เซอร์ได้นำไปสู่การเพิ่มประสิทธิภาพที่โดดเด่น
ด้วยความเร็วที่เพิ่มขึ้นของการดำเนินการ JavaScript ทำให้ขอบเขตของสิ่งที่สามารถทำได้ภายในเบราว์เซอร์ได้ขยายออกไปอย่างมาก API ใหม่ได้นำเสนอคุณสมบัติต่างๆ เช่น กราฟิกเชิงโต้ตอบ การสตรีมวิดีโอ การเรียกดูแบบออฟไลน์ และอื่นๆ อีกมากมาย นอกจากนี้ จำนวนแอปพลิเคชันที่เพิ่มขึ้นซึ่งก่อนหน้านี้จำกัดเฉพาะสภาพแวดล้อมเดสก์ท็อปได้เข้าสู่เว็บแล้ว ตอนนี้คุณสามารถแก้ไขเอกสารและส่งอีเมลในเบราว์เซอร์ของคุณได้อย่างง่ายดาย อย่างไรก็ตาม ในบางโดเมน ประสิทธิภาพของ JavaScript ยังคงเป็นความท้าทาย ลองนึกถึงแอปพลิเคชันซอฟต์แวร์ที่คุณใช้นอกเหนือจากเบราว์เซอร์ เช่น เกม การตัดต่อวิดีโอ การเรนเดอร์ 3 มิติ หรือการผลิตเพลง แอปพลิเคชันเหล่านี้ต้องการการคำนวณที่กว้างขวางและประสิทธิภาพสูง JavaScript พยายามดิ้นรนเพื่อให้เป็นไปตามข้อกำหนดประสิทธิภาพสูงเหล่านี้
อย่างไรก็ตาม การแทนที่ JavaScript นั้นเป็นไปไม่ได้ในทางปฏิบัติ และอาจต้องใช้เวลาหลายทศวรรษกว่าจะบรรลุเป้าหมายนั้น เนื่องจากอินเทอร์เน็ตทั้งหมดต้องอาศัยสิ่งนี้ นอกจากนี้ยังมีชุมชนขนาดใหญ่ที่ปรับปรุง JavaScript อย่างต่อเนื่อง อันที่จริงเมื่อเปรียบเทียบกับภาษาอื่น JavaScript มีข้อบกพร่องบางประการเช่น null และ == อย่างไรก็ตาม ปัญหาเหล่านี้ไม่รุนแรงพอที่จะรับประกันการเปลี่ยนเทคโนโลยีทั้งหมด
ดังนั้น WebAssembly จะไม่แทนที่ JavaScript แต่นั่นไม่ได้หมายความว่า WASM จะไม่ถูกนำมาใช้ในอนาคต ในความเป็นจริง การใช้ WASM จะแพร่หลายมากขึ้นเรื่อยๆ เนื่องจาก WASM สามารถนำความสามารถในการคำนวณอันทรงพลังมาสู่เว็บ เช่น การประมวลผลภาพหรือเกม ด้วย WASM คุณสามารถสร้าง Photoshop เวอร์ชันบนเว็บที่ทำงานได้ดี หรือเกม 3 มิติที่ทำงานที่ 60 เฟรมต่อวินาทีหรืออัตราเฟรมที่สูงกว่าในเบราว์เซอร์ โดยเฉพาะอย่างยิ่งเกมที่นำเสนอความท้าทายเนื่องจากต้องใช้การประมวลผลเสียงและวิดีโอไปพร้อมๆ กัน รวมถึงการประสานเอฟเฟกต์ทางฟิสิกส์และ AI WASM มีความสามารถในการรันเกมในเบราว์เซอร์ได้อย่างมีประสิทธิภาพ โดยเปิดประตูสู่การนำแอปพลิเคชันอื่นๆ อีกมากมายมาสู่เบราว์เซอร์
รูปด้านบนแสดงการเปรียบเทียบเวิร์กโฟลว์ระหว่าง JavaScript และ WebAssembly (wasm) สังเกตได้ว่า wasm มีความกระชับมากกว่ามากเมื่อเทียบกับ JavaScript
WASM VM
ในปี 2018 ระบบนิเวศ Ethereum เริ่มหารือเกี่ยวกับการใช้ WASM VM เป็นเครื่องเสมือนสัญญาอัจฉริยะ เนื่องจากถือว่ามีประสิทธิภาพที่ดีกว่า EVM Gavin Wood ผู้ประดิษฐ์ EVM ได้แสดงความเป็นไปได้ในการแทนที่ด้วย WASM และ Vitalik ยังระบุด้วยว่า Ethereum 2.0 จะได้รับการอัปเกรดเพื่อรองรับสัญญา WASM (eWASM) เพื่อตอบสนองความต้องการการพัฒนาที่มากขึ้น ปัจจุบัน การพัฒนาสัญญา WASM ได้เป็นรูปเป็นร่างแล้ว
ปัญหาขนาดสถาปัตยกรรม
คอมพิวเตอร์ทั่วไปมีชุดคำสั่งที่รับอินพุตขนาด 32 หรือ 64 บิต อย่างไรก็ตาม EVM นั้นแตกต่างและมีเอกลักษณ์เฉพาะตัวเนื่องจากเป็นคอมพิวเตอร์ 256 บิตที่ออกแบบมาเพื่อจัดการอัลกอริธึมแฮชของ Ethereum ได้ง่ายขึ้น ซึ่งสร้างเอาต์พุต 256 บิตที่ชัดเจน
อย่างไรก็ตาม คอมพิวเตอร์จริงที่ใช้งานโปรแกรม EVM จำเป็นต้องแยกคำ 256 บิตออกเป็นสถาปัตยกรรมดั้งเดิมเพื่อดำเนินการสัญญาอัจฉริยะ ส่งผลให้ระบบทั้งหมดไม่มีประสิทธิภาพและไม่สามารถใช้งานได้
นอกจากนี้ หากคุณต้องการใช้อัลกอริธึมที่ซับซ้อน เช่น SHA256 โดยใช้ OPCODES พื้นฐานของ EVM บน Ethereum คุณจะเจอกับช่วงเวลาที่ยากลำบาก! เพื่อแก้ไขปัญหาค่าใช้จ่ายสูงของการรันโปรแกรมที่ซับซ้อนผ่านชุดคำสั่ง Ethereum ได้แนะนำแนวคิดของการคอมไพล์ล่วงหน้า ซึ่งคอมไพล์โปรแกรมเป็น EVM และใช้ปริมาณก๊าซคงที่ พรีคอมไพล์ที่โดดเด่นคืออัลกอริธึมแฮชของ Ethereum เนื่องจากการใช้งานภายในเครื่องเสมือนจะส่งผลให้เกิดค่าธรรมเนียมที่แพงมากเมื่อมีการเรียกสัญญา
การรวบรวมล่วงหน้าป่อง
ปัญหาของการคอมไพล์ล่วงหน้าคือมันจะเพิ่มความบวมและความซับซ้อนของเครื่องเสมือนอย่างต่อเนื่อง โดยไม่ต้องแก้ไขปัญหาหลัก นั่นคือ การออกแบบชุดคำสั่งและข้อกำหนดปัจจุบันที่ไม่มีประสิทธิภาพและไม่ดี
จะเป็นอย่างไรหากเราสามารถกำหนดข้อกำหนดและชุดคำสั่งใหม่ที่ไม่จำเป็นต้องมีการคอมไพล์ล่วงหน้าของโปรแกรมที่ซับซ้อนเหล่านี้ แต่กลับให้ผลลัพธ์ที่ต้องการอย่างมีประสิทธิภาพผ่านคำสั่งพื้นฐานแทน นี่คือจุดที่ WASM เข้ามามีบทบาท
ขณะนี้ทีมงาน EWASM กำลังรวม WebAssembly บน Ethereum เพื่อให้มั่นใจว่าเลเยอร์การดำเนินการมีประสิทธิภาพและง่ายขึ้น ทำให้ Ethereum เหมาะสมเป็นแพลตฟอร์มการประมวลผลแบบกระจายอำนาจเต็มรูปแบบ WASM ถูกนำมาใช้เป็นมาตรฐานสำหรับโครงการอื่นๆ มากมาย รวมถึง Dfinity และ EOS ซึ่งทั้งสองโครงการใช้ WASM เพื่อปรับปรุงเลเยอร์การดำเนินการ
โครงการ Stylus เป็นความคิดริเริ่มบนเครือข่าย Arbitrum Ethereum Layer 2 ที่มีจุดมุ่งหมายเพื่อปรับปรุงประสิทธิภาพของการดำเนินการตามสัญญาอัจฉริยะโดยการแนะนำเครื่องเสมือน WebAssembly (WASM) สามารถดำเนินการตามสัญญาได้เร็วกว่าด้วย Solidity ในขณะที่ลดต้นทุนค่าน้ำมัน ทำให้ง่ายต่อการสร้างสัญญาอัจฉริยะประสิทธิภาพสูงบนเครือข่าย Arbitrum และปัจจุบันรองรับการคอมไพล์ใน C, C++ และ Rust
การสนับสนุนพรีคอมไพล์แบบกำหนดเอง: Stylus ยังรองรับพรีคอมไพล์แบบกำหนดเอง ซึ่งช่วยให้นักพัฒนาสามารถปรับใช้พรีคอมไพล์ Rust หรือ C++ ของตนเองกับเครือข่าย Arbitrum สิ่งนี้สามารถช่วยแนะนำอัลกอริธึมการเข้ารหัสใหม่หรือฟังก์ชันเฉพาะอื่นๆ บนเชนโดยไม่ต้องรอการอัพเกรดบนเชน ตัวอย่างเช่น การคำนวณเทนเซอร์สามารถคอมไพล์ล่วงหน้าเพื่อลดต้นทุนการอนุมาน ซึ่งอาจเป็นประโยชน์สำหรับการเรียนรู้ของเครื่องแบบออนไลน์
การทำงานร่วมกันกับ EVM: Stylus บรรลุการบูรณาการกับระบบนิเวศ Ethereum ที่มีอยู่ผ่านการทำงานร่วมกันกับ Ethereum Virtual Machine (EVM) ซึ่งหมายความว่าสัญญาของสไตลัสสามารถโต้ตอบกับสัญญา EVM ที่มีอยู่และแบ่งปันสถานะสากลเดียวกันกับ EVM
การกลับเข้าใหม่: แตกต่างจาก Cosmos Wasm ตรงที่ Stylus Rust SDK แนะนำคุณสมบัติการกลับเข้าใหม่ และอนุญาตให้นักพัฒนาเปิดใช้งานได้ด้วยตนเอง สิ่งนี้ทำให้สัญญามีความยืดหยุ่นมากขึ้นในการทำงานร่วมกัน แต่นักพัฒนาจำเป็นต้องจัดการรัฐอย่างระมัดระวังเพื่อความปลอดภัย
จากระบบนิเวศที่เจริญรุ่งเรืองของ Arbitrum การบูรณาการของ Stylus อาจเป็นการรวม WASM ที่มีความหมายมากที่สุด นอกจากนี้ยังช่วยเพิ่มขีดความสามารถในการแข่งขันของ Arbitrum ในสาขา zkRollup
โปรโตคอล Gear กำลังสร้างเทคโนโลยีที่สามารถใช้เป็น Parachain ของ Polkadot ซึ่งทำหน้าที่เป็นเครื่องมือในการโฮสต์สัญญาอัจฉริยะ เช่นเดียวกับ Polkadot Gear ยังใช้เฟรมเวิร์ก Substrate ซึ่งทำให้กระบวนการสร้างบล็อกเชนที่แตกต่างกันสำหรับแอปพลิเคชันเฉพาะง่ายขึ้น Substrate มีฟังก์ชันการทำงานที่พร้อมใช้งานทันที ช่วยให้ผู้คนมุ่งเน้นไปที่การสร้างกลไกแบบกำหนดเองนอกเหนือจากโปรโตคอลได้
ก่อนหน้านี้ ค่าใช้จ่ายในการเปิดตัวบล็อกเชนนั้นสูง แต่ Gear ช่วยให้นักพัฒนา dApp มุ่งเน้นไปที่โปรเจ็กต์ของตนได้ แทนที่จะสร้างและดำเนินการบล็อกเชนทั้งหมดตั้งแต่เริ่มต้น
กลไกหลักของโปรโตคอล Gear คือโมดูลสัญญาอัจฉริยะ ในกรณีของ Gear สัญญาอัจฉริยะใดๆ ก็ตามคือโปรแกรม WebAssembly ที่คอมไพล์ในภาษาต่างๆ เช่น Rust, C และ C++ สำหรับนักพัฒนาจากนอกโลก crypto อุปสรรคในการเข้าสู่ตลาดมีน้อยเพราะพวกเขาสามารถสร้างสัญญาอัจฉริยะในสภาพแวดล้อมที่คุ้นเคยได้ นักพัฒนาพบว่าการทดลองกับภาษาการเขียนโปรแกรมสัญญาอัจฉริยะนั้นง่ายกว่า
สถาปัตยกรรมสัญญาอัจฉริยะของ Gear ใช้ Actor Model ภายใต้ประทุนและมีฟังก์ชันการทำงานดังต่อไปนี้:
แต่ละโปรแกรมมีจำนวนหน่วยความจำคงที่ ซึ่ง Gear อนุญาตให้ควบคุมได้ โปรแกรมสามารถอ่านและเขียนได้เฉพาะในหน่วยความจำของตัวเองเท่านั้น และไม่สามารถเข้าถึงพื้นที่หน่วยความจำของโปรแกรมอื่นได้ แต่ละโปรแกรมมีพื้นที่หน่วยความจำอิสระของตัวเอง และข้อมูลเกี่ยวกับโหนด Gear สามารถประมวลผลแบบขนานได้
CosmWasm เป็นแพลตฟอร์มสัญญาอัจฉริยะที่ใช้ Wasm ที่ทันสมัยและทรงพลัง ซึ่งสามารถผสานรวมกับ Cosmos-SDK ได้อย่างง่ายดาย สิ่งนี้แสดงให้เห็นถึงข้อดีหลักประการหนึ่งของ CosmWasm: สัญญาที่เขียนด้วย CosmWasm ได้รับการบูรณาการอย่างแน่นหนากับ IBC (Inter-Blockchain Communication) โดยกำเนิด ช่วยให้นักพัฒนาและผู้ใช้สามารถเข้าสู่อนาคตของ multi-chain ปัจจุบันรองรับเฉพาะ Rust เท่านั้น
ข้อดีของ CosmWasm
ความท้าทายและข้อจำกัด
นอกจากเครื่องเสมือน wasm แล้ว ยังมีเทคโนโลยีเกิดใหม่ล่าสุดที่เรียกว่า ZKWASM Delphinus Labs นักประดิษฐ์ได้เปิดซอร์สโค้ดสำหรับ ZK-WASM บน GitHub ZKWASM ช่วยให้นักพัฒนาตรวจสอบความถูกต้องของการคำนวณที่ดำเนินการโดยไม่ต้องดำเนินการซ้ำ ด้วยการใช้ประโยชน์จาก ZKWASM นักพัฒนาสามารถสร้างแอปพลิเคชัน Zero-Knowledge Proof (ZKP) ได้อย่างยืดหยุ่นโดยใช้ภาษาการเขียนโปรแกรมต่างๆ แอปพลิเคชันเหล่านี้สามารถดำเนินการได้อย่างราบรื่นบนเว็บเบราว์เซอร์
ZKWASM มาจาก ZKSNARK ซึ่งเป็นการผสมผสานระหว่าง SNARG และการพิสูจน์ความรู้แบบศูนย์ เรามาอธิบายเพิ่มเติมกันดีกว่า โดยทั่วไป หากต้องการใช้ ZKSNARK คุณจะต้องเขียนโปรแกรมในภาษาวงจรเลขคณิตหรือภาษาที่เหมาะกับวงจร เช่น Pinocchio, TinyRAM, Buffet/Pequin, Geppetto, xJsnark framework, ZoKrates เป็นต้น สิ่งนี้ทำให้เกิดอุปสรรคต่อโปรแกรมที่มีอยู่ ทำให้เป็นการยากสำหรับพวกเขาที่จะใช้ประโยชน์จากพลังของ ZKSNARK อย่างไรก็ตาม มีอีกวิธีหนึ่ง ซึ่งไม่ใช่การใช้ ZKSNARK ในระดับซอร์สโค้ด แต่ใช้ในระดับไบต์โค้ดของเครื่องเสมือน จากนั้นจึงนำเครื่องเสมือนที่รองรับ ZKSNARK ไปใช้ Delphinus Labs ได้นำแนวทางหลังมาใช้โดยผสมผสานเครื่องเสมือน WASM ทั้งหมดเข้ากับวงจร ZKSNARK ด้วยเหตุนี้ แอปพลิเคชัน WASM ที่มีอยู่จึงสามารถทำงานบน ZKWASM ได้โดยตรงโดยไม่ต้องแก้ไขใดๆ ดังนั้นผู้ให้บริการคลาวด์จึงสามารถพิสูจน์ให้ผู้ใช้เห็นว่าผลการคำนวณได้รับการคำนวณอย่างตรงไปตรงมาและจะไม่เปิดเผยข้อมูลส่วนตัวใดๆ
ZKWASM มีกรณีการใช้งานที่หลากหลาย เช่น การเปิดใช้งานการตรวจสอบ on-chain ของการดำเนินการในเบราว์เซอร์ ช่วยให้สามารถโต้ตอบบนเว็บที่สามารถตรวจสอบได้บนบล็อคเชน กรณีการใช้งานอื่นๆ ได้แก่ บริการของ Oracle การคำนวณนอกเครือข่าย ระบบอัตโนมัติ การเชื่อมช่องว่างระหว่าง Web2 และ Web3 การสร้างข้อพิสูจน์สำหรับการเรียนรู้ของเครื่องและการประมวลผลข้อมูล และแม้แต่แอปพลิเคชันเกมและโซเชียล ด้วยการนำไปใช้ที่เพิ่มขึ้น zkWASM ได้ขยายความเป็นไปได้ของ Web3 และรวมนักพัฒนา Web2 เข้ากับภูมิทัศน์ที่เปลี่ยนแปลงนี้
ด้วยการใช้ ZKWASM ของ Delphinus Lab นักพัฒนาสามารถควบคุมพลังของการพิสูจน์ความรู้แบบศูนย์ เพื่อเพิ่มความปลอดภัยและความเป็นส่วนตัวของแอปพลิเคชันของตน ซึ่งปูทางไปสู่ระบบนิเวศดิจิทัลที่มีความน่าเชื่อถือและกระจายอำนาจมากขึ้น
ประสิทธิภาพของเว็บและอนาคตของเลเยอร์การดำเนินการแพลตฟอร์มสัญญาอัจฉริยะมีแนวโน้มที่ดี dApps ไม่เพียงแต่จะมีประสิทธิภาพที่สูงขึ้นเท่านั้น แต่การบูรณาการ WASM ยังช่วยให้ผู้ที่คุ้นเคยกับภาษากระแสหลัก เช่น Rust และ Go พัฒนาสัญญาอัจฉริยะได้ง่ายขึ้น โดยไม่ต้องเรียนรู้ความซับซ้อนของความแข็งแกร่งหรือภาษาการพัฒนาบล็อกเชนอื่นๆ จากข้อมูลของ Evans Data Corporation มีนักพัฒนาเกือบ 27 ล้านคนทั่วโลก และจำนวนนี้เพิ่มขึ้นอย่างต่อเนื่อง โดยคาดว่าจะเพิ่มขึ้นเป็นมากกว่า 28.7 ล้านคนภายในปี 2567 อย่างไรก็ตาม จำนวนนักพัฒนาในด้านบล็อกเชนยังคงน้อยกว่า 30,000 คน ซึ่งคิดเป็นเพียงหนึ่งในพันของจำนวนนักพัฒนาทั้งหมด แม้ว่าจำนวนนี้จะเพิ่มขึ้นอย่างต่อเนื่อง แต่การเรียนรู้ภาษาสัญญาอัจฉริยะใหม่ๆ อาจยังคงเป็นอุปสรรคสำหรับนักพัฒนาในการเข้าสู่อุตสาหกรรมบล็อกเชน
แต่บล็อกเชนเริ่มรองรับ Web Assembly มากขึ้นเรื่อยๆ ในฐานะรหัสไบต์สำหรับสัญญาอัจฉริยะที่คอมไพล์แล้ว WASM นำประสิทธิภาพ การทำงานร่วมกัน และกรณีการใช้งานที่หลากหลายมาสู่บล็อกเชน นอกจากนี้ยังทำหน้าที่เป็นกุญแจสำคัญในการปลดล็อกประตูสำหรับนักพัฒนา ช่วยลดอุปสรรคในการเข้าสู่การพัฒนาบล็อกเชน ลองนึกภาพว่าในอนาคตอันใกล้นี้ เมื่อนักพัฒนา Web 2.0 ต้องการลองใช้การพัฒนาบล็อกเชน พวกเขาสามารถใช้ภาษาที่คุ้นเคย เช่น Python, C++ และ JavaScript เพื่อสร้างแอปพลิเคชันขนาดใหญ่บนบล็อกเชน เพื่อเพิ่มมูลค่าสูงสุดของเครือข่ายกระจายอำนาจ ขั้นแรก ลดอุปสรรคสำหรับผู้สร้าง (นักพัฒนา) จากนั้นลดอุปสรรคสำหรับผู้ใช้ และก้าวไปสู่การนำไปใช้ในวงกว้าง
https://blog.scottlogic.com/2022/06/20/state-of-wasm-2022.html
https://www.notion.so/18f67cee15c147dfae68b06269a455c0?pvs=21
https://wiki.polkadot.network/docs/learn-wasm
https://docs.arbitrum.io/stylus/stylus-gentle-introduction
https://medium.com/@gear_techs/introcing-gear-easy-to-use-polkadot-parachain-9ccd05437a9c
https://medium.com/cosmwasm/cosmwasm-for-ctos-f1ffa19cccb8
https://www.cncf.io/wp-content/uploads/2023/09/The-State-of-WebAssembly-2023.pdf
https://github.com/DelphinusLab/zkWasm
ขอขอบคุณ Maggie และ Xinyou Ji (CMU) สำหรับคำแนะนำและคำแนะนำในบทความนี้
ข้อจำกัดความรับผิดชอบ: บทความทั้งหมดจาก Foresight Ventures ไม่ได้มีจุดมุ่งหมายเพื่อเป็นคำแนะนำในการลงทุน การลงทุนมีความเสี่ยง ดังนั้นโปรดประเมินการยอมรับความเสี่ยงของคุณเองและตัดสินใจลงทุนอย่างรอบคอบ
Partilhar
WebAssembly (Wasm) เป็นรูปแบบคำสั่งไบนารีแบบพกพาและประสิทธิภาพสูงที่สามารถเรียกใช้บนเว็บเบราว์เซอร์ ได้รับการออกแบบให้เป็นเป้าหมายการคอมไพล์สากลที่สามารถใช้ได้กับภาษาการเขียนโปรแกรมหลายภาษาและทำงานบนแพลตฟอร์มที่แตกต่างกัน
Blockchain เป็นเทคโนโลยีบัญชีแยกประเภทแบบกระจายอำนาจที่รับประกันความปลอดภัยและความน่าเชื่อถือของข้อมูลผ่านการใช้การเข้ารหัสและอัลกอริธึมที่เป็นเอกฉันท์ บล็อกเชนสามารถใช้ในการบันทึกธุรกรรม จัดเก็บข้อมูล และดำเนินการสัญญาอัจฉริยะ รวมถึงแอปพลิเคชันอื่นๆ
มีความสัมพันธ์และสถานการณ์การใช้งานหลายอย่างระหว่าง Wasm และ blockchain:
โดยสรุป การรวมกันของ Wasm และบล็อกเชนทำให้แอปพลิเคชันและบริการบล็อกเชนมีประสิทธิภาพ ปลอดภัย และยืดหยุ่นมากขึ้น ความสะดวกในการพกพาและประสิทธิภาพสูงของ Wasm ทำให้ Wasm เป็นเทคโนโลยีที่สำคัญในด้านบล็อกเชน
WebAssembly เป็นมาตรฐานชุดคำสั่งที่มีประสิทธิภาพและมีน้ำหนักเบาซึ่งพัฒนาโดย World Wide Web Consortium (W3C) ได้รับการยกย่องว่าเป็นผู้ขัดขวางเว็บและคอมพิวเตอร์ประสิทธิภาพสูง ซึ่งสนับสนุนการดำเนินการข้ามเบราว์เซอร์ ซึ่งหมายความว่าเราสามารถรวบรวมภาษาโปรแกรมต่างๆ รวมถึง C/C++, Go, Rust และอื่นๆ อีกมากมาย ให้อยู่ในรูปแบบไบนารี่มาตรฐานแบบครบวงจร และใช้แทน JavaScript โดยทำงานด้วยประสิทธิภาพของโค้ดที่ใกล้เคียงกันในเว็บเบราว์เซอร์
WebAssembly หรือที่เรียกว่า WASM เป็นเทคโนโลยีที่ปลอดภัยต่อหน่วยความจำและไม่ขึ้นกับแพลตฟอร์ม ซึ่งสามารถแมปกับสถาปัตยกรรม CPU ที่แตกต่างกันได้อย่างมีประสิทธิภาพ มีข้อดีที่สำคัญหลายประการ:
นอกจากนี้ เว็บยังเป็นแพลตฟอร์มสากลที่แท้จริงเพียงแพลตฟอร์มเดียวที่อนุญาตให้เข้าถึงแอปพลิเคชันของคุณบนอุปกรณ์ใดก็ได้ นอกจากนี้ยังช่วยให้คุณสามารถรักษาฐานรหัสเดียว ลดความซับซ้อนของการอัปเดต และรับรองว่าผู้ใช้ทุกคนจะสามารถเข้าถึงแอปพลิเคชันของคุณได้ WASM รองรับการดำเนินการจำนวนเต็ม 64 บิตและ 32 บิต ซึ่งสอดคล้องกับคำสั่ง CPU โดยตรง การลบการดำเนินการจุดลอยตัวออก ทำให้สามารถบรรลุพฤติกรรมที่กำหนดได้อย่างง่ายดาย ซึ่งจำเป็นสำหรับอัลกอริธึมที่เป็นเอกฉันท์ WASM ได้รับการสนับสนุนจากโครงการโครงสร้างพื้นฐานคอมไพลเลอร์ LLVM โดยจะได้รับประโยชน์จากการปรับปรุงประสิทธิภาพของคอมไพเลอร์ใน LLVM มานานกว่าทศวรรษ WASM ได้รับการพัฒนาอย่างต่อเนื่องโดยบริษัทใหญ่ๆ เช่น Google, Apple, Microsoft, Mozilla และ Facebook และได้รับการสนับสนุนจากแบ็กเอนด์ของเบราว์เซอร์ที่พัฒนาโดยบริษัทเหล่านี้
ความสวยงามของ WASM อยู่ที่ความสามารถในการทำงานได้ทุกที่โดยไม่จำเป็นต้องดาวน์โหลดหรือติดตั้ง เนื่องจากอยู่ในรูปแบบไบนารี เพียงคลิกเดียว เว็บแอปพลิเคชันก็สามารถดำเนินการได้ทันทีเมื่อจำเป็น มีความปลอดภัยมากกว่าการดาวน์โหลดและเรียกใช้ไฟล์ไบนารีโดยตรง เนื่องจากเบราว์เซอร์มีกลไกความปลอดภัยในตัวที่ป้องกันโค้ดที่เรียกใช้งานไม่ให้เป็นอันตรายต่อระบบของคุณ นอกจากนี้ การแชร์เว็บแอปพลิเคชันก็ทำได้ง่าย โดยสามารถวางลิงก์ไว้ที่ใดก็ได้ในรูปแบบสตริงที่คลิกได้
เว็บได้พัฒนาจากแพลตฟอร์มสำหรับเนื้อหาแบบคงที่และภาษาสคริปต์ขนาดเล็ก มาเป็นแพลตฟอร์มที่ทรงพลังและเป็นที่นิยมซึ่งเต็มไปด้วยแอปพลิเคชันและคุณสมบัติที่น่าทึ่ง ต้องขอบคุณฟังก์ชันการทำงานในตัวของเบราว์เซอร์และการโต้ตอบที่จัดทำโดยเว็บ อย่างไรก็ตาม เว็บแอปพลิเคชันยังคงขับเคลื่อนโดยภาษาสคริปต์เดียวกัน (จาวาสคริปต์) ซึ่งไม่ได้ออกแบบมาเพื่อทำงานเหล่านี้ตั้งแต่แรก
ในตอนแรก JavaScript เป็นภาษาสคริปต์ง่ายๆ ที่มุ่งนำการโต้ตอบมาสู่เอกสารไฮเปอร์เท็กซ์แบบน้ำหนักเบาในแอปพลิเคชันเว็บ การออกแบบให้เรียนรู้และเขียนได้ง่าย และไม่ได้ให้ความสำคัญกับความเร็วรันไทม์ ในช่วงหลายปีที่ผ่านมา การปรับปรุงประสิทธิภาพที่สำคัญในการแยกวิเคราะห์ JavaScript โดยเบราว์เซอร์ได้นำไปสู่การเพิ่มประสิทธิภาพที่โดดเด่น
ด้วยความเร็วที่เพิ่มขึ้นของการดำเนินการ JavaScript ทำให้ขอบเขตของสิ่งที่สามารถทำได้ภายในเบราว์เซอร์ได้ขยายออกไปอย่างมาก API ใหม่ได้นำเสนอคุณสมบัติต่างๆ เช่น กราฟิกเชิงโต้ตอบ การสตรีมวิดีโอ การเรียกดูแบบออฟไลน์ และอื่นๆ อีกมากมาย นอกจากนี้ จำนวนแอปพลิเคชันที่เพิ่มขึ้นซึ่งก่อนหน้านี้จำกัดเฉพาะสภาพแวดล้อมเดสก์ท็อปได้เข้าสู่เว็บแล้ว ตอนนี้คุณสามารถแก้ไขเอกสารและส่งอีเมลในเบราว์เซอร์ของคุณได้อย่างง่ายดาย อย่างไรก็ตาม ในบางโดเมน ประสิทธิภาพของ JavaScript ยังคงเป็นความท้าทาย ลองนึกถึงแอปพลิเคชันซอฟต์แวร์ที่คุณใช้นอกเหนือจากเบราว์เซอร์ เช่น เกม การตัดต่อวิดีโอ การเรนเดอร์ 3 มิติ หรือการผลิตเพลง แอปพลิเคชันเหล่านี้ต้องการการคำนวณที่กว้างขวางและประสิทธิภาพสูง JavaScript พยายามดิ้นรนเพื่อให้เป็นไปตามข้อกำหนดประสิทธิภาพสูงเหล่านี้
อย่างไรก็ตาม การแทนที่ JavaScript นั้นเป็นไปไม่ได้ในทางปฏิบัติ และอาจต้องใช้เวลาหลายทศวรรษกว่าจะบรรลุเป้าหมายนั้น เนื่องจากอินเทอร์เน็ตทั้งหมดต้องอาศัยสิ่งนี้ นอกจากนี้ยังมีชุมชนขนาดใหญ่ที่ปรับปรุง JavaScript อย่างต่อเนื่อง อันที่จริงเมื่อเปรียบเทียบกับภาษาอื่น JavaScript มีข้อบกพร่องบางประการเช่น null และ == อย่างไรก็ตาม ปัญหาเหล่านี้ไม่รุนแรงพอที่จะรับประกันการเปลี่ยนเทคโนโลยีทั้งหมด
ดังนั้น WebAssembly จะไม่แทนที่ JavaScript แต่นั่นไม่ได้หมายความว่า WASM จะไม่ถูกนำมาใช้ในอนาคต ในความเป็นจริง การใช้ WASM จะแพร่หลายมากขึ้นเรื่อยๆ เนื่องจาก WASM สามารถนำความสามารถในการคำนวณอันทรงพลังมาสู่เว็บ เช่น การประมวลผลภาพหรือเกม ด้วย WASM คุณสามารถสร้าง Photoshop เวอร์ชันบนเว็บที่ทำงานได้ดี หรือเกม 3 มิติที่ทำงานที่ 60 เฟรมต่อวินาทีหรืออัตราเฟรมที่สูงกว่าในเบราว์เซอร์ โดยเฉพาะอย่างยิ่งเกมที่นำเสนอความท้าทายเนื่องจากต้องใช้การประมวลผลเสียงและวิดีโอไปพร้อมๆ กัน รวมถึงการประสานเอฟเฟกต์ทางฟิสิกส์และ AI WASM มีความสามารถในการรันเกมในเบราว์เซอร์ได้อย่างมีประสิทธิภาพ โดยเปิดประตูสู่การนำแอปพลิเคชันอื่นๆ อีกมากมายมาสู่เบราว์เซอร์
รูปด้านบนแสดงการเปรียบเทียบเวิร์กโฟลว์ระหว่าง JavaScript และ WebAssembly (wasm) สังเกตได้ว่า wasm มีความกระชับมากกว่ามากเมื่อเทียบกับ JavaScript
WASM VM
ในปี 2018 ระบบนิเวศ Ethereum เริ่มหารือเกี่ยวกับการใช้ WASM VM เป็นเครื่องเสมือนสัญญาอัจฉริยะ เนื่องจากถือว่ามีประสิทธิภาพที่ดีกว่า EVM Gavin Wood ผู้ประดิษฐ์ EVM ได้แสดงความเป็นไปได้ในการแทนที่ด้วย WASM และ Vitalik ยังระบุด้วยว่า Ethereum 2.0 จะได้รับการอัปเกรดเพื่อรองรับสัญญา WASM (eWASM) เพื่อตอบสนองความต้องการการพัฒนาที่มากขึ้น ปัจจุบัน การพัฒนาสัญญา WASM ได้เป็นรูปเป็นร่างแล้ว
ปัญหาขนาดสถาปัตยกรรม
คอมพิวเตอร์ทั่วไปมีชุดคำสั่งที่รับอินพุตขนาด 32 หรือ 64 บิต อย่างไรก็ตาม EVM นั้นแตกต่างและมีเอกลักษณ์เฉพาะตัวเนื่องจากเป็นคอมพิวเตอร์ 256 บิตที่ออกแบบมาเพื่อจัดการอัลกอริธึมแฮชของ Ethereum ได้ง่ายขึ้น ซึ่งสร้างเอาต์พุต 256 บิตที่ชัดเจน
อย่างไรก็ตาม คอมพิวเตอร์จริงที่ใช้งานโปรแกรม EVM จำเป็นต้องแยกคำ 256 บิตออกเป็นสถาปัตยกรรมดั้งเดิมเพื่อดำเนินการสัญญาอัจฉริยะ ส่งผลให้ระบบทั้งหมดไม่มีประสิทธิภาพและไม่สามารถใช้งานได้
นอกจากนี้ หากคุณต้องการใช้อัลกอริธึมที่ซับซ้อน เช่น SHA256 โดยใช้ OPCODES พื้นฐานของ EVM บน Ethereum คุณจะเจอกับช่วงเวลาที่ยากลำบาก! เพื่อแก้ไขปัญหาค่าใช้จ่ายสูงของการรันโปรแกรมที่ซับซ้อนผ่านชุดคำสั่ง Ethereum ได้แนะนำแนวคิดของการคอมไพล์ล่วงหน้า ซึ่งคอมไพล์โปรแกรมเป็น EVM และใช้ปริมาณก๊าซคงที่ พรีคอมไพล์ที่โดดเด่นคืออัลกอริธึมแฮชของ Ethereum เนื่องจากการใช้งานภายในเครื่องเสมือนจะส่งผลให้เกิดค่าธรรมเนียมที่แพงมากเมื่อมีการเรียกสัญญา
การรวบรวมล่วงหน้าป่อง
ปัญหาของการคอมไพล์ล่วงหน้าคือมันจะเพิ่มความบวมและความซับซ้อนของเครื่องเสมือนอย่างต่อเนื่อง โดยไม่ต้องแก้ไขปัญหาหลัก นั่นคือ การออกแบบชุดคำสั่งและข้อกำหนดปัจจุบันที่ไม่มีประสิทธิภาพและไม่ดี
จะเป็นอย่างไรหากเราสามารถกำหนดข้อกำหนดและชุดคำสั่งใหม่ที่ไม่จำเป็นต้องมีการคอมไพล์ล่วงหน้าของโปรแกรมที่ซับซ้อนเหล่านี้ แต่กลับให้ผลลัพธ์ที่ต้องการอย่างมีประสิทธิภาพผ่านคำสั่งพื้นฐานแทน นี่คือจุดที่ WASM เข้ามามีบทบาท
ขณะนี้ทีมงาน EWASM กำลังรวม WebAssembly บน Ethereum เพื่อให้มั่นใจว่าเลเยอร์การดำเนินการมีประสิทธิภาพและง่ายขึ้น ทำให้ Ethereum เหมาะสมเป็นแพลตฟอร์มการประมวลผลแบบกระจายอำนาจเต็มรูปแบบ WASM ถูกนำมาใช้เป็นมาตรฐานสำหรับโครงการอื่นๆ มากมาย รวมถึง Dfinity และ EOS ซึ่งทั้งสองโครงการใช้ WASM เพื่อปรับปรุงเลเยอร์การดำเนินการ
โครงการ Stylus เป็นความคิดริเริ่มบนเครือข่าย Arbitrum Ethereum Layer 2 ที่มีจุดมุ่งหมายเพื่อปรับปรุงประสิทธิภาพของการดำเนินการตามสัญญาอัจฉริยะโดยการแนะนำเครื่องเสมือน WebAssembly (WASM) สามารถดำเนินการตามสัญญาได้เร็วกว่าด้วย Solidity ในขณะที่ลดต้นทุนค่าน้ำมัน ทำให้ง่ายต่อการสร้างสัญญาอัจฉริยะประสิทธิภาพสูงบนเครือข่าย Arbitrum และปัจจุบันรองรับการคอมไพล์ใน C, C++ และ Rust
การสนับสนุนพรีคอมไพล์แบบกำหนดเอง: Stylus ยังรองรับพรีคอมไพล์แบบกำหนดเอง ซึ่งช่วยให้นักพัฒนาสามารถปรับใช้พรีคอมไพล์ Rust หรือ C++ ของตนเองกับเครือข่าย Arbitrum สิ่งนี้สามารถช่วยแนะนำอัลกอริธึมการเข้ารหัสใหม่หรือฟังก์ชันเฉพาะอื่นๆ บนเชนโดยไม่ต้องรอการอัพเกรดบนเชน ตัวอย่างเช่น การคำนวณเทนเซอร์สามารถคอมไพล์ล่วงหน้าเพื่อลดต้นทุนการอนุมาน ซึ่งอาจเป็นประโยชน์สำหรับการเรียนรู้ของเครื่องแบบออนไลน์
การทำงานร่วมกันกับ EVM: Stylus บรรลุการบูรณาการกับระบบนิเวศ Ethereum ที่มีอยู่ผ่านการทำงานร่วมกันกับ Ethereum Virtual Machine (EVM) ซึ่งหมายความว่าสัญญาของสไตลัสสามารถโต้ตอบกับสัญญา EVM ที่มีอยู่และแบ่งปันสถานะสากลเดียวกันกับ EVM
การกลับเข้าใหม่: แตกต่างจาก Cosmos Wasm ตรงที่ Stylus Rust SDK แนะนำคุณสมบัติการกลับเข้าใหม่ และอนุญาตให้นักพัฒนาเปิดใช้งานได้ด้วยตนเอง สิ่งนี้ทำให้สัญญามีความยืดหยุ่นมากขึ้นในการทำงานร่วมกัน แต่นักพัฒนาจำเป็นต้องจัดการรัฐอย่างระมัดระวังเพื่อความปลอดภัย
จากระบบนิเวศที่เจริญรุ่งเรืองของ Arbitrum การบูรณาการของ Stylus อาจเป็นการรวม WASM ที่มีความหมายมากที่สุด นอกจากนี้ยังช่วยเพิ่มขีดความสามารถในการแข่งขันของ Arbitrum ในสาขา zkRollup
โปรโตคอล Gear กำลังสร้างเทคโนโลยีที่สามารถใช้เป็น Parachain ของ Polkadot ซึ่งทำหน้าที่เป็นเครื่องมือในการโฮสต์สัญญาอัจฉริยะ เช่นเดียวกับ Polkadot Gear ยังใช้เฟรมเวิร์ก Substrate ซึ่งทำให้กระบวนการสร้างบล็อกเชนที่แตกต่างกันสำหรับแอปพลิเคชันเฉพาะง่ายขึ้น Substrate มีฟังก์ชันการทำงานที่พร้อมใช้งานทันที ช่วยให้ผู้คนมุ่งเน้นไปที่การสร้างกลไกแบบกำหนดเองนอกเหนือจากโปรโตคอลได้
ก่อนหน้านี้ ค่าใช้จ่ายในการเปิดตัวบล็อกเชนนั้นสูง แต่ Gear ช่วยให้นักพัฒนา dApp มุ่งเน้นไปที่โปรเจ็กต์ของตนได้ แทนที่จะสร้างและดำเนินการบล็อกเชนทั้งหมดตั้งแต่เริ่มต้น
กลไกหลักของโปรโตคอล Gear คือโมดูลสัญญาอัจฉริยะ ในกรณีของ Gear สัญญาอัจฉริยะใดๆ ก็ตามคือโปรแกรม WebAssembly ที่คอมไพล์ในภาษาต่างๆ เช่น Rust, C และ C++ สำหรับนักพัฒนาจากนอกโลก crypto อุปสรรคในการเข้าสู่ตลาดมีน้อยเพราะพวกเขาสามารถสร้างสัญญาอัจฉริยะในสภาพแวดล้อมที่คุ้นเคยได้ นักพัฒนาพบว่าการทดลองกับภาษาการเขียนโปรแกรมสัญญาอัจฉริยะนั้นง่ายกว่า
สถาปัตยกรรมสัญญาอัจฉริยะของ Gear ใช้ Actor Model ภายใต้ประทุนและมีฟังก์ชันการทำงานดังต่อไปนี้:
แต่ละโปรแกรมมีจำนวนหน่วยความจำคงที่ ซึ่ง Gear อนุญาตให้ควบคุมได้ โปรแกรมสามารถอ่านและเขียนได้เฉพาะในหน่วยความจำของตัวเองเท่านั้น และไม่สามารถเข้าถึงพื้นที่หน่วยความจำของโปรแกรมอื่นได้ แต่ละโปรแกรมมีพื้นที่หน่วยความจำอิสระของตัวเอง และข้อมูลเกี่ยวกับโหนด Gear สามารถประมวลผลแบบขนานได้
CosmWasm เป็นแพลตฟอร์มสัญญาอัจฉริยะที่ใช้ Wasm ที่ทันสมัยและทรงพลัง ซึ่งสามารถผสานรวมกับ Cosmos-SDK ได้อย่างง่ายดาย สิ่งนี้แสดงให้เห็นถึงข้อดีหลักประการหนึ่งของ CosmWasm: สัญญาที่เขียนด้วย CosmWasm ได้รับการบูรณาการอย่างแน่นหนากับ IBC (Inter-Blockchain Communication) โดยกำเนิด ช่วยให้นักพัฒนาและผู้ใช้สามารถเข้าสู่อนาคตของ multi-chain ปัจจุบันรองรับเฉพาะ Rust เท่านั้น
ข้อดีของ CosmWasm
ความท้าทายและข้อจำกัด
นอกจากเครื่องเสมือน wasm แล้ว ยังมีเทคโนโลยีเกิดใหม่ล่าสุดที่เรียกว่า ZKWASM Delphinus Labs นักประดิษฐ์ได้เปิดซอร์สโค้ดสำหรับ ZK-WASM บน GitHub ZKWASM ช่วยให้นักพัฒนาตรวจสอบความถูกต้องของการคำนวณที่ดำเนินการโดยไม่ต้องดำเนินการซ้ำ ด้วยการใช้ประโยชน์จาก ZKWASM นักพัฒนาสามารถสร้างแอปพลิเคชัน Zero-Knowledge Proof (ZKP) ได้อย่างยืดหยุ่นโดยใช้ภาษาการเขียนโปรแกรมต่างๆ แอปพลิเคชันเหล่านี้สามารถดำเนินการได้อย่างราบรื่นบนเว็บเบราว์เซอร์
ZKWASM มาจาก ZKSNARK ซึ่งเป็นการผสมผสานระหว่าง SNARG และการพิสูจน์ความรู้แบบศูนย์ เรามาอธิบายเพิ่มเติมกันดีกว่า โดยทั่วไป หากต้องการใช้ ZKSNARK คุณจะต้องเขียนโปรแกรมในภาษาวงจรเลขคณิตหรือภาษาที่เหมาะกับวงจร เช่น Pinocchio, TinyRAM, Buffet/Pequin, Geppetto, xJsnark framework, ZoKrates เป็นต้น สิ่งนี้ทำให้เกิดอุปสรรคต่อโปรแกรมที่มีอยู่ ทำให้เป็นการยากสำหรับพวกเขาที่จะใช้ประโยชน์จากพลังของ ZKSNARK อย่างไรก็ตาม มีอีกวิธีหนึ่ง ซึ่งไม่ใช่การใช้ ZKSNARK ในระดับซอร์สโค้ด แต่ใช้ในระดับไบต์โค้ดของเครื่องเสมือน จากนั้นจึงนำเครื่องเสมือนที่รองรับ ZKSNARK ไปใช้ Delphinus Labs ได้นำแนวทางหลังมาใช้โดยผสมผสานเครื่องเสมือน WASM ทั้งหมดเข้ากับวงจร ZKSNARK ด้วยเหตุนี้ แอปพลิเคชัน WASM ที่มีอยู่จึงสามารถทำงานบน ZKWASM ได้โดยตรงโดยไม่ต้องแก้ไขใดๆ ดังนั้นผู้ให้บริการคลาวด์จึงสามารถพิสูจน์ให้ผู้ใช้เห็นว่าผลการคำนวณได้รับการคำนวณอย่างตรงไปตรงมาและจะไม่เปิดเผยข้อมูลส่วนตัวใดๆ
ZKWASM มีกรณีการใช้งานที่หลากหลาย เช่น การเปิดใช้งานการตรวจสอบ on-chain ของการดำเนินการในเบราว์เซอร์ ช่วยให้สามารถโต้ตอบบนเว็บที่สามารถตรวจสอบได้บนบล็อคเชน กรณีการใช้งานอื่นๆ ได้แก่ บริการของ Oracle การคำนวณนอกเครือข่าย ระบบอัตโนมัติ การเชื่อมช่องว่างระหว่าง Web2 และ Web3 การสร้างข้อพิสูจน์สำหรับการเรียนรู้ของเครื่องและการประมวลผลข้อมูล และแม้แต่แอปพลิเคชันเกมและโซเชียล ด้วยการนำไปใช้ที่เพิ่มขึ้น zkWASM ได้ขยายความเป็นไปได้ของ Web3 และรวมนักพัฒนา Web2 เข้ากับภูมิทัศน์ที่เปลี่ยนแปลงนี้
ด้วยการใช้ ZKWASM ของ Delphinus Lab นักพัฒนาสามารถควบคุมพลังของการพิสูจน์ความรู้แบบศูนย์ เพื่อเพิ่มความปลอดภัยและความเป็นส่วนตัวของแอปพลิเคชันของตน ซึ่งปูทางไปสู่ระบบนิเวศดิจิทัลที่มีความน่าเชื่อถือและกระจายอำนาจมากขึ้น
ประสิทธิภาพของเว็บและอนาคตของเลเยอร์การดำเนินการแพลตฟอร์มสัญญาอัจฉริยะมีแนวโน้มที่ดี dApps ไม่เพียงแต่จะมีประสิทธิภาพที่สูงขึ้นเท่านั้น แต่การบูรณาการ WASM ยังช่วยให้ผู้ที่คุ้นเคยกับภาษากระแสหลัก เช่น Rust และ Go พัฒนาสัญญาอัจฉริยะได้ง่ายขึ้น โดยไม่ต้องเรียนรู้ความซับซ้อนของความแข็งแกร่งหรือภาษาการพัฒนาบล็อกเชนอื่นๆ จากข้อมูลของ Evans Data Corporation มีนักพัฒนาเกือบ 27 ล้านคนทั่วโลก และจำนวนนี้เพิ่มขึ้นอย่างต่อเนื่อง โดยคาดว่าจะเพิ่มขึ้นเป็นมากกว่า 28.7 ล้านคนภายในปี 2567 อย่างไรก็ตาม จำนวนนักพัฒนาในด้านบล็อกเชนยังคงน้อยกว่า 30,000 คน ซึ่งคิดเป็นเพียงหนึ่งในพันของจำนวนนักพัฒนาทั้งหมด แม้ว่าจำนวนนี้จะเพิ่มขึ้นอย่างต่อเนื่อง แต่การเรียนรู้ภาษาสัญญาอัจฉริยะใหม่ๆ อาจยังคงเป็นอุปสรรคสำหรับนักพัฒนาในการเข้าสู่อุตสาหกรรมบล็อกเชน
แต่บล็อกเชนเริ่มรองรับ Web Assembly มากขึ้นเรื่อยๆ ในฐานะรหัสไบต์สำหรับสัญญาอัจฉริยะที่คอมไพล์แล้ว WASM นำประสิทธิภาพ การทำงานร่วมกัน และกรณีการใช้งานที่หลากหลายมาสู่บล็อกเชน นอกจากนี้ยังทำหน้าที่เป็นกุญแจสำคัญในการปลดล็อกประตูสำหรับนักพัฒนา ช่วยลดอุปสรรคในการเข้าสู่การพัฒนาบล็อกเชน ลองนึกภาพว่าในอนาคตอันใกล้นี้ เมื่อนักพัฒนา Web 2.0 ต้องการลองใช้การพัฒนาบล็อกเชน พวกเขาสามารถใช้ภาษาที่คุ้นเคย เช่น Python, C++ และ JavaScript เพื่อสร้างแอปพลิเคชันขนาดใหญ่บนบล็อกเชน เพื่อเพิ่มมูลค่าสูงสุดของเครือข่ายกระจายอำนาจ ขั้นแรก ลดอุปสรรคสำหรับผู้สร้าง (นักพัฒนา) จากนั้นลดอุปสรรคสำหรับผู้ใช้ และก้าวไปสู่การนำไปใช้ในวงกว้าง
https://blog.scottlogic.com/2022/06/20/state-of-wasm-2022.html
https://www.notion.so/18f67cee15c147dfae68b06269a455c0?pvs=21
https://wiki.polkadot.network/docs/learn-wasm
https://docs.arbitrum.io/stylus/stylus-gentle-introduction
https://medium.com/@gear_techs/introcing-gear-easy-to-use-polkadot-parachain-9ccd05437a9c
https://medium.com/cosmwasm/cosmwasm-for-ctos-f1ffa19cccb8
https://www.cncf.io/wp-content/uploads/2023/09/The-State-of-WebAssembly-2023.pdf
https://github.com/DelphinusLab/zkWasm
ขอขอบคุณ Maggie และ Xinyou Ji (CMU) สำหรับคำแนะนำและคำแนะนำในบทความนี้
ข้อจำกัดความรับผิดชอบ: บทความทั้งหมดจาก Foresight Ventures ไม่ได้มีจุดมุ่งหมายเพื่อเป็นคำแนะนำในการลงทุน การลงทุนมีความเสี่ยง ดังนั้นโปรดประเมินการยอมรับความเสี่ยงของคุณเองและตัดสินใจลงทุนอย่างรอบคอบ