tigtools

เครื่องมือสร้างโทเค็นสุ่ม

สร้างซีเคร็ตแบบสุ่มสำหรับคีย์ API, โทเค็นเซสชัน, ซีเคร็ตเว็บฮุก หรือไฟล์คอนฟิก โทเค็นถูกสร้างในเบราว์เซอร์ของคุณด้วย crypto.getRandomValues และไม่ถูกส่งไปที่ใดเลย

ทำงานในเบราว์เซอร์ของคุณ ไม่ต้องสมัคร

ขนาดด่วน:

โทเค็นที่สร้างแล้ว

    256 บิต
    เอนโทรปีต่อโทเค็น
    43
    อักขระต่อโทเค็น

    วิธีใช้งาน

    1. เลือกจำนวนไบต์สุ่มที่แต่ละโทเค็นควรมี 32 ไบต์ (256 บิต) เป็นค่าเริ่มต้นที่ปลอดภัยสำหรับซีเคร็ต
    2. เลือกการเข้ารหัสที่เหมาะกับตำแหน่งที่จะใช้โทเค็น และเพิ่มคำนำหน้าได้ตามต้องการ เช่น “myapp_live_”
    3. กำหนดจำนวนโทเค็นที่ต้องการ แล้วคัดลอกหนึ่งรายการหรือใช้ “คัดลอกทั้งหมด” กด “สร้างอีกครั้ง” เพื่อรับชุดใหม่

    วิธีการทำงาน

    โทเค็นสร้างจากไบต์สุ่มที่ได้จาก crypto.getRandomValues ซึ่งเป็นตัวสร้างแบบปลอดภัยเชิงการเข้ารหัสที่มาพร้อมกับเบราว์เซอร์และระบบปฏิบัติการของคุณ โดยไม่มีการใช้ Math.random เลย

    สำหรับ hex, Base64 และ Base64URL เครื่องมือจะใช้จำนวนไบต์ที่คุณเลือกตามนั้นแล้วเข้ารหัส ดังนั้นโทเค็น 32 ไบต์จึงมีเอนโทรปี 256 บิตเสมอ: อักขระ hex 64 ตัว, อักขระ Base64 44 ตัว (รวม = สำหรับแพดดิง 1 ตัว) หรืออักขระ Base64URL 43 ตัว Base64URL แทนที่ + และ / ด้วย - และ _ และตัดส่วนแพดดิงออก จึงใช้ใน URL, ชื่อไฟล์ และส่วนหัว HTTP ได้โดยไม่ต้อง escape

    โทเค็นแบบ Alphanumeric ใช้เฉพาะ A–Z, a–z และ 0–9 ซึ่งเลี่ยงอักขระที่บางระบบจัดการเป็นพิเศษ แต่ละอักขระมีข้อมูลประมาณ 5.95 บิต เครื่องมือจึงสุ่มอักขระมาให้มากพอที่จะได้อย่างน้อยจำนวนบิตที่เลือก (43 อักขระสำหรับ 256 บิต) อักขระถูกเลือกด้วยวิธี rejection sampling เพื่อให้ทุกตัวจาก 62 ตัวมีโอกาสเท่ากัน

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

    ตัวอย่าง

    ซีเคร็ตสำหรับลงนาม webhook

    32 ไบต์ในรูปแบบ hex ให้ซีเคร็ตความยาว 64 อักขระพร้อมเอนโทรปี 256 บิต ซึ่งคุณสามารถวางลงในการตั้งค่าของทั้งผู้ส่งและผู้รับสำหรับลายเซ็น HMAC-SHA-256

    คีย์ API พร้อมคำนำหน้าที่จำได้ง่าย

    เลือก 24 ไบต์ รูปแบบ Alphanumeric และคำนำหน้า “acme_live_” แต่ละคีย์จะมีหน้าตาเป็น acme_live_ ตามด้วยตัวอักษรและตัวเลข 33 ตัว มีเอนโทรปีอย่างน้อย 192 บิต และสังเกตได้ง่ายในล็อกหรือเครื่องสแกนซีเคร็ต

    โทเค็นรีเซ็ตที่ปลอดภัยสำหรับ URL

    16 ไบต์ในรูปแบบ Base64URL ให้โทเค็นความยาว 22 อักขระ (128 บิต) ที่สามารถใส่ลงในลิงก์ เช่น /reset?token=… ได้ทันทีโดยไม่ต้องเข้ารหัสเปอร์เซ็นต์

    คำถามที่พบบ่อย

    ซีเคร็ตควรมีกี่ไบต์?

    128 บิต (16 ไบต์) เพียงพอที่จะทำให้การเดาเป็นไปไม่ได้สำหรับโทเค็นอย่าง session ID สำหรับซีเคร็ตที่ใช้งานระยะยาว เช่น คีย์สำหรับลงนาม แนะนำให้ใช้ 256 บิต (32 ไบต์) ซึ่งเป็นคำแนะนำทั่วไปและตรงกับขนาดเอาต์พุตของ SHA-256

    ควรเลือกการเข้ารหัสแบบใด

    เอนโทรปีเท่ากันสำหรับจำนวนไบต์ที่กำหนด ต่างกันเพียงรูปแบบข้อความ ใช้ hex เพื่อความเข้ากันได้สูงสุด ใช้ Base64URL สำหรับโทเค็นสั้นใน URL และส่วนหัว และใช้แบบตัวอักษรและตัวเลขเมื่อระบบไม่อนุญาตเครื่องหมายวรรคตอน

    โทเค็นถูกจัดเก็บหรือบันทึกไว้หรือไม่

    ไม่ โทเค็นถูกสร้างในแท็บเบราว์เซอร์นี้และหายไปเมื่อคุณออกจากหน้าเว็บ โดยไม่ถูกส่งไปยังเซิร์ฟเวอร์หรือรวมอยู่ในข้อมูลวิเคราะห์

    ใช้โทเค็นเหล่านี้เป็นรหัสผ่านได้ไหม

    ได้ โทเค็นมีความสุ่มเพียงพอ แต่หลายเว็บไซต์มักกำหนดให้ใช้ตัวอักษรหลายประเภทผสมกัน เครื่องมือสร้างรหัสผ่านช่วยให้คุณควบคุมกฎเหล่านั้นได้โดยตรง

    ความเป็นส่วนตัว

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