Კრიპტოგრაფიული Hash ფუნქცია

კრიპტოგრაფიული Hash ფუნქცია Definition

კრიპტოგრაფიული hash ფუნქცია არის სახის ალგორითმი, რომელიც შეიძლება აწარმოოს ნაჭერი მონაცემები, როგორც ინდივიდუალური ფაილი ან პაროლი, წარმოების ღირებულება მოუწოდა checksum.

კრიპტოგრაფიული hash ფუნქციის ძირითადი გამოყენება არის მონაცემთა ნაწილის ნამდვილობა. ორი ფაილი შეიძლება იყოს დარწმუნებული, რომ იყოს იდენტური მხოლოდ იმ შემთხვევაში, თუ თითოეული ფაილიდან გამომუშავებული ჩეკიები იმავე კრიპტოგრაფიული ჰეშის ფუნქციის გამოყენებით იდენტურია.

ზოგიერთი ხშირად გამოყენებული კრიპტოგრაფიული hash ფუნქციების მოიცავს MD5 და SHA-1 , თუმცა ბევრი სხვა არსებობს.

შენიშვნა: კრიპტოგრაფიული hash ფუნქციები ხშირად მხოლოდ მოხსენიებული, როგორც hash ფუნქციების მოკლე, მაგრამ ეს არ არის ტექნიკურად სწორი. Hash ფუნქცია უფრო ზოგადი ტერმინია, რომელიც ჩვეულებრივ გამოიყენება კრიპტოგრაფიული hash ფუნქციების შემცველი სხვა ალგორითმების მსგავსად, როგორიცაა cyclic redundancy checks.

კრიპტოგრაფიული ქეშირების ფუნქციები: გამოყენების მაგალითი

ვთქვათ , Firefox ბრაუზერის უახლესი ვერსია გადმოიწერეთ. სხვადსხვა მიზეზის გამო, საჭიროა გადმოიტანოთ ის საიტი, რომელიც გარდა Mozilla- ს. არ ისარგებლა საიტის შესახებ, რომელსაც ისწავლე ენდობით, გსურთ დარწმუნდეთ იმაში, რომ ინსტალაციის ფაილი უბრალოდ გადმოწერილია ზუსტად იგივეა, რასაც Mozilla სთავაზობს.

ქცევის კალკულატორის გამოყენებით , თქვენ გამოთვლით ქცევას კონკრეტული კრიპტოგრაფიული ჰოშის ფუნქციის გამოყენებით (ამბობენ, რომ SHA-2) და შემდეგ შეადარეთ Mozilla- ს საიტზე გამოქვეყნებულს.

თუ ისინი თანაბარი არიან, მაშინ გონივრულად დარწმუნდებით, რომ ჩამოტვირთვა გაქვთ, ერთია Mozilla- ი, რომ გქონდეთ.

ნახეთ რა ჩეკია? მეტი ამ სპეციალური კალკულატორები, პლუს მეტი მაგალითები გამოყენებით checksums რათა დარწმუნდით, რომ ფაილი თქვენ მართლაც არის ის, რაც თქვენ მოსალოდნელია მათ.

შეიძლება კრიპტოგრაფიული Hash ფუნქციები გაუქმდეს?

კრიპტოგრაფიული hash ფუნქციები განკუთვნილია თავიდან ასაცილებლად უნარი გადახედოს checksums ისინი შექმნა უკან შევიდა ორიგინალური ტექსტები.

თუმცა, მიუხედავად იმისა, რომ ისინი პრაქტიკულად შეუძლებელია საპირისპიროდ, ეს არ ნიშნავს იმას, რომ ისინი 100% გარანტირებულია გარანტირებული მონაცემები.

რაღაცას, რომელსაც ე.წ. ცისარტყელას მაგიდა შეუძლია, შეიძლება გამოყენებულ იქნას, რათა სწრაფად ამოიწეროს ამონაწერი ჩეკი. Rainbow ცხრილები, ძირითადად, ლექსიკონებია, რომლებიც ათასობით, მილიონს, ან მილიარდიან მილიონებს აღწერს მათ შესაბამისი საბაჟო ღირებულების გასწვრივ.

მიუხედავად იმისა, რომ ეს არ არის ტექნიკურად უკუქცევის კრიპტოგრაფიული hash ალგორითმი, შეიძლება ასევე იყოს, რადგან ეს ასე მარტივი გავაკეთოთ. სინამდვილეში, იმის გამო, რომ ცისარტყელას მაგიდას არ შეუძლია არსებობდეს ყველა შესაძლო შემოწმება, ისინი, როგორც წესი, მხოლოდ "გამოსადეგი" მარტივი ფრაზებია ... სუსტი პაროლებივით.

აქ არის ცისარტყელას მაგიდის გამარტივებული ვერსია იმისთვის, თუ როგორ მუშაობს შაჰ -1-ის კრიპტოგრაფიული დამუშავების ფუნქცია:

ჩვეულებრივი ტექსტი SHA-1 ჩეკიუმი
12345 8cb2237d0679ca88db6464eac60da96345513964
პაროლი 1 ელ
მე მიყვარს ჩემი ძაღლი a25fb3505406c9ac761c8428692fbf5d5ddf1316
Jenny400 7d5eb0173008fe55275d12e9629eef8bdb408c1f
dallas1984 c1ebe6d80f4c7c087ad29d2c0dc3e059fc919da2

ამ ფასეულობებს უნდა გაეცნოთ ამოწმებს, რომ მოითხოვონ, რომ ჰაკერი ესმის, თუ რომელი კრიპტოგრაფიული ალგორითმი იყო გამოყენებული მათთვის გენერირებისთვის.

დამატებითი დაცვა, ზოგიერთი საიტებზე, რომ შეინახოთ მომხმარებლის პაროლები ასრულებს დამატებითი ფუნქციები კრიპტოგრაფიული hash ალგორითმი შემდეგ ღირებულება გენერირებული, მაგრამ სანამ ინახება.

ეს აწარმოებს ახალ ღირებულებას, რომელიც მხოლოდ ვებ-სერვერს ესმის და ეს ზუსტად არ ემთხვევა ორიგინალურ ჩეკს.

მაგალითად, პაროლის შეყვანის შემდეგ და ჩეკის გენერირებული, შესაძლოა, გამოყოფილი იყოს რამდენიმე ნაწილად და გაიცვალა მანამ, სანამ იგი ინახება დაგავიწყდათ მონაცემთა ბაზაში, ან გარკვეული სიმბოლოები შეიძლება swapped სხვები. როდესაც მომხმარებელი ცდილობს მოახდინოს სინტაქსის ავტორიზაცია, ეს დამატებითი ფუნქცია მაშინ მოხდება ვებ-სერვერისა და ორიგინალური ჩეკისტის გენერირებული შეცვლით, რათა დარწმუნდეს, რომ მომხმარებლის პაროლი მოქმედებს.

ამის გაკეთება ეხმარება ზღუდავს სარგებლობას hack სადაც ყველა checksums მოპარული.

კიდევ ერთხელ, იდეა აქ შეასრულოს ფუნქცია, რომელიც უცნობია, რომ თუ ჰაკერი იცის კრიპტოგრაფიული hash ალგორითმი, მაგრამ არა ეს საბაჟო ერთი, მაშინ იცოდა დაგავიწყდათ checksums არის წარუმატებელი.

პაროლები და კრიპტოგრაფიული სახელური ფუნქციები

მსგავსად ცისარტყელა მაგიდა როგორ მონაცემთა ბაზა ზოგავს მომხმარებლის პაროლები. როდესაც თქვენი პაროლი შეყვანილია, ჩეკიუმი გენერირდება და შეესაბამება თქვენი მომხმარებლის სახელით ჩანაწერს. თქვენ მაშინ მიანიჭეთ წვდომას, თუ ორი იდენტურია.

იმის გათვალისწინებით, რომ კრიპტოგრაფიული hash ფუნქცია აწარმოებს არასასურველ გადამოწმებას, ნიშნავს იმას, რომ შეგიძლიათ გააკეთოთ თქვენი პაროლი, როგორც მარტივი 12345 , ნაცვლად 12 @ 34 $ 5 , უბრალოდ იმის გამო, რომ თვითონ ვერ ხვდება? ეს ნამდვილად არ არის , და აქედან გამომდინარე ...

როგორც ხედავთ, ეს ორი პაროდია ვერ ხერხდება დეფინიციის შეუძლებლობა მხოლოდ მხოლოდ ამოწმებს:

MD5 for 12345: 827ccb0eea8a706c4c34a16891f84e7b

MD5 for 12 @ 34 $ 5: a4d3cc004f487b18b2ccd4853053818b

ასე რომ, ერთი შეხედვით შეიძლება ფიქრობთ, რომ აბსოლუტურად კარგად არის გამოყენებული რომელიმე ამ პაროლის გამოყენება. ეს მართლაც მართალია, თუ თავდამსხმელმა გამოავლინა თქვენი პაროლი დაგავიწყდათ მიერ MD5 checksum (რომელიც არავის აკეთებს), მაგრამ არ შეესაბამება თუ უხეში ან ძალების თავდასხმა ხორციელდება (რომელიც არის საერთო ტაქტიკა).

უხეში თავდასხმის დროს, როდესაც შემთხვევითი სტაბილურობა იწყება პაროლის გამოცნობაზე. ამ შემთხვევაში, ძალიან ადვილი იქნებოდა გამოეწვიათ "12345", მაგრამ საკმაოდ რთულია შემთხვევით გაერკვნენ მეორე. თავდასხმის მსგავსია ის, რომ თავდამსხმელს შეუძლია ყველა სიტყვის, ნომრის, ან ფრაზის მცდელობა საერთო (და ნაკლებად საყოველთაოდ გამოყენებული) პაროლის სიიდან, "12345", რომელიც აუცილებლად უნდა იქნას გამოყენებული.

ასე რომ, მიუხედავად იმისა, რომ კრიპტოგრაფიული hash ფუნქციების წარმოქმნის რთული შეუძლებელია- to- გამოიცანით checksums, თქვენ ჯერ კიდევ უნდა გამოიყენოთ რთული პაროლი ყველა თქვენი ონლაინ და ადგილობრივი მომხმარებლის ანგარიშებზე.

რჩევა: იხილეთ სუსტი და ძლიერი პაროლის მაგალითები, თუ არ ხართ დარწმუნებული თუ არა თქვენი ძლიერი პაროლი.

დამატებითი ინფორმაცია კრიპტოგრაფიული სამუშაოების ფუნქციების შესახებ

ეს შეიძლება, როგორც ჩანს, როგორც კრიპტოგრაფიული hash ფუნქციები უკავშირდება დაშიფვრის მაგრამ ორი მუშაობა ძალიან განსხვავებული გზები.

Encryption არის ორი გზა პროცესი, სადაც რაღაც დაშიფრულია გახდეს unreadable, მაგრამ შემდეგ decrypted მოგვიანებით გამოიყენება ჩვეულებრივ ერთხელ. თქვენ შეიძლება დაშიფრავთ ფაილებს, რომლებიც ინახება ისე, რომ ის, ვინც მათ წვდომას ვერ გამოიყენებს, ან შეგიძლიათ გამოიყენოთ ფაილების გადაცემის დაშიფვრა , დაშიფვრა ფაილებს, რომლებიც გადაადგილდებიან ქსელში, როგორც თქვენ ატვირთეთ ან გადმოიტვირთეთ ონლაინში.

როგორც ზემოთ აღინიშნა, კრიპტოგრაფიული hash ფუნქციები განსხვავებულად იმუშავებს, რომ ჩეკების არ ნიშნავს, რომ შეიცვალოს სპეციალური დე-ჰოშინგის პაროლი, როგორ დაშიფრულია ფაილები წაკითხული სპეციალური დეშიფრირების პაროლით. ერთადერთი მიზანი კრიპტოგრაფიული hash ფუნქციები ემსახურება არის შედარების ორი ცალი მონაცემები, როგორიცაა, როდესაც ჩამოტვირთვის ფაილი, შენახვის პაროლები, გაიყვანოს მონაცემების მონაცემთა ბაზაში და ა.შ.

შესაძლებელია კრიპტოგრაფიული ქაფის ფუნქციისთვის, რათა წარმოედგინოთ იგივე ქცევები მონაცემთა სხვადასხვა ნაწილისთვის. როდესაც ეს მოხდება, ეს ეწოდება შეჯახებას. ცხადია, ეს არის დიდი პრობლემა კრიპტოგრაფიული ჰოშის ფუნქციის მთლიანი წერტილიდან გამომდინარე, სრულიად უნიკალური ჩეკების შექმნა, რომელიც მასში შეტანილი ყველა მონაცემისთვისაა.

მიზეზები შეიძლება მოხდეს იმიტომ, რომ თითოეული კრიპტოგრაფიული hash ფუნქცია აწარმოებს ფიქსირებული სიგრძის მნიშვნელობას შეყვანის მონაცემების მიუხედავად. მაგალითად, MD5 კრიპტოგრაფიული hash ფუნქცია ქმნის 827ccb0eea8a706c4c34a16891f84e7b, 1f633b2909b9c1addf32302c7a497983 , და e10adc3949ba59abbe56e057f20f883e სამი სრულიად განსხვავებული ბლოკების მონაცემები.

პირველი ჩეკიუმი არის 12345 , მეორე გენერირებული 700-ზე მეტი ასოებისა და ნომრებისგან, ხოლო მესამე არის 123456 . სამივე შეყვანა არის სხვადასხვა სიგრძე, მაგრამ შედეგები ყოველთვის მხოლოდ 32 სიმბოლოა, რადგან MD5 იქნა გამოყენებული.

როგორც ხედავთ, პრაქტიკულად არ არსებობს ლიმიტების რაოდენობა, რომელიც შეიძლება შეიქმნას, რადგან ყოველი პატარა ცვლილება შეყვანის დროს სრულიად განსხვავებული საცდელი უნდა იყოს. თუმცა, იმის გამო, რომ არსებობს საკონტროლო პუნქტების რაოდენობის ლიმიტი ერთი კრიპტოგრაფიული დამუშავების ფუნქცია, ყოველთვის არის შესაძლებლობა, რომ თქვენ გაჩნდეს შეჯახება.

ამიტომაც შეიქმნა სხვა კრიპტოგრაფიული hash ფუნქციები. მიუხედავად იმისა, რომ MD5 ქმნის 32 სიმბოლოს ღირებულებას, SHA-1 ქმნის 40 სიმბოლოს და SHA-2 (512) ქმნის 128. უფრო მეტი სიმბოლოების რიცხვი, რომელსაც ჩეკი აქვს, ნაკლებად სავარაუდოა, რომ შეჯახება მოხდება, რადგან ის უზრუნველყოფს უნიკალური ღირებულებები.