סיסמת Bcrypt גנרטור
צור גיבוב סיסמת bcrypt מאובטח באופן מיידי בדפדפן שלך. בחר את גורם העלות שלך ואת סיסמאות הגיבוב שלך בצד הלקוח - פרטי לחלוטין ובחינם.
צור גיבוב סיסמת bcrypt מאובטח באופן מיידי בדפדפן שלך. בחר את גורם העלות שלך ואת סיסמאות הגיבוב שלך בצד הלקוח - פרטי לחלוטין ובחינם.
bcrypt היא פונקציית גיבוב סיסמאות שתוכננה על ידי Niels Provos ו-David Mazières בשנת 1999, נגזרת מהצופן Blowfish. שלא כמו פונקציות גיבוב למטרות כלליות כמו SHA-256, bcrypt איטי בכוונה - ואיטית להגדרה, באמצעות פרמטר עלות - שזה בדיוק הנכס ש-haher סיסמה צריך. פונקציית Hash מהירה יותר מאפשרת לתוקפים להפעיל יותר מועמדים בשנייה; איטי יותר מגביל אותם.
bcrypt גם משלבת מלח לכל סיסמה באופן אוטומטי, ומבטלת מחלקה שלמה של התקפות המבוססות על טבלאות קשת מחושבות מראש. פרמטר המלח והעלות מאוחסנים כחלק מהפלט של bcrypt, כך שהאימות צריך רק את ה-hash המאוחסן ואת הסיסמה המועמדת - ללא ניהול מלח נפרד. השילוב הזה של איטיות, מלח ופורמט עצמאי הפך את bcrypt ל-hash ברירת המחדל של הסיסמה במשך שני עשורים ובחירה חזקה כיום.
קיימות חלופות מודרניות. Argon2 זכתה בתחרות גיבוש הסיסמאות לשנת 2015 ומציעה קשיות זיכרון בנוסף לקשיות זמן. scrypt מציע מאפיינים דומים. עבור עיצובים חדשים, Argon2id היא הבחירה המומלצת. bcrypt נשאר מקובל ופריסה נרחבת, במיוחד בסביבות שבהן Argon2 אינו זמין.
אחסון סיסמאות כטקסט רגיל הוא רשלנות. לאחסן אותם עם Hash מהיר כמו SHA-256 הוא בקושי טוב יותר - GPUs מודרניים מחשבים מיליארדי Hash SHA-256 בשנייה, מה שהופך מתקפות בכוח גס נגד כל סיסמה נפוצה לאפשרות תוך שעות. האיטיות המכוונת של bcrypt מעבירה את הכלכלה: בגורם עלות 12, תוקף מוציא בערך 250 אלפיות השנייה לכל סיסמה מועמדת, מה שהופך את ה-bruteforce לבלתי מעשי עבור כל סיסמה לא טריוויאלית.
המלח האוטומטי לכל סיסמה של bcrypt מביס גם התקפות שולחן בענן. שני משתמשים עם אותה סיסמה מייצרים גיבובים שונים של bcrypt מכיוון שהמלחים שלהם שונים. פגיעה במסד הנתונים של הסיסמאות אינה מאפשרת לתוקף לזהות במהירות סיסמאות נפוצות או כניסות טבלה מחושבות מראש.
הקלד סיסמה, בחר עלות, קבל את ה-hash.
bcrypt משתמש בשלב הגדרת המפתחות של צופן Blowfish שונה, חוזר 2^ פעמים עלות. גורם העלות הוא לוגריתמי - עלות 12 איטית פי שניים מהעלות 11, פי ארבע מהעלות 10. קנה מידה לוגריתמי זה מאפשר למנהלי מערכת להגדיל את העלות לאורך זמן ככל שהחומרה משתפרת, מבלי לעצב מחדש את המערכת.
פורמט הפלט הוא $version$cost$saltAndHash כאשר saltAndHash מקודד base64 עם אלפבית מותאם אישית. הגרסה היא בדרך כלל $2b$ (הגרסה המודרנית עם הבאג העוטף תוקן) או $2y$ (ספציפי ל-PHP, שווה ערך). המלח הוא 16 בתים; ה-hash הוא 24 בתים; יחד הם מקודדים ל-53 תווים של custom-base64.
אורך קלט מקסימלי הוא 72 בתים (מגבלת אורך מפתח Blowfish). סיסמאות ארוכות יותר נקטעות בשקט, שזה מוזר בקריפט ותיק. השיטה הטובה ביותר היא להגביל את אורך הסיסמה ל-72 בתים או להגביל את ה-hash מראש עם SHA-256 כדי לנרמל את האורך לפני bcrypt.