Bcrypt generatori

2 reytinqdən 5

Bcrypt generatori istənilən sətirdən bcrypt parol heşi yaradan və parolları təhlükəsiz saxlamağa imkan verən pulsuz alətdir.

Bcrypt nədir və hələ də təhlükəsizdirmi?

Bcrypt uyğun xərc əmsalı ilə sazlandıqda parolların saxlanması üçün hələ də məqbul sayılan heşləmə alqoritmidir. Bununla belə, yeni sistemlərdə çox vaxt Argon2id-ə üstünlük verilir. Niels Provos və David Mazières bcrypt-i 1999-cu ildə hazırlayıblar. Onlar hər parol təxminini qəsdən resurs tələb edən etmək üçün Blowfish şifrinin açar planlaşdırma prosesindən istifadə ediblər.

Heşləmə birtərəfli prosesdir. Buna görə tətbiq ilkin parolu bərpa etmir, daxil edilən parol namizədini saxlanmış parametrlərlə heşləyib nəticəni yoxlayır. SHA-3 kimi ümumi təyinatlı alqoritmlərdən fərqli olaraq, bcrypt versiyanı, xərc əmsalını, duzu və yoxlama cəmini özündə saxlayan, sabit uzunluqlu tam kodlaşdırılmış qeyd yaradır.

Standart bcrypt qeydi 60 ASCII simvoldan ibarətdir. Onun yoxlama cəmi 184 biti təmsil edir və bcrypt-in öz Base64 tipli kodlaşdırmasında 31 simvol kimi göstərilir. Bcrypt kriptoqrafik baxımdan sındırılmış hesab edilmir, lakin köhnə olmasından irəli gələn bir məhdudiyyəti var: ənənəvi reallaşdırmalar girişin ən çox 72 baytını emal edir. Argon2id əlavə olaraq bcrypt-də olmayan, yaddaş tutumuna əsaslanan qoruma təmin edir.

Bcrypt generatorindən necə istifadə etmək olar?

Heşləmək istədiyin sətiri daxil et, generatoru işə sal və Bcrypt Heşi nəticə sahəsində göstərilən dəyəri köçür. Yalnız sondakı yoxlama cəmini ayırmaq əvəzinə nəticəni tam şəkildə saxla.

  1. Böyük və kiçik hərflər, boşluqlar və durğu işarələri daxil olmaqla, parolu və ya sınaq sətirini olduğu kimi yaz.
  2. Bcrypt nəticəsini yarat.
  3. Başlanğıcdakı versiya göstəricisi və xərc əmsalı daxil olmaqla, 60 simvolun hamısını köçür.
  4. Nəticəni verilənlər bazandakı parol heşi sütununda saxla.
  5. Giriş zamanı yeni heş yaradıb mətnləri birbaşa müqayisə etmə. Platformanın bcrypt yoxlama funksiyasından istifadə et.

Bcrypt adətən hər heş üçün yeni təsadüfi duz yaradır. Buna görə eyni giriş iki dəfə heşləndikdə iki fərqli qeyd alına bilər və onların hər ikisi həmin girişlə uğurla yoxlanar. Bu, gözlənilən davranışdır və eyni parolların bazada eyni dəyərlə saxlanmasının qarşısını alır.

Emal serverdə aparılır. Daxil etdiyin məlumat HTTPS vasitəsilə serverə ötürülür və saxlanmır. Real iş mühitində istifadə olunan parolu hər hansı üçüncü tərəfin onlayn xidmətinə daxil etməzdən əvvəl bunun təşkilatının təhlükəsizlik siyasətinə uyğun olub-olmadığını nəzərə al.

Bcrypt heşini deşifrə və ya geri çevirmək mümkündürmü?

Xeyr, bcrypt heşini deşifrə etmək mümkün deyil. Çünki o, şifrələnmiş məlumat deyil və deşifrə açarı saxlamır. Ona qarşı praktik hücum üsulu mümkün parolları təxmin etmək və hər təxmini saxlanmış heşlə yoxlamaqdır.

Bcrypt sazlanan xərc əmsalı vasitəsilə bu təxmin prosesini ləngidir. Lakin qısa, geniş istifadə olunan və ya əvvəllər sızdırılmış parolu təhlükəsiz edə bilməz. İsrarla çalışan hücumçu zəif girişləri yenə də tapa bilər. Duz hücumçuların əvvəlcədən hesablanmış eyni cədvəldən çoxsaylı hesablar üçün istifadə etməsinə mane olur. Ancaq duz məxfi deyil və saxlanmış qeydin tərkibinə daxildir.

Bcrypt nəticəsini necə oxumaq olar?

Bcrypt nəticəsi adətən modul crypt formatına uyğun olur. Tipik quruluş belədir: $2y$12$[22-character salt][31-character checksum]. Bu, konkret parolun heşi deyil, yalnız formatı göstərən nümunədir.

Hissə Tipik uzunluq Təyinat
Versiya göstəricisi 4 simvol $2y$ və ya $2b$ kimi bcrypt variantını müəyyənləşdirir.
Xərc əmsalı 3 simvol İkirəqəmli xərc əmsalını və ondan sonrakı ayırıcını saxlayır.
Duz 22 simvol 128 bitlik təsadüfi duzu kodlaşdırır.
Yoxlama cəmi 31 simvol 184 bitlik bcrypt yoxlama cəmini kodlaşdırır.

Bu hissələri birlikdə saxla. Hər hansı simvolun dəyişdirilməsi, dəyərin qısaldılması və ya kifayət qədər geniş olmayan sütunda saxlanması adətən yoxlamanın uğursuz olmasına səbəb olur. Uyğun kitabxanalarda versiya göstəricisi fərqlənə bilər. Buna görə tətbiqlər qeydi özləri təhlil edib yenidən qurmaq əvəzinə etibarlı parol API-lərindən istifadə etməlidir.

Bcrypt-dən nə vaxt istifadə etmək lazımdır?

Bcrypt artıq onu dəstəkləyən sistemlərdə parolları heşləmək üçün istifadə edilməlidir. Bu, xüsusilə mövcud verilənlər bazası və ya freymvorkla uyğunluğun vacib olduğu hallara aiddir. Bcrypt qəsdən yavaş işləyir və duzdan istifadə edir. Buna görə ümumi fayl yoxlama cəmi və ya dublikatları müəyyənləşdirən identifikator kimi uyğun deyil.

  • Uyğun istifadə sahələri: tətbiq parolları, miqrasiya sınaqları, verilənlər bazası sahələrinin ölçüsünün yoxlanması və bcrypt ilə uyğun işləyən hazırlama mühitinin yenidən qurulması.
  • Əvəzinə Argon2id istifadə et: platforma Argon2id-i dəstəkləyirsə və onun yaddaş parametrlərini düzgün idarə etmək mümkündürsə, yeni parol sistemi üçün bu alqoritmə üstünlük ver.
  • Əvəzinə SHA-3 istifadə et: fayl bütövlüyünü yoxlamaq, məzmun barmaq izi yaratmaq və ya dublikatları müəyyənləşdirmək üçün SHA-3 seç. SHA-3/384 generatoru və SHA-3/512 generatoru parol qeydləri deyil, ümumi təyinatlı heş xülasələri yaradır.
  • Bcrypt-dən istifadə etmə: rəqəmsal imzalar, mesaj autentifikasiyası, şifrələmə və ya sonradan bərpa edilməli məlumatların saxlanması üçün bcrypt uyğun deyil.

Boşluqlar, durğu işarələri və rəqəmlər nəzərə alınmayan simvollar deyil, giriş məlumatı kimi emal olunur. Bcrypt işləməzdən əvvəl aksentli və latın əlifbasına aid olmayan simvollar baytlara kodlaşdırılır. Buna görə hər iki sistem eyni simvol kodlaşdırmasından və Unicode normallaşdırmasından istifadə edərək eyni baytları yaratmalıdır. Unicode simvolu birdən çox bayt tuta bildiyi üçün 72 baytlıq hədd burada xüsusilə vacibdir. Boş girişi texniki olaraq heşləmək mümkündür, lakin boş parol təxmin hücumlarına qarşı heç bir mənalı müqavimət göstərmir.

Tez-tez verilən suallar

Bcrypt heşi üçün verilənlər bazasında nə qədər yer ayırmaq lazımdır?

Standart bcrypt qeydi üçün ən azı 60 ASCII simvolluq yer ayır. Bir qədər geniş sahə gələcəkdə başqa parol alqoritminə keçidi asanlaşdıra bilər. Standart kodlaşdırılmış forma üçün binar sütuna ehtiyac yoxdur.

Mövcud SHA parol heşlərini bcrypt-ə keçirmək mümkündürmü?

İlkin parolu bilmədən mövcud SHA xülasəsini həmin parolun bcrypt heşinə çevirmək mümkün deyil. Geniş istifadə olunan miqrasiya üsulunda istifadəçi növbəti dəfə daxil olduqda köhnə heş yoxlanılır. Sonra təqdim edilmiş parol bcrypt və ya Argon2id ilə heşlənir və köhnə qeyd yenisi ilə əvəz olunur.

Nəticəni saxlamazdan əvvəl 60 simvolluq dəyərin tam köçürüldüyünü, verilənlər bazası sahəsinin onu kəsmədiyini və qəbul edən tətbiqin qeyddəki versiya göstəricisini dəstəklədiyini yoxla.

Populyar alətlər