UTILS.
ทำงานในเบราว์เซอร์ 100%
🔐

ตัวสร้างและตรวจสอบแฮช Bcrypt

สร้างแฮชรหัสผ่าน bcrypt ด้วยค่า cost factor ที่เลือกได้ หรือตรวจสอบรหัสผ่านข้อความธรรมดากับแฮช $2b$ ที่มีอยู่ ทำงานทั้งหมดในเบราว์เซอร์ของคุณ

รหัสผ่านถูกแฮช 100% ในเบราว์เซอร์ของคุณ — ไม่มีการอัปโหลด

— ผลลัพธ์จะแสดงที่นี่ —

เกี่ยวกับเครื่องมือนี้

ตัวสร้างและตรวจสอบแฮช Bcrypt สร้างและตรวจสอบแฮชรหัสผ่าน bcrypt โดยไม่เคยส่งรหัสผ่านของคุณไปยังเซิร์ฟเวอร์ Bcrypt ออกแบบโดย Provos และ Mazières ในปี 1999 ห่อ Eksblowfish key schedule ด้วยค่า work factor แบบปรับได้: พารามิเตอร์ cost กำหนดรอบการตั้งค่าคีย์ 2^cost รอบ ดังนั้นการเพิ่ม cost ทำให้การเดาแต่ละครั้งช้าลงแบบทวีคูณสำหรับผู้โจมตี ในขณะที่ยังคงถูกสำหรับการเข้าสู่ระบบที่ถูกต้องครั้งเดียว โหมดสร้างอ่านไบต์ salt แบบสุ่ม 16 ไบต์จาก crypto.getRandomValues ของเบราว์เซอร์ รัน Eksblowfish setup ที่ cost ที่คุณเลือก เข้ารหัสค่าคงที่ "OrpheanBeholderScryDoubt" ขนาด 192 บิต 64 ครั้ง และส่งออกสตริง Modular Crypt Format มาตรฐาน $2b$NN$ + salt base64 22 อักขระ + digest base64 31 อักขระ

อัลกอริทึมรันเป็น WebAssembly build ของ bcrypt แบบไม่มี eval ที่โหลดภายในเครื่อง ดังนั้นจึงไม่มีการอัปโหลดและเครื่องมือทำงานออฟไลน์ได้เมื่อโหลดแล้ว Bcrypt พิจารณาเฉพาะ 72 ไบต์แรกของรหัสผ่านเท่านั้น เครื่องมือเตือนคุณเมื่ออินพุตของคุณเกินขีดจำกัดนั้น เพื่อไม่ให้คุณประหลาดใจกับการตัดทอนแบบเงียบ ๆ ค่า cost factor เลือกได้จาก 4 ถึง 16 (ค่าเริ่มต้น 10) แต่ละขั้นเพิ่มงานเป็นสองเท่า ดังนั้น 12 จึงช้ากว่า 10 สี่เท่า

โหมดตรวจสอบแยกวิเคราะห์คำนำหน้า $2b$/$2a$/$2y$ ค่า cost สองหลัก และ salt ที่ฝังอยู่ออกจากแฮชที่มีอยู่ คำนวณ digest ใหม่ด้วยรหัสผ่านที่เป็นตัวเลือก และรายงานตรงหรือไม่ตรง เนื่องจาก salt และ cost อยู่ภายในสตริงแฮชเอง คุณจึงต้องการเพียงรหัสผ่านและแฮชที่จัดเก็บไว้เพื่อตรวจสอบการเข้าสู่ระบบ ทุกอย่างคำนวณในหน้า รหัสผ่านถูกแฮช 100% ในเบราว์เซอร์ของคุณและไม่มีการอัปโหลด

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

ฉันควรเลือก cost factor ใด?
Cost กำหนดรอบการตั้งค่าคีย์ 2^cost รอบ ค่า 10 (ค่าเริ่มต้น) เป็นเกณฑ์พื้นฐานที่พบได้ทั่วไป; 12 ช้ากว่าสี่เท่าและเป็นตัวเลือกสมัยใหม่ที่ดีสำหรับการเข้าสู่ระบบแบบโต้ตอบ cost ที่สูงกว่าต้านทาน brute force ได้ดีกว่าแต่ใช้เวลาคำนวณนานกว่า ดังนั้นจงชั่งน้ำหนักความปลอดภัยกับความล่าช้าที่การเข้าสู่ระบบแต่ละครั้งรับได้
ทำไมรหัสผ่านยาวของฉันถูกตัดทอน?
Bcrypt แฮชเฉพาะ 72 ไบต์แรกของอินพุตโดยการออกแบบ ไบต์ที่เกินจากนั้นจะถูกละเว้น เครื่องมือเตือนคุณเมื่อรหัสผ่านเกิน 72 ไบต์ UTF-8 เพื่อให้คุณทราบว่าส่วนท้ายไม่มีส่วนช่วยในแฮช สำหรับความลับที่ยาวกว่า ให้ pre-hash ด้วย SHA-256 ก่อน bcrypt
ฉันตรวจสอบแฮชที่ขึ้นต้นด้วย $2a$ หรือ $2y$ ได้ไหม?
ได้ โหมดตรวจสอบยอมรับคำนำหน้า $2a$, $2b$ และ $2y$ ซึ่งเป็นตัวแปรที่ใช้แทนกันได้ของอัลกอริทึมเดียวกัน มันอ่าน cost และ salt จากแฮช คำนวณใหม่ด้วยรหัสผ่านของคุณ และรายงานว่าตรงกันหรือไม่
รหัสผ่านของฉันถูกส่งไปที่ใดไหม?
ไม่ การแฮชและการตรวจสอบรันภายในเบราว์เซอร์ของคุณทั้งหมดผ่าน WebAssembly build ของ bcrypt ภายในเครื่อง รหัสผ่าน salt และแฮชไม่เคยออกจากอุปกรณ์ของคุณ ดังนั้นคุณจึงทดสอบข้อมูลรับรองจริงแบบออฟไลน์ได้อย่างปลอดภัย

เครื่องมือเพิ่มเติม