BIP-39 Passphrase (25th Word): ความปลอดภัยของกระเป๋าเงินขั้นสูง
BIP-39 passphrase — ซึ่งมักเรียกกันว่า "25th word" — เป็นหนึ่งในฟีเจอร์ความปลอดภัยที่มีประสิทธิภาพมากที่สุดแต่มักเข้าใจผิดกันมากที่สุดที่มีอยู่ในกระเป๋าเงินคริปโทเคอร์เรนซี่ มันเพิ่มสตริงที่เลือกโดยผู้ใช้เข้าไปในกระบวนการ seed derivation ซึ่งทำให้ mnemonic phrase เดียวกันสร้างชุดคีย์และที่อยู่ที่แตกต่างกันโดยสิ้นเชิง เมื่อใช้อย่างถูกต้อง จะให้การป้องกันแบบลึกต่อการบุกรุกของ seed phrase เมื่อใช้อย่างประมาท อาจทำให้สูญเสียเงินทั้งหมดอย่างถาวร
คำแนะนำนี้ครอบคลุมวิธีการทำงานของ passphrase อย่างแน่นอน เวลาที่ควรใช้มัน ความเสี่ยงที่มันนำมาเกิด และวิธีการใช้งานอย่างปลอดภัย
วิธีการทำงานของ Passphrase
กลไกทางเทคนิค
ตามที่อธิบายในมาตรฐาน BIP-39 กระบวนการ seed derivation ใช้ PBKDF2-HMAC-SHA512:
Seed = PBKDF2(
password = mnemonic_words,
salt = "mnemonic" + passphrase,
iterations = 2048,
key_length = 512 bits
)
เมื่อไม่มีการตั้ง passphrase salt จะเป็นเพียงสตริง "mnemonic" เท่านั้น เมื่อมีการให้ passphrase มันจะต่อท้ายเข้ากับ salt: "mnemonic" + "YourPassphrase" เนื่องจาก salt แตกต่างกัน ผลลัพธ์ของ PBKDF2 จึงแตกต่างกันโดยสิ้นเชิง ซึ่งสร้างคีย์หลักที่แตกต่างกันโดยสิ้นเชิง และด้วยเหตุนี้จึง derivation paths, private keys, public keys, และ addresses ต่างกันโดยสิ้นเชิง
คุณสมบัติหลัก
Passphrase ทุกตัวมีความสำคัญ ไม่มีกลไกการตรวจสอบหรือการยืนยัน passphrase ใดๆ สตริงใดๆ — รวมถึงสตริงว่าง ตัวอักษรเดียว หรือประโยค 500 ตัวอักษร — สร้าง wallet ที่ถูกต้อง การป้อน passphrase ที่ผิดจะไม่สร้างข้อความแสดงข้อผิดพลาด แต่จะเปิด wallet ที่แตกต่างกันโดยเงียบๆ (โดยปกติจะเป็นอันที่ว่าง)
Mnemonic เดียวกัน wallet ต่างกัน Mnemonic 24 คำพร้อม passphrase "alpha" สร้าง wallet ที่แตกต่างกันโดยสิ้นเชิงจาก mnemonic เดียวกันพร้อม passphrase "bravo" ไม่มีความสัมพันธ์ทางการเข้ารหัสลับระหว่างกระเป๋าทั้งสองที่ผู้โจมตีสามารถตรวจพบได้
ตัวอักษรตัวใหญ่และตัวเล็กและการเข้ารหัสมีความสำคัญ "MyPassphrase" และ "mypassphrase" สร้าง wallet ที่แตกต่างกัน Passphrase ที่มีช่องว่างตามท้ายจะแตกต่างจากอันที่ไม่มี Passphrase ได้รับการทำให้เป็นมาตรฐานโดยใช้ UTF-8 NFKD ก่อนแฮชชิ่ง แต่นอกเหนือจากนั้น จำเป็นต้องตรงกันอย่างแน่นอนตามตัวอักษร
เหตุใดจึงควรใช้ Passphrase
การป้องกันการขโมย Seed Phrase
หากผู้โจมตีขโมย seed phrase 24 คำของคุณ (จากสำเนาที่พิมพ์บนกระดาษ แผ่นโลหะ หรืออุปกรณ์ที่ถูกบุกรุก) พวกเขาสามารถเข้าถึง wallet ทั้งหมดได้ — เว้นแต่ว่า passphrase ได้ตั้งค่าไว้ ปราศจาก passphrase พวกเขาจะเห็นเพียง "base" wallet (wallet ที่ได้มาจาก passphrase ว่าง) เท่านั้น เงินจริงของคุณ ซึ่งเก็บไว้ใน wallet ที่ป้องกันด้วย passphrase ยังคงไม่สามารถเข้าถึงได้
นี่เปลี่ยนความปลอดภัยของคุณจากปัจจัยเดียว (สิ่งที่คุณมี — seed phrase) เป็นสองปัจจัย (สิ่งที่คุณมี — seed phrase บวกกับสิ่งที่คุณรู้ — passphrase)
Plausible Deniability
เนื่องจาก passphrase ทุกตัวสร้าง wallet ที่ถูกต้อง คุณสามารถรักษา wallet หลายตัวจาก seed phrase เดียวกันได้:
- ไม่มี passphrase — Decoy wallet พร้อมจำนวนเงินจำนวนน้อย
- Passphrase "alpha" — Wallet หลักของคุณพร้อมเงินถือครอง ที่สำคัญ
- Passphrase "bravo" — Wallet รองสำหรับการป้องกันเพิ่มเติม
หากถูกบังคับให้เปิดเผย seed phrase ของคุณ (การโจมตี "$5 wrench") คุณสามารถให้ seed phrase ได้โดยไม่ต้องให้ passphrase ผู้โจมตีเห็น wallet จริงพร้อมเงินบางส่วน ไม่มีวิธีทราบว่า wallet ที่ป้องกันด้วย passphrase เพิ่มเติมนั้นมีอยู่หรือไม่ และอาจพอใจกับสิ่งที่พวกเขาพบ
นี่มักเรียกว่าเป็นกลยุทธ์ "duress wallet" หรือ "hidden wallet"
การป้องกันการบุกรุก Hardware
หากกระเป๋า hardware มีช่องโหว่ในห่วงโซ่อุปทาน (ประตูหลังในตัวสร้างเลขสุ่ม เช่น) ผู้โจมตีอาจรู้ seed phrase ที่สร้างขึ้นโดยอุปกรณ์ Passphrase ที่เลือกโดยผู้ใช้ซึ่งไม่เคยป้อนเข้าไปหรือสร้างขึ้นโดยกระเป๋า hardware เพิ่มเอนโทรปีที่ผู้โจมตีไม่มี
วิธีตั้งค่า Passphrase
Hardware Wallets
กระเป๋า hardware หลักส่วนใหญ่รองรับ BIP-39 passphrase:
Ledger:
- ใน Ledger Live ไปที่ Settings
- เปิดใช้งาน "Passphrase" ในส่วน Advanced settings
- มีสองโหมด: "Attached to PIN" (เก็บแฮชบนอุปกรณ์เพื่อสะดวก) และ "Temporary" (ต้องป้อนทุกครั้ง)
- เลือก passphrase ของคุณและยืนยันมัน
Trezor:
- ใน Trezor Suite ให้เปิดใช้งานฟีเจอร์ passphrase
- ทุกครั้งที่คุณเชื่อมต่อ Trezor จะขอให้ป้อน passphrase
- คุณสามารถป้อน passphrase ใดๆ ก็ได้ — ไม่มีการยืนยันที่เก็บไว้
Coldcard:
- นำทางไปที่ Passphrase ในเมนู
- ป้อน passphrase ของคุณบนอุปกรณ์
- Coldcard แสดงที่อยู่แรกที่ได้มา — ตรวจสอบให้แน่ใจว่าตรงกับความคาดหวัง
Software Wallets
Software wallets ที่รองรับ BIP-39 passphrases โดยทั่วไปจะนำเสนอตัวเลือกระหว่างการตั้งค่าเริ่มต้นหรือ seed import มองหา "Advanced options" "Optional passphrase" หรือ "25th word" ในการไหลของการตั้งค่า
การเลือก Passphrase ที่แข็งแรง
Passphrase ควรมี entropy ที่เพียงพอเพื่อต้านทานการโจมตี brute-force หาก seed phrase ถูกบุกรุก:
| ประเภท Passphrase | Entropy โดยประมาณ | เวลาในการ Brute-Force (ASIC) |
|---|---|---|
| Common English word | ~10 bits | วินาที |
| Random 4-word phrase | ~50 bits | ปี |
| Random 6-word phrase | ~75 bits | ล้านปี |
| 20+ random characters | ~120+ bits | ความตาย ของจักรวาล |
ข้อเสนอแนะ:
- ใช้อย่างน้อย 4-6 คำที่เลือกแบบสุ่มหรือ 16+ ตัวอักษรแบบสุ่ม
- อย่าใช้ข้อมูลส่วนบุคคล (ชื่อ วันเกิด วลีทั่วไป)
- อย่าใช้คำเดียวจากพจนานุกรม
- พิจารณาใช้ passphrase generator (เช่น
diceware) แทนการสร้างด้วยตัวเอง
กลยุทธ์ Passphrase Backup
Passphrase ตอนนี้เป็นส่วนหนึ่งของความลับการกู้คืนของคุณ หากคุณสูญหาย seed phrase หรือ passphrase คุณจะไม่สามารถเข้าถึงเงินของคุณได้ สิ่งนี้สร้างความท้าทายด้าน backup: คุณต้องเก็บทั้งสองอย่าง แต่การเก็บพวกเขาไว้ด้วยกันจะทำให้จุดประสงค์หายไป
กลยุทธ์ที่ 1: ที่เก็บแยกต่างหาก
- เก็บ seed phrase ในสถานที่ A (เช่น ตู้นิรภัยกันไฟที่บ้าน)
- เก็บ passphrase ในสถานที่ B (เช่น ลังถมทองเถาะเงิน ในธนาคาร)
- ผู้โจมตีต้องบุกรุกสถานที่ทั้งสอง
กลยุทธ์ที่ 2: การจำ + Backup ทางกายภาพ
- จำ passphrase ได้
- เก็บสำเนา passphrase ที่เข้ารหัสลับในสถานที่ที่แยกจากกับ seed phrase
- หากคุณหมดสติ สำเนา encrypted จะให้มั่นใจว่าทายาทของคุณสามารถกู้คืนเงินได้
กลยุทธ์ที่ 3: Shamir's Secret Sharing สำหรับ Passphrase
- แบ่ง passphrase ออกเป็นหุ้นโดยใช้ Shamir's Secret Sharing
- แจกจ่ายหุ้นให้กับคู่สัญญาที่เชื่อถือได้หลายราย
- ต้องใช้ M-of-N หุ้นเพื่อสร้างใหม่
สิ่งที่ไม่ควรทำ
- อย่าเก็บ passphrase ไว้ข้างๆ seed phrase สิ่งนี้จะทำให้ประโยชน์ด้านความปลอดภัยหายไปโดยสิ้นเชิง
- อย่าพึ่งพาการจำเพียงอย่างเดียว ความจำมีความผิดพลาดได้ โดยเฉพาะในระยะเวลาหลายปีหรือหลายทศวรรษ
- อย่าใช้ passphrase ที่คุณไม่สามารถสร้างใหม่ได้อย่างน่าเชื่อถือ จำไว้ว่าตัวอักษรตัวใหญ่ช่องว่าง และตัวอักษรที่แน่นอนทั้งหมดมีความสำคัญ
- อย่าเก็บ passphrase ไว้ใน password manager ที่มี seed phrase ด้วย
ความเสี่ยงและข้อจับตัวอักษร
ความเสี่ยงที่ 1: สูญเสียเงินอย่างถาวรจากการลืม Passphrase
นี่คือความเสี่ยงที่ยิ่งใหญ่ที่สุดของการใช้ passphrase ไม่เหมือนกับ seed phrase ที่มี checksum ไม่มีกลไกในการตรวจสอบว่า passphrase "ถูกต้อง" หรือไม่ หากคุณลืม ความจำผิด แม้แต่ตัวอักษรเดียว หรือนำเข้าตัวอักษรที่ซ่อนอยู่ (trailing space ทำให้เกิด Unicode normalization) คุณจะเปิด wallet ที่แตกต่างกัน ปล่อย และเงินของคุณไม่สามารถเข้าถึงได้ตลอดไป
การบรรเทา: ทดสอบ passphrase ของคุณอย่างถูกต้องก่อนส่งเงิน ตั้งค่า wallet ตรวจสอบที่อยู่รับต้นแบบ ส่งจำนวนเงินจำนวนน้อย กู้คืนจาก seed phrase + passphrase บนอุปกรณ์อื่น และยืนยันว่าคุณสามารถเข้าถึงเงินได้
ความเสี่ยงที่ 2: Keylogging ระหว่างการป้อน Passphrase
Passphrase ต้องป้อนเข้าไปใน wallet ในบางจุด บน software wallet นี่หมายถึงการพิมพ์ลงบนคอมพิวเตอร์ — ซึ่งอาจจับภาพหรือบันทึกหน้าจอได้ บน hardware wallet ที่มีการป้อนบนอุปกรณ์ (Coldcard, Trezor) ป passphrase ได้ป้อนบนหน้าจออุปกรณ์ซึ่งปลอดภัยกว่ามาก
การบรรเทา: ป้อน passphrase เฉพาะบน hardware wallet ที่มีการป้อนบนอุปกรณ์เท่านั้น หรือบนคอมพิวเตอร์ที่เชื่อมต่ออากาศแยกจากกัน
ความเสี่ยงที่ 3: ความซับซ้อนของมรดก
การใช้ passphrase เพิ่มความซับซ้อนในการวางแผนมรดก ทายาทของคุณต้องการ:
- Seed phrase
- Passphrase
- ความรู้ว่า passphrase มีอยู่และจำเป็น
- คำแนะนำเกี่ยวกับวิธีการใช้
หากไม่มีข้อใดข้อหนึ่งนี้ การสืบทอดจะล้มเหลว ดูคำแนะนำ Seed Phrase guide ของเรา สำหรับกลยุทธ์การวางแผนมรดกที่คำนึงถึง passphrases
ความเสี่ยงที่ 4: ความรู้สึกความปลอดภัยเท็จ
Passphrase ที่อ่อนแอ (คำทั่วไปเดียว วันเกิด ชื่อสัตว์เลี้ยง) สามารถ brute-force ได้หาก ผู้โจมตีมี seed phrase ผู้โจมตีที่มี seed phrase และคลัสเตอร์ GPU สามารถทดสอบรหัสผ่าน ผู้สมัครหลายพันล้านต่อหน้าฟังก์ชัน PBKDF2 ที่ทราบ ใช้ passphrase ที่แข็งแรงและสร้างแบบสุ่ม
ความเสี่ยงที่ 5: พิมพ์ผิดระหว่างการตั้งค่า
หากคุณตั้งค่า wallet ด้วย passphrase ที่มี typo ที่ไม่สังเกตเห็น wallet จะทำงานตามปกติ — คุณจะได้รับเงินและทำธุรกรรมสำเร็จ แต่ครั้งต่อไปที่คุณกู้คืนจาก seed phrase และป้อน passphrase โดยไม่มี typo (หรือมี typo ต่างกัน) คุณจะได้ wallet ที่แตกต่างกัน เงินของคุณถูกกักไว้หลัง typo ตอนนี้
การบรรเทา: หลังจากการตั้งค่า ให้กู้คืน wallet บนอุปกรณ์อื่นทันที โดยใช้ seed phrase + passphrase เพื่อตรวจสอบว่ามีที่อยู่เดียวกันปรากฏขึ้น
ความเข้าใจผิด "25th Word"
คำว่า "25th word" เป็นการทำให้เรียบง่ายซึ่งอาจทำให้เข้าใจผิด:
- Passphrase ไม่ได้จำกัดอยู่เพียง BIP-39 word list words เท่านั้น สามารถเป็นสตริง UTF-8 ใดก็ได้
- Passphrase ไม่ได้เข้ารหัสเป็น mnemonic word เพิ่มเติม — มันถูกใช้เป็นส่วนหนึ่งของ PBKDF2 salt
- Passphrase ไม่มี checksum ไม่เหมือนกับ 24th word ของ mnemonic ซึ่งมี checksum bits
- Mnemonic 12 คำสามารถมี passphrase ได้เช่นกัน — มันจะเป็น "13th word" ตามตรรกะนี้ แต่คำว่า "25th word" ใช้แบบทั่วไป
คำว่าถูกต้องทางเทคนิคคือ "BIP-39 passphrase" หรือ "mnemonic passphrase"
ใช้ SafeSeed Key Derivation Tool เพื่อดูว่า passphrase ที่แตกต่างกันสร้างที่อยู่ที่แตกต่างกันอย่างไรจาก seed phrase เดียวกัน ป้อน mnemonic ทดสอบพร้อมและไม่มี passphrase เพื่อสังเกตผลกระทบ การคำนวณทั้งหมดเกิดขึ้นในเบราว์เซอร์ของคุณ — ไม่มีการส่งข้อมูล
Passphrase vs. Wallet PIN vs. Password
แนวคิดสามข้อนี้มักสับสนกับ:
| คุณสมบัติ | BIP-39 Passphrase | Wallet PIN | Wallet Password |
|---|---|---|---|
| สิ่งที่ป้องกัน | Seed derivation | Device access | Application access |
| ที่เก็บ | ไม่เก็บไว้ (คุณจำ) | On device | On device/server |
| สามารถเปลี่ยนแปลงได้ | ไม่ (สร้าง wallet ใหม่) | ใช่ | ใช่ |
| หากลืม | เงินไม่สามารถเข้าถึงได้ | Device reset, restore from seed | Password reset |
| Brute-force target | PBKDF2 with seed | Device lockout | Implementation-dependent |
| ขอบเขต | Wallets ทั้งหมดจาก seed | Single device | Single application |
Passphrase ต่างกันโดยพื้นฐานเพราะมันเปลี่ยนคีย์ที่มาจาก PIN หรือ password เพียงแค่ประตูการเข้าถึงคีย์ที่มีอยู่แล้วบนอุปกรณ์
กรณีการใช้งานขั้นสูง
Hidden Wallets หลายตัว
ผู้ใช้ขั้นสูงสามารถรักษา wallet หลายตัวจาก seed phrase เดียว:
- Empty passphrase: จำนวนเงินเล็กน้อย (decoy)
- Passphrase A: Main savings
- Passphrase B: Trading allocation
- Passphrase C: Emergency reserve
Wallet แต่ละตัวเป็นอิสระโดยสิ้นเชิง ไม่มีลิงก์ on-chain ระหว่างพวกเขา ความเสี่ยงจะเพิ่มขึ้นตามจำนวน passphrases ที่คุณต้องจำและสำรองข้อมูล
รวมกับ Multi-Signature
สำหรับสถาบันหรือการจัดเก็บมูลค่าสูงมากๆ รวม BIP-39 passphrase เข้ากับ multi-signature:
- คีย์ของผู้ลงนามแต่ละคนได้มาจาก seed phrase + passphrase เฉพาะ
- ผู้โจมตีต้องได้รับ seed phrases หลายตัว และ passphrases ที่สอดคล้องกัน
- สิ่งนี้ให้ชั้นความปลอดภัยอิสระหลายชั้น
FAQ
BIP-39 passphrase หรือ "25th word" คืออะไร
BIP-39 passphrase เป็นสตริงที่เลือกโดยผู้ใช้ทางเลือกที่เพิ่มเข้าไปในกระบวนการ seed derivation (PBKDF2 salt) เมื่อใช้ มันทำให้ mnemonic seed phrase เดียวกันสร้างชุดคีย์และที่อยู่ที่แตกต่างกันโดยสิ้นเชิง มันมักเรียกว่า "25th word" แม้ว่ามันสามารถเป็นสตริงข้อความใดก็ได้ ไม่ใช่แค่ BIP-39 word
ฉันสามารถเปลี่ยน passphrase ของฉันได้หรือไม่
ไม่ใช่ในวิธีที่ password สามารถเปลี่ยนแปลงได้ เนื่องจาก passphrase กำหนดคีย์ที่ได้มา การเปลี