ข้ามไปยังเนื้อหา
มุมมองระดับโลกต่อสินทรัพย์ดิจิทัลมุมมองระดับโลก · บริบทในพื้นที่
ChainView BTC866CHAIN VIEW
บล็อกเชน

Nonce การแทนที่ และธุรกรรมค้าง

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

อ่านในภาษาไทย简体中文繁體中文English한국어РусскийالعربيةEspañol (México)Tiếng Việt
Nonce การแทนที่ และธุรกรรมค้าง

ภาพประกอบต้นฉบับตามหัวข้อ: แผนภาพต้นฉบับตามหัวข้อโดย ChainView BTC866 · ChainView BTC866 Editorial · CC BY 4.0

ลำดับ nonce

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

แข่งขันเลขเดียวกัน

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

เก็บทั้งสองรายการ

เปรียบเทียบ nonce ที่ยืนยันกับที่ค้างจากแหล่งเชื่อถือได้ เก็บ hash ของทั้งตัวเก่าและตัวใหม่ ตรวจผู้รับ มูลค่า และเครือข่ายก่อนกดเร่งหรือยกเลิก พร้อมจดว่าแหล่งใดเห็นรายการเมื่อใด

ส่งซ้ำไม่แก้คิว

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

ยกเลิกไม่ย้อนสิ่งยืนยัน

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

ข้อมูลของแต่ละโหนด

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

แหล่งข้อมูล

  1. Ethereum transactions (เปิดในแท็บใหม่)
  2. Ethereum JSON-RPC (เปิดในแท็บใหม่)