Loading...

Какво е алгоритъмът Дифи-Хелман и как работи?

avatar Румен Янев 3 минути
Какво е алгоритъмът Дифи-Хелман и как работи?

Изпращал ли си закодирани писма на някого в училище? А говорил ли си на пилешки пред някой, който не го разбира (пидопибре пидопишъл в писофтпиупини)? Всичко тези детски забавления са една малка частичка от криптографията – науката, която изучава методите за преобразуване на данни с оглед скриването им. Думата „криптография“ идва от гръцки и означава „скрито писане“. Съвсем скоро предстои курсът ни Compromising Platforms, който ще засегне и важната тема за криптирането. За да те подготвя поне малко, ще ти разкажа набързо за основния принцип на кодирането на информация и един от най-популярните алгоритми за криптиране – Дифи-Хелман.

Какво е ключ?

В днешно време криптографията се използва постоянно от устройствата около нас. Използва се, за да изпратим съобщение, което може да види само човекът, на когото го пращаме; от сървъри, които комуникират един с друг; от електронната ни поща, за да не видят всички поръчките ни от AliExpress и тн.

Един от най-често срещаните похвати за закодиране на информация е с помощта на ключ. Лесен пример за използването на ключ е Цезаровия шрифт, в който азбуката се измества с толкова стъпки напред или назад, с колкото са се разбрали хората, които си изпращат тайната информация. Например ако стъпката е +2, буквата а се превръща във в, б в г и тн. В случая ключът е стъпката, с която се изместват буквите. Когато хората, които разменят съобщенията, знаят какъв е ключът, няма да има проблеми в комуникацията. Цезаровият шифър е един от най-простите известни алгоритми и е един от най-лесните за разшифроване, разбира се.

Дифи-Хелман


Дифи-Хелман, подобно на Цезаровия шифър, е алгоритъм за закодиране на информация. Той позволява създаването на ключ, без да се налага този ключ да се изпраща по несигурна връзка в публичното пространство. Най-лесният начин за обясняване на Дифи-Хелман е с помощта на цветове:
 
Алис и Боб искат да си изпращат тайна информация. В публичното пространство се генерира цвят, който всички виждат. За примера този цвят ще бъде жълто.

Алис избира един цвят, който само тя знае (червено) и го смесва с  публичното жълто. Така Алис има смес от жълто и червено, което прави оранжево.

Боб също избира един цвят, който само той знае (зелено) и го смесва с публичното жълто. Боб получава смес от жълто и синьо, което прави синьо.

Алис и Боб разменят получените си смеси. Алис взима синьото от Боб, а Боб взима оранжевото от Алис.

Към сместа, която са взели от другия, Алис и Боб добавят своите тайни цветове.

Алис получава смес от зелено, жълто и червено.

Боб също получава смес от зелено, жълто и червено (същият цвят като Алис, тъй като са смесили еднакви цветове в еднакво количество).

Така Алис и Боб имат общ таен цвят, който само те двамата знаят. Този таен цвят се явява ключа, с помощта на който те ще могат да закодират и разкодират съобщенията си. Ако някой се опита да ги прочете, няма да успее да генерира тайния им цвят, защото няма достъп до първоначалните цветове, които Алис и Боб са си избрали, а те са важна част от уравнението. За математическото обяснение на Дифи-Хелман, може да видиш клипа най-долу.

Дифи-Хелман се използва за обмяна на информация през публична връзка и всеки път като видиш катинарчето отляво нa адреса на уебсайта, в който си, браузърът ти вероятно ползва Дифи-Хелман.

За да разбереш повече за криптографията, видовете алгоритми, които компютрите използват и как да ги разкодираш, не се чуди, а се запиши за курса Compromising Platforms. В него също ще научиш как да заобикаляш различни устройства за сигурност, да прихващаш активни сесии, ще се запознаеш с атаки над front-end апликации и back-end уеб сървъри и бази данни. Курсът е подходящ както за хора, активно занимаващи се с информационна и/или мрежова сигурност, специалисти по киберсигурност, така и за хора без или с малък опит в тази сфера, включително програмисти с интерес и профил към “secure coding”. Курсът също така е подходящ и за хора, преминали през курс Computer Networking Fundamentals и Ethical Hacking Basics и Ethical Hacking Advanced или знания, еквивалентни на тях. Побързай и се запиши сега!