Знайте, Intuit, лекция, въведение в криптографията с публични ключове
Анотация: В тази глава читателят се запознае с най-важното постижение на криптографите от ХХ век - асиметрична криптография и знае кои математически функции се наричат едностранни и как те се използват и за криптиране, генерират секретни ключове и цифрови подписи за електронни документи.
Целта на лекцията. първоначалното запознаване с принципите на публичен ключ за криптиране.
Предистория на техниките за публичен ключ за криптиране и основните определения
Ако използвате криптиране с частен ключ, има две доста сериозни проблеми. Първият проблем е производството на частни ключове и доставката им до участниците в обмена на информация. С голям брой и географско разпределение на участниците в обмена на информация, с помощта на общо предназначение комуникационни канали, като обикновена или електронна поща, често е трудно да се гарантира безопасността на доставката на ключа и неговата автентичност. В "поток шифри и псевдослучайни цифри генератори. Част 2" наръчник за обучение за разпределение проблем беше обсъден подробно за симетрично криптиране.
Много криптографите работят за решаването на тези проблеми, в резултат на което през втората половина на принципно нови подходи за решаване на посочените по-горе (и някои други) цели на седемдесетте години на ХХ век са били разработени. В основата е откриването на така наречените асиметрични алгоритми за криптиране. или методи, при които се извършват процедурите, предни и задни kriptopreobrazovaniya на различни ключове и имат помежду си очевидни и лесно проследими връзки, които биха позволили да се определи една друга ключа. Асиметричните алгоритми са много повече на базата на свойствата на математически функции, отколкото симетрични криптиращи алгоритми, като се използват основно само стъпка пермутация и заместване. Голям принос за проучването, направено от американски учени W. Diffie (W. Diffie), Е. Хелман (М. Hellman), Р. Меркле (Р. Меркле). Те са първите, които предлагат решения на двата проблема, които се различават коренно от всички предишни подходи за криптиране.
Асиметричните алгоритми за криптиране са известни и като публични ключови алгоритми. За разлика от по-симетричен алгоритъм за криптиране (с частен ключ алгоритъм за криптиране), които използват един и същ ключ за криптиране и декриптиране. един ключ се използва за криптиране на асиметрични алгоритми, и различно от първото - за декриптиране. Алгоритмите се наричат асиметрични защото ключовете за криптиране и декриптиране са различни, следователно, не е симетрия на основни криптографски процеси. Един от двата бутона е публична (публичен ключ) и може да бъде обявен за цялото второ - затворен (частен ключ) и трябва да се пази в тайна. Някои от ключовите фактори, отворени или затворени, се използва за шифроване и как да дешифрирате, определен от назначаването на криптографската система.
В момента Асиметричните алгоритми се използват широко в практиката, например, за да се гарантира сигурността на информацията на телекомуникационни мрежи, включително мрежи със сложна топология; за сигурността на информацията в глобалната интернет; в различни банкови и платежните системи (включително и тези, които използват карти с памет).
публично-ключовите криптиращи алгоритми могат да бъдат използвани за справяне с най-малко. три задачи:
- За криптиране на предаваните и съхранявани данни, за да ги предпази от неоторизиран достъп.
- За формирането на електронните подписи на електронни документи.
- За разпределението на таен ключ, използван за криптиране на документа след симетрични методи.
еднопосочни функции
Всички алгоритми с публичен ключ за криптиране, се основават на използването на така наречените еднопосочни функции. Еднопосочен функция (еднопосочна функция) е математическа функция. което е сравнително лесно да се изчисли, но е трудно да се намери върху стойността на функция, съответстваща на стойността на аргумента. Т.е., знаейки, х е лесно да се изчисли е (х). но известно е (х) е трудно да се намери подходяща стойност на х. Под "трудно да се изчисли" Разбирам, че това ще отнеме повече от една година изчисления с помощта на компютър. Едностранно функции се прилагат в криптография както хеш-функция (вж., "Криптографски хаш-функции"). Използвайте еднопосочни функции за криптиране на съобщения, за да защити тях няма смисъл, тъй като на гърба, за да разшифровате криптирани Съобщението не излезе. За целите на криптиране специалните еднопосочни функции - еднопосочни функции с отворен капак (или тайна) - специален вид еднопосочни функции. като някои тайна (люк), което позволява относително бързо да се изчисли обратната на функцията.
За да се излюпват еднопосочен функция е следните твърдения са верни:
- знаейки, х. Лесно е да се изчисли е (х),
- на известна стойност на е (х) е трудно да се намери х,
- знаейки, известна допълнителна секретна информация, че е лесно да се изчисли х.
Използването на асиметрични алгоритми за криптиране
През 70-те години на ХХ век, Diffie и Hellman предложи принцип на криптиране се основава на използването на два различни ключа, въпреки че не са свързани, но подредени така, че да се изчисли един от тях (отворен) към другия (безплатно) е почти невъзможно. Този принцип може да се използва за решаване на проблема за доставка на клавиша за кодиране / декодиране на потребителя, за да бъдем точни - за отстраняване на проблема. Според Diffie и Hellman частни ключове са предварително разпределени по принцип не трябва да се използва за криптиране на данни (от една тайна, която е известна от повече от един човек - не е тайна). Частният ключ, трябва да се знае, че само един човек - неговия собственик. Този принцип е използването на асиметрични алгоритми се нарича публичен ключ за криптиране или публичен ключ.
Съгласно този принцип, всеки може да криптиране на съобщение с публичния ключ. Разкодирай съобщението може само собственикът на частния ключ. Да предположим, например, потребители А и В, като възможност за обмен на електронни съобщения, като се използва схемата за публично криптиране. Да предположим, че потребителят А трябва да предаде тайно съобщение на B, така че никой друг не може да го прочете. За да направите това, изпълнете следните стъпки:
- Потребителят B изпраща на потребителя своя публичен ключ U на всеки канал за комуникация, например чрез електронна поща.
- Потребител А криптира й съобщение M получи публичен ключ U, и получава шифровано съобщение В.
- С шифровано съобщение се изпраща на потребителя Б.
- Потребителят B декриптира полученото съобщение в личния му ключ R.
Ако операцията по криптиране определен като F. и експлоатация разшифроване като F-1. схемата на информация между потребителите на протокол за комуникация могат да бъдат представени като на фиг. 9.1.
Фиг. 9.1. Схема за обществено криптиране
Използването на ключове за криптиране обществени премахва проблема с разпределението. Предишните потребителите могат да обменят шифрованите данни трябва да са били по никакъв начин от затворената комуникационен канал за координиране на таен ключ. За да направите това, те биха могли да се срещнете лично или да използвате куриер. Ако един от членовете счита за необходимо да смените клавиша. той трябваше да премине на нов ключ към своя абонат. Криптография опростява всички публични ключове. Сега абонатите не е нужно да се притеснявате за възможността за компрометиране на частния ключ. Потребители комуникационни системи могат да бъдат напълно безплатна размяна на публични ключове и шифровани своите послания. Ако даден потребител се пази личния си ключ. никой няма да може да чете съобщенията.