If-Koubou

Какво е криптиране и как работи?

Какво е криптиране и как работи? (Как да)

Криптирането има дълга история, датираща от времето, когато древните гърци и римляни изпращат тайни послания, като заместват букви, които се разбират само с таен ключ. Присъединете се към нас за бърз урок по история и научете повече за това как функционира криптирането.

В днешното издание на HTG Explains ще ви дадем кратка история на криптиране, как работи и някои примери за различни видове криптиране - уверете се също, че проверявате и предишното издание, където обяснявахме защо толкова много хора харесват интернет Изследовател.

Изображение от xkcd, очевидно.

Ранните дни на криптиране

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

Този метод на криптиране може да бъде сравнително лесно разбит, разбира се, но това е един от първите примери за криптиране, които всъщност се използват в реалния свят.

Юлий Цезар използва по някакъв начин подобен метод по време на своето време, като прехвърли всяка буква от азбуката вдясно или наляво от няколко позиции - техника на криптиране, известна като шифър на Цезар. Например, използвайки примерния шифър под "GEH" като "JHHN".

Обикновен: ABCDEFGHIJKLMNOPQRSTUVWXYZ
Шифър: DEFGHIJKLMNOPQRSTUVWXYZABC

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

Други прости криптиращи шифри като квадратчето Полибиус използваха полиалфабетен шифър, който изброява всяка буква със съответните цифрови позиции в горната и долната страна, за да укаже къде е позицията на писмото.

Като използвате таблица като горната, ще напишете буквата "G" като "23" или "GEEK" като "23 31 31 43".

Машина за загадки

По време на Втората световна война германците използваха машината на Енигма, за да предават криптирани предавания назад и напред, които отнемаха много години, преди полските власти да успеят да пропуснат посланията и да дадат решение на съюзническите сили, което е допринесло за победата им.

Историята на модерното криптиране

Нека да се изправим пред нея: модерните техники за шифроване могат да бъдат изключително скучна тема, така че вместо просто да ги обясним с думи, събрахме комикс, който говори за историята на криптирането, вдъхновен от ръководството на Джеф Мозер за AES. Забележка: ясно не можем да предадем всичко за историята на кодирането в комикси.

В тези дни хората не разполагат с добър метод за криптиране, за да осигурят електронната си комуникация.

Луцифер е името, дадено на няколко от най-ранните граждански блокове, разработени от Horst Feistel и колегите му от IBM.

Стандартът за шифроване на данни (DES) е блоков шифър (форма на споделено тайно криптиране), избрана от Националното бюро по стандартите като официален федерален стандарт за обработка на информация (FIPS) за Съединените щати през 1976 г. и което в последствие се ползва с широко разпространение използвайте международно.

Загрижеността за сигурността и относително бавната работа на DES в софтуерно мотивирани изследователи предлагат разнообразие от алтернативни блокови шифри, които започнаха да се появяват в края на 80-те и началото на 90-те години: примери включват RC5, Blowfish, IDEA, NewDES, SAFER, CAST5 и FEAL

Алгоритъмът за криптиране на Rijndael е приет от правителството на САЩ като стандартно криптиране със симетрично ключ или Advanced Encryption Standard (AES). AES беше обявен от Националния институт за стандарти и технологии (NIST) като US FIPS PUB 197 (FIPS 197) на 26 ноември 2001 г. след 5-годишен процес на стандартизация, в който бяха представени и оценени петнадесет конкуриращи се дизайна, преди Rijndael да бъде избран за най- подходящ алгоритъм за криптиране.

Ефективност на алгоритъма на криптиране

Много алгоритми за кодиране съществуват и всички те са подходящи за различни цели - двете основни характеристики, които идентифицират и разграничават един алгоритъм за криптиране от друг, са способността му да защитава защитените данни от атаки и неговата бързина и ефективност.

Като добър пример за разликата в скоростта между различните видове криптиране можете да използвате помощната програма за сравнителен анализ, вградена в съветника за създаване на обем на TrueCrypt - както можете да видите, AES е най-бързият тип силно криптиране.

Има по-бавни и по-бързи методи за шифроване и всички те са подходящи за различни цели. Ако просто се опитвате да декриптирате малко количество данни толкова често, можете да си позволите да използвате възможно най-силното криптиране или дори да го шифровате два пъти с различни видове криптиране. Ако се нуждаете от скорост, най-вероятно ще искате да отидете с AES.

За повече информация относно сравняването на различните видове криптиране вижте доклад от Вашингтонския университет в Сейнт Луис, където те са направили тон на тестване на различни рутинни процедури и са обяснили всичко това в много дръзко пишене.

Видове модерно криптиране

Всички алтернативи за шифроване, за които говорихме по-рано, се използват предимно за два различни типа криптиране:

  • Алгоритми на симетрични ключове използвайте идентични или идентични ключове за шифроване и декриптиране.
  • Асиметрични ключове алгоритми използвайте различни ключове за криптиране и декриптиране - това обикновено се нарича криптография с публичен ключ.

Симетрично криптиране на ключове

За да обясним тази концепция, ще използваме метафората на пощенските услуги, описана в Уикипедия, за да разберем как работи алгоритмите на симетричните ключове.

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

Алгоритмите за симетрични ключове могат да бъдат разделени на шифри за потоци и шифри за шифровки на шифри - шифроване на битовете на съобщението едно по едно и блоковите шифри вземат редица бита, често в блокове от 64 бита едновременно и ги кодират като една единица. Има много различни алгоритми, от които можете да избирате - по-популярните и уважавани симетрични алгоритми включват Twofish, Serpent, AES (Rijndael), Blowfish, CAST5, RC4, TDES и IDEA.

Асиметрично криптиране

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

Първо, Алис моли Боб да й изпрати отворения катинар чрез обикновена поща, запазвайки ключа за себе си. Когато Алис го получи, тя го използва, за да заключи кутия, съдържаща посланието й, и изпраща заключената кутия на Боб. Боб може след това да отключи кутията с ключа си и да прочете съобщението от Алис. За да отговори, Боб трябва по същия начин да отвори катинара на Алис, за да заключи кутията, преди да я върне обратно.

Критичното предимство в асиметричната система на ключовете е, че Боб и Алис никога не трябва да изпращат копие на клавишите си един към друг. Това предотвратява третата страна (може би в случая корумпиран пощенски работник) да копира ключ, докато е в транзит, като позволява на третата страна да шпионира всички бъдещи съобщения, изпратени между Алис и Боб. Освен това, ако Боб беше небрежен и позволи на някой друг да копира му ключовете, съобщенията на Алис на Боб ще бъдат компрометирани, но посланията на Алис към други хора ще останат скрити, тъй като другите хора ще предоставят различни катинари, които Алис да използва.

Асиметричното криптиране използва различни ключове за криптиране и декриптиране. Получателят на съобщението създава частен ключ и публичен ключ. Публичният ключ се разпространява сред изпращачите на съобщения и те използват публичния ключ, за да шифроват съобщението. Получателят използва своя частен ключ всички кодирани съобщения, които са били шифровани чрез публичния ключ на получателя.

Има едно голямо предимство за това криптиране по този начин да се сравни със симетрично криптиране. Ние никога не трябва да изпращаме тайни неща (като нашия ключ за шифроване или парола) по несигурен канал. Публичният ви ключ излиза навън - не е тайна и не е необходимо. Вашият частен ключ може да остане уютен и уютен на вашия персонален компютър, където го е генерирал - никога не трябва да се изпраща по електронна поща навсякъде или да се чете от нападатели.

Как криптирането осигурява комуникация в мрежата

В продължение на много години протоколът SSL (Secure Sockets Layer) е осигурил уеб транзакциите, използвайки криптиране между уеб браузъра ви и уеб сървъра, като ви защитава от всеки, който би могъл да прозвучи в мрежата по средата.

Самият SSL е концептуално съвсем прост. Той започва, когато браузърът поиска защитена страница (обикновено https: //)

Уеб сървърът изпраща своя публичен ключ със своя сертификат.

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

След това браузърът използва публичния ключ, за да шифрова случайно симетричен ключ за шифроване и го изпраща на сървъра с необходимия шифриран URL адрес, както и с други кодирани данни от http.

Уеб сървърът дешифрира симетричния ключ за шифроване, като използва своя частен ключ и използва симетричния ключ на браузъра, за да декриптира URL и http данни.

Уеб сървърът изпраща искания html документ и http данни, шифровани със симетричния ключ на браузъра. Браузърът декриптира данните от http и html документа с помощта на симетричния ключ и показва информацията.

И сега можете сигурно да купите този елемент на иБей, от който наистина не се нуждаете.

Научихте ли нещо?

Ако сте го направили толкова далече, ние сме в края на дългото ни пътешествие към разбирането на криптирането и малко от това как работи - от първите дни на криптиране с гърците и римляните, възхода на Луцифер и накрая как SSL използва асиметрично и симетрично криптиране, за да ви помогне да си купите този пухкав розов зайче на eBay.

Ние сме големи фенове на криптирането тук на How-To Geek, и ние сме покрили много различни начини да се направят неща като:

  • Първи стъпки с TrueCrypt (за защита на данните ви)
  • Добавяне на автоматично шифроване на уебсайтове към Firefox
  • BitLocker To Go Encrypts Преносими флаш устройства в Windows 7
  • Как да защитите компютъра си с Linux, като шифровате вашия твърд диск
  • Добавете опциите за шифроване / декриптиране на Windows 7 / Vista с десен бутон на мишката
  • Първи стъпки с TrueCrypt Drive Encryption в Mac OS X

Разбира се, криптирането е твърде сложна тема, за да обясни всичко. Изпуснахме ли нещо важно? Чувствайте се свободни да полагате известни познания върху колегите си в коментарите.