Ուղեցույց

Ինչպես ստեղծել HMAC տեքստի և գաղտնիքի համար

Մուտքագրեք ոչ դատարկ տեքստ, անհրաժեշտ գաղտնիք և օգտագործելի ալգորիթմ, ապա գործարկեք HMAC-ի ստեղծումը։ Եթե ալգորիթմ չնշեք, ընտրվում է SHA-256-ը։

Գործիք HMAC գեներատոր

HMAC արժեքի կիրառման հիմքը

Այս գործիքը նախատեսված է մուտքագրված տեքստի և գաղտնիքի հիման վրա HMAC արժեք ստանալու համար։ Այն հարմար է այն իրավիճակում, երբ անհրաժեշտ է նույն տվյալների համար ստանալ համադրելի արժեք՝ ընտրելով հեշավորման օգտագործելի ալգորիթմ։ Տեքստը, գաղտնիքը և ալգորիթմը պարտադիր մուտքեր չեն, ուստի կարելի է սկսել նաև լրացուցիչ դաշտերը չփոխելով։ Այնուամենայնիվ, դատարկ և ոչ դատարկ տեքստերի վարքը տարբեր է, և այդ տարբերությունը պետք է հաշվի առնել արդյունքը գնահատելիս։ Եթե տեքստը թողնեք դատարկ, գործողությունը կավարտվի հաջողությամբ, սակայն հաշվարկված HMAC-ի փոխարեն կստանաք դատարկ արժեք։ Հետևաբար գործիքի նպատակային օգտագործման համար տեքստի դաշտում մուտքագրեք իրական բովանդակություն, ոչ թե միայն դաշտը թողեք լրացված երևալու համար։ Ալգորիթմ չնշելու դեպքում ընտրվում է SHA-256-ը։ Ձեր նշած անունը օգտագործվում է հասանելի հեշավորման գրադարանից համապատասխան իրականացում ընտրելու համար, ուստի անունի ընտրությունը ազդում է ստացվող արդյունքի վրա։ Նույն HMAC-ը կրկնելու կամ համեմատելու նպատակով պետք է պահպանեք նույն տեքստը, նույն գաղտնիքը և նույն ալգորիթմի անունը։

Գործողության կատարման հերթականությունը

  1. Տեքստի դաշտում մուտքագրեք այն բովանդակությունը, որի համար ցանկանում եք ստանալ HMAC։ Դա կարող է լինել հաղորդագրության կարճ տեքստ, պատվերի նույնացուցիչ կամ այլ տվյալ, որի արժեքը պետք է նույնությամբ փոխանցվի գործիքին։ Ուշադրություն դարձրեք սկզբի և վերջի բացատներին, տառերի գրությանը, թվերին և նշաններին, քանի որ մուտքի փոքր փոփոխությունը փոխում է այն տվյալը, որի համար կատարվում է գործողությունը։ Եթե դաշտը դատարկ թողնեք, արդյունքը հաջողության նշում կունենա, բայց HMAC-ի դաշտում կհայտնվի դատարկ արժեք։ 2. Գաղտնիքի դաշտում մուտքագրեք այն գաղտնիքը, որը պետք է մասնակցի ոչ դատարկ տեքստի համար HMAC-ի ստեղծմանը։ Դատարկ գաղտնիքը սխալ չէ, սակայն այդ դեպքում գործիքը կիրառում է ներքին պահուստային գաղտնիք, ոչ թե դատարկ գաղտնիքը։ Այդ պատճառով գործնական համեմատության կամ կրկնվող ստուգման համար մուտքագրեք ձեր նախատեսած գաղտնիքը և նույն ձևով պահեք այն օգտագործման պահին, բայց մի պահեք գաղտնիքը ծածկագրված տվյալների կողքին։ 3. Ընտրեք օգտագործելի ալգորիթմի անունը կամ թողեք լռելյայն ընտրված SHA-256-ը։ Անունը պետք է համապատասխանի հեշավորման գրադարանում հասանելի իրականացմամբ լուծվող տարբերակի։ 4. Գործարկեք HMAC-ի ստեղծումը և դիտեք վերադարձված արդյունքը։ Ոչ դատարկ տեքստի ու օգտագործելի ալգորիթմի համադրության դեպքում արդյունքը հաջող է և պարունակում է ստեղծված HMAC արժեքը։ Եթե նշված անունը չի լուծվում օգտագործելի իրականացմամբ, այն մի մեկնաբանեք որպես ստացված HMAC-ի հաստատում, քանի որ գործիքը նման դեպքը տեղային կառուցվածքային ձախողման չի վերածում։

Արդյունքի ընթերցման կանոնները

Արդյունքի հաջող վիճակը պետք է դիտարկել մուտքերի համադրության հետ միասին։ Երբ տեքստը ոչ դատարկ է, իսկ ալգորիթմի անունը լուծվում է օգտագործելի հեշավորման իրականացմամբ, վերադարձված արդյունքը պարունակում է ստեղծված HMAC արժեք։ Այդ արժեքը համեմատելիս նույնությամբ կրկնեք տեքստը, գաղտնիքը և ալգորիթմը, հակառակ դեպքում համեմատվում են տարբեր մուտքեր։ Դատարկ տեքստի դեպքում հաջող ավարտը միայն ցույց է տալիս, որ գործողությունն ավարտվել է, և չի նշանակում, թե HMAC-ի հաշվարկված գաղտնագրական արժեք կա։ Այդ ճյուղում վերադարձվող HMAC-ը դատարկ է, ուստի այն չի կարելի շփոթել ոչ դատարկ տեքստի համար ստացված արժեքի հետ։ Դատարկ գաղտնիքով կատարված գործողությունը նույնպես պետք է առանձնացնել ձեր գաղտնիքով կատարված գործողությունից։ Ոչ դատարկ տեքստի դեպքում գործիքը դատարկ գաղտնիքը փոխարինում է ներքին պահուստային գաղտնիքով, հետևաբար արդյունքը հիմնված է այդ փոխարինված գաղտնիքի վրա։ Եթե ցանկանում եք վերարտադրել արդյունքը, մի փոխեք այդ մուտքային պայմանը և մի ենթադրեք, որ դատարկ գաղտնիքը գործածվել է ուղղակիորեն։ Ալգորիթմի անունը ճանաչելի լինելու դեպքում ստացված արժեքը վերաբերում է հենց այդ ընտրությանը։ Անճանաչելի կամ չլուծվող անվանման դեպքում գործիքը չի ձևավորում տեղային կառուցվածքային սխալ, ուստի նման իրավիճակում արդյունքի մեկնաբանությունը պետք է սահմանափակել և նախ ստուգել ընտրված անունը։ Գործիքը չի հաստատում ձեր մուտքերի իմաստը, նպատակահարմարությունը կամ արտաքին համակարգի պահանջներին համապատասխանությունը։ Այն վերադարձնում է արդյունք միայն այն վարքի շրջանակում, որը որոշվում է տեքստով, գաղտնիքով և ընտրված ալգորիթմով։

Գործնական օրինակ

API-ի հարցման նույնացուցիչի համար ցանկանում եք ստանալ HMAC՝ օգտագործելով «պատվեր-184» տեքստը և «գաղտնիք-7» գաղտնիքը։

Մուտքագրեք «պատվեր-184» տեքստը, «գաղտնիք-7» գաղտնիքը և SHA-256 ալգորիթմը, ապա գործարկեք HMAC-ի ստեղծումը։

Արդյունքը պետք է պարունակի հաջող ավարտի նշում և ստեղծված HMAC արժեք՝ առանց այստեղ դրա արժեքը կանխատեսելու։

Սահմանափակումներ

  • Ալգորիթմի անունը պետք է լուծվի հասանելի հեշավորման օգտագործելի իրականացմամբ, իսկ չլուծվող անունը գործիքը տեղային կառուցվածքային սխալի չի վերածում։

Հաճախակի սխալներ

  • Դատարկ HMAC արժեքի պատճառը կարող է լինել դատարկ տեքստը. մուտքագրեք իրական բովանդակություն և կրկին գործարկեք ստեղծումը։

Հաճախ տրվող հարցեր

Պե՞տք է լրացնել տեքստի, գաղտնիքի և ալգորիթմի դաշտերը։

Դաշտերը պարտադիր չեն, սակայն տեքստը դատարկ թողնելու դեպքում կստանաք դատարկ HMAC արժեք, իսկ ոչ դատարկ տեքստի հետ դատարկ գաղտնիք օգտագործելիս կկիրառվի ներքին պահուստային գաղտնիք։

Ո՞ր ալգորիթմն է ընտրվում, եթե այն չնշեմ։

Չնշված ալգորիթմի դեպքում ընտրվում է SHA-256-ը, իսկ նշված անունը պետք է լուծվի հասանելի հեշավորման օգտագործելի իրականացմամբ։

Դատարկ տեքստի համար հաշվարկված HMAC կստանա՞մ։

Դատարկ տեքստի դեպքում գործողությունը հաջողությամբ ավարտվում է, բայց HMAC հաշվարկված արժեք չի ստեղծվում, և վերադարձվող արժեքը մնում է դատարկ։

Գործիք

HMAC գեներատոր