Шифрование с помощью симметричного и асимметричного ключа

Thank you for reading this post, don't forget to subscribe!

Симметричное шифрование ключа (шифр)

Шиф­ро­ва­ние с сим­мет­рич­ным клю­чом или сим­мет­рич­ный шифр, так­же назы­ва­е­мое шиф­ро­ва­ни­ем с сек­рет­ным клю­чом, исполь­зу­ет один ключ для шиф­ро­ва­ния и дешиф­ро­ва­ния сооб­ще­ния. Его основ­ное исполь­зо­ва­ние – обес­пе­че­ние конфиденциальности

В сим­мет­рич­ном шиф­ро­ва­нии есть три опе­ра­ции, а имен­но: гене­ра­ция клю­ча, шиф­ро­ва­ние и дешиф­ро­ва­ние. Здесь отпра­ви­тель шиф­ру­ет обыч­ное тек­сто­вое сооб­ще­ние сек­рет­ным клю­чом для гене­ра­ции зашиф­ро­ван­но­го тек­ста. Затем отпра­ви­тель отправ­ля­ет это зашиф­ро­ван­ное сооб­ще­ние полу­ча­те­лю. Полу­ча­тель, полу­чив зашиф­ро­ван­ное сооб­ще­ние, рас­шиф­ро­вы­ва­ет его тем же клю­чом дешиф­ро­ва­ния, что и отправитель.

Алго­рит­мы сим­мет­рич­но­го шиф­ро­ва­ния быва­ют двух типов. Пер­вый – это блоч­ный шифр, а вто­рой – потоковый.

В блоч­ном шиф­ре сооб­ще­ние делит­ся на бло­ки фик­си­ро­ван­но­го раз­ме­ра, каж­дый из кото­рых шиф­ру­ет­ся отдель­но. Блоч­ные шиф­ры явля­ют­ся пред­по­чти­тель­ным выбо­ром для шиф­ро­ва­ния дей­та­грамм MAC и сете­во­го уров­ня. AES, DES и 3DES явля­ют­ся при­ме­ра­ми блоч­ных шифров.

В пото­ко­вом шиф­ре дан­ные обра­ба­ты­ва­ют­ся как непре­рыв­ный поток. Про­стой текст обра­ба­ты­ва­ет­ся по одно­му бай­ту за раз. У них мень­шая ско­рость рас­про­стра­не­ния оши­бок. RC4 – это при­мер пото­ко­во­го шиф­ра. Кста­ти, RC4 исполь­зу­ет­ся в про­то­ко­ле Transport Layer Security (TLS).

Преимущества симметричного шифрования

Сим­мет­рич­ное шиф­ро­ва­ние рабо­та­ет более эффек­тив­но и быст­рее. Так­же тре­бу­ет­ся мень­ше вре­ме­ни на выпол­не­ние. Поэто­му они пред­по­чти­тель­ны для длин­ных сообщений.

Созда­ние надеж­но­го клю­ча и алго­рит­мы обра­бот­ки для сим­мет­рич­но­го шиф­ро­ва­ния отно­си­тель­но менее затратны.

Он так­же обес­пе­чи­ва­ет опре­де­лен­ную сте­пень аутен­ти­фи­ка­ции, посколь­ку для шиф­ро­ва­ния дан­ных исполь­зу­ет­ся один ключ, и толь­ко этот ключ может исполь­зо­вать­ся для дешиф­ро­ва­ния дан­ных. Сле­до­ва­тель­но, пока ключ хра­нит­ся в сек­ре­те отпра­ви­те­лем и полу­ча­те­лем, кон­фи­ден­ци­аль­ность меж­ду ними обеспечивается.

 

Недостатки симметричного шифрования

Ключ, исполь­зу­е­мый для шиф­ро­ва­ния и дешиф­ро­ва­ния, явля­ет­ся важ­ным эле­мен­том это­го алго­рит­ма. Если ключ ском­про­ме­ти­ро­ван, любой, кто вла­де­ет им, может лег­ко рас­шиф­ро­вать сооб­ще­ние. Невоз­мож­ность отка­за от автор­ства, озна­ча­ю­щая, что отпра­ви­тель или полу­ча­тель не может отка­зать в выпол­не­нии дей­ствия, не обес­пе­чи­ва­ет­ся сим­мет­рич­ным шифрованием.

Еще одна серьез­ная про­бле­ма с сим­мет­рич­ным шиф­ро­ва­ни­ем свя­за­на с пере­да­чей клю­ча по неза­щи­щен­ной сре­де. Это назы­ва­ет­ся про­бле­мой рас­пре­де­ле­ния ключей.

Так­же тре­бу­ет­ся боль­шое коли­че­ство уни­каль­ных клю­чей, напри­мер, нам пона­до­бит­ся n (n-1)/2 клю­чей для n пользователей.

Асимметричное шифрование ключа (шифр)

Шиф­ро­ва­ние с асим­мет­рич­ным клю­чом или асим­мет­рич­ный шифр, так­же назы­ва­е­мое шиф­ро­ва­ни­ем с откры­тым клю­чом, исполь­зу­ет один ключ для шиф­ро­ва­ния, а дру­гой – для дешиф­ро­ва­ния сооб­ще­ния. Его основ­ное исполь­зо­ва­ние – реа­ли­за­ция аутен­ти­фи­ка­ции, неот­ка­зу­е­мо­сти и обме­на ключами.

Сооб­ще­ния могут быть зашиф­ро­ва­ны любым лицом, исполь­зу­ю­щим откры­тый ключ полу­ча­те­ля, но могут быть рас­шиф­ро­ва­ны толь­ко с исполь­зо­ва­ни­ем закры­то­го клю­ча получателя.

 

Преимущества асимметричного шифрования

В слу­чае асим­мет­рич­но­го шиф­ро­ва­ния откры­тый ключ может быть лег­ко рас­пре­де­лен по срав­не­нию с сек­рет­ным клю­чом сим­мет­рич­но­го шиф­ро­ва­ния. Циф­ро­вая под­пись для реа­ли­за­ции без­опас­но­сти воз­мож­на толь­ко с асим­мет­рич­ным шиф­ро­ва­ни­ем. Он так­же луч­ше все­го под­хо­дит как для внут­рен­ней сети, так и для Интер­не­та. Такие обла­сти при­ло­же­ний, как ини­ци­и­ро­ва­ние сеан­са, обыч­но исполь­зу­ют асим­мет­рич­ное шифрование.

Тре­бу­ет­ся неболь­шое коли­че­ство клю­чей и пара клю­чей для одно­го объ­ек­та, кото­рый будет исполь­зо­вать­ся с любым дру­гим объектом.

Шиф­ро­ва­ние с асим­мет­рич­ным клю­чом реа­ли­зо­ва­но в алго­рит­ме RSA и алго­рит­ме обме­на клю­ча­ми Диффи-Хеллмана.

 

Недостатки асимметричного шифрования

Асим­мет­рич­ное шиф­ро­ва­ние срав­ни­тель­но мед­лен­нее, чем сим­мет­рич­ный алго­ритм, а так­же тре­бу­ет боль­ше ресур­сов. Это неэф­фек­тив­но для отправ­ки длин­ных сооб­ще­ний. Это так­же тре­бу­ет про­вер­ки меж­ду сущ­но­стью и ее откры­тым ключом.

Они стра­да­ют от про­бле­мы про­вер­ки клю­ча. Пред­по­ло­жим, Али­са отправ­ля­ет сооб­ще­ние Бобу, исполь­зуя его откры­тый ключ. Вопрос в том, как Али­са удо­сто­ве­рит­ся, что это откры­тый ключ Боба? Пред­по­ло­жим, Чар­ли каким-то обра­зом уда­ет­ся полу­чить откры­тый ключ Боба, повтор­но зашиф­ро­вы­ва­ет сооб­ще­ние Али­сы и отправ­ля­ет его Бобу, как если бы оно при­шло непо­сред­ствен­но от Али­сы. Боб рас­шиф­ру­ет сооб­ще­ние, исполь­зуя свой закры­тый ключ, думая, что оно при­шло непо­сред­ствен­но от Али­сы. Дру­гая ситу­а­ция состо­ит в том, что Чар­ли может выдать себя за Боба и опуб­ли­ко­вать новый откры­тый ключ от име­ни Боба.