Шифроване на публичен ключ - Как работи шифроването на публичния ключ?

Съдържание:

Anonim

Въведение в криптирането на публичния ключ

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

Да приемем, че искате да общувате с приятели по интернет, за да започнете комуникацията сигурно, за да получите както публичен, така и частен ключ. Частният ключ е секретен ключ, трябва да го пазите като таен. Ако частният ключ бъде предаден на друга страна, има вероятност за атака чрез третата страна.

Да предположим, че X иска да комуникира сигурно с Y, тогава и X и Y трябва да имат публичен ключ и частен ключ.

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

Как работи шифроването на публичния ключ?

Работата с криптирането на публичния ключ е обяснена по-долу:

Случай 1

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

  • X изпраща криптираното съобщение до Y.
  • Y получава съобщението от X.
  • Y дешифрира съобщението, използвайки нейния, т.е. личния ключ на Y.

Забележка: Само Y знаят нейния личен ключ и съобщението могат да бъдат дешифрирани с помощта на личния ключ на Y. Предимството на това е, че страната не може да дешифрира съобщението, тъй като той / тя не знае личния ключ на Y. Само личният ключ на Y може да дешифрира съобщението.

Случай 2

Когато Y иска да комуникира с X, Y използва публичния ключ на X, за да кодира съобщението. Това е възможно, защото X споделя публичния си ключ с Y.

  • Y изпраща криптираното съобщение до X.
  • X получава съобщението от Y
  • X дешифрира съобщението, използвайки нейния, т.е. личния ключ на X.

елементи

Следват компонентите на криптирането с публичен ключ:

  • Обикновен текст: Текстът, който е в четим формат и може да бъде разбран от всеки, се нарича обикновен текст. Обикновеният текст се използва като вход за процеса на криптиране.
  • Шифротекст: Текстът, който се преобразува в четим формат в нечетим формат, използвайки алгоритъма за криптиране, се нарича шифротекст. Шифротекстът е изход от процеса на криптиране. Той е в нечетлив формат и не се разбира от никого.
  • Публичен ключ: Ключът, който е известен на всички, е известен като публичен ключ. Публичен ключ обикновено се използва за процеса на криптиране от страна на подателя.
  • Частен ключ: Ключът, който не е известен на всички, който се пази като таен, е известен като частен ключ. Частният ключ се използва за процеса на декриптиране от страна на приемника.
  • Алгоритъм за криптиране: Алгоритъмът, който се използва за преобразуване на обикновен текст в шифров текст, е известен като алгоритъм за криптиране.
  • Алгоритъм за декриптиране: Алгоритъмът, който се използва за преобразуване на шифров текст в обикновен текст, е известен като алгоритъм за декриптиране.

Алгоритми за криптиране на публичния ключ

По-долу са алгоритмите за криптиране с публичен ключ.

Алгоритъм на RSA

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

Стъпки за алгоритми на RSA:

  • Изберете две големи прости числа X и Y.
  • Изчислете продукта N = X * Y.
  • Изберете публичния ключ E такъв, че да не е фактор на (X - 1) и (Y - 1).
  • Изберете частния ключ D такъв, че следното уравнение стане вярно.
  • (D * E) мод (X - 1) * (Y - 1) = 1
  • За криптиране изчислете CT като CT = PT E mod N.
  • Изпратете CT на приемника.
  • За дешифриране изчислете PT като PT = CT D mod N.
Забележка: В RSA алгоритъма изборът и генерирането на публичен ключ и частен ключ е критична задача.

Алгоритъм за криптография на ElGamal

ElGamal е друг популярен алгоритъм за криптиране с публичен ключ.

ElGamal Key Generation:

  • Изберете голямо първо число P като публичен ключ и Q като частен ключ.
  • Изберете втория ключ за криптиране като E1.
  • Изберете третия ключ за криптиране като E2, така че E2 = E Q mod P Шифроване на ElGamal Key.
  • Изберете произволно число R.
  • Изчислете шифротекст като CT = E1 R mod P.
  • Изчислете втори текст на Cipher CT2 = (PT * E2 R) mod P Декриптиране на ключ ElGamal
  • Изчислете обикновен текст като PT = (CT2 * (CT Q) - 1) mod P.

Препоръчителни статии

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

  1. Какво можете да направите със симетрично криптиране на ключове?
  2. Криптография срещу шифроване
  3. Видове симетрични алгоритми
  4. Основните характеристики на Dropbox