Plasma Cash เปิดตัวเป็นครั้งแรก-พร้อมใช้งานบน Loom Network Sidechains

บทความนี้แปลมาจาก “Plasma Cash Initial Release — Plasma-Backed NFTs Now Available on Loom Network Sidechains” เขียน Matthew Campbell และ Georgios Konstantopoulos ถ้ามีส่วนไหนในบทความที่แปลผิด ขอความกรุณาแจ้งให้เราทราบได้ตลอด ผ่านทาง Private Note ขอบคุณค่ะ

เมื่อสองเดือนก่อน Loom Network ได้ประกาศการเพิ่ม Plasma Cash เข้าสู่เครือข่าย Loom Network

และมาในวันนี้ เราภูมิใจที่จะเปิดตัว Plasma Cash ของเราเป็นครั้งแรก ที่อนุญาตให้ ERC721 non-fungible tokens สามารถใช้งานได้บน Loom sidechains

นั่นหมายความว่า users สามารถที่จะทำ transactions ที่ ใช้ gas น้อยลง และ ใช้เวลาในการคอนเฟิร์มเพียงเสี้ยววินาที บน sidechains ในขณะเดียวกัน Token ของพวกเขายังได้รับการยืนยันความปลอดภัยจาก Ethereum mainnet อีกด้วย

Plasma Cash Smart Contracts เปิดให้ใช้งานแล้ววันนี้

เหล่านักพัฒนาสามารถหา source code สำหรับ implementation ของเราบน github :

https://github.com/loomnetwork/plasma-erc721

อีกอย่างเราได้ทำการ ประกาศเกี่ยวกับการเปิดตัวของเราบน ethresear.ch เพื่อให้ชุมชน Plasma community ทำการตรวจสอบได้อย่างเปิดเผย

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

การดำเนินงานในปัจจุบันและในอนาคต

นับตั้งแต่ที่เราเริ่มโฟกัสในการสร้างเกมส์ blockchain อย่าง Zombie Battleground บน Loom Network การริ่เริ่มใช้ Plasma Cash ของเราจึงเน้นพิเศษไปที่ ERC721 non-fungible tokens

มีการส่งโค้ดที่เข้ามาดูแลเกี่ยวกับ ETH, ERC20s และ tokens ชนิดอื่นๆ ที่ถือว่าเป็นเรื่องเล็กๆ น้อยๆ แต่ว่ามันกลับต้องการให้มี comprehensive tests ที่ เยอะกว่า

โดยจุดประสงค์ของเรา คือการใช้ประโยชน์ Plasma Cash สำหรับ non-fungible tokens อย่างเช่น ERC721s เพื่อ เรื่องสำคัญๆ ในการใช้ในหลายเรื่องในการ เล่นเกมส์ ดังนั้น นี่คือเรื่องแรกที่เราเลือกที่จะนำมาใช้

สเต็ปต่อไป — การแบ่งและรวม Token

สเต็ปต่อไป คือ การเพิ่มตัวซัพพอร์ตสำหรับ ERC20 tokens และ ETH

งานวิจัยเกี่ยวกับโครงสร้างที่มีประสิทธิภาพในการแตกออกและรวมตัวของ token บน Plasma chain ยังคงดำเนินต่อไป และในปัจจุบันก็ยังไม่มีข้อสรุปของ consensus ออกมา และวิธีที่ดีทีสุดในการศึกษาเรื่องนี้ต่อไป คือ การศึกษาโครงสร้างที่มีชื่อว่า Plasma Debit ที่มีเป้าหมายในการแก้ปัญหาเรื่องที่กล่าวมา

ทางบริษัทเราจะร่วมมือกับทางทีมวิจัย Plasma อย่างเต็มที่ในช่วงเดือนที่กำลังจะมาถึงนี้ เพื่อที่จะหาวิธีที่ดีที่สุดในการแตก token ออกมา บน Plasma chains
โดยเมื่อช่วงสัปดาห์ที่ผ่านมา หัวหน้าทีมวิจัยด้าน Plasma ของทางบริษัทเรา คุณ Georgios Konstantopoulos ได้เข้าร่วมกับ Joseph Poon, Karl Floresch และคนอื่นๆ อีกมากมาย บน Plasma Implementer’s Call อย่างเป็นทางการ:

Georgios Konstantopoulos (อยู่ตรงขอบบนเล็กๆ ด้านซ้าย) หัวหน้าทีมวิจัยด้าน Plasma ของทางบริษัทเรา ที่อยู่ในสายสนทนา Plasma Implementers เมื่อช่วงสัปดาห์ที่ผ่านมา

เหล่านักพัฒนาใน Loom SDK ยังสามารถที่จะใช้ Loom Transfer Gateway ในการเข้าใช้ fungible assets บน sidechain ได้ จนกว่าจะค้นพบ consensus ที่สามารถรับมือกับการแตกตัว และ การรวมเข้ากันของ token บน Plasma chain ได้

ภาพรวมทางเทคนิค: การเคลื่อนย้าย Token ระหว่าง Mainnet และ Plasma Chain

The Plasma Cash implementation สร้างขึ้นมาสำหรับ Plasma smart contract ที่ lives บน Ethereum mainnet และ Loom sidechain smart contract ที่ทำการสื่อสารกับ Plasma contract

ในกรณีที่จะใช้ ERC721 token บน sidechain นั้น user จะต้องส่ง token ของพวกเขาเข้าสู่ Plasma contract ก่อน

และเมื่อ Plasma contract ได้รับ token แล้ว มันจะทำการปล่อย Deposit event ซึ่งจะได้รับเลือกจาก listening sidechain ซึ่ง sidechain ก็จะดำเนินการต่อไปในการสร้าง block ที่เป็น single transaction (ซึ่งเรื่องนี้ทำให้ขั้นตอน exit ทำได้ง่ายมากขึ้น) ซึ่งรวมไปถึงทรัพย์สินที่มีการฝากไว้

จากนั้น user ก็จะได้รับ Plasma Cash token แบบพิเศษบน sidechain ที่แสดงการถือครอง token บน Mainnet รวมไปถึงพวกเขานั้นสามารถทำรายการธุรกรรม หรือใช้งาน Token ได้อย่างอิสระบน sidechain และการถ่ายโอนมันกับ user คนอื่นๆ บนsidechain (โดยต้องมีการทำ signed transaction เพื่อพิสูจน์ว่า user ที่มารับช่วงต่อ เป็นผู้ถือครอง token คนใหม่)

The sidechain เป็นจุด “checkpoints” ที่เป็นระยะๆ สำหรับ Mainnet ด้วยการผูก Merkle root of its blocks เข้าสู่ Plasma contract เพื่อเป็นการแสดงให้เห็นความเปลี่ยนแปลงเจ้าของ token ในการถือครอง

Plasma Exits

เมื่อ user ต้องการที่จะนำ token ของเขาออกจาก sidechain เขาจะต้องส่งคำขอเพื่อที่จะนำมันออกโดยตรงกับ Plasma contract บน Mainnet (ร่วมไปกับ signed transaction จากเจ้าของคนก่อน ในกรณีที่ token นั้นถูกถ่ายโอนมาจากเจ้าของก่อนหน้านี้)

จากนั้น token จะเข้าสู่ช่วง “challenge period” ที่ challenger สามารถยื่นหลักฐาน signed transactions ที่พิสูจน์ว่า user ที่พยายามเอา token ออกนั้นเป็นเจ้าของที่ถูกต้อง

แต่ถ้า challenge period ไม่ผ่านไปด้วยดี user ก็สามารถที่จะถอน token ของพวกเขาออกจาก Plasma Contract ได้

ดังนั้น users สามารถที่จะฝากและถอน tokens ของพวกเขาโดยตรงจาก Mainnet Plasma contract เพื่อเป็นการตัดความเสี่ยงที่จะถูกขโมย ผ่านทาง sidechain

Loom–Plasma Flow Diagram:

The basic flow มีระหว่าง user กับ Plasma Cash smart contract บน Ethereum mainnet และ Loom sidechain สามารถเห็นได้จาก ไดอะแกรมข้างล่างนี้:

Loom–Plasma flow แสดงให้เห็นการโยกย้าย token ระหว่าง mainnet และ the Loom sidechain

ในอนาคตพวกเราจะตีพิมพ์เอกสารทางเทคนิคให้มากกว่านี้ สำหรับเหล่านักพัฒนา แต่ในระหว่างนี้เหล่านักพัฒนาสามารถ อ่าน source codeได้บนgithub

George เพิ่งมีการนำเสนอเกี่ยวกับเรื่องที่เราค้นคว้าเกี่ยวกับ Plasma ที่งานประชุมที่เมืองโตเกียว ร่วมด้วยกับ OmiseGo ซึ่งเราจะเขียนบทความออกมาในช่วงสัปดาห์หน้าหรือสองสัปดาห์หน้าที่กำลังจะถึงนี้ :

ทางเราได้รับเชิญจาก คุณ Masaharu Uno-san จากทาง OmiseGo ให้พูดในงาน Plasma Research Meetup ที่จัดขึ้นที่ชิบูย่า

ประสบการณ์ของผู้ใช้งาน และ การปรับปรุงในอนาคต

ประสบการณ์ของผู้ใช้งานสำหรับ Plasma Exit จะค่อนข้างคล้ายกับประสบการณ์ของผู้ใช้งานของ MetaMask หรือ mobile wallets อันอื่นๆ — user เพียงแค่ต้อง sign a transaction เพื่อเริ่มต้นการทำ exit:

นี่คือตัวอย่างในการที่ user-signed transfer โดยใช้ Loom SDK และ deep linking with Trust Wallet.

ข้อแตกต่างหลักระหว่าง Plasma กับอย่างอื่น คือ แทนที่จะมี transaction ที่ near-instant ทันที แต่ทว่า user จำเป็นจะต้องรอจนกระทั่ง exit ของพวกเขาผ่านพ้นช่วง challenge period ไปก่อนแล้วถึงจะทำกระบวนการสุดท้ายได้

ถึงแม้ว่าประสบการณ์ผู้ใช้งานในการใช้ Plasma Cash นั้นยังไม่ค่อยดีเท่าไร แต่ถึงอย่างไรก็ตาม ในอนาคตขีดความสามารถมันอาจจะถูกพัฒนาเพื่อช่วยในการลดขั้นตอนหลายๆ อย่าง

Liquidity Providers

หลังจากที่ user ส่งคำร้องขอให้ token ของพวกเขาออกจากระบบ พวกเขาสามารถที่จะ “เทรด” token ของพวกเขากับ token อันอื่นที่มีค่าเท่ากันกับคนอื่นๆ ในระบบที่ไม่ได้มีปัญหากับการรอให้ครบกระบวนการของ challenge period

The Liquidity Provider จะชาร์จค่าบริการในการเทรด ด้วยวิธีการนี้ user สามารถจ่ายค่า fee ในการนำ token ของพวกเขากลับมาโดยทันที และไม่ต้องรอช่วง challenge period

ซึ่งเรื่องนี้ได้ถูกถกเถียงใน กระทู้ล่าสุดใน ethresear.ch.

Delegated Exits และ Watchtowers

เซอร์วิสอื่นๆ ที่มาช่วยพัฒนาประสบการณ์ให้กับ user บน Plasma Cash คือ Delegated Exits และ Watchtowers

ถึงแม้ว่า Plasma technique ได้ออกมายืนยันว่า user จะไม่ถูกขโมย coin ของพวกเขาอย่างเด็ดขาด แต่ทว่าเราก็ยังต้องการให้ user สามารถ เรียกใช้ function บน smart contract ได้แบบ manually ในการนำ token ของพวกเขาออกมาได้อีกด้วยรวมไปถึงการมอนิเตอร์ contract ในกรณีที่มีคนพยายามขโมย token ของพวกเขา ซึ่งเจ้าของมีสิทธิ์ challenge ขึ้นมา

ความไม่สะดวกของ UX นี้ สามารถลดลงด้วย semi-trusted services ทีทำหน้าที่เป็นตัวแทนของ user

ตัวอย่าง เซอร์วิสอย่าง “Delegated Exit” ก็คือ การอนุญาตให้ user ได้ทำการถอน token ของพวกเขาออกอย่างอัตโนมัติ ถ้าไม่ได้ใช้งานบน sidechain เกินกว่า 1 ชั่วโมง

เช่นเดียวกัน เซอร์วิส “Watchtower” ที่มีความสามารถในการมอนิเตอร์ Plasma contract และ challenge invalid exits ในฐานะตัวแทนของ users

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


อย่างที่คุณได้เห็น มันยังคงมีความยุ่งยากที่เกี่ยวข้องกับ Plasma Cash UX ซึ่งเรื่องเหล่านี้ต้องการที่จะทำการศึกษาเพิ่มเติม

สิ่งที่กำลังจะมาใน ZombieChain

ในช่วงสัปดาห์ที่กำลังจะมาถึง เราจะปล่อยตัว testnet ของ ZombieChain และตัว mainnet จะตามออกมาภายหลัง

ถ้าคุณพลาดประกาศก่อนหน้านี้ ที่เกี่ยวกับ ZombieChain เป็น shared DPoS sidechain ของ Ethereum ที่มี sub-second block times
เหล่านักพัฒนาสามารถ deployตัว Solidity contracts ของพวกเขาเข้าสู่ ZombieChain และรันทั้งหมดโดยจ่ายค่าบริการโฮสติ้งรายเดือนแบบคงที่ และ users ของพวกเขาสามารถทำ transactionsที่ ไม่ต้องเสียค่า gas ทำให้เป็นเรื่อง เหมาะกับ user-facing ของ DApps และเกมส์
คุณสามารถเข้ามาอ่าน การประกาศอย่างเป็นทางการได้ที่นี่เลย

ในวันนี้เราได้ปล่อยตัวฟังก์ชั่นเสริม Plasma Cash เข้าสู่ Loom SDK ให้เหล่านักพัฒนาที่ต้องการนำไปใช้บน sidechains ของพวกเขาเอง

ทางเราก็เข้าใจนะครับ ว่าการ deploying และ running เรื่องเหล่านี้ นั้นค่อนข้างจะซับซ้อน และเหล่านักพัฒนา DApp ส่วนใหญ่ต้องการที่จะ โฟกัสเกี่ยวกับการสร้างแอพพลิเคชั่นเพียงอย่างเดียว — ไม่ได้สนใจที่จะ not running their own blockchain infrastructure.

ด้วยเหตุผลนี้ เราจึงจะเสริมฟังก์ชั่น Plasma Cash เข้าสุ่ ZombieChain และทำให้มันเข้าถึงได้สำหรับนักพัฒนาทุกท่านบน platform ที่ใช้งาน

เรื่องนี้จะอนุญาตให้เหล่านักพัฒนาบน ZombieChain developers ได้มอบประโยชน์ด้าน Plasma Cash โดยไม่มี configuration ใดๆเพิ่มเติม ให้แก่ users ของพวกเขา รวมไปถึงเรื่องนี้จะช่วยให้เราได้ทดสอบเกี่ยวกับเซอร์วิสที่เรามอบให้กับทุก users ใน Network — อย่างเช่น Liquidity Providers ที่ได้พูดถึงไปก่อนข้างต้น

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

ในขณะนี้เรากำลังมองไปข้างหน้าสำหรับการร่วมมือ และพัฒนาประสบการณ์การใช้งาน Plasma ในอนาคต


Loom Network เป็นแพลตฟอร์มที่มีไว้สำหรับการสร้าง highly scalable DPoS sidechains เข้าสู่ Ethereum โดยที่มีจุดโฟกัสไปที่การเสกลเกมส์และโซเชียล แอพฯ ขนาดใหญ่

อยากรู้เรื่องราวไปมากกว่านี้? เริ่มอ่านจากที่นี่เลยครับ

คุณเป็นแฟนเกมส์ blockchainหรือเปล่าครับ ? ลองมาเช็ค Zombie Battlegroundเกมส์การ์ดแรกของโลกในระบบ PC & mobileที่รันระบบทั้งหมดบน blockchain

ถ้าคุณอ่านบทความนี้แล้วชื่นชอบ และอยากรู้ข่าวสารอัพเดทของเรา มาสมัครรับ private mailing list ของเราได้เลยครับ

https://loomx.io

ติดตามข่าวสารและพูดคุยกับทีมงาน Loom Network เป็นภาษาไทยได้ทางนี้ค่ะ!
ห้องแช็ท Telegram
แฟนเพจ Facebook