Jump to content

Secure hash algorithm

Википедиа — Чөлөөт нэвтэрхий толь
10:42, 22 Гуравдугаар сар 2016-ий байдлаарх Hishigzaya (хэлэлцүүлэг | оруулсан хувь нэмэр) хэрэглэгчийн хийсэн залруулга

Secure hash algorithm буюу SHA-г NIST компаниас хөгжүүлэгдсэн. 1993 онд SHA-г Federal Information Processing Standard (FIPS)-с нийтэлсэн анхны хувилбар нь 160 битийн хаш функц юм. Secure hash algorithm нь message authentication, түлхүүр үүсгэх функцууд ба адилтган танин баталгаажуулахад ашиглагдана. Хаш алгоритм нь дурын битийн уртыг тогтмол битийн урттай болгон гаргадаг функц. SHA нь SHA-0, SHA-1, SHA-2, SHA-3 гэсэн хувилбаруудтай. SHA-n гэдэг тэмдэглэгээ нь хэш функцийн үр дүнд n-битийн утга гарна гэдгийг илэрхийлнэ. Харин SHA-1-ийн хувьд NIST FIPS PUB 180-1-д анх тодорхойлсны дагуу 160-битийн утга гаргана.

SHA төрөл

SHA-0:

1993 онд SHA нэрээр нийтэд хэвлэгдсэн 64 бит Хаш функцийн анхны хувилбар юм. Үүнийг retronym хэмээн нэрийддэг. 160 битийн хаш утгыг ашигладаг.

SHA-1:

160 бит Хаш функц. NSA-с тоон гарын үсгийн алгоритмийн хэсэг болгож загварчилсан. SHA-1 нь аюулгүй байдлын найдваржилтаар хангалтгүйд тооцогдох болсон тул ашиглахыг татгалз хэмээх болсон. Оролтонд нь 264 битээс бага мессеж, гаралтанд нь 160 битийн мессеж гарна. Энэхүү стандартын хүрээнд аюулгүй байдлын ажиллагааны турш SHA-384 ба SHA-512 алгоритмууд нь аюулгүй байдлын хамгаалалтаар хамгийн өндөрт байдаг.

SHA1 алгоритмийн нэг давталтын цикл Энэ нь SHA-1 хэрэгжүүлэх хэш функцийг шахах үйл ажиллагаа санаан дээр барьсан. Орц шахалт үйл ажиллагаа 512 битийн зурвас блок урт, өмнөх блок албан тушаалын гаралт нь юм. Гаралт Энэ хүртэл бүх блок хэш утга юм. Өөрөөр хэлбэл, хэш нэгж тэнцүү . Бүх мэдээний хэш утга нь сүүлийн блок үр дүн юм.

SHA-2:

Өөр өөр блокуудтай 2 ижил хаш функцийн бүлэг юм. SHA-256, SHA-512 SHA-256 нь SHA-1 ба MD4, MD5-н аргаар үйл ажиллагаа явуулдаг. SHA-256 шахалтын функц нь 256 битийн завсрын хаш утга ба 512 битийн мессежийн блок дээр ажилладаг. Энэ нь үндсэндээ 256 битийн блок шифрлэлтийн алгоритм юм. SHA-224, SHA-324, SHA-512/224 ба SHA-512/256 гэсэн тус бүрийн стандарт байдаг. Эдгээрийг NSA зохион бүтээсэн. 2 гол бүрэлдэхүүн хэсэгтэй. 1. SHA-256 шахалтын функц 2. SHA-256 мессежний хуваарь SHA-256 нь 32 битийн үсэгт ашиглагдана. Доорх тэмдэглэгээг ашиглана.

Alt text
Caption text

SHA-512 шахалтын функц нь 512 битийн хаш утга ба 1024 битийн мессежийн блок дээр ажилладаг. Энэ нь үндсэндээ 512 битийн блок шифрлэлт юм.

SHA-3:

Одоо ажиллаж буй NIST hash competition функцийн хувилбарт санал болгосон хаш функцийн стандарт. 2012 оны 10 сард SHA-3 гэсэн шинэ стандартыг бий болгон сонгосон. Тоон гарын үсэг болон хаш дээр суурилсан MACs, PRFs, RNGs, KDFs-г дэмждэг. Аюулгүй байдлын хувьд маш өндөр нарийвчлалтай. SHA-3 нь SHA3-224, SHA3-256, SHA3-384 ба SHA3-512 гэсэн 4 криптографын хаш функцээс бүрдэнэ. 2 гол бүрэлдэхүүн хэсэгийг тайлбарлья. 1 SHA-512 шахалтын функц ба SHA-512 мессежийн хуваарь Энэ нь доорх тэмдэглэгээг ашиглана.

Alt text
size=115

SHA-512 нь 64 битийн үсэгт ашиглагдана.

SHA үйл ажиллагааны харьцуулалт

A large clock tower and other buildings line a great river.
thumb
 Secure Hash Algorithm-ын олон хувилбаруудын харьцуулалт
Параметр SHA-1 SHA-256 SHA-384 SHA-512
Мессеж задаргааны хэмжээ (bits) 160 256 384 512
Мессежний хэмжээ (bits) 2-н 64 зэрэг 2-н 64 зэрэг 2-н 128 зэрэг 2-н 64 зэрэг
Блокын хэмжээ (bits) 512 512 1024 1024
Үгийн хэмжээ (bits) 32 32 64 64
Алгоритмын алхамууд 80 64 80 80


SHA алгоритмын математик тооцоолол

Secure Hash Algorithm нь санамсаргүй байдлаар нууцлал буюу encryption хийдэг. Тухайн нууц үг нь хэдэн ч битийн урттай орж ирхэд тухайн нууц үгийг secure hash algorithm-н төрлөөс хамааран хэдэн үг үсэг, тэмдэгт, тоо орж ирэх нь хамаагүй нэг л хэмжээнд encryption хийдэг. Их хэмжээний өгөгдлийг encryption хийхэд ч мөн адил хийгдэнэ. Энэхүү нууцлалын протокол нь нэг битийн өөрчлөлтөнд тухайн encryption хийсэн өгөгдөл нь бүхэлдээ өөрчлөгддөг. Жишээ нь:

SHA1: encryption хийх өгөгдөл: хишгээ

     encryption хийгдсэн байдал: e096d9b2b126eaf1ff75b84c8f2da3074b97d6a9 

SHA1: өгөгдөл: Өгөгдөл гэдэг үг нь ерөнхий тохиолдолд яриан бус мэдээллээр илэрхийлэгдэх бөгөөд хэн бүхэнд харагдах ойлгогдохоор үүсгэж болох баримт, үзэл санаа, заавар зөвлөгөө, мэдээлэл гэх мэтийг илэрхийлэх утгатай. Өгөгдөл дамжуулах холбооны үндэс нь морзе кодын дамжуулал, телеграфын холбоо, тоон мэдээлэл дамжуулах онол дээр үндэслэгддэг. Аналог технологитой цахилгаан холбооны сүлжээний сувгаар кодлогдсон мэдээллийг бага хурдтай дамжуулдаг холбооны төрлийг телеграфын холбоо гэнэ. Телеграфын холбооны сүлжээний онцлог нь хурд бага, өгөгдлийн тоон битийн цувааг аналог хэлбэрт дамжуулах технологитой байсан.

     боловсруулалт: 


SHA256: encryption хийх өгөгдөл: хишгээ

       encryption хийгдсэн байдал: 33c81a747b02a62011290e334033045b8a1dfd4a757e4d4a4d5c5f0988325a36

SHA256: өгөгдөл: Өгөгдөл гэдэг үг нь ерөнхий тохиолдолд яриан бус мэдээллээр илэрхийлэгдэх бөгөөд хэн бүхэнд харагдах ойлгогдохоор үүсгэж болох баримт, үзэл санаа, заавар зөвлөгөө, мэдээлэл гэх мэтийг илэрхийлэх утгатай. Өгөгдөл дамжуулах холбооны үндэс нь морзе кодын дамжуулал, телеграфын холбоо, тоон мэдээлэл дамжуулах онол дээр үндэслэгддэг. Аналог технологитой цахилгаан холбооны сүлжээний сувгаар кодлогдсон мэдээллийг бага хурдтай дамжуулдаг холбооны төрлийг телеграфын холбоо гэнэ. Телеграфын холбооны сүлжээний онцлог нь хурд бага, өгөгдлийн тоон битийн цувааг аналог хэлбэрт дамжуулах технологитой байсан.

     боловсруулалт:8acf51a95639a442cdb12a9384a393b52bbd29c898a768a38cec13e38696d71e


SHA3: encryption хийх өгөгдөл: хишгээ

     encryption хийгдсэн байдал: 5cdf5ffc84ec3b54b52fb097728990b1592054da9caf125302b0b72f95207afc6b2726b183cd9fd4c1ec4a152dfde7c3f
                                 0a4125dbca0848c32812ed16a3f9541

SHA3: өгөгдөл: Өгөгдөл гэдэг үг нь ерөнхий тохиолдолд яриан бус мэдээллээр илэрхийлэгдэх бөгөөд хэн бүхэнд харагдах ойлгогдохоор үүсгэж болох баримт, үзэл санаа, заавар зөвлөгөө, мэдээлэл гэх мэтийг илэрхийлэх утгатай. Өгөгдөл дамжуулах холбооны үндэс нь морзе кодын дамжуулал, телеграфын холбоо, тоон мэдээлэл дамжуулах онол дээр үндэслэгддэг. Аналог технологитой цахилгаан холбооны сүлжээний сувгаар кодлогдсон мэдээллийг бага хурдтай дамжуулдаг холбооны төрлийг телеграфын холбоо гэнэ. Телеграфын холбооны сүлжээний онцлог нь хурд бага, өгөгдлийн тоон битийн цувааг аналог хэлбэрт дамжуулах технологитой байсан.

       боловсруулалт: 8acf51a95639a442cdb12a9384a393b52bbd29c898a768a38cec13e38696d71e


SHA512: encryption хийх өгөгдөл: хишгээ

       encryption хийгдсэн байдал: 22901342db3f3b24008ed375daa3464e8b985a3492d4a6f2105daf90c274a8f872ba19f2d38602a7dece5aae46e90261 
                                   f3ecb18b562816676c2532eb969a0ade

SHA512: өгөгдөл: Өгөгдөл гэдэг үг нь ерөнхий тохиолдолд яриан бус мэдээллээр илэрхийлэгдэх бөгөөд хэн бүхэнд харагдах ойлгогдохоор үүсгэж болох баримт, үзэл санаа, заавар зөвлөгөө, мэдээлэл гэх мэтийг илэрхийлэх утгатай. Өгөгдөл дамжуулах холбооны үндэс нь морзе кодын дамжуулал, телеграфын холбоо, тоон мэдээлэл дамжуулах онол дээр үндэслэгддэг. Аналог технологитой цахилгаан холбооны сүлжээний сувгаар кодлогдсон мэдээллийг бага хурдтай дамжуулдаг холбооны төрлийг телеграфын холбоо гэнэ. Телеграфын холбооны сүлжээний онцлог нь хурд бага, өгөгдлийн тоон битийн цувааг аналог хэлбэрт дамжуулах технологитой байсан.

       боловсруулалт: 2c8740f21e4519de72431c45c21fdc18fac8695213eddf5a7951e862edb0325b57bc62e2ea492834b686b7706dc4cc87dda81a65
                      98e147f600d58ff13d281cb7

SHA сул тал

Secure Hash Algorithm нь нэг битийн өөрчлөлтөнд бүхэлдээ өөрчлөгддөг. Үүнээс үзвэл хэдэн битийн өгөгдөл байсан ч тухайн өгөгдлийг боловсруулах нь компьютерт их хэмжээний ачааллыг бий болгоно. Гэхдээ энэхүү ачаалал нь тийм ч чухал асуудал биш юм.

Тайлагдах боломж

Secure Hash Algoritm нь маш өндөр нарийвчлалтай учир тайлагдах боломжгүй. Тухайн нэг битийн өөрчлөлтөн encryption хийсэн түлхүүр үг нь бүхэлдээ өөрчлөгддөг. Тиймээс тайлагдах боломж бараг байхгүй. Харин Brote Force attack ашиглан нууц үгийг олох боломжтой боловч тухайн боловсруулалтыг хийх гэж их хэмжээний хугацаа ашиглагдана. Ийм учраас эвдэгдэх боломжгүй юм.