การรักษาความปลอดภัยสัญญาอัจฉริยะ: แนวทาง SDLC แบบ Agile PlatoBlockchain Data Intelligence ค้นหาแนวตั้ง AI.

การรักษาความปลอดภัยสัญญาอัจฉริยะ: แนวทาง SDLC ที่คล่องตัว 

อ่านเวลา: 10 นาที

Blockchain ถูกยกมาเป็นบัญชีแยกประเภทแบบกระจายอำนาจและป้องกันการงัดแงะ แต่บัญชีแยกประเภทป้องกันการงัดแงะนี้มีความเสี่ยงต่อการถูกแฮ็กและหาประโยชน์ การกระจายอำนาจซึ่งเป็นหนึ่งในข้อดีที่แข็งแกร่งที่สุดของ Blockchain เป็นข้อเสียอย่างหนึ่ง 

ไม่เป็นไร แต่ SDLC ล่ะ 

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

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

การวิเคราะห์ประเด็นด้านความปลอดภัยในสัญญาอัจฉริยะ 

สัญญาอัจฉริยะมีความเสี่ยงต่อการแฮ็กและการหาประโยชน์ที่หลากหลาย สัญญาเหล่านี้มีความหมายเหมือนกันกับข้อตกลงทางกฎหมายในโลกแห่งความเป็นจริงดำเนินการอย่างอิสระตามเงื่อนไขของบล็อกเชนดั้งเดิม 

แต่คุณคิดว่าแม้แต่บล็อคเชนดั้งเดิมเหล่านั้นก็สามารถรับผิดชอบต่อภัยคุกคามความปลอดภัยที่อาจเกิดขึ้นในสัญญาอัจฉริยะได้หรือไม่? ด้านล่างนี้ เรานำเสนอคุณลักษณะบางอย่างของบล็อคเชนในลักษณะเดียวกัน:

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

นักแสดงที่เป็นอันตรายสามารถสร้างตัวตนปลอมเพื่อพัฒนาและปรับใช้สัญญาอัจฉริยะได้ บางครั้งมันก็กลายเป็นเรื่องยากที่จะระบุสัญญาที่มีช่องโหว่ เนื่องจากมีเพียงที่อยู่สาธารณะ (หรือ) กุญแจสาธารณะเท่านั้นที่มีในบล็อคเชนสาธารณะ 

รหัสโอเพ่นซอร์ส: สิ่งนี้อาจทำให้คุณประหลาดใจ แต่ใช่ โดยทั่วไปแล้ว รหัสสัญญาอัจฉริยะส่วนใหญ่ค่อนข้างโอเพนซอร์ส 

สมมติว่าในกรณีของ Ethereum Virtual Machine (EVM) bytecode ของมันจะเปิดเผยต่อสาธารณะเสมอ และตัวถอดรหัส Solidity บางตัวสามารถช่วยให้คุณได้รับที่อยู่สัญญาอัจฉริยะและรหัส Solidity การเปิดเผยซอร์สโค้ดทำให้คุณลักษณะนี้เป็นประโยชน์สำหรับผู้โจมตี 

แพลตฟอร์มบล็อกเชนที่ยังไม่พัฒนา: สำหรับนักพัฒนา จำเป็นต้องทำความคุ้นเคยกับแพลตฟอร์มการพัฒนาเป็นหลัก มีแพลตฟอร์มบล็อกเชนที่ด้อยพัฒนาหรือใหม่มากมาย ดังนั้นนักพัฒนาจึงไม่สามารถพัฒนาความรู้เชิงลึกเกี่ยวกับการดำเนินงานบนบล็อกเชนได้ 

ความไม่สอดคล้องกันนี้ส่งผลต่อสัญญาอัจฉริยะเนื่องจากขาดการซิงโครไนซ์ ข้อบกพร่องในแพลตฟอร์มบล็อคเชนยังคงไม่มีใครสังเกตเห็นเนื่องจากมีวิวัฒนาการอย่างต่อเนื่อง 

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

โซลูชันการรักษาความปลอดภัยตามสัญญาอัจฉริยะ

ต่อไปในการรักษาความปลอดภัยสัญญาอัจฉริยะ เราสามารถเปรียบเทียบขั้นตอนที่จำเป็นทั้งหมดที่จำเป็นในการรักษาความปลอดภัยสัญญาอัจฉริยะกับวิวัฒนาการได้ ในการพัฒนาซอฟต์แวร์แบบเดิมๆ เรามักจะทำตามวงจรการพัฒนา ในทำนองเดียวกัน เราสามารถจำแนกวงจรชีวิตการพัฒนาสัญญาได้ 

วงจรชีวิตการพัฒนาสัญญาอัจฉริยะสามารถแบ่งออกเป็นสี่ขั้นตอน: การออกแบบความปลอดภัย การใช้งานความปลอดภัย การทดสอบก่อนปรับใช้ และการตรวจสอบและวิเคราะห์

การตรวจสอบธีมความปลอดภัยจากมุมมองของวงจรชีวิตสัญญาอัจฉริยะ
ภาพรวมของธีมความปลอดภัยจากมุมมองของวงจรชีวิตสัญญาอัจฉริยะ

1. การออกแบบความปลอดภัย 

เฟสแรกนี้สรุปสามธีม; หลักการออกแบบ รูปแบบการออกแบบ และแบบจำลองความปลอดภัย (ดังแสดงในรูปด้านบน) จุดสนใจหลักของธีมเหล่านี้อยู่ที่การออกแบบสัญญาและวิธีหลีกเลี่ยงภัยคุกคามด้านความปลอดภัย 

หลักการออกแบบ

หลักการออกแบบเป็นแนวคิดพื้นฐานสำหรับการออกแบบสัญญาอัจฉริยะที่ปลอดภัยบนบล็อกเชน มีหลักการออกแบบที่สำคัญห้าประการสำหรับสัญญา: เตรียมพร้อมสำหรับความล้มเหลว การเปิดตัวอย่างระมัดระวัง รักษาสัญญาให้เรียบง่าย อัปเดตอยู่เสมอ และต้องรู้เกี่ยวกับคุณสมบัติของบล็อคเชน 

คุณอาจคิดว่าพวกเขาจะช่วยสร้างสัญญาอัจฉริยะที่ปลอดภัยได้อย่างไร 

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

รูปแบบการออกแบบ

ในการออกแบบซอฟต์แวร์ รูปแบบการออกแบบคือโซลูชันที่สามารถนำมาใช้ซ้ำเพื่อแก้ไขปัญหาได้ 

หากเรายกตัวอย่าง Ethereum มีรูปแบบความปลอดภัยหกรูปแบบ ตรวจสอบผลกระทบ-ปฏิสัมพันธ์, หยุดฉุกเฉิน, Mutex, ความเร็วชน, อัตราจำกัด, และจำกัดสมดุล.  

เราสามารถใช้รูปแบบการรักษาความปลอดภัยเหล่านี้เพื่อแก้ไขปัญหาด้านความปลอดภัยในบล็อคเชน เช่น ช่องโหว่ในการกลับเข้ามาใหม่สามารถจัดการได้ด้วยรูปแบบ Mutex 

ในขณะเดียวกัน รูปแบบการหยุดฉุกเฉินสามารถช่วยเรายุติการดำเนินการของสัญญาได้ หากได้รับผลกระทบจากช่องโหว่ 

แบบจำลองความปลอดภัย

อาจมีความแตกต่างระหว่างรหัสที่พัฒนาแล้วและรหัสที่จำเป็นสำหรับสัญญา เนื่องจาก Solidity ถูกใช้เพื่อสร้างสัญญา ภาษานี้ตอบสนองความสมบูรณ์ของทัวริง แต่มีแนวโน้มที่จะเกิดข้อผิดพลาด 

รูปด้านบนแสดงให้เห็นว่าเฟสย่อยนี้ครอบคลุมสองเฟส การออกแบบและการดำเนินการด้านความปลอดภัย 

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

2. การดำเนินการด้านความปลอดภัย

ในส่วนนี้ เราจะพูดถึงสองในสามหัวข้อ ความปลอดภัย

เทมเพลตการพัฒนาและความปลอดภัย เนื่องจากเราได้กล่าวถึงการสร้างแบบจำลองความปลอดภัยในขั้นตอนสุดท้ายแล้ว

การพัฒนาความปลอดภัย

ส่วนนี้จะดูว่าสามารถหลีกเลี่ยงช่องโหว่ต่างๆ ได้อย่างไรในระหว่างกระบวนการปฏิบัติตามสัญญา 

บนแพลตฟอร์ม Ethereum เรามี EIP ความปลอดภัย (ข้อเสนอการปรับปรุง Ethereum) – คำแนะนำเพื่อต่อสู้กับปัญหาด้านความปลอดภัยบน Ethereum แพลตฟอร์ม. ดังนั้น EIP เหล่านี้จึงมีความสำคัญต่อการนำสัญญาอัจฉริยะไปใช้งานอย่างปลอดภัย 

แม่แบบการรักษาความปลอดภัย

เทมเพลตทำหน้าที่เป็นที่มาของเอกสารใหม่ เทมเพลตสัญญาอัจฉริยะพร้อมพารามิเตอร์การดำเนินงานเชื่อมต่อข้อตกลงทางกฎหมายกับโค้ดที่สั่งการได้ 

ในบริบทของการรักษาความปลอดภัยสัญญาอัจฉริยะ เป็นไปได้ที่จะแยกแม่แบบสัญญามาตรฐานด้วยพารามิเตอร์ความปลอดภัยที่อัปเกรดแล้ว เช่น รูปแบบความปลอดภัยและไลบรารีความปลอดภัย ซึ่งจะช่วยลดความเป็นไปได้ที่จะเกิดข้อผิดพลาดในการเข้ารหัสด้วยตนเอง 

3. การทดสอบก่อนใช้งาน

อีกครั้ง ความต้องการของระยะนี้เกิดขึ้นจากข้อดีอย่างหนึ่งของสัญญาอัจฉริยะ – “ความไม่เปลี่ยนรูป” 

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

ระยะนี้ครอบคลุมพารามิเตอร์ความปลอดภัยสามตัวที่ต้องปฏิบัติตามก่อนที่จะปรับใช้สัญญาอัจฉริยะ การตรวจสอบอย่างเป็นทางการอย่างเข้มงวด เครื่องมือวิเคราะห์รหัส และการตรวจสอบความปลอดภัย 

การตรวจสอบอย่างเป็นทางการอย่างเข้มงวด

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

เราสามารถตรวจสอบสัญญาอัจฉริยะอย่างเป็นทางการได้เนื่องจากโปรแกรมสัญญาสั้นและมีเวลาจำกัด มีหลายวิธีในการทำให้เป็นทางการและตรวจสอบสัญญาอัจฉริยะอย่างเข้มงวด บางส่วนใช้รหัสสัญญาและอื่น ๆ ตามความหมายของเครื่องเสมือน Ethereum (EVM) 

เครื่องมือวิเคราะห์รหัส

การวิเคราะห์โค้ดทำได้โดยไม่ต้องรันโปรแกรม เพื่อจุดประสงค์นี้ เราใช้เครื่องมือบางอย่างที่เรียกว่า Static Application Security Testing (SAST) Tools เครื่องมือเหล่านี้ช่วยในการค้นพบข้อบกพร่องด้านความปลอดภัยในซอร์สโค้ด 

การวิเคราะห์ที่ดำเนินการโดยเครื่องมือเหล่านี้อาจรวมถึงขั้นตอนใดขั้นตอนหนึ่งหรือทั้งหมดต่อไปนี้:

(i) สร้างการแทนค่าระดับกลาง (IR) เช่น โครงสร้างไวยากรณ์นามธรรม (AST) สำหรับการวิเคราะห์โดยละเอียด 

(ii) เสริม IR ด้วยข้อมูลที่เพียงพอที่ได้รับจากการควบคุมแบบสถิตหรือการวิเคราะห์การไหลของวันที่และเทคนิคการตรวจสอบอย่างเป็นทางการ เทคนิคเหล่านี้ได้แก่ การดำเนินการเชิงสัญลักษณ์ การตีความเชิงนามธรรม และการตรวจสอบแบบจำลองเชิงสัญลักษณ์ 

แต่เครื่องมือใดที่เราสามารถใช้วิเคราะห์โค้ดบน Smart Contract ได้ 

แม้ว่าจะมีเครื่องมือมากมายที่สามารถใช้วิเคราะห์ความปลอดภัยได้ แต่ Oyente เป็นเครื่องมือที่ได้รับความนิยมมากที่สุด 

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

สถาปัตยกรรมของ Oyente
สถาปัตยกรรมของ Oyente

สถาปัตยกรรมของ Oyente แสดงให้เห็นว่าใช้ bytecode และนำเสนอสถานะทั่วโลกของ Ethereum เป็นอินพุต 

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

การตรวจสอบความปลอดภัย

เราจะเริ่มส่วนนี้โดยที่เราทิ้งส่วนสุดท้ายไว้ การตรวจสอบด้วยตนเอง 

แต่ก่อนอื่น มาทำความเข้าใจความจำเป็นในการตรวจสอบความปลอดภัย ไม่ว่าจะเป็นแฮ็ก Ronin Network หรือแฮ็ค Poly Network โค้ดที่ยังไม่ได้ตรวจสอบนั้นเสี่ยงต่อการถูกแฮ็กและหาช่องโหว่มากที่สุด 

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

จะหาผู้เชี่ยวชาญมืออาชีพเหล่านั้นได้ที่ไหน คุณไม่จำเป็นต้องไปที่ใดเพื่อค้นหาผู้ตรวจสอบที่น่าเชื่อถือ คลิก https://t.me/quillhash เพื่อติดต่อกับหนึ่งในนั้น! 

การตรวจสอบสัญญาอัจฉริยะในอุดมคติคือการผสมผสานระหว่างการวิเคราะห์โค้ดแบบแมนนวลและแบบอัตโนมัติ ดังที่เราได้กล่าวไปแล้วในประเด็นที่แล้ว แม้ว่าจะทำการวิเคราะห์โค้ดอัตโนมัติจากเครื่องมือต่างๆ เช่น Oyente แต่ก็มีความเป็นไปได้ที่จะเกิดช่องโหว่ที่ไม่สามารถระบุได้ในสัญญา 

ดังนั้น เพื่อเอาชนะสิ่งนั้น ผู้ตรวจสอบความปลอดภัยสามารถวิเคราะห์โค้ดทุกบรรทัดด้วยตนเองและทดสอบกับช่องโหว่ที่อาจเกิดขึ้น 

4. การติดตามและวิเคราะห์

จำหลักการที่พัฒนาตลอดเวลาของ Blockchain ที่เราพูดถึงในตอนแรกได้หรือไม่? 

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

เราสามารถดำเนินการได้ ค่าหัวบั๊ก การตรวจสอบความปลอดภัย และการวิเคราะห์ภายหลังเพื่อเอาชนะอุปสรรคเหล่านี้ 

รางวัลบั๊ก

ขณะที่เรากำลังพิจารณาปัญหาด้านความปลอดภัยหลังการติดตั้งใช้งานกับสัญญา ค่าหัวจุดบกพร่องสามารถช่วยได้ เทคนิคการตรวจสอบอย่างเป็นทางการที่กล่าวถึงก่อนหน้านี้เป็นเทคนิคการวิเคราะห์แบบสถิต ในทางกลับกัน Bug Bounty เป็นเทคนิคการวิเคราะห์แบบไดนามิก 

แนวคิดเบื้องหลัง Bug bounty นั้นเรียบง่าย แฮกเกอร์ค้นพบข้อบกพร่อง และในทางกลับกัน พวกเขาจะได้รับผลตอบแทนทางการเงิน ดูเหมือนสถานการณ์ win-win ใช่ไหม? แต่มันไม่ใช่!

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

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

เพื่อแก้ปัญหานี้ จึงมีการนำเสนอเฟรมเวิร์กค่าหัวบั๊กที่เรียกว่า “Hydra” 

Hydra ใช้เทคโนโลยีช่องโหว่ช่องโหว่ที่เรียกว่า N-of-N-version programming (NNVP) เป็นระบบหาจุดบกพร่องบนบล็อคเชน 

กรอบไฮดราพร้อมหัว
กรอบไฮดราพร้อมหัว

การตรวจสอบความปลอดภัย

เราสามารถใช้การวิเคราะห์โค้ดแบบคงที่เพื่อค้นหาช่องโหว่ด้านความปลอดภัย แต่วิธีนี้จะใช้ก่อนที่จะปรับใช้สัญญาอัจฉริยะ 

แต่เพื่อค้นหาจุดบกพร่องและจุดอ่อนที่อาจเกิดขึ้นในแบบเรียลไทม์ เราต้องตรวจสอบและวิเคราะห์ข้อมูลธุรกรรมบนบล็อคเชน 

ช่องโหว่เหล่านี้ที่ค้นพบโดยการวิเคราะห์สัญญาอัจฉริยะสามารถเรียกได้ว่าเป็นช่องโหว่การติดตาม สัญญาสามประเภทเป็นจุดศูนย์กลางของช่องโหว่ในการติดตามเหล่านี้ 

(i) สัญญาโลภ (สัญญาที่ยังมีชีวิตอยู่และล็อคอีเธอร์อย่างไม่มีกำหนด)

(ii) สัญญาฟุ่มเฟือย (สัญญาที่ทำให้เงินรั่วไหลไปยังผู้ใช้โดยพลการ) และ

(iii) สัญญาฆ่าตัวตาย (สัญญาที่ผู้ใช้ตามอำเภอใจสามารถฆ่าได้) 

แม้แต่แนวคิดของออบเจ็กต์ Callback Free (ECF) อย่างมีประสิทธิภาพก็ถูกเสนอให้ระบุช่องโหว่โดยการตรวจสอบวัตถุ ECF 

ในบริบทนี้ มีการนำเสนออัลกอริทึมออนไลน์ด้วย ช่วยค้นพบช่องโหว่ที่ไม่รู้จัก ในข้อเสนอเดียวกัน แนะนำให้ดำเนินการสัญญาอัจฉริยะบน Testnet ก่อนปรับใช้บน Mainnet 

Monitoring UI เป็นแพลตฟอร์มการตรวจสอบ Blockchain ที่ใช้ React.js แพลตฟอร์มนี้สามารถใช้ทำธุรกรรม ตรวจสอบทรัพย์สิน และสอบถามเกี่ยวกับสถานะของบล็อคเชน 

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

โพสต์ HOC วิเคราะห์

Post Hoc Analysis ใช้ข้อมูลธุรกรรมบล็อคเชนเพื่อวิเคราะห์ ค้นหา หรือติดตามภัยคุกคามที่อาจเกิดขึ้นบนบล็อคเชนในแง่ของคนธรรมดา 

หากเราพูดถึงการวิเคราะห์กราฟ มันถูกออกแบบมาเป็นแนวทางในการรวบรวมข้อมูลธุรกรรมทั้งหมด (ซึ่งรวมถึงธุรกรรมภายในจากสัญญาอัจฉริยะ) 

ด้วยความช่วยเหลือของข้อมูลนี้ พวกเขาเตรียมสามกราฟ 

(i) กราฟการไหลของเงิน (MFG)

(ii) กราฟการสร้างสัญญา (CCG) และ

(iii) กราฟการเรียกสัญญา (CIG)

จากการวิเคราะห์กราฟที่กล่าวถึงข้างต้น มีการเสนอข้อค้นพบใหม่ๆ มากมาย เช่น การแก้ปัญหาด้านความปลอดภัยระหว่างสัญญาหลายฉบับที่มีปฏิสัมพันธ์ซึ่งกันและกัน 

ภาพรวมของการวิเคราะห์กราฟ
ภาพรวมของการวิเคราะห์กราฟ

โครงการ Ponzi เป็นหนึ่งในแผนการฉ้อโกงแบบดั้งเดิมที่สามารถรับเงินจำนวนมากและส่งผลกระทบต่อบล็อกเชนดั้งเดิม เพื่อต่อสู้กับการฉ้อโกงนี้ กลไกการจำแนกประเภทถูกเสนอให้ตรวจจับรูปแบบ Ponzi บน Ethereum 

กลไกนี้ใช้การขุดข้อมูลและการเรียนรู้ของเครื่องเพื่อตรวจจับสัญญาของ Ponzi กระบวนการนี้ใช้ได้แม้ว่าซอร์สโค้ดของสัญญาอัจฉริยะจะไม่พร้อมใช้งาน 

เฟรมเวิร์กของการตรวจจับโครงร่าง Ponzi ที่ชาญฉลาด
เฟรมเวิร์กของการตรวจจับโครงร่าง Ponzi ที่ชาญฉลาด

คีย์ Takeaway

แค่นั้นแหละ แค่นั้นแหละ!

ถ้าคุณอยู่กับเราจนถึงตอนนี้ เราจะขอบคุณมัน สรุปได้ว่าระบบนิเวศของสัญญาอัจฉริยะมีการกระจายอำนาจ และเป็นการยากที่จะแก้ไขข้อบกพร่อง 

เราได้พยายามทำลายความปลอดภัยของสัญญาอัจฉริยะจากมุมมองของวงจรชีวิตของซอฟต์แวร์ 

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

คุณคิดอย่างไรกับแนวทาง SDLC ที่คล่องตัวสำหรับการรักษาความปลอดภัยสัญญาอัจฉริยะ แบ่งปันความคิดของคุณในความคิดเห็นด้านล่าง!

46 เข้าชม

โพสต์ การรักษาความปลอดภัยสัญญาอัจฉริยะ: แนวทาง SDLC ที่คล่องตัว  ปรากฏตัวครั้งแรกเมื่อ Blog.quillhash.

ประทับเวลา:

เพิ่มเติมจาก ควิลแฮช