Kriptoqrafik Hash Funksiya Nədir?

Mündəricat:

Kriptoqrafik Hash Funksiya Nədir?
Kriptoqrafik Hash Funksiya Nədir?
Anonim

Kriptoqrafik hash funksiyası (CHF) yoxlama cəmi adlı dəyər yaratmaq üçün fərdi fayl və ya parol kimi data üzərində işlədilə bilən alqoritmdir.

CHF-nin əsas istifadəsi məlumat parçasının həqiqiliyini yoxlamaqdır. Yalnız eyni kriptoqrafik hash funksiyasından istifadə edərək hər bir fayldan yaradılan yoxlama məbləğləri eyni olduqda iki fayl eyni hesab edilə bilər.

Bəzi tez-tez istifadə olunan kriptoqrafik hash funksiyalarına MD5 və SHA-1 daxildir, baxmayaraq ki, bir çox başqaları da mövcuddur. Bunlara tez-tez "hash funksiyaları" deyilir, lakin bu, texniki cəhətdən düzgün deyil. Hash funksiyası CHF-ləri dövri artıqlıq yoxlamaları kimi digər alqoritmlərlə birlikdə əhatə edən ümumi bir termindir.

Kriptoqrafik Hash Funksiyaları: İstifadə nümunəsi

Firefox brauzerinin ən son versiyasını endirmisiniz. Nədənsə onu Mozilla-dan başqa saytdan yükləməli oldunuz. Etibar etməyi öyrəndiyiniz saytda yerləşdirilmədiyi üçün yenicə endirdiyiniz quraşdırma faylının Mozilla-nın təklif etdiyi ilə eyni olduğuna əmin olmaq istərdiniz.

Baxma məbləği kalkulyatorundan istifadə edərək, siz SHA-2 kimi xüsusi kriptoqrafik hash funksiyasından istifadə edərək yoxlama məbləğini hesablayırsınız və sonra onu Mozilla saytında dərc olunan ilə müqayisə edirsiniz. Əgər onlar bərabərdirsə, siz əsaslı surətdə əmin ola bilərsiniz ki, sizin yükləməniz Mozilla'nın sizin üçün nəzərdə tutduğu yükləmədir.

Image
Image

Kriptoqrafik Hash Funksiyaları Geri qaytarıla bilərmi?

Kriptoqrafik hash funksiyaları yaratdıqları yoxlama məbləğlərini orijinal mətnlərə qaytarmaq imkanının qarşısını almaq üçün nəzərdə tutulub. Bununla belə, onları geri qaytarmaq faktiki olaraq qeyri-mümkün olsa da, məlumatların qorunmasına 100 faiz zəmanət verilmir.

Hakerlər yoxlama məbləğinin düz mətnini tapmaq üçün göy qurşağı cədvəlindən istifadə edə bilərlər. Rainbow cədvəlləri müvafiq düz mətn dəyəri ilə yanaşı minlərlə, milyonlarla və hətta milyardlarla yoxlama məbləğini sadalayan lüğətlərdir.

Bu, kriptoqrafik hash alqoritmini texniki cəhətdən tərsinə çevirməsə də, bunu etmək çox sadə olduğunu nəzərə alsaq, o da ola bilər. Reallıqda, heç bir göy qurşağı cədvəli mövcud olan bütün yoxlama məbləğlərini sadalaya bilmədiyi üçün, onlar adətən yalnız zəif parollar kimi sadə ifadələr üçün faydalı olur.

Budur, SHA-1 kriptoqrafik hash funksiyasından istifadə edərkən necə işləyəcəyini göstərmək üçün göy qurşağı cədvəlinin sadələşdirilmiş versiyası:

Göy qurşağı Cədvəli Nümunəsi
Açıq Mətn SHA-1 Yoxlama məbləği
12345 8cb2237d0679ca88db6464eac60da96345513964
parol1 e38ad214943daad1d64c102faec29de4afe9da3d
ilovemydog a25fb3505406c9ac761c8428692fbf5d5ddf1316
Jenny400 7d5eb0173008fe55275d12e9629eef8bdb408c1f
dallas1984 c1ebe6d80f4c7c087ad29d2c0dc3e059fc919da2

Haker dəyərləri müəyyən etmək üçün yoxlama cəmlərini yaratmaq üçün hansı kriptoqrafik hash alqoritmindən istifadə edildiyini bilməlidir.

Əlavə qorunma üçün istifadəçi parollarını saxlayan bəzi veb-saytlar kriptoqrafik hash alqoritmində əlavə funksiyaları dəyər yaradıldıqdan sonra, lakin saxlanmazdan əvvəl yerinə yetirir. Bu proses yalnız veb serverin başa düşdüyü və orijinal yoxlama məbləğinə uyğun gəlməyən yeni bir dəyər yaradır.

Məsələn, parol daxil edildikdən və yoxlama məbləği yaradıldıqdan sonra o, parol verilənlər bazasında saxlanmazdan əvvəl bir neçə hissəyə ayrılıb yenidən təşkil oluna bilər və ya müəyyən simvollar başqaları ilə dəyişdirilə bilər. İstifadəçi növbəti dəfə daxil olduqda autentifikasiya etməyə cəhd edərkən, server bu əlavə funksiyanı ləğv edir və istifadəçinin parolunun etibarlı olduğunu yoxlamaq üçün orijinal yoxlama məbləği yenidən yaradılır.

Bu addımların atılması bütün yoxlama məbləğlərinin oğurlandığı hackin faydalılığını məhdudlaşdırır. İdeya bilinməyən funksiyanı yerinə yetirməkdir, ona görə də əgər haker kriptoqrafik hash alqoritmini bilirsə, lakin fərdi alqoritmi bilmirsə, parol yoxlama cəmini bilmək faydasızdır.

Parollar və Kriptoqrafik Hash Funksiyaları

Verilənlər bazası istifadəçi parollarını göy qurşağı cədvəlinə bənzər şəkildə saxlayır. Şifrəniz daxil edildikdə yoxlama məbləği yaradılır və istifadəçi adınızla qeyd edilən ilə müqayisə edilir. İkisi eynidirsə, sizə giriş icazəsi verilir.

CHF-nin geri qaytarıla bilməyən yoxlama məbləği yaratdığını nəzərə alsaq, parolunuzu 12@34 əvəzinə 12345 kimi sadə etmək təhlükəsizdirmi? $5, sadəcə yoxlama məbləğlərinin özləri başa düşülmədiyi üçün? Xeyr, bunun səbəbi budur.

Bu iki parolun hər ikisini yalnız yoxlama məbləğlərinə baxmaqla deşifrə etmək mümkün deyil:

12345 üçün MD5: 827ccb0eea8a706c4c34a16891f84e7b

12@34$5 üçün MD5: a4d3cc004f487b18b2ccd4853053818b

İlk baxışda bu parollardan hər hansı birini istifadə etməyin yaxşı olduğunu düşünə bilərsiniz. Təcavüzkar MD5 yoxlama məbləğini təxmin edərək parolunuzu tapmağa çalışıbsa, bu doğrudur, lakin bunu heç kim etmir, lakin adi bir taktika olan kobud qüvvə və ya lüğət hücumu edilərsə, bu doğru deyil.

Kobud güc hücumu parolu təxmin edərkən çoxsaylı təsadüfi bıçaqlar alındıqda baş verir. Bu halda 12345 təxmin etmək asan olardı, lakin digərini təsadüfi şəkildə tapmaq olduqca çətin olardı. Lüğət hücumu ona bənzəyir ki, təcavüzkar ümumi (və o qədər də geniş olmayan) parollar siyahısındakı hər bir sözü, nömrəni və ya ifadəni sınaya bilər və 12345 bu ümumi parollardan biridir. parollar.

Kriptoqrafik hash funksiyaları çətin və qeyri-mümkün təxmin edilən yoxlama məbləğləri yaratsa da, siz hələ də bütün onlayn və yerli istifadəçi hesablarınız üçün mürəkkəb parol istifadə etməlisiniz.

Kriptoqrafik Hash Funksiyaları Haqqında Ətraflı Məlumat

Kriptoqrafik hash funksiyaları şifrələmə ilə əlaqəli kimi görünə bilər, lakin ikisi fərqli şəkildə işləyir.

Şifrələmə ikitərəfli prosesdir, burada bir şey oxunmaz olmaq üçün şifrələnir və daha sonra normal şəkildə yenidən istifadə edilmək üçün şifrəsi açılır. Siz saxladığınız faylları şifrələyə bilərsiniz ki, onlara daxil olan hər kəs onlardan istifadə edə bilməyəcək və ya onlayn yüklədiyiniz və ya endirdiyiniz faylları şəbəkə üzərindən hərəkət edən faylları şifrələmək üçün fayl ötürmə şifrələməsindən istifadə edə bilərsiniz.

Kriptoqrafik hash funksiyaları fərqli işləyir, çünki yoxlama məbləğlərinin xüsusi dehashing parolu ilə geri qaytarılması nəzərdə tutulmur. CHF-lərin xidmət etdiyi yeganə məqsəd, faylları endirərkən, parolları saxlayarkən və verilənlər bazasından məlumat çıxararkən iki məlumatı müqayisə etməkdir.

Kriptoqrafik hash funksiyası müxtəlif məlumat parçaları üçün eyni yoxlama məbləğini çıxara bilər. Bu baş verdikdə, bu, toqquşma adlanır və bu, funksiyanın bütün nöqtəsinin ona daxil edilən hər bir məlumat üçün unikal yoxlama cəmi etmək olduğunu nəzərə alaraq böyük problemdir.

Toqquşmalar baş verə bilər, çünki hər bir CHF giriş məlumatından asılı olmayaraq sabit uzunluqda dəyər yaradır. Məsələn, MD5 kriptoqrafik hash funksiyası 827ccb0eea8a706c4c34a16891f84e7b, 1f633b2909b9c1addf32302c7a497983 və e10adc3949ba59abbe550 üçün üç82e blokunun cəmi 3849ba59abbe56s yaradır.

İlk yoxlama məbləği 12345-dəndir. İkincisi 700-dən çox hərf və rəqəmdən, üçüncüsü isə 123456-dən yaradılıb. Hər üç giriş müxtəlif uzunluqlardadır, lakin MD5 yoxlama cəmi istifadə edildiyi üçün nəticələr həmişə yalnız 32 simvol uzunluğundadır.

Yaradılan yoxlama məbləğlərinin sayında heç bir məhdudiyyət yoxdur, çünki daxiletmədəki hər kiçik dəyişiklik tamamilə fərqli yoxlama məbləği yaratmalıdır. Bir CHF-nin yarada biləcəyi yoxlama məbləğlərinin sayında məhdudiyyət olduğundan, hər zaman toqquşma ilə qarşılaşma ehtimalınız var.

Buna görə də digər kriptoqrafik hash funksiyaları yaradılmışdır. MD5 32 simvollu dəyər yaratsa da, SHA-1 40 simvol, SHA-2 (512) 128 simvol yaradır. Yoxlama məbləğində simvolların sayı nə qədər çox olarsa, toqquşmanın baş vermə ehtimalı bir o qədər azdır.

Tövsiyə: