ตั้งแต่ที่มีข่าวใหญ่เรื่องผู้ใช้งาน Coldcard ถูกแฮกเงินออกจากกระเป๋าออกไป แอดเชื่อว่าเพื่อน ๆ หลาย ๆ คนที่ได้ฟังข่าวนี้ก็ทำให้เกิดความกังวลใจให้คนที่เก็บ Bitcoin ด้วยตัวเองไม่มากก็น้อยเลยใช่ไหมครับ?
แต่เบื้องต้นแล้วแอดอยากให้เพื่อน ๆ สบายใจใน 2 ประเด็นนี้กันก่อนนะครับ
- ระบบบล็อกเชนของ Bitcoin ไม่ได้ถูกแฮก: โครงสร้างความปลอดภัยของ Bitcoin ยังคงแข็งแกร่งและทำงานถูกต้อง 100% อยู่ครับ
- ไม่ได้แปลว่า Hardware Wallet ยี่ห้ออื่นจะถูกแฮกด้วย : ปัญหาเกิดจากบั๊กของซอฟต์แวร์เฉพาะรุ่นของ Coldcard เท่านั้น แบรนด์อื่นอย่าง Trezor, OneKey, Blockstream Jade หรือ Keystone เองต่างก็ใช้ซอฟต์แวร์ที่แยกจากกันโดยสิ้นเชิง จึงไม่ได้รับผลกระทบใดๆ จากเหตุการณ์นี้ครับ
แล้วเกิดอะไรขึ้น เรามาหาต้นตอกันว่าจากข่าวแล้วกันครับ โดยสาเหตุที่แท้จริงเกิดจากขั้นตอนการสุ่มสร้างค่าความสุ่ม (Entropy) ก่อนจะนำไปแปลงเป็น Seed Phrase บน Coldcard Mk3 มีปัญหาครับ ซึ่งโดยปกติแล้ว
มาตรฐานความปลอดภัยปกติ
- กระเป๋า Seed Phrase 12 คำ ต้องมีขนาดของ Entropy 128 bits (2^{128} รูปแบบ)
- กระเป๋าSeed Phrase 24 คำ ต้องมีขนาดของ Entropy 256 bits (2^{256} รูปแบบ)
สิ่งที่เกิดขึ้นใน Coldcard Mk3 ที่ติดบั๊ก
- ซอฟต์แวร์สุ่มค่าภายในทำงานผิดพลาด ทำให้ความสุ่มที่ควรจะซับซ้อน ร่วงลงมาเหลือเพียง ~40 bits (2^{40} รูปแบบ)
เปรียบเทียบเวลาในการคาดเดาให้เห็นภาพ (Brute-Force Time)
- ระดับ 40 bits (2^{40} ประมาณ 1.1 ล้านล้านรูปแบบ): เป็นปริมาณที่น้อยมากในทางคณิตศาสตร์ การ์ดจอหรือคอมพิวเตอร์ทั่วไปของแฮกเกอร์ สามารถสุ่มคำนวณกวาดหาชุดคำที่ถูกต้องจนเจอได้ในเวลาเพียง ไม่กี่วินาทีถึงไม่กี่นาที เท่านั้นครับ
- ระดับ 128 bits (2^{128} ประมาณ 3.4 x 10^{38} รูปแบบ): เป็นมาตรฐานที่ปลอดภัยสูง ต่อให้ใช้ซูเปอร์คอมพิวเตอร์ทั้งหมดบนโลกรวมกันสุ่มหา ก็ต้องใช้เวลามากกว่า หลายล้านล้านปี
- ระดับ 256 bits (2^{256}ประมาณ 1.15 x 10^{77} รูปแบบ): มีจำนวนรูปแบบความเป็นไปได้มหาศาล ใกล้เคียงกับจำนวนอะตอมทั้งหมดในจักรวาล จึงเป็นไปไม่ได้เลยในทางทฤษฎีที่จะคาดเดาได้สำเร็จครับ
Seed Phrase เกิดขึ้นได้อย่างไร? (อธิบายแบบเข้าใจง่าย)
สำหรับเพื่อน ๆ มือใหม่ แอดขอสรุปกระบวนการเปลี่ยน "ค่าความสุ่มทางกายภาพ" หรือ Entropy ให้กลายเป็น "Seed Phrase 12 หรือ 24 คำ" ที่เราใช้จดใส่กระดาษเป็น Flow สั้นๆ ดังนี้นะครับ
[ Entropy (ค่าสุ่มกายภาพ 128/256 bits) ]
│
▼
[ SHA-256 Hash (คำนวณ Checksum ป้องกันพิมพ์คำผิด) ]
│
▼
[ Wordlist Index (แปลงตัวเลขสุ่มเป็นดรรชนีคำ) ]
│
▼
[ BIP-39 Seed Phrase (คำกู้คืนภาษาอังกฤษ 12 หรือ 24 คำ) ]
รายละเอียด 3 ขั้นตอนง่ายๆ
- Entropy (ค่าความสุ่มเบื้องต้น): คือตัวเลขสุ่มขนาด 128 หรือ 256 bits ที่สุ่มสร้างมาจากปรากฏการณ์ทางกายภาพที่ไม่สามารถคาดเดาได้ เช่น สัญญาณรบกวนทางไฟฟ้า รหัสอุณหภูมิในชิป หรือแรงดันไฟฟ้า เป็นต้น
- SHA-256 Hash & Checksum: นำค่า Entropy มาผ่านสมการ SHA-256 เพื่อสร้างส่วนท้ายที่เรียกว่า Checksum สำหรับใช้ตรวจเช็กเวลาเราพิมพ์คำกู้คืนว่าถูกต้องหรือไม่
- BIP-39 Mnemonic Conversion: นำชุดตัวเลขสุ่มรวมกับ Checksum มาแปลงออกมาระบุตำแหน่งคำภาษาอังกฤษ 12 หรือ 24 คำจากตารางมาตรฐาน BIP-39 (ซึ่งมีคำทั้งหมด 2,048 คำ)
"เมื่อเพื่อน ๆ เข้าใจแล้วว่า Seed Phrase ถูกสร้างมาจากค่าความสุ่ม (Entropy) เป็นหลัก คำถามสำคัญถัดมาคือ 'แล้ว Hardware Wallet แต่ละแบรนด์ มีวิธีดึงค่าความสุ่มมาจากไหน เพื่อให้มั่นใจว่า Seed Phrase ของเราจะไม่ซ้ำกับใครและไม่มีใครคาดเดาได้?'
เพราะแต่ละแบรนด์ต่างออกแบบระบบสุ่ม (TRNG - True Random Number Generator) และการเลือกใช้ชิปความปลอดภัย (Secure Element) ที่แตกต่างกันออกไปครับ ก่อนที่เราจะไปเจาะลึกรายละเอียดของแต่ละแบรนด์ แอดได้สรุปภาพรวมระบบความปลอดภัยและแหล่งสุ่ม Entropy ของ 4 แบรนด์ยอดนิยม มาให้เพื่อน ๆ ดูเพื่อนำมาเปรียบเทียบกันง่าย ๆ ในครับ"
ทำความรู้จักระบบสุ่มหลักของ Hardware Wallet แต่ละยี่ห้อ
1. Trezor
- แนวคิดการสร้าง : Trezor ใช้ระบบสุ่มแบบผสมผสานหลากแหล่ง (Multi-Source Entropy) โดยดึงความสุ่มจากฮาร์ดแวร์ภายในเครื่อง มาผ่านกระบวนการ Hash รวมกับค่าสุ่มภายนอกที่ส่งมาจากระบบปฏิบัติการของคอมพิวเตอร์/สมาร์ทโฟนที่เชื่อมต่อ ก่อนจะสรุปผลเป็น Seed Phrase
- ปัจจัยทางกายภาพที่ใช้สุ่ม (Physical Factors)
- Clock Jitter & Thermal Noise: สัญญาณรบกวนจากการผันผวนของรอบนาฬิกาและอุณหภูมิภายในไมโครคอนโทรลเลอร์ (MCU)
- Voltage Fluctuation ในชิป SE: ดึงค่าความสุ่มอนาลอกจากแรงดันไฟฟ้าภายในชิป Secure Element (ในรุ่น Safe 3, Safe 5, Safe 7)
- Host OS External Entropy: ค่าความสุ่มทางซอฟต์แวร์จากระบบปฏิบัติการที่เชื่อมต่อเข้ามา
- การผสมระหว่าง Hardware TRNG ภายในเครื่อง + Host OS ทำให้ต่อให้แหล่งสุ่มใดแหล่งหนึ่งบกพร่อง อีกแหล่งก็ยังคงรักษาความสุ่มขนาด 128/256 bits ไว้ได้อย่างปลอดภัยเสมอครับ
ลิงก์อ้างอิงทางการ (Official): Trezor Guide: What is Entropy and How Trezor Generates Your Wallet
2. OneKey
- แนวคิดการสร้าง : OneKey ใช้ Secure Element (EAL6+) เป็น Hardware-based TRNG เป็นหลัก โดยนำค่าความสุ่มจากหลายแหล่งมาผสมกัน (Mixing Entropy Sources) และมีวงจรตรวจสอบความผิดปกติของการสุ่มแบบเรียลไทม์ (TRNG Abnormality Checks) พร้อมวงจรประมวลผลย้อนหลัง (Post-processing Circuit) ที่ผ่านการรับรองมาตรฐานสากล AIS20/31 PTG.2 ก่อนนำค่าความสุ่มที่สมบูรณ์ไปแปลงเป็นคำกู้คืนตามมาตรฐาน BIP-39 (PBKDF2)
- ปัจจัยทางกายภาพที่ใช้สุ่ม (Physical Factors)
- Electronic Noise (สัญญาณรบกวนทางอิเล็กทรอนิกส์): ใช้ความสุ่มที่เกิดขึ้นตามธรรมชาติจากสัญญาณรบกวนทางไฟฟ้าในวงจรฮาร์ดแวร์ของชิป SE
- Ambient Environmental Noise: สกัดค่าความสุ่มเสริมจากสภาพแวดล้อมรอบข้างเข้ามาผสมใน Entropy Pool เช่น ความผันผวนของอุณหภูมิรอบเครื่อง (Temperature variations) และอาการแกว่งของรอบนาฬิกาชิป (Clock jitter)
- ชิป SE ผ่านการรับรองมาตรฐานสากล EAL6+ และมีวงจรตรวจเช็กความบกพร่องของ TRNG ย้อนหลังตามมาตรฐาน AIS20/31 PTG.2 เพื่อป้องกันไม่ให้ระบบเผลอนำค่าสุ่มที่ผิดปกติไปใช้งาน โดยกระบวนการสุ่มและคำนวณทั้งหมดจะประมวลผลอยู่ภายในชิปความปลอดภัยออฟไลน์ และไม่เคยส่งค่าสุ่มดิบออกนอกอุปกรณ์
🔗 ลิงก์อ้างอิงทางการ (Official): OneKey Help: How OneKey Hardware Wallets Generate Seed Phrases and Guarantee Randomness และOneKey Help: What is Secure Element (SE)?
3. Blockstream Jade
- แนวคิดการสร้าง : Jade ใช้โครงสร้างสะสมค่าความสุ่ม (Entropy Accumulator) ขนาด 32 ไบต์ โดยขณะเปิดเครื่อง ระบบจะรวบรวมค่าความสุ่มจากเซนเซอร์กายภาพหลากชนิด แล้วนำมาผ่านสมการ SHA-512 วนซ้ำเพื่อสร้างเป็นค่า Entropy 128/256 bits สำหรับแปลงเป็น Seed Phrase และเมื่อสร้างสำเร็จแล้ว Jade จะใช้ระบบ Virtual Secure Element (Blind Oracle) ร่วมกับรหัส PIN ของเรา ในการสร้างกุญแจเข้ารหัสเพื่อล็อกเก็บ Seed นั้นไว้ออฟไลน์ในเครื่องอย่างปลอดภัย
- ปัจจัยทางกายภาพที่ใช้สุ่ม (Physical Factors - Multi-Source):
- Camera Boot Snapshots: ภาพถ่ายหลายเฟรมสุ่มจากกล้องขณะเปิดเครื่อง (บนรุ่นที่มีกล้อง)
- Raw Radio Noise: สัญญาณรบกวนจากคลื่นวิทยุความถี่ไร้สาย โดยสั่งเปิดฟังก์ชัน bootloader_random_enable() สุ่มเก็บคลื่นขณะบูต
- CPU Counters & Clock Oscillators: ตัวนับรอบการทำงานของไมโครโปรเซสเซอร์
- Ambient Temperature & Battery State: ค่าความผันผวนของอุณหภูมิรอบเครื่องและสถานะแรงดันแบตเตอรี่
- User Interaction Timing: จังหวะเวลาในการกดปุ่มหรือหมุน Wheel ปรับเมนูของผู้ใช้
- ด้านการสุ่ม : เป็นกระบวนการเก็บค่าสุ่มจากค่ารบกวนทางกายภาพจากเซนเซอร์หลากชนิดมาผสมผ่านสมการ SHA-512 และเปิดเผยซอร์สโค้ดให้ตรวจสอบได้ 100% (Open-Source)
- ด้านการล็อกเก็บ Seed: แม้จะไม่มีชิป Secure Element กายภาพแบบปิดเพื่อรักษาความเป็น Open-Source แต่ Jade ทดแทนด้วยระบบ Virtual Secure Element (Blind Oracle) ซึ่งนำรหัส PIN ไปคำนวณรหัสลับ (ECDH) ร่วมกับเซิร์ฟเวอร์เพื่อสร้างกุญแจ AES-256 มาล็อกเข้ารหัสตัว Seed Phrase ไว้ออฟไลน์ หากมีการใส่ PIN ผิดเกิน 3 ครั้ง กุญแจเข้ารหัสบนเซิร์ฟเวอร์จะถูกลบทิ้งทันที ทำให้ดึงข้อมูลออกไปไม่ได้
ลิงก์อ้างอิงทางการ (Official): Blockstream Help: How Does Jade Generate My Recovery Phrase?
ลิงก์อ้างอิงทางการ (Official - การทำงานของ Virtual SE/Blind Oracle): Blockstream Help: How Does Jade Protect My Recovery Phrase with a Blind Oracle?
4. Keystone
- แนวคิดการสร้าง : Keystone ใช้สถาปัตยกรรมชิปความปลอดภัยแบบสามตัว (Triple Secure Elements) ซึ่งภายในชิป SE มี TRNG เฉพาะ ทำงานร่วมกันในการสร้าง Seed Phrase โดยนำค่าความสุ่มทางฮาร์ดแวร์จริง (TRNG) ที่สุ่มได้มารวมกับค่าทางกายภาพแล้วส่งเข้าไปยัง Entropy Pool ก่อนจะนำไปคำนวณสร้าง Seed Phrase ตามมาตรฐาน BIP-39 แบบออฟไลน์ 100%
- ปัจจัยทางกายภาพที่ใช้สุ่ม (Physical Factors):
- Triple SE Hardware TRNG Modules : ภายในเนื้อสารกึ่งตัวนำซิลิกอนของชิป Secure Element (ARM Cortex M0) ทั้ง 3 ตัว จะมีโมดูล TRNG ทำหน้าที่วัดความผันผวนของกระแสไฟฟ้าระดับจิ๋ว (Thermal & Shot Noise) ที่เกิดขึ้นตามธรรมชาติทางฟิสิกส์เมื่อมีกระแสไฟไหลผ่าน แล้วนำค่าสุ่มจากชิปทั้ง 3 ตัวมารวมเป็น Entropy Pool เดียวกัน
- MCU Thermal & Timing Fluctuations: ค่าความสุ่มเสริมจากความผันผวนของจังหวะเวลาประมวลผล (Clock Jitter) และสัญญาณรบกวนทางความร้อนของไมโครคอนโทรลเลอร์หลัก (MCU) ขณะทำงาน นำมาผสมรวมเข้ากับค่าสุ่มของชิป SE
- การกระจายตัวสุ่มทางฮาร์ดแวร์ไปบนชิป SE ถึง 3 ตัว ช่วยขจัดความเสี่ยงเรื่องการพึ่งพาชิปตัวเดียว (Single Point of Failure) เพราะต่อให้ชิปตัวใดตัวหนึ่งเกิดความบกพร่อง ค่าสุ่มผสมจากชิปที่เหลือก็ยังคงความสุ่มรัดกุมสูง และกระบวนการตั้งค่าทั้งหมดทำงานอยู่ออฟไลน์แบบตัดขาดสัญญาณไร้สาย (100% Air-gapped)
ลิงก์อ้างอิงทางการ (Official - คู่มือการสร้าง Seed ออฟไลน์): Keystone 3 Pro Official Guide - Offline Seed Generation
ลิงก์อ้างอิงทางการ (Official - สเปกฮาร์ดแวร์ TRNG บน GitHub): Keystone Developer Documents - Secure Element Datasheet
ตารางเปรียบเทียบภาพรวม Hardware Wallet 4 ยี่ห้อหลัก
| ยี่ห้อ / รุ่นหลัก | ชิปความปลอดภัย (Secure Element) | แหล่งสุ่มค่า Entropy (Entropy Source) | ระดับ Open Source |
|---|---|---|---|
| Trezor(Safe 3 / Safe 5 / Safe 7) | OPTIGA™ Trust M (EAL6+)(Safe 7 ใช้ Dual SE: TROPIC01 + OPTIGA Trust M) | Hardware TRNG (MCU/SE) + Host OS Randomness | Open Source ทั้ง Firmware & Hardware |
| OneKey(Classic 1S / 1S Pure / Pro) | THD89 (EAL6+)(รุ่น Pro ใช้ EAL6+ 4ชิ้น) | EAL6+ SE Hardware TRNG + MCU Noise | Open Source (App & Firmware) |
| Blockstream Jade(Jade Core / Jade Plus) | Virtual Secure Element(Blind Oracle - PIN Split) | Multi-Source Entropy (Sensors/Camera/Radio TRNG/App) | Open Source 100% ทั้ง HW & SW |
| Keystone(Keystone 3 Pro) | Triple Secure Element(EAL6+ จากผู้ผลิตหลายราย) | Triple SE Hardware TRNGs + MCU Noise Pool | Open Source Firmware & Hardware |
สรุป
แอดอยากจะฝากทุกคนไว้ว่า เหตุการณ์ในครั้งนี้เป็นเครื่องตอกย้ำเรื่องของการ Self-Custody อย่างแท้จริงครับ ในโลกที่เราต้องการเป็นเจ้าของสินทรัพย์ดิจิทัลด้วยตนเอง โดยไม่ต้องผ่านตัวกลางหรือธนาคาร สิ่งที่มาพร้อมกับอิสรภาพทางการเงิน (Financial Sovereignty) คือ "ความรับผิดชอบ"
การเลือกใช้ Hardware Wallet ไม่ใช่แค่การซื้ออุปกรณ์มาเสียบแล้วจบ แต่คือการเรียนรู้ความเข้าใจในหลักการทำงานพื้นฐาน ไม่ว่าจะเป็นเรื่อง Entropy, Passphrase หรือการกู้คืนกระเป๋า การที่แบรนด์ต่าง ๆ มีแนวทางการออกแบบที่แตกต่างกัน เป็นเรื่องที่ดีสำหรับผู้บริโภคในการเลือกเครื่องมือที่ตอบโจทย์ความเสี่ยงและไลฟ์สไตล์ของเรามากที่สุดครับ






Share:
ถอดบทเรียนจากข่าว Coldcard แล้ว "Self-Custody" ยังจำเป็นและปลอดภัยอยู่หรือไม่