SHA-1 (կրճատ՝ Secure Hash Algorithm 1) մի քանի գաղտնագրային հեշ ֆունկցիաներից մեկն է:
Այն ամենից հաճախ օգտագործվում է ֆայլի անփոփոխությունը հաստատելու համար: Դա արվում է ֆայլի փոխանցումից առաջ ստուգիչ գումար ստեղծելով, այնուհետև նորից, երբ այն հասնում է իր նպատակակետին:
Փոխանցված ֆայլը կարելի է համարել իսկական միայն այն դեպքում, եթե երկու ստուգիչ գումարները նույնական են:
SHA Hash ֆունկցիայի պատմություն և խոցելիություններ
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 թվականին, ապահով Hash ալգորիթմների ընտանիքի ևս մեկ անդամ է, որը կոչվում է 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 Checksum Հաշվիչներ
Հատուկ տեսակի հաշվիչը կարող է օգտագործվել ֆայլի կամ նիշերի խմբի ստուգման գումարը որոշելու համար:
Օրինակ, SHA1 Online-ը և SHA1 Hash Generator-ը անվճար առցանց գործիքներ են, որոնք կարող են ստեղծել տեքստի, խորհրդանիշների և/կամ թվերի ցանկացած խմբի SHA-1 ստուգիչ գումարը:
Այդ կայքերը, օրինակ, կստեղծեն այս զույգը՝
pAssw0rd!
bd17dabf6fdd24dab5ed0e2e6624d312e4ebeaba