SHA-1 (მოკლე Secure Hash Algorithm 1) არის კრიპტოგრაფიული ჰეშის რამდენიმე ფუნქციადან ერთ-ერთი.
ის ყველაზე ხშირად გამოიყენება ფაილის უცვლელობის დასადასტურებლად. ეს კეთდება საკონტროლო ჯამის წარმოებით, სანამ ფაილი გადაიცემა, და შემდეგ ისევ, როგორც კი ის მიაღწევს დანიშნულების ადგილს.
გადაცემული ფაილი შეიძლება ჩაითვალოს ნამდვილად მხოლოდ იმ შემთხვევაში, თუ ორივე საკონტროლო ჯამი იდენტურია.
SHA ჰეშის ფუნქციის ისტორია და დაუცველობა
SHA-1 არის მხოლოდ ერთი ოთხი ალგორითმიდან უსაფრთხო ჰეშის ალგორითმის (SHA) ოჯახის. უმეტესობა შეიქმნა აშშ-ს ეროვნული უსაფრთხოების სააგენტოს (NSA) მიერ და გამოქვეყნებულია სტანდარტებისა და ტექნოლოგიების ეროვნული ინსტიტუტის (NIST) მიერ.
SHA-0 აქვს 160-ბიტიანი შეტყობინების დაიჯესტის (ჰეშის მნიშვნელობა) ზომა და იყო ამ ალგორითმის პირველი ვერსია. მისი ჰეშის მნიშვნელობები 40 ციფრია. იგი გამოიცა სახელწოდებით "SHA" 1993 წელს, მაგრამ არ იყო გამოყენებული ბევრ აპლიკაციაში, რადგან ის სწრაფად შეიცვალა SHA-1-ით 1995 წელს უსაფრთხოების ხარვეზის გამო.
SHA-1 არის ამ კრიპტოგრაფიული ჰეშის ფუნქციის მეორე გამეორება. ამ ერთს ასევე აქვს 160 ბიტიანი შეტყობინების შეჯამება და ცდილობდა უსაფრთხოების გაზრდას SHA-0-ში აღმოჩენილი სისუსტის გამოსწორებით. თუმცა, 2005 წელს SHA-1 ასევე დაუცველი აღმოჩნდა.
როდესაც SHA-1-ში აღმოჩენილი იქნა კრიპტოგრაფიული სისუსტეები, NIST-მა გააკეთა განცხადება 2006 წელს და წაახალისა ფედერალური სააგენტოები გამოიყენონ SHA-2 2010 წლისთვის. SHA-2 უფრო ძლიერია ვიდრე SHA-1 და განხორციელდა თავდასხმები. SHA-2-ის წინააღმდეგ ნაკლებად სავარაუდოა, რომ მოხდეს მიმდინარე გამოთვლითი სიმძლავრით.
არა მხოლოდ ფედერალურმა სააგენტოებმა, არამედ კომპანიებმაც კი, როგორიცაა Google, Mozilla და Microsoft, ან დაიწყეს SHA-1 SSL სერთიფიკატების მიღების შეწყვეტის გეგმა, ან უკვე დაბლოკეს ამ ტიპის გვერდების ჩატვირთვა.
Google-ს აქვს SHA-1 შეჯახების მტკიცებულება, რაც ამ მეთოდს არასანდო აქცევს უნიკალური შემოწმების ჯამების შესაქმნელად, იქნება ეს პაროლთან, ფაილთან თუ სხვა მონაცემებთან დაკავშირებით. შეგიძლიათ ჩამოტვირთოთ ორი უნიკალური PDF ფაილი SHAttered-დან, რომ ნახოთ როგორ მუშაობს ეს. გამოიყენეთ SHA-1 კალკულატორი ამ გვერდის ბოლოდან, რათა გენერიროთ საკონტროლო ჯამი ორივესთვის და ნახავთ, რომ მნიშვნელობა ზუსტად იგივეა, მიუხედავად იმისა, რომ ისინი შეიცავს სხვადასხვა მონაცემებს.
SHA-2 და SHA-3
SHA-2 გამოქვეყნდა 2001 წელს, SHA-1-დან რამდენიმე წლის შემდეგ. იგი მოიცავს ექვს ჰეშის ფუნქციას სხვადასხვა ზომით: SHA-224, SHA-256, SHA-384, SHA-512, SHA-512/224 და SHA-512/256.
შემუშავებული არასამთავრობო NSA დიზაინერების მიერ და გამოშვებული NIST-ის მიერ 2015 წელს, არის Secure Hash Algorithm ოჯახის კიდევ ერთი წევრი, სახელად SHA-3 (ყოფილი Keccak).
SHA-3 არ არის განკუთვნილი SHA-2-ის ჩანაცვლებისთვის, როგორც წინა ვერსიები გამიზნული იყო ადრინდელი ვერსიების ჩანაცვლებისთვის. ამის ნაცვლად, ის შეიქმნა, როგორც სხვა ალტერნატივა SHA-0, SHA-1 და MD5.
როგორ გამოიყენება SHA-1?
ერთი რეალური მაგალითი, სადაც SHA-1 შეიძლება იყოს გამოყენებული, არის, როდესაც თქვენ შეიყვანთ თქვენს პაროლს ვებსაიტის შესვლის გვერდზე. მიუხედავად იმისა, რომ ეს ხდება ფონზე თქვენი ცოდნის გარეშე, ეს შეიძლება იყოს მეთოდი, რომელსაც ვებსაიტი იყენებს თქვენი პაროლის ავთენტურობის უსაფრთხოდ დასადასტურებლად.
ამ მაგალითში წარმოიდგინეთ, რომ ცდილობთ შეხვიდეთ ვებსაიტზე, რომელსაც ხშირად სტუმრობთ. ყოველ ჯერზე, როცა ითხოვთ სისტემაში შესვლას, თქვენ უნდა შეიყვანოთ თქვენი მომხმარებლის სახელი და პაროლი.
თუ ვებსაიტი იყენებს SHA-1 კრიპტოგრაფიულ ჰეშის ფუნქციას, ეს ნიშნავს, რომ თქვენი პაროლი გადაიქცევა საკონტროლო ჯამად, მას შემდეგ რაც შეიყვანთ. შემდეგ ეს საკონტროლო ჯამი შედარებულია ვებსაიტზე შენახულ შესამოწმებელ თანხასთან, რომელიც ეხება თქვენს მიმდინარეობას. პაროლი, მიუხედავად იმისა, არ შეგიცვლიათ პაროლი დარეგისტრირების შემდეგ, თუ თქვენ შეცვალეთ იგი რამდენიმე წუთის წინ. თუ ეს ორი ემთხვევა, თქვენ გეძლევათ წვდომა; თუ არა, გეუბნებიან, რომ პაროლი არასწორია.
კიდევ ერთი მაგალითი, სადაც ეს ჰეშის ფუნქცია შეიძლება იყოს გამოყენებული, არის ფაილის გადამოწმებისთვის.ზოგიერთი ვებსაიტი გადმოგვცემს ფაილის SHA-1 საკონტროლო ჯამს ჩამოტვირთვის გვერდზე, ასე რომ, როდესაც თქვენ ჩამოტვირთავთ ფაილს, შეგიძლიათ თავად შეამოწმოთ საკონტროლო ჯამი, რათა დარწმუნდეთ, რომ გადმოწერილი ფაილი იგივეა, რაც თქვენ გსურთ ჩამოტვირთოთ.
შეიძლება გაგიკვირდეთ, სად არის რეალური გამოყენება ამ ტიპის დადასტურებაში. განვიხილოთ სცენარი, როდესაც თქვენ იცით ფაილის SHA-1 საკონტროლო ჯამი დეველოპერის ვებსაიტიდან, მაგრამ გსურთ ჩამოტვირთოთ იგივე ვერსია სხვა ვებსაიტიდან. ამის შემდეგ შეგიძლიათ შექმნათ SHA-1 საკონტროლო ჯამი თქვენი ჩამოტვირთვისთვის და შეადაროთ ის დეველოპერის ჩამოტვირთვის გვერდის ნამდვილ შემოწმებას.
თუ ეს ორი განსხვავებულია, ეს არა მხოლოდ იმას ნიშნავს, რომ ფაილის შიგთავსი არ არის იდენტური, არამედ ფაილში შეიძლება იყოს დამალული მავნე პროგრამა, მონაცემები შეიძლება დაზიანდეს და დააზიანოს თქვენი კომპიუტერის ფაილები, ფაილი არ არის ყველაფერი დაკავშირებული რეალურ ფაილთან და ა.შ.
თუმცა, ეს ასევე შეიძლება ნიშნავდეს იმასაც, რომ ერთი ფაილი წარმოადგენს პროგრამის უფრო ძველ ვერსიას, ვიდრე მეორე, რადგან მცირე ცვლილებაც კი წარმოქმნის უნიკალურ შემოწმების მნიშვნელობას.
შეიძლება ასევე დაგჭირდეთ შეამოწმოთ, რომ ორი ფაილი იდენტურია, თუ თქვენ დააინსტალირებთ სერვის პაკეტს ან სხვა პროგრამას ან განახლებას, რადგან პრობლემები წარმოიქმნება, თუ ზოგიერთი ფაილი აკლია ინსტალაციის დროს.
SHA-1 საკონტროლო ჯამის კალკულატორები
სპეციალური სახის კალკულატორი შეიძლება გამოყენებულ იქნას ფაილის ან სიმბოლოთა ჯგუფის საკონტროლო ჯამის დასადგენად.
მაგალითად, SHA1 Online და SHA1 Hash Generator არის უფასო ონლაინ ინსტრუმენტები, რომლებსაც შეუძლიათ ტექსტის, სიმბოლოების და/ან რიცხვების ნებისმიერი ჯგუფის SHA-1 საკონტროლო ჯამის გენერირება.
ეს ვებსაიტები, მაგალითად, გამოიმუშავებენ ამ წყვილს:
pAssw0rd!
bd17dabf6fdd24dab5ed0e2e6624d312e4ebeaba