Ethereum และ Google Cloud: จะสร้างแอปพลิเคชัน blockchain/cloud แบบไฮบริดได้อย่างไร
หมายเหตุบรรณาธิการ: บทความนี้มาจากหมายเหตุจิ้งจอกสีน้ำเงินหมายเหตุบรรณาธิการ: บทความนี้มาจาก
หมายเหตุจิ้งจอกสีน้ำเงิน

คำนำ: ในการพัฒนา dApp ไม่เพียงแต่ต้องการข้อมูลในเชนเท่านั้น แต่ยังต้องมีข้อมูลนอกเชนด้วย จะใช้ชุดข้อมูล oracles แบบกระจายศูนย์และ Google Cloud เพื่อรับข้อมูลที่เชื่อถือได้มากขึ้นได้อย่างไร จะขับเคลื่อนนวัตกรรม dApp ให้มากขึ้นได้อย่างไร
ด้วยการรวมทรัพยากรทางอินเทอร์เน็ตสมัยใหม่เข้ากับบริการคลาวด์สาธารณะ การยอมรับโปรโตคอลและเทคโนโลยีบล็อกเชนจะถูกเร่งให้เร็วขึ้น บทความนี้จะอธิบายบางแอปพลิเคชันที่ให้ข้อมูลโฮสต์บนอินเทอร์เน็ตในห่วงโซ่สาธารณะที่ไม่เปลี่ยนรูป: การใช้ Chainlink oracle smart contract เพื่อให้สามารถวางข้อมูล BigQuery บนเครือข่ายได้ แต่บทความนี้มุ่งเน้นไปที่บางอย่างที่มียูทิลิตี้ระดับสูงในทันที: ตลาดการคาดการณ์ ตลาดฟิวเจอร์ส และความเป็นส่วนตัวในการทำธุรกรรม
ชื่อเรื่องรอง
แอปพลิเคชันไฮบริดคลาวด์บล็อกเชน
Blockchains มุ่งเน้นไปที่ความพยายามทางคณิตศาสตร์เพื่อให้ได้ฉันทามติ ในไม่ช้าความคิดที่จะขยายโมเดลนี้ออกมาซึ่งอนุญาตให้มีข้อตกลงแบบ peer-to-peer ระหว่างฝ่ายต่างๆนั่นคือสัญญา แนวคิดของสัญญาอัจฉริยะได้รับการเสนอครั้งแรกโดยนักวิทยาศาสตร์คอมพิวเตอร์ Nick Szabo ในปี 1997 ในยุคแรก ๆ ก็มีตัวอย่างการเขียน protocol เป็น block ด้วยความพยายามในการย้อมเหรียญบน Bitcoin blockchain ทำให้ผู้คนจำนวนมากขึ้นเรื่อย ๆ เข้าใจ
สัญญาอัจฉริยะถูกฝังอยู่ในแหล่งที่มาของความจริงของบล็อกเชน ดังนั้น พวกมันจึงเปลี่ยนรูปไม่ได้หลังจากความสูงของบล็อกเพียงไม่กี่ระดับ นี่เป็นกลไกที่อนุญาตให้ผู้เข้าร่วมมอบทรัพยากรทางเศรษฐกิจ crypto ให้กับข้อตกลงในการแลกเปลี่ยนกับคู่สัญญา โดยเชื่อมั่นว่าเงื่อนไขของสัญญาจะถูกบังคับใช้โดยอัตโนมัติ โดยไม่มีการบังคับหรืออนุญาโตตุลาการจากบุคคลที่สาม
แต่สิ่งเหล่านี้ไม่สามารถแก้ปัญหาพื้นฐานได้: จะรับตัวแปรสำหรับการประเมินสัญญาได้ที่ไหน หากข้อมูลไม่ได้มาจากข้อมูลออนไลน์ที่เพิ่มเข้ามาเมื่อเร็วๆ นี้ จำเป็นต้องมีแหล่งข้อมูลภายนอกที่เชื่อถือได้ แหล่งข้อมูลดังกล่าวเรียกว่าออราเคิล (หมายเหตุของ Blue Fox: กล่าวคือ วิธีรับข้อมูลที่เชื่อถือได้ซึ่งกระตุ้นเงื่อนไขของสัญญา)
ในงานก่อนหน้านี้ เราทำให้ข้อมูลบล็อกเชนสาธารณะใช้งานได้ฟรีใน BigQuery ผ่านโครงการ Google Cloud Public Datasets ในบทความนี้ เราเรียกงานนี้ว่าชุดข้อมูลสาธารณะที่เข้ารหัสของ Google คุณสามารถค้นหาข้อมูลเพิ่มเติมและตัวอย่างชุดข้อมูลในตลาด GCP (Google Cloud Platform)
ทรัพยากรชุดข้อมูลนี้ทำให้ลูกค้า GCP (Google Cloud Platform) จำนวนมากพัฒนากระบวนการทางธุรกิจโดยอิงจากการวิเคราะห์ข้อมูลบล็อกเชนที่ทำดัชนีโดยอัตโนมัติ เช่น การแบ่งผลกำไรของ SaaS การลดการละเมิดบริการโดยการแบ่งชั้นของผู้เข้าร่วมเครือข่าย และใช้เทคนิคการวิเคราะห์แบบคงที่เพื่อตรวจจับซอฟต์แวร์ ช่องโหว่และมัลแวร์
อย่างไรก็ตาม แอปพลิเคชันเหล่านี้ล้วนมีแอตทริบิวต์ร่วมกัน: พวกเขาทั้งหมดใช้ชุดข้อมูลสาธารณะที่เข้ารหัสเป็นอินพุตสำหรับกระบวนการทางธุรกิจนอกเครือข่าย
ข้อมูลต่อไปนี้แสดงให้เห็นว่าแพลตฟอร์มสัญญาอัจฉริยะเฉพาะ (Ethereum) ทำงานร่วมกับคลังข้อมูลระบบคลาวด์ระดับองค์กรของ Google (BigQuery) ผ่านทางมิดเดิลแวร์ของ Oracle (Chainlink) ได้อย่างไร
ส่วนประกอบที่รวมกันนี้ช่วยให้สัญญาอัจฉริยะดำเนินการตามการดึงข้อมูลตั้งแต่การสืบค้นแบบออนไลน์ไปจนถึงคลังข้อมูลที่โฮสต์บนอินเทอร์เน็ต กรณีของเราสามารถสรุปเป็นรูปแบบหนึ่งของแอปพลิเคชันไฮบริดบนคลาวด์/บล็อกเชน โดยที่สัญญาอัจฉริยะสามารถมอบหมายทรัพยากรบนคลาวด์ได้อย่างมีประสิทธิภาพเพื่อดำเนินการที่ซับซ้อน
ชื่อเรื่องรอง
วิธีการสร้าง?
ในระดับสูง Ethereum dApps (หรือที่เรียกว่าแอปพลิเคชันสัญญาอัจฉริยะ) ขอข้อมูลจาก Chainlink และ Chainlink จะดึงข้อมูลจากบริการเว็บที่สร้างขึ้นบน Google App Engine และ BigQuery
ในการดึงข้อมูลจาก BigQuery นั้น dApp จะเรียกใช้สัญญา Chainlink oracle และรวมการชำระเงิน (เช่น ราคาน้ำมัน ณ เวลาที่กำหนด) สำหรับคำขอที่มีการกำหนดพารามิเตอร์ที่จะให้บริการ โหนด Chainlink อย่างน้อยหนึ่งโหนดกำลังฟังการเรียกเหล่านี้ และเมื่อสังเกต ให้ดำเนินการตามที่ร้องขอ อะแด็ปเตอร์ภายนอกเป็นโมดูลที่มุ่งเน้นบริการที่ขยายการทำงานของโหนด Chainlink รวมถึง API การตรวจสอบสิทธิ์ เกตเวย์การชำระเงิน และบล็อกเชนภายนอก ในกรณีนี้ โหนด Chainlink โต้ตอบกับบริการเว็บ App Engine เฉพาะ

หลังจากบริการเครือข่ายตอบสนองสำเร็จ โหนด Chainlink จะใช้ข้อมูลที่ส่งกลับเพื่อเรียกสัญญา Chainlink oracle ซึ่งจะเรียกสัญญา dApp ซึ่งจะทริกเกอร์การดำเนินการของตรรกะทางธุรกิจเฉพาะของ dApp แบบดาวน์สตรีม นี่คือภาพด้านล่าง
สำหรับรายละเอียดเกี่ยวกับการรวม dApps โปรดดูเอกสารที่เกี่ยวข้องของ Google Cloud ซึ่งสามารถขอข้อมูลจาก BigQuery ผ่าน Chainlink ราคาก๊าซสามารถดูได้จากวันที่และหมายเลขบล็อก
ชื่อเรื่องรอง
วิธีใช้ออราเคิล BigQuery Chainlink
ส่วนนี้อธิบายวิธีสร้างแอปพลิเคชันที่มีประโยชน์โดยใช้ Google Cloud และ Chainlink
ใช้กรณีที่ 1: ตลาดการทำนาย
ผู้เข้าร่วมในตลาดการทำนายจะจัดสรรเงินทุนเพื่อทำนายเหตุการณ์ในอนาคต พื้นที่ที่น่าสนใจนี้ส่วนใหญ่ถูกครอบงำโดยแพลตฟอร์มสัญญาอัจฉริยะ เพราะในฐานะระบบนิเวศเครือข่าย มูลค่าของพวกมันจะเป็นไปตามกฎแห่งอำนาจ กล่าวคือ ผู้ชนะจะรับไปทั้งหมด ความคิดเห็นแตกต่างกันไปว่าแพลตฟอร์มใดจะประสบความสำเร็จ และวิธีวัดความสำเร็จ
ด้วยการใช้ชุดข้อมูลสาธารณะที่เข้ารหัส แม้กระทั่งการคาดการณ์ที่ซับซ้อนก็สามารถทำได้ เช่น การเดิมพัน 500,000 ดอลลาร์เมื่อเร็วๆ นี้เกี่ยวกับสถานะในอนาคตของ Ethereum ซึ่งได้รับการแก้ไขบนเครือข่ายได้สำเร็จ ด้วยการดึงข้อมูลกิจกรรม 1 วัน 7 วัน และ 30 วันของ dApp บางรายการ คุณจะสามารถวัดประเภท ปริมาณ ความคืบหน้าใหม่ และความถี่ของการใช้งาน dApp ซึ่งสามารถบันทึกได้
เมตริกเหล่านี้เรียกว่าผู้ใช้ที่ใช้งานรายวัน รายสัปดาห์ และรายเดือน และมักใช้โดยผู้เชี่ยวชาญด้านการวิเคราะห์เว็บและแอปบนอุปกรณ์เคลื่อนที่เพื่อประเมินความสำเร็จของเว็บไซต์และแอป
ใช้กรณีที่ 2: การป้องกันความเสี่ยงจากแพลตฟอร์มบล็อกเชน
การยอมรับอย่างรวดเร็วของ Decentralized Finance เกิดจากความสำเร็จในการเปลี่ยนแปลงระบบการเงินที่มีอยู่ด้วยสภาพแวดล้อมแบบบล็อกเชน ซึ่งในทางเทคนิคมีความน่าเชื่อถือและโปร่งใสมากกว่าระบบที่มีอยู่
สัญญาทางการเงิน เช่น ฟิวเจอร์สและออปชันถูกสร้างขึ้นเพื่อลด/ป้องกันความเสี่ยงที่เกี่ยวข้องกับทรัพยากรการดำเนินงานที่สำคัญ ในทำนองเดียวกัน ข้อมูลเกี่ยวกับกิจกรรมบนเครือข่าย เช่น ราคาก๊าซเฉลี่ย สามารถใช้เพื่อสร้างเครื่องมือทางการเงินอย่างง่ายที่ให้การชำระเงินแก่ผู้ถือเมื่อราคาก๊าซสูงเกินไป
ลักษณะเฉพาะอื่นๆ ของเครือข่ายบล็อกเชน เช่น เวลาบล็อก/การรวมศูนย์ของเครื่องมือขุด สร้างความเสี่ยงที่นักพัฒนา dApp ต้องการหลีกเลี่ยง ด้วยการให้ข้อมูลคุณภาพสูงจากชุดข้อมูลสาธารณะที่เข้ารหัสไปจนถึงสัญญาอัจฉริยะทางการเงิน ความเสี่ยงของนักพัฒนา dApp สามารถลดลงได้ ผลลัพธ์ที่ได้คือนวัตกรรมที่มากขึ้นและการนำบล็อกเชนมาใช้อย่างรวดเร็ว
เราบันทึกวิธีที่ Ethereum smart contract โต้ตอบกับ BigQuery oracle เพื่อดึงข้อมูลราคาก๊าซในเวลาที่กำหนด นอกจากนี้ เรายังใช้โครงร่างของตัวเลือกสัญญาอัจฉริยะ ซึ่งแสดงให้เห็นว่าสามารถใช้ออราเคิลเพื่อทำสัญญาหลักประกันราคาก๊าซในอนาคตได้อย่างไร ซึ่งเป็นข้อมูลสำคัญสำหรับการทำงานของ dApp
ใช้กรณีที่ 3: รองรับการส่ง/เปิดเผยใน Ethereum โดยใช้ "submarine send"
ด้วยการใช้วิธีการส่ง "เรือดำน้ำ" ผู้ใช้สัญญาอัจฉริยะสามารถเพิ่มความเป็นส่วนตัวในการทำธุรกรรม หลีกเลี่ยงคู่สัญญาที่ต้องการทำธุรกรรมล่วงหน้าได้สำเร็จ ทำให้ DEX มีประโยชน์ในทันที ด้วยวิธีนี้ พฤติกรรมที่เป็นอันตราย เช่น การวิ่งนำหน้าสามารถป้องกันได้ แต่ก็มีข้อจำกัดเช่นกัน หากไม่มีออราเคิลคอยช่วยเหลือ
ในกรณีที่ไม่มี oracle การดำเนินการ "submarine send" จะทำให้ blockchain ขยายตัว โดยเฉพาะอย่างยิ่ง EVM ช่วยให้สัญญาสามารถเชื่อมต่อได้สูงสุด 256 บล็อกหรือประมาณ 1 ชั่วโมง ช่วงสูงสุดนี้จำกัดการใช้งานจริงของ "การส่งจากเรือดำน้ำ" เนื่องจากจะสร้างการดีนอร์มอลไลเซชั่นโดยไม่จำเป็นเมื่อจำเป็นต้องถ่ายทอดข้อมูลซ้ำ แทนที่จะใช้ oracles เพื่อใช้งาน "การส่งเรือดำน้ำ" บล็อกขยายจะถูกกำจัดเนื่องจากขอบเขตของการดำเนินการเพิ่มขึ้นเพื่อรวมข้อมูลห่วงโซ่ที่ผ่านมาทั้งหมด
ชื่อเรื่องรอง
สรุปแล้ว
เราได้สาธิตวิธีใช้บริการ Chainlink เพื่อให้บริการข้อมูลบนเครือข่ายจากชุดข้อมูลสาธารณะที่เข้ารหัสของ BigQuery เทคนิคนี้สามารถใช้เพื่อลดความไร้ประสิทธิภาพ (เช่น กรณีการใช้การส่งเรือดำน้ำ) และในบางกรณี เพิ่มฟังก์ชันใหม่ทั้งหมด (เช่น กรณีการใช้ความเสี่ยงในการป้องกันความเสี่ยง) ให้กับสัญญาอัจฉริยะของ Ethereum และเปิดใช้โมเดลธุรกิจแบบ on-chain ใหม่ (เช่น กรณีการใช้งานตลาดการทำนาย )
สาระสำคัญของแนวทางของเราคือการสร้างสมดุลของเวลาแฝงและค่าใช้จ่ายในการทำธุรกรรมในปริมาณเล็กน้อยสำหรับประโยชน์ทางเศรษฐกิจจำนวนมากที่อาจเกิดขึ้น ดังตัวอย่างที่ชัดเจน "การส่งเรือดำน้ำ" ทั่วไปต้องการพื้นที่จัดเก็บแบบออนเชนที่ปรับขนาด O(n) ด้วยบล็อกที่เพิ่มลงในบล็อกเชน แต่ถ้าสัญญาการโทรรออีกสองบล็อกเพื่อเรียก BigQuery oracle ก็สามารถลดลงได้ ถึง O(1).


