Smart Contract คืออะไร?

Chainlink Thailand
Chainlink Community
3 min readJul 21, 2021

ในบทความที่แล้วเกี่ยวกับ blockchain เราบอกว่า blockchain เป็นเครือข่ายที่มีความปลอดภัยสูงและเชื่อถือได้สำหรับการประมวลผลในการแลกเปลี่ยนมูลค่าและการจัดเก็บข้อมูลใน ledger ที่ไม่เปลี่ยนรูป นอกจาก blockchain จะทำให้เกิดเครื่องมือทางการเงินใหม่ ๆ อย่าง Bitcoin แล้วยังสามารถสร้างเงื่อนไขข้อตกลงดิจิตัลที่เรียกว่า Smart Contract ได้อีกด้วย ซึ่งในบทความนี้เราจะพูดถึง:

  • Smart Contract (สัญญาอัจฉริยะ) คืออะไร
  • ทำไมมันถึงสร้างมูลค่า
  • วิวัฒนาการของ Smart Contract
  • และการนำ Smart Contract ไปใช้ชีวิตปัจจุบัน

Smart Contract คืออะไร?

Digital agreement (ข้อตกลงดิจิตัล) คือสัญญาที่มีลายเซ็นอิเล็กทรอนิกส์และทำงานอยู่บนอินเทอร์เนต ตัวอย่างเช่นการคลิก “Accept” ตามข้อตกลงและเงื่อนไขของ Uber ที่ผู้โดยสารตกลงที่จะชำระเงินให้คนขับเมื่อส่งถึงจุดหมาย

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

ส่วน smart contract หรือสัญญาอัจฉริยะ เป็นซอฟท์แวร์โปรแกรมที่อยู่บน blockchain ซึ่งดำเนินการตามเงื่อนไขต่างๆ ที่ถูกบันทึกไว้ตามข้อกำหนดของสัญญาและไม่สามารถแก้ไขได้ ยกตัวอย่างการทำงานง่ายๆ ตามตรรกะที่ว่า “ถ้าเหตุการณ์ x เกิดขึ้น ให้ดำเนินการตามเงื่อนไข y” เช่น หากทีม A ชนะการแข่งขันกีฬาให้จ่ายเงินให้ Bob ถ้าทีม B ชนะก็จ่ายเงินให้ Steve แทนที่จะป้อนผลการแข่งขันกีฬาด้วยมือ Smart contract จะทำการเช็คผลการแข่งขันโดยอัตโนมัตและดำเนินการจ่ายเงินให้โดยอัตโนมัติเช่นกัน

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

คุณค่าของ Smart contract

Smart contract มีข้อได้เปรียบหลายด้านเมื่อเทียบกับข้อตกลงดิจิตัลในปัจจุบัน

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

ความเป็นมาของ Smart Contract

ประเภทของ Smart contract ที่พื้นฐานที่สุดคือ Smart contract แบบหลายลายเซ็น (multi-signature) ธุรกรรมแบบหลายลายเซ็นกำหนดจำนวนคน (public keys) ที่ต้องลงนามในธุรกรรมด้วย private keys ก่อน ถึงจะสามารถยืนยันว่าใช้ได้ และBitcoin เป็น blockchain แรกที่เริ่มใช้ธุรกรรมแบบหลายลายเซ็นได้ในปี 2012

ถัดมาเป็น protocal smart contract คือ blockchain ที่มีคำสั่งในโปรแกรมหลัก (เรียกว่า opcodes) ในตัว ทำงานแบบ application เดี่ยวซึ่งมีความสามารถในการรัน opcodes 2–3 ตัว อย่างไรก็ตาม protocal smart contracts นั้นปรับขนาดได้ยากเพราะการเปลี่ยนแปลงแต่ละครั้งต้องใช้วิธีการ hard fork ที่บังคับให้สร้าง blockchain ใหม่และแต่ละ nodes ต้องอัพเกรดซอฟท์แวร์

​​Ethereum ปฏิวัติ smart contract ในปี 2015 โดยเปิดตัว scriptable smart contracts คือ smart contract ที่เขียนสคริปต์ ได้ซึ่งได้เปลี่ยนบล็อกเชนให้เป็น “คอมพิวเตอร์โลก” สามารถเรียกใช้แอปพลิเคชันตหลายตัวได้ ในเวลาเดียวกัน นักพัฒนาบริหารจัดการชุด smart contract ของตนเองและสามารถเปลี่ยนแปลงได้ตลอดเวลาโดยไม่ต้อง hard fork ให้ยุ่งยาก ภาษาสคริปต์ได้กำจัดความยุ่งยากซับซ้อนของ low-level devolopment ซึ่งทำให้นักพัฒนาสามารถสร้าง smart contract ได้ในเวลาไม่กี่วันหรือสัปดาห์แทนที่จะเป็นเดือนหรือเป็นปี

Smart contract ในปัจจุบันคือ connected smart contract ที่สามารถเขียนสคริปต์เองได้ สามารถเชื่อมต่อกับข้อมูลในโลกจริงและเชื่อมต่อกับระบบที่อยู่นอก blockchain ได้ (off-chain) ผ่านการใช้ซอฟท์แวร์กลาง (middleware) ที่เรียกว่า Oracle เพื่อให้ smart contract เรียกใช้ข้อมูลที่อยู่ off-chain ได้ นอกจากนั้น Oracle ยังสามารถทำให้ smart contract ส่งข้อมูลไปยังระบบอื่นๆ ได้เช่น ใช้ smart contract เพื่อตั้งข้อตกลงในการจ่ายเงินไปยังระบบการชำระเงินแบบดั้งเดิม

Chainlink Oracles สามารถป้อนข้อมูล (ซ้าย) เป็นสัญญาสมาร์ทที่ใช้ Blockchain (กึ่งกลาง) รวมถึงส่งคำแนะนำการชำระเงินไปยังเครือข่ายการชำระเงินนอกโซ่ (ขวา)

การนำ Smart contract มาใช้ในทุกวันนี้

ถึงแม้เราจะยังอยู่ในขั้นเริ่มต้นของการพัฒนา smart contract แต่ด้วยเอกลักษณ์ในการรักษาความปลอดภัยและความน่าเชื่อถือ เราได้เริ่มใช้ smart contract ใน 4 หัวข้อใหญ่ที่สำคัญ ได้แก่

การจัดการสิทธิ์ (Tokens)

สัญญาโทเค็นใช้เพื่อสร้าง ติดตาม และกำหนดสิทธิ์ความเป็นเจ้าของให้กับโทเค็น สัญญาโทเค็นจะเป็นตัวกำหนดฟังก์ชั่นทำงานบางอย่างที่เฉพาะเจาะจงลงในโทเค็นนั้นๆ ได้แก่ ให้สิทธิต่างๆ แก่ผู้ถือ token ใน dApp (utility token), การลงคะแนนตามจำนวนเหรียญที่ถือใน protocol (governance token), เป็นหลักทรัพย์ในบริษัท (security token), สิทธิความเป็นเจ้าของสินทรัพย์ดิจิตัลหรือในโลกจริง (non-fungible token) และอื่นๆ อีกมากมาย ยกตัวอย่างเช่น SIA Token ใช้สำหรับจ่ายค่าบริการจัดเก็บข้อมูลบน cloud แบบกระจายอำนาจของ Siacoin หรือ COMP Token ที่ให้สิทธิผู้ถือเหรียญในการเข้าร่วมกำกับดูแล compound protocal

ผลิตภัณฑ์ทางการเงิน (DeFi)

Decentralized Finance (DeFi) หรือระบบการเงินแบบกระจายอำนาจ ประกอบด้วยแอปพลิเคชันที่ใช้ smart contract เพื่อสร้างผลิตภัณฑ์และบริการทางการเงินแบบดั้งเดิม เช่น ตลาดเงิน, อนุพันธ์, stablecoins, อัตราแลกเปลี่ยน, การจัดการสินทรัพย์ และอื่นๆ Smart contract สามารถกักเงินของผู้ใช้ไว้ในระบบค้ำประกันและแจกจ่ายให้กับผู้ใช้อันเป็นผลมาจากเหตุการณ์ในตลาด ตัวอย่างเช่น Set Protocol จัดการพอร์ตโฟลิโอโดยอัตโนมัติโดยใช้ข้อมูลตลาด และ Opium Exchange จะชำระสัญญาออปชั่นตามราคาของสินทรัพย์ที่จะดำเนินการ

เกม

เกมบล็อคเชนใช้ smart contract ในการป้องกันการฉ้อโกง ตัวอย่างหนึ่งคือเกม PoolTogether เกมออมเงินประกันต้นที่ผู้ใช้รวบรวมเงินออมไว้ใน lottery smart contract ที่เชื่อมต่อกับตลาดเงิน ตลาดเงินจะสะสมดอกเบี้ยเงินฝากและจะแจกจ่ายให้กับผู้ที่ชนะ lottery (Random Number Generation: RNG) หลังจากเลือกผู้ชนะแล้วทุกคนสามารถถอนเงินต้นได้ ในทำนองเดียวกัน smart contract สามารถสร้างไอเทมหายากในเกม เช่น ดาบเวทย์มนตร์แบบใช้ครั้งเดียวผ่าน RNG การใช้ฟังก์ชันสุ่มที่ตรวจสอบได้ (Chainlink’s Verifiable Random Function : VRF) ของ Chainlink ซึ่งเป็นต้นกำเนิดของ RNG ที่ผู้ใช้สามารถไว้วางใจและตรวจสอบได้อย่างอิสระว่าผลลัพธ์นั้นถูกสุ่มอย่างแท้จริงและไม่ได้ถูกควบคุมโดยผู้พัฒนาเกมหรือผู้ให้บริการแหล่งข้อมูล

ประกันภัย

Parametric Insurance เป็นประกันประเภทหนึ่งที่การจ่ายเงินให้กับผู้ทำประกันเมื่อเกิดเงื่อนไขต่างๆ ตามที่กำหนดไว้ smart contract จะจัดเตรียมโครงสร้างพื้นฐานที่ป้องกันการฉ้อโกงในการร่างสัญญา parametric insurance ที่ตอบสนองกับข้อมูลต่างๆ ตัวอย่างเช่น Etherisc กำลังร่าง smart contract สำหรับประกันเที่ยวบิน (flight insurance smart contract) ซึ่งจะจ่ายเงินโดยอัตโนมัติเมื่อได้รับข้อมูลสถานะเที่ยวบิน ผู้ใช้ปลายทางไม่เพียงแต่ได้รับการค้ำประกันความน่าเชื่อถือมากขึ้นในสัญญาเท่านั้น แต่นักลงทุนรายย่อยสามารถมีส่วนร่วมในด้านอุปทานของการประกันภัยผ่าน smart contract ที่รวมเงินฝากของผู้ใช้ไว้ และsmart contract จะกระจายผลกำไรตามเปอร์เซ็นต์การมีส่วนร่วมของผู้ใช้ในกลุ่ม

อ่านเพิ่มเติม

เรียนรู้เพิ่มเติมโดยดูบทความถัดไปในชุดการศึกษาเกี่ยวกับ Data และ APIs ติดตามเราบน Twitter เพื่อรับการแจ้งเตือนเกี่ยวกับการเผยแพร่บทความใหม่ และเข้าร่วม Telegram ของเราเพื่อรับข่าวสารล่าสุดเกี่ยวกับ Chainlink

--

--