บทช่วยสอนตัวสร้างวลีเมล็ด: สร้าง BIP-39 Mnemonics ที่ปลอดภัย
วลีเมล็ดเป็นข้อมูลที่สำคัญที่สุดส่วนหนึ่งในการตั้งค่าเครื่องปรับอากาศของคุณ มันคือมหาปุ่มหลักที่นำมาซึ่งคีย์ส่วนตัวทั้งหมด คีย์สาธารณะ และที่อยู่ของคุณ สูญหายไป และคุณจะสูญเสียการเข้าถึงกองทุนของคุณ เปิดเผย และใครก็ได้สามารถขโมยทุกอย่าง บทช่วยสอนนี้จะนำคุณไปใช้ตัวสร้างวลีเมล็ดของ SafeSeed เพื่อสร้าง BIP-39 compliant mnemonic phrase ด้วยความปลอดภัยสูงสุด
สร้างวลีเมล็ด BIP-39 ที่ safeseed.app/tools/seed-generator/ — ทั้งหมดทำงานฝั่งไคลเอนต์ ไม่มีการส่งข้อมูลไปที่เซิร์ฟเวอร์ใด
วลีเมล็ด BIP-39 คืออะไร
BIP-39 (Bitcoin Improvement Proposal 39) กำหนดมาตรฐานสำหรับการเข้ารหัสเอนโทรปีเข้ารหัสเป็นลำดับของคำภาษาอังกฤษทั่วไป แทนที่จะสำรองข้อมูลตัวเลขไบนารี 256 บิต คุณจะสำรองข้อมูลคำ 12 หรือ 24 คำที่อ่านง่ายเช่น "abandon" "ability" หรือ "zoo"
วิธีการทำงาน
- การสร้างเอนโทรปี: ตัวสร้างตัวเลขสุ่มที่ปลอดภัยทางการเข้ารหัสจะสร้าง 128 บิต (สำหรับ 12 คำ) หรือ 256 บิต (สำหรับ 24 คำ) ของความสุ่ม
- การตรวจสอบ: แฮช SHA-256 ของเอนโทรปีจะให้การตรวจสอบ สำหรับเอนโทรปี 128 บิต บิตการตรวจสอบ 4 บิตจะต่อท้าย สำหรับเอนโทรปี 256 บิต บิตการตรวจสอบ 8 บิตจะต่อท้าย
- การแมปคำ: เอนโทรปีรวม + การตรวจสอบจะแบ่งออกเป็นกลุ่มขนาด 11 บิต ค่า 11 บิตแต่ละค่าแมปไปยังคำหนึ่งในรายการคำ BIP-39 จำนวน 2,048 คำ
- การอนุมานเมล็ด: วลีช่วยจำจะถูกแปลงเป็นเมล็ด 512 บิตโดยใช้ PBKDF2-HMAC-SHA512 ด้วยการทำซ้ำ 2,048 ครั้ง Passphrase ที่เป็นทางเลือกสามารถรวมอยู่ในขั้นตอนนี้
ผลลัพธ์คือชุดคำที่กำหนดการทำให้เกิดชุดคีย์เดียวกันทุกครั้ง บนวอลเล็ตใด ๆ ที่นำ BIP-39 มาใช้
12 คำเทียบกับ 24 คำ
| คุณสมบัติ | 12 คำ (128-บิต) | 24 คำ (256-บิต) |
|---|---|---|
| เอนโทรปี | 128 บิต | 256 บิต |
| ระดับความปลอดภัย | 2^128 การผสมผสานที่เป็นไปได้ | 2^256 การผสมผสานที่เป็นไปได้ |
| ความต้านทาน Brute force | ปฏิบัติไม่สามารถทำลายได้อย่างแท้จริง | ปฏิบัติไม่สามารถทำลายได้อย่างแท้จริง |
| ความสะดวกในการสำรองข้อมูล | ง่ายกว่าในการเขียนและจัดเก็บ | คำมากกว่าในการจัดการ |
| การนำมาใช้ในอุตสาหกรรม | ทั่วไปในวอลเล็ตมือถือ | มาตรฐานสำหรับวอลเล็ตฮาร์ดแวร์ |
| แนะนำสำหรับ | การถือครองปานกลาง | การถือครองอย่างมีนัยสำคัญ การเก็บรักษาระยะยาว |
วลี 12 คำและ 24 คำทั้งสองให้ความปลอดภัยที่เกินกว่าสิ่งที่ผู้โจมตีใด ๆ สามารถบังคับให้ใช้กับเทคโนโลยีปัจจุบันหรือที่คาดการณ์ได้ การเลือกระหว่างทั้งสองส่วนใหญ่เป็นเรื่องของธรรมเนียมปฏิบัติและการตั้งค่าส่วนบุคคล วอลเล็ตฮาร์ดแวร์ส่วนใหญ่ใช้ 24 คำเป็นค่าเริ่มต้น ในขณะที่วอลเล็ตมือถือจำนวนมากใช้ 12 คำ
ทีละขั้นตอน: การสร้างวลีเมล็ดของคุณ
ข้อกำหนดเบื้องต้น
ก่อนที่คุณจะเริ่มต้น โปรดพิจารณาข้อกำหนดด้านความปลอดภัยของคุณ:
- สำหรับการเรียนรู้และการทดสอบ: คุณสามารถใช้ SafeSeed โดยตรงในเบราว์เซอร์ของคุณด้วยการเชื่อมต่ออินเทอร์เน็ต
- สำหรับกองทุนจริง (จำนวนปานกลาง): ปิดแท็บเบราว์เซอร์และแอปพลิเคชันที่ไม่จำเป็น ตรวจสอบให้แน่ใจว่าอุปกรณ์ของคุณปราศจากมัลแวร์
- สำหรับการถือครองอย่างมีนัยสำคัญ: ใช้คอมพิวเตอร์ที่ตัดการเชื่อมต่อตามคำแนะนำใน Offline Usage Guide
ขั้นตอนที่ 1: เปิดตัวสร้างวลีเมล็ด
นำทางไปที่ safeseed.app/tools/seed-generator/ ในเบราว์เซอร์เว็บของคุณ เครื่องมือจะโหลดอย่างสมบูรณ์ในเบราว์เซอร์ของคุณ และคุณสามารถตรวจสอบสิ่งนี้ได้โดยการตัดการเชื่อมต่ออินเทอร์เน็ตหลังจากโหลดหน้า — เครื่องมือจะยังคงทำงาน
ขั้นตอนที่ 2: เลือกจำนวนคำ
เลือกระหว่างการสร้างวลีช่วยจำ 12 คำ หรือ 24 คำ สำหรับผู้ใช้ส่วนใหญ่ที่รักษาเงินสกุลเข้ารหัส 24 คำเป็นคำแนะนำมาตรฐาน เนื่องจากเป็นสิ่งที่วอลเล็ตฮาร์ดแวร์หลักเช่น Ledger และ Trezor ใช้เป็นค่าเริ่มต้น
ขั้นตอนที่ 3: สร้างวลี
คลิกปุ่ม Generate เครื่องมือใช้ Web Crypto API ของเบราว์เซอร์ (crypto.getRandomValues()) เพื่อสร้างเอนโทรปีแบบสุ่มที่ปลอดภัยทางการเข้ารหัส จากนั้นแปลงเป็นวลี BIP-39 mnemonic
ทุกครั้งที่คุณคลิก Generate วลีใหม่จะถูกสร้างขึ้นจากเอนโทรปีใหม่ไม่มีความสัมพันธ์ระหว่างวลีที่สร้างขึ้นติดต่อกัน
ขั้นตอนที่ 4: บันทึกวลี
นี่คือขั้นตอนที่สำคัญที่สุด คุณต้องบันทึกวลีเมล็ดของคุณบนตัวกลางทางกายภาพที่จะอยู่รอดการเก็บรักษาระยะยาว นี่คือตัวเลือกของคุณ:
กระดาษ (แนะนำขั้นต่ำ):
- ใช้ปากกา (ไม่ใช่ดินสอ ซึ่งอาจลืมได้) บนกระดาษปราศจากกรด หรือ archival
- เขียนอย่างชัดเจนและอ่านง่าย
- หมายเลขแต่ละคำ (1 ถึง 12 หรือ 24)
- ตรวจสอบทุกคำอีกครั้งเทียบกับหน้าจอ
- อย่าพิมพ์วลีนี้ลงในอุปกรณ์ดิจิทัลใด ๆ
โลหะ (แนะนำสำหรับการถือครองอย่างมีนัยสำคัญ):
- ประทับหรือแกะสลักแต่ละคำบนแผ่นสแตนเลสหรือไทเทเนียม
- การสำรองข้อมูลโลหะอยู่รอดไฟ น้ำท่วม และการแยกตัวทางกายภาพ
- ผลิตภัณฑ์เช่น Cryptosteel, Billfodl หรือ Blockplate ได้รับการออกแบบเพื่อวัตถุประสงค์นี้
- สำหรับวิธี DIY สแตนเลสสตีลวอชเชอร์ที่มีปริมาณหนดหน่วย letter punches ทำงานได้อย่างมีประสิทธิผล
สิ่งที่ไม่ควรทำ:
- อย่าถ่ายภาพหน้าจอหรือภาพของวลี
- อย่าคัดลอกลงในคลิปบอร์ดของคุณ
- อย่าจัดเก็บลงในไฟล์ข้อความ แอปจดบันทึก หรือบริการคลาวด์
- อย่าส่งอีเมลให้ตัวเอง
- อย่าจัดเก็บไว้ในตัวจัดการรหัสผ่าน (วลีเมล็ดควรยังคงอยู่ออนไลน์)
ขั้นตอนที่ 5: ตรวจสอบวลี
หลังจากบันทึกวลีเมล็ดของคุณแล้ว ให้ตรวจสอบโดยอ่านคำต่อคำเทียบกับหน้าจอ ให้ความสนใจเป็นพิเศษกับคำที่ดูคล้ายกัน:
- "abandon" เทียบกับ "about"
- "letter" เทียบกับ "level"
- "right" เทียบกับ "riot"
รายการคำ BIP-39 ได้รับการออกแบบเพื่อลดความคลุมเครือ — อักษรสี่ตัวแรกของแต่ละคำไม่ซ้ำกัน แต่ข้อผิดพลาดในการเขียนของมนุษย์ยังคงเป็นสาเหตุที่พบบ่อยที่สุดของการสูญเสียวลีเมล็ด
ขั้นตอนที่ 6: (ทางเลือก) เพิ่ม Passphrase
BIP-39 passphrase (บางครั้งเรียกว่า "คำที่ 25") เพิ่มชั้นความปลอดภัยเพิ่มเติม เมื่อคุณอนุมานเมล็ดจากช่วยจำของคุณ passphrase จะรวมอยู่ในการหาอนุพันธ์ PBKDF2:
seed = PBKDF2(mnemonic, "mnemonic" + passphrase, 2048, 512)
หากคุณตั้งค่า passphrase:
- Mnemonic เดียวกันที่มี passphrases ต่างกันสร้างวอลเล็ตที่แตกต่างไปโดยสิ้นเชิง
- หากไม่มี passphrase mnemonic เพียงอย่างเดียวจะสร้างชุดคีย์ที่แตกต่างกัน (แต่ถูกต้อง)
- สิ่งนี้สร้างความปฏิเสธที่ชอบธรรม: วอลเล็ต "ว่าง" (ไม่มี passphrase) สามารถใช้เป็นหลอก
- คุณต้องจำหรือจัดเก็บ passphrase แยกจากช่วยจำอย่างปลอดภัย
พิจารณา Passphrase:
- Passphrase ที่ลืมจะหมายถึงการสูญเสียการเข้าถึงแบบถาวร — ไม่มีกลไกการกู้คืน
- Passphrase คำนึงถึงตัวพิมพ์ใหญ่และตัวพิมพ์เล็ก และสามารถรวมช่องว่างและอักขระพิเศษได้
- จัดเก็บ passphrase แยกจากวลีเมล็ดเพื่อความปลอดภัย แต่ให้แน่ใจว่าทั้งสองสามารถกู้คืนได้
- Passphrase ที่แข็งแรงควรมีความยาวอย่างน้อย 12 อักขระที่มีตัวพิมพ์ผสมและตัวเลข
ขั้นตอนที่ 7: ล้างหน้าจอ
หลังจากที่คุณบันทึกวลีเมล็ดของคุณอย่างปลอดภัยและตรวจสอบแล้ว:
- ปิดแท็บเบราว์เซอร์
- ล้างประวัติล่าสุดของเบราว์เซอร์ของคุณ (ทางเลือก แต่แนะนำ)
- เพื่อความปลอดภัยสูงสุด ให้เริ่มเบราว์เซอร์หรือคอมพิวเตอร์ของคุณใหม่
SafeSeed ไม่จัดเก็บข้อมูลใด ๆ ใน localStorage คุกกี้ หรือการจัดเก็บเบราว์เซอร์ แต่การล้างเซสชันนั้นทำให้แน่ใจว่าไม่มีข้อมูลที่เหลืออยู่ในหน่วยความจำเบราว์เซอร์
ทำความเข้าใจเอาต์พุต
ตัวสร้างวลีเมล็ดจะแสดงข้อมูลหลายส่วน:
คำ Mnemonic
12 หรือ 24 คำที่ประกอบขึ้นเป็นวลีเมล็ดของคุณ คำเหล่านี้ได้มาจากรายการคำภาษาอังกฤษ BIP-39 อย่างเป็นทางการจำนวน 2,048 คำ ทุกคำในรายการนั้นไม่ซ้ำกันในอักษรสี่ตัวแรกของมัน ซึ่งเป็นเหตุว่าทำไมคุณจึงสามารถย่อคำเมื่อแสตมป์บนแผ่นโลหะได้
เอนโทรปี (Hex)
ข้อมูลแบบสุ่มดิบที่ถูกสร้างขึ้น แสดงเป็นเลขฐานสิบหก นี่คือความสุ่มพื้นฐานที่คำช่วยจำเข้ารหัส โดยทั่วไปคุณไม่จำเป็นต้องบันทึกสิ่งนี้แยกต่างหาก — คำช่วยจำเข้ารหัสเอนโทรปีและการตรวจสอบอย่างสมบูรณ์
การตรวจสอบ
ส่วนสุดท้ายของคำสุดท้ายเข้ารหัสบิตการตรวจสอบที่ได้มาจากแฮช SHA-256 ของเอนโทรปี ซึ่งหมายความว่าไม่ใช่ทุกชุดของคำ BIP-39 12 หรือ 24 คำที่ถูกต้อง — เฉพาะสิ่งที่มีการตรวจสอบตรงกัน เรื่องนี้ทำหน้าที่เป็นกลไกการตรวจจับข้อผิดพลادั้นพื้นฐานเมื่อป้อนวลีเมล็ดลงในวอลเล็ต
เมล็ด (Hex)
เมล็ด 512 บิตที่ได้มาจากช่วยจำผ่าน PBKDF2 เมล็ดนี้ใช้เป็นอินพุตสำหรับ BIP-32 key derivation หากคุณเพิ่ม passphrase เมล็ดจะแตกต่างจากเวอร์ชัน no-passphrase คุณไม่จำเป็นต้องบันทึกสิ่งนี้แยกต่างหาก — สามารถอนุมานได้เสมอจากช่วยจำและ passphrase
หัวข้อขั้นสูง
คุณภาพเอนโทรปี
ความปลอดภัยของวลีเมล็ดของคุณขึ้นอยู่กับคุณภาพของเอนโทรปีที่ใช้เพื่อสร้างมันทั้งหมด SafeSeed ใช้ crypto.getRandomValues() ซึ่งสนับสนุนโดย CSPRNG ของระบบปฏิบัติการของคุณ:
- Linux: ดึงมาจาก
/dev/urandomปลูกพืชโดยการหยุดชั่วคราวฮาร์ดแวร์ CPU jitter และ RDRAND/RDSEED เมื่อใช้งานได้ - macOS: ใช้ Fortuna-based CSPRNG ในกรอบความปลอดภัย
- Windows: ใช้ BCryptGenRandom สนับสนุนโดยพูลเอนโทรปีของเคอร์เนล
เบราว์เซอร์สมัยใหม่ทั้งหมดใช้ crypto.getRandomValues() โดยใช้ CSPRNGs ระดับ OS เหล่านี้ ทำให้เอนโทรปีเหมาะสมสำหรับการสร้างคีย์เข้ารหัส
เหตุใดจึงไม่ใช้ลูกเต๋าหรือการโยนเหรียญ
ผู้ใช้บางคนที่มีจิตสำนึกด้านความปลอดภัยชอบการสร้างเอนโทรปีจากแหล่งที่มาของทางกายภาพเช่นการหมุนลูกเต๋าหรือการพลิกเหรียญ แม้ว่าวิธีการนี้จะขจัดความเชื่อมั่นใน RNGs ซอฟต์แวร์ แต่มันมีความเสี่ยงของตัวเอง:
- อคติ: ลูกเต๋าและเหรียญทางกายภาพอาจไม่ยุติธรรมอย่างสมบูรณ์
- การผสมไม่เพียงพอ: เอนโทรปีทางกายภาพดิบต้องการแฮชที่เหมาะสมก่อนใช้
- ข้อผิดพลาดของมนุษย์: การบันทึกหรือแปลงม้วนอย่างไม่ถูกต้องจะนำเข้าข้อผิดพลาด
- ใช้เวลานาน: การสร้างเอนโทรปี 256 บิตต้องการการพลิกเหรียญ 100 ครั้งหรือม้วนลูกเต๋าจำนวนมาก
หากคุณเลือกที่จะใช้เอนโทรปีทางกายภาพ คุณสามารถป้อนลงในตัวเลือกขั้นสูงของเครื่องมือได้ (เมื่อมี) เพื่ออนุมาน mnemonic แต่ให้แน่ใจว่าคุณเข้าใจความเสี่ยงของอคติและข้อผิดพลาดของขั้นตอน
การตั้งค่า Multi-Signature
สำหรับวอลเล็ต multi-signature คุณอาจต้องสร้างวลีเมล็ดหลายวลีที่เป็นอิสระ ผู้ลงนามแต่ละคนในการจัดเรียง multisig ควรมีวลีเมล็ดของตัวเองที่สร้างขึ้นอย่างอิสระ ใช้ตัวสร้างวลีเมล็ด SafeSeed แยกต่างหากสำหรับผู้ลงนามแต่ละคน ตามหลักการแล้วบนอุปกรณ์ต่างกัน และให้แน่ใจว่าวลีเมล็ดแต่ละวลีได้รับการสำรองข้อมูลอย่างอิสระ
Shamir's Secret Sharing เทียบกับ Seed Phrases
SLIP-39 (Shamir's Secret Sharing) นำเสนออีกทางเลือกหนึ่งสำหรับ BIP-39 ที่เมล็ดจะถูกแบ่งออกเป็นหลายแชร์ ต้องใช้จำนวนแชร์เกณฑ์ในการสร้างใหม่ SafeSeed ปัจจุบันเน้นที่ BIP-39 ซึ่งเป็นมาตรฐานที่นำมาใช้กันอย่างแพร่หลายมากขึ้น หากคุณต้องการ Shamir's Secret Sharing ให้พิจารณาวอลเล็ตฮาร์ดแวร์เช่น Trezor ที่รองรับ SLIP-39 โดยเนื้อหา