What is Double Signing?
Double Signing คือการที่ผู้ตรวจสอบลงนามข้อความสองรายการที่ขัดแย้งกันสำหรับชั้นสูงหรือรอบเดียวในเครือข่าย proof of stake คิดถึงบล็อกสองบล็อกหรือโหวตสองรายการที่อ้างว่าเป็น “อันเดียว” ในเวลาพร้อมกัน มันเหมือนการเช็คอินที่สองคอนเสิร์ตในเวลาเดียวกันแล้วคาดหวังให้ความปลอดภัยยิ้มออกมา
“Double Signing เทียบเท่ากับการใช้จ่ายซ้ำสองครั้ง” ไม่ใช่ทั้งหมด การใช้จ่ายซ้ำสองเป็นกลลวงธุรกรรม ส่วน Double Signing คือการละเมิดข้อตกลงโดย validators ที่ลงนามข้อมูลที่ขัดแย้งกันสำหรับช่องเดียว
How Double Signing works
ทัวร์สั้นๆ เกี่ยวกับวิธีที่ใครบางคนทำผิดด้วยเหตุผลตั้งใจหรือโดยบังเอิญ
- Step 1: กุญแจ validator ออนไลน์ พร้อมลงนามข้อความสำหรับเครือข่าย
- Step 2: ผู้ดำเนินการเริ่มโหนดตัวที่สองด้วยกุญแจเดียวกันหรือไคลเอนต์ตั้งค่าผิดพลาด failover อุ๊ป
- Step 3: โหนดทั้งสองสร้างลายเซ็นสำหรับชั้นสูงเดียวกัน แต่อยู่บน payload ที่ต่างกัน
- Step 4: หากมี temporary network forks แต่ละฝั่งอาจได้รับลายเซ็นต่างกันจากกุญแจเดียวกัน
- Step 5: เพียร์ตรวจพบความขัดแย้ง บันทึกหลักฐาน และโปรโตคอลลงโทษผู้ลงนาม
ใช่ มันอาจเป็นการคลิกผิดง่ายๆ พร้อมผลลัพธ์ที่ไม่ง่าย
Why Double Signing Matters
เหตุผลว่าทำไมคุณควรใส่ใจถึงแม้คุณจะไม่รัน node:
- Benefit: รู้ว่ามีอยู่ช่วยให้คุณหลีกเลี่ยงการตั้งค่าที่เสี่ยงต่อเงินทุนและชื่อเสียง
- Perspective: เครือข่ายส่วนใหญ่ตอบสนองด้วย slashing เพราะการกระทำดังกล่าวทำให้ความน่าเชื่อถือในการ consensus ลดลง
- Relevance: คุณจะเห็นถูกอ้างถึงในเอกสาร staking, โหวต DAO และแดชบอร์ด validator
Run only one active signer for your key and treat failover with care. Use alerts, sentry design, and a remote signer that refuses to sign twice for the same height. Evidence lives on the blockchain, so there is no hiding.
Key Characteristics of Double Signing
ลักษณะหลักที่คุณสามารถสังเกตและจำได้:
- Conflict: สองลายเซ็นจากกุญแจเดียวกันสำหรับชั้นสูงหรือรอบเดียวบนข้อมูลต่างๆ
- Punishment: มักจะทำให้ stake สูญหายและ timeout จากการ validate
- Detectable: หลักฐานถูกเผยแพร่และเก็บรักษาไว้ ทำให้เพื่อนร่วมเครือข่ายสุจริต
Variations
เครือข่ายต่างๆ เรียกมันด้วยชื่อที่ต่างกัน แต่เป็นชนิดเดียวกันของการผิดพลาด:
- Double vote: สองโหวตสำหรับชั้นสูงเดียวกันบนบล็อกที่ต่างกัน
- Duplicate proposal: บล็อกที่เสนอสองรายการสำหรับหนึ่งรอบจากผู้เสนอหนึ่งคน
- Cross fork signing: กุญแจเดียวกันลงนามบนสาขาที่แข่งขันกันระหว่างช่วงเวลาชั่วคราว
ส่วนมาก Double Signing เกิดโดยอุบัติเกิด การใช้งานสองเครื่องด้วยกุญแจเดียวกันเพียงไม่กี่วินาทีเพียงพอที่จะกระตุ้นมัน
Example
validator เปิดโหนดสำรองโดยไม่ปิดโหนดหลัก ทั้งคู่ลงนามบล็อกเดียวกันในชั้นสูงเดียวกัน และเครือข่ายแจ้งเตือน Double Signing ภายในไม่กี่นาที
Fun Fact
หลายไคลเอนต์มีฟีเจอร์ในตัวสำหรับ “double sign protection” ที่ติดตามชั้นสูงสุดที่กุญแจลงนาม เช่นบัณฑิตจราจรเล็กๆ ที่ปฏิเสธบัตรประจำตัวใบที่สองของคุณ
Wrap-Up
สั้นๆ: Double Signing คือเวอร์ชัน Consensus ของการอยู่ในสองสถานที่พร้อมกันและถูกปรับ เนื่องจากแสดงว่าไม่เป็นไร