SlideShare a Scribd company logo
1 of 9
Криптографийн үндэс
Data Encryption Standart
(DES)
Openssl ашиглан симметрик
шифрлэлтийн аргуудыг турших
Лабораторийн ажил 6
Лаборатори 6 – Data Encryption Standart
Криптограпын үндэс 2
Дундын түлхүүртэй нууцлалын алгоритм
Нууцлалын алгоритм дундын түлхүүртэй болон нийтийн түлхүүрийн гэсэн
хоёр янз байдаг.
Дундын түлхүүртэйалгоритм (Shared Key Algorithm) нууцлах болон тайлах аль ч
тохиолдолд нэг л түлхүүр ашигладаг бол нийтийн түлхүүрийн алгоритм түлхүүрийн
хос ашигладаг. Нийтийн түлхүүрээр нууцлаад хувийн түлхүүрээр тайлах гэх мэт.
Дундын түлхүүртэй шифрлэлтийн арга:
Нэг түлхүүрийг ашиглан өгөгдлийг шифрлэдэг криптограф алгоритм.
Өгөгдлийг энкриптлэх ба декриптлэх хоёр талууд ашиглах шифрлэлтийн
түлхүүрээ урьдчилан тохирдог. Симметрик түлхүүрийн шифрлэлт нь
Лаборатори 6 – Data Encryption Standart
Криптограпын үндэс 3
ассимметрик түлхүүрийн шифрлэлтээс хурдан байдаг. Харин түлхүүрийг
солилцох шаардлагатай байдаг учир эмзэг байдлын түвшин өндөр байна.
Симметрик алгоритм нь хоёр төрөл байна:
 Урсгал шифр (Stream ciphers) : Эх текст, шифр текст ба түлхүүр нь
битийн урсгал хэлбэртэй байна. Шифрлэх үйлдэл:
 Битэд суурилсан /bit oriented/ – Тухайн агшинд 1 битийг
шифрлэх ба тайлна.
 Байтад суурилсан /byte oriented/ – Тухайн агшинд n-бит /8 бит
= 1 байт/ шифрлэх ба тайлна.
Шифрлэх ба тайлахад хоёртын XOR үйлдлийгалгоритмын дагуу хийж
гүйцэтгэнэ.
 Блок шифр (Block ciphers) : Тухайн агшинд эх текстийг блокоор
шифрлэдэг мөн блокоор тайлна. Нийтлэг блокийн хэмжээ: 64-bits or
128-bits
Data Encryption Standart-DES
Түүх
1971 онд IBM-ийн (International Business Machines Corporation) 64
битийн блок дээр ажилладаг LUCIFER нэртэй алгоритмийг боловсруулсан
бөгөөд 128 битийн түлхүүрийг ашигладаг байсан. IBM-ийн судлаач Walter
Tuchman нь LUCIFER-ийг боловсронгуй болгож түлхүүрийн уртыг 56-бит
Лаборатори 6 – Data Encryption Standart
Криптограпын үндэс 4
хүртэл болгож багасгасан. 1973 ондАмерикийн Үндэсний Стандартын Товчоо
/National Bureau of standart-NBS, одоо NIST-National Institude of Standart an
Technology/-аас мэдээлэл шифрлэх стандарт болгох санал гаргаснаар DES-ийн
эхлэл тавигдсан. 1977 онд IBM компанийн Tuchman-ийн төслийг NSA (NIST)
Data Encryption Standard хэлбэрээр баталсан.
DES алгоритм нь симметрик блок шифрлэлтээр
нууцладаг
DES- нь Feistel бүтэцтэй, блок – 64 бит, түлхүүрийн урт нь 56 бит, нууцлахдаа
16 үе (round) нууцладаг.
DES-ийн ерөнхий тодорхойлолт
Лаборатори 6 – Data Encryption Standart
Криптограпын үндэс 5
Хэрэглээ:
HBO нь телевизийн хиймэл дагуулын булаалдах систем, видео шифр нь DES
дээр суурилсан байдлаар анх хэрэглэсэн.
Лаборатори 6 – Data Encryption Standart
Криптограпын үндэс 6
Криптоанализ:
 1992 онд анхны онолын довтолгоог Biham, Shamir нар тайлагнасан,
1994 онд анхны туршилтын криптоанализ
 1997 онд нийтэд анх удаа DES-ээр шифрлэсэн мэдээг тайлсан
 1998 онд 56 цагт түлхүүрийг эвддэг EEF’s DES cracker
 1999 онд 22 цаг 15 мин-д DES түлхүүрийг Deep Crack, distributed.net
хамтдаа эвдсэн
Анимейшн програм:
DES алгоритмийн мессэж нууцлах болон тайлах процессийн үйлдлийг
дараах линкээр орон түүлийг татан ажиллуулан уу?
http://bit.ly/2FUadIO
Лабораторын ажлын зорилго
Энэ лабораторийн ажлаар DES алгоритмийн талаар судлан, хэрхэн өгөгдлийг
нууцлах болон тайлах, openssl ашиглан DES алгоритмаар файл нууцлан
тайлах, Cи програм дээр DES алгоритмын процессийг судлах.
Оюутны эзэмших мэдлэг чадвар
 Дундын түлхүүртэй нууцлалын алгоритм
 DES алгоритм мэдлэгтэй болох
Лабораторын даалгаварууд
 Windows юмуу Linux үйлдлийн систем дээр openssl ашиглан
өгөгдөл нууцлах, тайлах
 C++, Cи хэл ашиглан DES алгоритмын эх код ажиллуулж үзэн
доторх процессийн судлах
Шаардагдах програм хангамж, тоног төхөөрөмж
 Windows юмуу Linux үйлдлийн систем
Лаборатори 6 – Data Encryption Standart
Криптограпын үндэс 7
 Dev C++ юмуу Geany
Лабораторыг гүйцэтгэх хугацаа
Хугацаа : 90 минут
Бие даажгүйцэтгэх даалгавар
1. DES шифрлэлтийн арга “си” эх кодыг дараах линкээр орон
ажиллуулж үзнэ үү?
http://www.codingalpha.com/des-algorithm-c-program/
2. 3DES алгоритм ашиглан өгөгдлийг шифрлэх
Алхам 1. OpenSSL – ийг суулгах
# sudo apt-get install openssl
Алхам 2. OpenSSL version-ийг шалгах
# openssl version
Алхам 3. OpenSSL дээрх командууд
$ openssl list-standard-
commands
Openssl-ийн стандарт командуудыг харах
$ openssl list-cipher-
commands
Openssl дээрх шифрлэлтийн командуудыг
харах
$ openssl list-message-
digest- commands
Openssl-ийн хаш функцуудын командуудыг
харах
$ openssl list-cipher-
algorithms
Openssl дээрх шифрлэлтийн алгоритмуудын
жагсаалт
$ openssl list-message-
digest-algorithms
Openssl дээр дэмжигддэг хаш функцуудыг
харах
Алхам 4. Plaintext үүсгэх
Өөрийн хүссэн газараа .txt өргөтгөлтэй файл үүсгэж дотор нь текст бич.
Лаборатори 6 – Data Encryption Standart
Криптограпын үндэс 8
# Echo –e “Sain baina uu.Ene bol nuuts zahia!”
>plain.txt
Алхам 5. Түлхүүр үүсгэх
Өөрийн шифрлэлтийн нууцлалыг нэмэгдүүлж халдлагын анализаас
хамгаалахын тулд urandom хэмээх санамсаргүйгээр түлхүүр үүсгэдэг
хэрэгсэлийг ашиглав. Urandom-ийн утгууд /dev/urandom директорт
хадгалагддаг.
#/dev/urandom | head -1 > randombytes.bin
Алхам 6. Үүсгэсэн түлхүүрээ харах
#Xxd randombytes.bin | head -1
Командаар өөрийн үүсгэсэн түлхүүрийг шалгаж харах боломжтой.
00000000: f370 3754 772f 9b5b 4eb8 3fe7 1716 bbca
Алхам 7. Шифрлэх үйлдэл
#openssl enc –des3 –in plain.txt –out cipher.txt –
nosalt –iv 00000000 –K f3703754772f9b5b
Шифрлэхдээ дээрх командыг ашиглана. DES3 шифрлэлтийг ашиглан
f3703754772f9b5b түлхүүрээр plain.txt-ийг cipher.txt болгож байна.
Enc Encryption буюу шифрлэлт
-d Decryption буюу шифр тайлах
-des3 Tripledes алгоритмоор шифрлэнэ гэдгээ зааж өгнө
-in Шифрлэх мэдээгээ зааж өгнө
-out Шифрлэгдсэн текстийг аль файл руу хадгалахыг заана
-nosalt Хаш функц ашиглан нууц үгийг шифрлэхгүй
-IV Initialization Vector
-K Эх текстийг шифрлэх түлхүүр
Лаборатори 6 – Data Encryption Standart
Криптограпын үндэс 9
Алхам 8. Шифртекстийг шалгах
#xxd –b cipher.txt болон #cat cipher.txt
командуудаар шифрлэгдсэн текстийн агуулгыг харж болно.
Алхам 9. Шифрийг тайлах (Decrypt хийх)
#openssl enc –des3 -d –in cipher.txt –out
newplain.txt –nosalt –iv 00000000 –K
Цf3703754772f9b5b
Шифр тайлахдаа дээрх командыг ашиглана. DES3 шифрлэлтийг ашиглан
f3703754772f9b5b түлхүүрээр cipher.txt –ийг newplain.txt болгож байна.
Алхам 10. Шалгах
#diff newplain.txt plain.txt
Дээрх командаар newplain.txt-ийг plain.txt-тэй харицуулж шифрийг зөв
тайлсан эсэхийг шалгана. Хэрэв үр дүн нь хоосон гарвал шифрийг зөв тайлсан
байна гэсэн үг.
Openssl ашиглан бие дааж гүйцэтгэх даалгавар
1. Openssl ашиглан AES-128-ECB алгоритмоор мэдээг шифрлэж, шифрийг
тайлж туршина уу.
Plaintext – Sain baina uu? Namaig ___ gedeg, minii oyutnii code ____ .
Key – rand командыг ашиглан Pseudorandom number санамсаргүй утга
үүсгэн ашигла.
2. Openssl ашиглан урсгал шифрлэлтийн алгоритм болох RC4 алгоритмоор
мэдээг шифрлэж, шифрийг тайлж туршина уу.
Plaintext – Ene bol nuuts medee. Minii registeriin dugaar ______ .
Key - genrsa командыг ашиглан 1024 битийн урттай private түлхүүр
үүсгэж ашигла.
3. Урсгал болон блок шифрлэлтийн ялгааг тайлбарла

More Related Content

Similar to Lab 6

U.cs101 лаборатори 1
U.cs101 лаборатори 1U.cs101 лаборатори 1
U.cs101 лаборатори 1Ganbaatar ch
 
Face recognition-algorithm-end
Face recognition-algorithm-endFace recognition-algorithm-end
Face recognition-algorithm-endadiyakhuu1
 
Face recognition-algorithm-end
Face recognition-algorithm-endFace recognition-algorithm-end
Face recognition-algorithm-endadiyakhuu1
 
RSA шифрлэх арга (encryption)
RSA шифрлэх арга (encryption)RSA шифрлэх арга (encryption)
RSA шифрлэх арга (encryption)sodhero
 
It101 lab 8
It101 lab 8It101 lab 8
It101 lab 8BPurev
 
Лаборатор-8
Лаборатор-8Лаборатор-8
Лаборатор-8taivna
 

Similar to Lab 6 (9)

U.cs101 лаборатори 1
U.cs101 лаборатори 1U.cs101 лаборатори 1
U.cs101 лаборатори 1
 
Face recognition-algorithm-end
Face recognition-algorithm-endFace recognition-algorithm-end
Face recognition-algorithm-end
 
Face recognition-algorithm-end
Face recognition-algorithm-endFace recognition-algorithm-end
Face recognition-algorithm-end
 
Лекц №5
Лекц №5Лекц №5
Лекц №5
 
RSA шифрлэх арга (encryption)
RSA шифрлэх арга (encryption)RSA шифрлэх арга (encryption)
RSA шифрлэх арга (encryption)
 
It101 lab 8
It101 lab 8It101 lab 8
It101 lab 8
 
Lec3.
Lec3.Lec3.
Lec3.
 
Lab8
Lab8Lab8
Lab8
 
Лаборатор-8
Лаборатор-8Лаборатор-8
Лаборатор-8
 

More from Babaa Naya

Суралцагчийн мэдлэг, чадвар, дадлыг үнэлэх, дүгнэх журам
Суралцагчийн мэдлэг, чадвар, дадлыг үнэлэх, дүгнэх журам Суралцагчийн мэдлэг, чадвар, дадлыг үнэлэх, дүгнэх журам
Суралцагчийн мэдлэг, чадвар, дадлыг үнэлэх, дүгнэх журам Babaa Naya
 
Мэргэжлийн болон техникийн боловсролын сургалтын байгууллагын суралцагчид тэт...
Мэргэжлийн болон техникийн боловсролын сургалтын байгууллагын суралцагчид тэт...Мэргэжлийн болон техникийн боловсролын сургалтын байгууллагын суралцагчид тэт...
Мэргэжлийн болон техникийн боловсролын сургалтын байгууллагын суралцагчид тэт...Babaa Naya
 
Мэргэжлийн болон техникийн боловсролын сургалтын байгууллагын багшид мэргэжли...
Мэргэжлийн болон техникийн боловсролын сургалтын байгууллагын багшид мэргэжли...Мэргэжлийн болон техникийн боловсролын сургалтын байгууллагын багшид мэргэжли...
Мэргэжлийн болон техникийн боловсролын сургалтын байгууллагын багшид мэргэжли...Babaa Naya
 
Мэргэжлийн боловсрол, сургалтын байгууллагын төгсөгчдөд мэргэжлийн диплом, үн...
Мэргэжлийн боловсрол, сургалтын байгууллагын төгсөгчдөд мэргэжлийн диплом, үн...Мэргэжлийн боловсрол, сургалтын байгууллагын төгсөгчдөд мэргэжлийн диплом, үн...
Мэргэжлийн боловсрол, сургалтын байгууллагын төгсөгчдөд мэргэжлийн диплом, үн...Babaa Naya
 
Suraltsagchid chiglesen uilchilgee hesgiin notolgoo
Suraltsagchid chiglesen uilchilgee hesgiin notolgooSuraltsagchid chiglesen uilchilgee hesgiin notolgoo
Suraltsagchid chiglesen uilchilgee hesgiin notolgooBabaa Naya
 
Img 20210105 0002
Img 20210105 0002Img 20210105 0002
Img 20210105 0002Babaa Naya
 
Img 20210105 0001
Img 20210105 0001Img 20210105 0001
Img 20210105 0001Babaa Naya
 
Cisco packet tracer
Cisco packet tracerCisco packet tracer
Cisco packet tracerBabaa Naya
 
Cisco packet tracer
Cisco packet tracerCisco packet tracer
Cisco packet tracerBabaa Naya
 
012 2 ccna sv2-instructor_ppt_ch9
012 2 ccna sv2-instructor_ppt_ch9012 2 ccna sv2-instructor_ppt_ch9
012 2 ccna sv2-instructor_ppt_ch9Babaa Naya
 
012 sec arch fw
012 sec arch fw012 sec arch fw
012 sec arch fwBabaa Naya
 

More from Babaa Naya (20)

Суралцагчийн мэдлэг, чадвар, дадлыг үнэлэх, дүгнэх журам
Суралцагчийн мэдлэг, чадвар, дадлыг үнэлэх, дүгнэх журам Суралцагчийн мэдлэг, чадвар, дадлыг үнэлэх, дүгнэх журам
Суралцагчийн мэдлэг, чадвар, дадлыг үнэлэх, дүгнэх журам
 
Мэргэжлийн болон техникийн боловсролын сургалтын байгууллагын суралцагчид тэт...
Мэргэжлийн болон техникийн боловсролын сургалтын байгууллагын суралцагчид тэт...Мэргэжлийн болон техникийн боловсролын сургалтын байгууллагын суралцагчид тэт...
Мэргэжлийн болон техникийн боловсролын сургалтын байгууллагын суралцагчид тэт...
 
Мэргэжлийн болон техникийн боловсролын сургалтын байгууллагын багшид мэргэжли...
Мэргэжлийн болон техникийн боловсролын сургалтын байгууллагын багшид мэргэжли...Мэргэжлийн болон техникийн боловсролын сургалтын байгууллагын багшид мэргэжли...
Мэргэжлийн болон техникийн боловсролын сургалтын байгууллагын багшид мэргэжли...
 
Мэргэжлийн боловсрол, сургалтын байгууллагын төгсөгчдөд мэргэжлийн диплом, үн...
Мэргэжлийн боловсрол, сургалтын байгууллагын төгсөгчдөд мэргэжлийн диплом, үн...Мэргэжлийн боловсрол, сургалтын байгууллагын төгсөгчдөд мэргэжлийн диплом, үн...
Мэргэжлийн боловсрол, сургалтын байгууллагын төгсөгчдөд мэргэжлийн диплом, үн...
 
Suraltsagchid chiglesen uilchilgee hesgiin notolgoo
Suraltsagchid chiglesen uilchilgee hesgiin notolgooSuraltsagchid chiglesen uilchilgee hesgiin notolgoo
Suraltsagchid chiglesen uilchilgee hesgiin notolgoo
 
Img 20210105 0002
Img 20210105 0002Img 20210105 0002
Img 20210105 0002
 
Img 20210105 0001
Img 20210105 0001Img 20210105 0001
Img 20210105 0001
 
Cisco packet tracer
Cisco packet tracerCisco packet tracer
Cisco packet tracer
 
Cisco packet tracer
Cisco packet tracerCisco packet tracer
Cisco packet tracer
 
Lab10
Lab10Lab10
Lab10
 
Lab9
Lab9Lab9
Lab9
 
Lab8
Lab8Lab8
Lab8
 
Lab7
Lab7Lab7
Lab7
 
Lab4
Lab4Lab4
Lab4
 
Lab3
Lab3Lab3
Lab3
 
Lab2
Lab2Lab2
Lab2
 
Lab1
Lab1Lab1
Lab1
 
012 2 ccna sv2-instructor_ppt_ch9
012 2 ccna sv2-instructor_ppt_ch9012 2 ccna sv2-instructor_ppt_ch9
012 2 ccna sv2-instructor_ppt_ch9
 
012 sec arch fw
012 sec arch fw012 sec arch fw
012 sec arch fw
 
011 az
011 az011 az
011 az
 

Lab 6

  • 1. Криптографийн үндэс Data Encryption Standart (DES) Openssl ашиглан симметрик шифрлэлтийн аргуудыг турших Лабораторийн ажил 6
  • 2. Лаборатори 6 – Data Encryption Standart Криптограпын үндэс 2 Дундын түлхүүртэй нууцлалын алгоритм Нууцлалын алгоритм дундын түлхүүртэй болон нийтийн түлхүүрийн гэсэн хоёр янз байдаг. Дундын түлхүүртэйалгоритм (Shared Key Algorithm) нууцлах болон тайлах аль ч тохиолдолд нэг л түлхүүр ашигладаг бол нийтийн түлхүүрийн алгоритм түлхүүрийн хос ашигладаг. Нийтийн түлхүүрээр нууцлаад хувийн түлхүүрээр тайлах гэх мэт. Дундын түлхүүртэй шифрлэлтийн арга: Нэг түлхүүрийг ашиглан өгөгдлийг шифрлэдэг криптограф алгоритм. Өгөгдлийг энкриптлэх ба декриптлэх хоёр талууд ашиглах шифрлэлтийн түлхүүрээ урьдчилан тохирдог. Симметрик түлхүүрийн шифрлэлт нь
  • 3. Лаборатори 6 – Data Encryption Standart Криптограпын үндэс 3 ассимметрик түлхүүрийн шифрлэлтээс хурдан байдаг. Харин түлхүүрийг солилцох шаардлагатай байдаг учир эмзэг байдлын түвшин өндөр байна. Симметрик алгоритм нь хоёр төрөл байна:  Урсгал шифр (Stream ciphers) : Эх текст, шифр текст ба түлхүүр нь битийн урсгал хэлбэртэй байна. Шифрлэх үйлдэл:  Битэд суурилсан /bit oriented/ – Тухайн агшинд 1 битийг шифрлэх ба тайлна.  Байтад суурилсан /byte oriented/ – Тухайн агшинд n-бит /8 бит = 1 байт/ шифрлэх ба тайлна. Шифрлэх ба тайлахад хоёртын XOR үйлдлийгалгоритмын дагуу хийж гүйцэтгэнэ.  Блок шифр (Block ciphers) : Тухайн агшинд эх текстийг блокоор шифрлэдэг мөн блокоор тайлна. Нийтлэг блокийн хэмжээ: 64-bits or 128-bits Data Encryption Standart-DES Түүх 1971 онд IBM-ийн (International Business Machines Corporation) 64 битийн блок дээр ажилладаг LUCIFER нэртэй алгоритмийг боловсруулсан бөгөөд 128 битийн түлхүүрийг ашигладаг байсан. IBM-ийн судлаач Walter Tuchman нь LUCIFER-ийг боловсронгуй болгож түлхүүрийн уртыг 56-бит
  • 4. Лаборатори 6 – Data Encryption Standart Криптограпын үндэс 4 хүртэл болгож багасгасан. 1973 ондАмерикийн Үндэсний Стандартын Товчоо /National Bureau of standart-NBS, одоо NIST-National Institude of Standart an Technology/-аас мэдээлэл шифрлэх стандарт болгох санал гаргаснаар DES-ийн эхлэл тавигдсан. 1977 онд IBM компанийн Tuchman-ийн төслийг NSA (NIST) Data Encryption Standard хэлбэрээр баталсан. DES алгоритм нь симметрик блок шифрлэлтээр нууцладаг DES- нь Feistel бүтэцтэй, блок – 64 бит, түлхүүрийн урт нь 56 бит, нууцлахдаа 16 үе (round) нууцладаг. DES-ийн ерөнхий тодорхойлолт
  • 5. Лаборатори 6 – Data Encryption Standart Криптограпын үндэс 5 Хэрэглээ: HBO нь телевизийн хиймэл дагуулын булаалдах систем, видео шифр нь DES дээр суурилсан байдлаар анх хэрэглэсэн.
  • 6. Лаборатори 6 – Data Encryption Standart Криптограпын үндэс 6 Криптоанализ:  1992 онд анхны онолын довтолгоог Biham, Shamir нар тайлагнасан, 1994 онд анхны туршилтын криптоанализ  1997 онд нийтэд анх удаа DES-ээр шифрлэсэн мэдээг тайлсан  1998 онд 56 цагт түлхүүрийг эвддэг EEF’s DES cracker  1999 онд 22 цаг 15 мин-д DES түлхүүрийг Deep Crack, distributed.net хамтдаа эвдсэн Анимейшн програм: DES алгоритмийн мессэж нууцлах болон тайлах процессийн үйлдлийг дараах линкээр орон түүлийг татан ажиллуулан уу? http://bit.ly/2FUadIO Лабораторын ажлын зорилго Энэ лабораторийн ажлаар DES алгоритмийн талаар судлан, хэрхэн өгөгдлийг нууцлах болон тайлах, openssl ашиглан DES алгоритмаар файл нууцлан тайлах, Cи програм дээр DES алгоритмын процессийг судлах. Оюутны эзэмших мэдлэг чадвар  Дундын түлхүүртэй нууцлалын алгоритм  DES алгоритм мэдлэгтэй болох Лабораторын даалгаварууд  Windows юмуу Linux үйлдлийн систем дээр openssl ашиглан өгөгдөл нууцлах, тайлах  C++, Cи хэл ашиглан DES алгоритмын эх код ажиллуулж үзэн доторх процессийн судлах Шаардагдах програм хангамж, тоног төхөөрөмж  Windows юмуу Linux үйлдлийн систем
  • 7. Лаборатори 6 – Data Encryption Standart Криптограпын үндэс 7  Dev C++ юмуу Geany Лабораторыг гүйцэтгэх хугацаа Хугацаа : 90 минут Бие даажгүйцэтгэх даалгавар 1. DES шифрлэлтийн арга “си” эх кодыг дараах линкээр орон ажиллуулж үзнэ үү? http://www.codingalpha.com/des-algorithm-c-program/ 2. 3DES алгоритм ашиглан өгөгдлийг шифрлэх Алхам 1. OpenSSL – ийг суулгах # sudo apt-get install openssl Алхам 2. OpenSSL version-ийг шалгах # openssl version Алхам 3. OpenSSL дээрх командууд $ openssl list-standard- commands Openssl-ийн стандарт командуудыг харах $ openssl list-cipher- commands Openssl дээрх шифрлэлтийн командуудыг харах $ openssl list-message- digest- commands Openssl-ийн хаш функцуудын командуудыг харах $ openssl list-cipher- algorithms Openssl дээрх шифрлэлтийн алгоритмуудын жагсаалт $ openssl list-message- digest-algorithms Openssl дээр дэмжигддэг хаш функцуудыг харах Алхам 4. Plaintext үүсгэх Өөрийн хүссэн газараа .txt өргөтгөлтэй файл үүсгэж дотор нь текст бич.
  • 8. Лаборатори 6 – Data Encryption Standart Криптограпын үндэс 8 # Echo –e “Sain baina uu.Ene bol nuuts zahia!” >plain.txt Алхам 5. Түлхүүр үүсгэх Өөрийн шифрлэлтийн нууцлалыг нэмэгдүүлж халдлагын анализаас хамгаалахын тулд urandom хэмээх санамсаргүйгээр түлхүүр үүсгэдэг хэрэгсэлийг ашиглав. Urandom-ийн утгууд /dev/urandom директорт хадгалагддаг. #/dev/urandom | head -1 > randombytes.bin Алхам 6. Үүсгэсэн түлхүүрээ харах #Xxd randombytes.bin | head -1 Командаар өөрийн үүсгэсэн түлхүүрийг шалгаж харах боломжтой. 00000000: f370 3754 772f 9b5b 4eb8 3fe7 1716 bbca Алхам 7. Шифрлэх үйлдэл #openssl enc –des3 –in plain.txt –out cipher.txt – nosalt –iv 00000000 –K f3703754772f9b5b Шифрлэхдээ дээрх командыг ашиглана. DES3 шифрлэлтийг ашиглан f3703754772f9b5b түлхүүрээр plain.txt-ийг cipher.txt болгож байна. Enc Encryption буюу шифрлэлт -d Decryption буюу шифр тайлах -des3 Tripledes алгоритмоор шифрлэнэ гэдгээ зааж өгнө -in Шифрлэх мэдээгээ зааж өгнө -out Шифрлэгдсэн текстийг аль файл руу хадгалахыг заана -nosalt Хаш функц ашиглан нууц үгийг шифрлэхгүй -IV Initialization Vector -K Эх текстийг шифрлэх түлхүүр
  • 9. Лаборатори 6 – Data Encryption Standart Криптограпын үндэс 9 Алхам 8. Шифртекстийг шалгах #xxd –b cipher.txt болон #cat cipher.txt командуудаар шифрлэгдсэн текстийн агуулгыг харж болно. Алхам 9. Шифрийг тайлах (Decrypt хийх) #openssl enc –des3 -d –in cipher.txt –out newplain.txt –nosalt –iv 00000000 –K Цf3703754772f9b5b Шифр тайлахдаа дээрх командыг ашиглана. DES3 шифрлэлтийг ашиглан f3703754772f9b5b түлхүүрээр cipher.txt –ийг newplain.txt болгож байна. Алхам 10. Шалгах #diff newplain.txt plain.txt Дээрх командаар newplain.txt-ийг plain.txt-тэй харицуулж шифрийг зөв тайлсан эсэхийг шалгана. Хэрэв үр дүн нь хоосон гарвал шифрийг зөв тайлсан байна гэсэн үг. Openssl ашиглан бие дааж гүйцэтгэх даалгавар 1. Openssl ашиглан AES-128-ECB алгоритмоор мэдээг шифрлэж, шифрийг тайлж туршина уу. Plaintext – Sain baina uu? Namaig ___ gedeg, minii oyutnii code ____ . Key – rand командыг ашиглан Pseudorandom number санамсаргүй утга үүсгэн ашигла. 2. Openssl ашиглан урсгал шифрлэлтийн алгоритм болох RC4 алгоритмоор мэдээг шифрлэж, шифрийг тайлж туршина уу. Plaintext – Ene bol nuuts medee. Minii registeriin dugaar ______ . Key - genrsa командыг ашиглан 1024 битийн урттай private түлхүүр үүсгэж ашигла. 3. Урсгал болон блок шифрлэлтийн ялгааг тайлбарла