Що таке PGP?, Криптографія, Security & Hack, статті

Андрій Новосьолов


Отже, що таке PGP? Це скорочення від ‘Pretty Good Privacy’ – назви популярної системи шифрування з _откритим_ ключем.

Що таке система шифрування з відкритим ключем? Hу, ти напевно знаєш системи з _закритим_ ключем – наприклад, це все архіватори і більшість шіфровщікі. Для розшифровки в них використовується той же ключ (пароль), який був використаний для шифровки. Якщо цей ключ стане відомий ще комусь – все, потрібно терміново його змінювати, він більше не забезпечує таємності.

Це зручно для закриття особистої інформації, яку ти не хочеш показувати _нікому_. Hо що, якщо ти хочеш передати щось іншій людині так, щоб по шляху ніхто не вліз у цю інформацію?

Ти можеш загорнути файли в архів з паролем, який знаєш тільки ти і твій друг. Так багато зараз і роблять. Hо тут є вразливе місце: як повідомити другу пароль? Для цього потрібно бути впевненим, що ніхто по дорозі цей пароль не перехопить. Виходить замкнуте коло. Якщо ти можеш передати другу пароль _лічно_ – значить, як правило, ти можеш просто передати йому саму секретну інформацію, не пораючись з паролями.

Єдине, мабуть, виняток – якщо ви заздалегідь домовтесь про пароль, яким ти будеш шифрувати всю інформацію, що надходить для передачі одному. Hаприклад, якщо друг кудись їде, і ви збираєтеся надалі підтримувати зв’язок через електронну пошту.

Hо що, якщо ти познайомився з людиною в якій-небудь луні, а людина живе в іншому місті і зустрітися особисто – велика проблема? Ось для цього і придумана система шифрування з відкритим ключем.

Принципова відмінність таких систем полягає в тому, що вони працюють не з одним ключем, а з _парой_ ключів. Те, що зашифровано першим перемикачем, може бути розшифровано _тільки_ за допомогою другого, і навпаки.

Таким чином, ти зберігаєш у себе перший – _секретний_ – ключ, і нікому його не показуєш. Другий ключ – _публічний_ – ти роздаєш всім друзям, розсилаєш по FIDO, вставляєш в коментарі до своїх архівів …

Тепер, якщо один хоче передати тобі секретну інформацію, він зашифрує її твоїм _публічним_ ключем і відправить тебе. Розшифрувати її можна тільки при допомоги _секретного_ ключа, який є тільки в тебе. Щоб ти міг посилати другу секретну інформацію, він повинен повідомити тобі _свой_ публічний ключ.

Ось це і є той самий ‘PGP public key’, який ти бачив.

Крім того, таким же чином можна організовувати _електронную_подпісь_ (це деяку подобу Authenticity verification, реалізованої в більшості архіваторів). В цьому випадку по вмісту твоєї інформації (архіву, мессаги etc.) розраховується спеціальна контрольна сума, яка потім шифрується твоїм _секретним_ ключем. Після цього кожен, у кого є твій _публічний_ ключ, може розрахувати таку ж суму і порівняти її з результатом розшифровки. Якщо не співпаде – значить, хтось копався в інформації і щось в ній змінив. (Authenticity verification працює аналогічно, але там просто розраховується контрольна сума вмісту архіву, і всі дані для порівняння містяться в тому ж архіві; одержувачеві не потрібно мати твого ключа, зате, в принципі, AV достатньо (відносно, звичайно) легко підробити).

Це називається ‘PGP signature’, яку ти, можливо, теж бачив.

Hо у цього методу є свої недоліки.

По-перше, і його можна зламати методом перебору, оскільки вихідні тексти поширюються _открито_. Hо алгоритм шифрування досить складний і працює довго, тому при нинішньому рівні швидкодії комп’ютерів це поки не дуже реально.

По-друге – і це найсерйозніше – небезпека прихована в можливості підробки _публічного_ ключа. Що, якщо хтось почне поширювати _свой_ публічний ключ, підписуючись _твоім_ ім’ям? Тоді він зможе отримувати листи, які люди будуть посилати тобі, думаючи, що ключ передав ти. Правда, ти сам ці листи розшифрувати не зможеш – відповідного секретного ключа в тебе немає. Або він зможе розсилати всяку гидоту, прикриваючись твоїм ім’ям і нібито твоїм публічним ключем. Ось звідки взялися фрази:

EP> “… якщо побачите розбіжності – бийте на сполох …”

Тому, по можливості, свій ключ треба посилати не відкрито, а через посередника – Людини, якій ти довіряєш і чий публічний ключ відомий твоєму другові, щоб цей посередник міг супроводити _твой_ ключ _своей_ PGP-сигнатурою.

EP> Hо “то це”, “навіщо це”, “і де мені теж взяти” для мене не ясно 🙂

Що й навіщо – я розповів. Де – як завжди, пошукай на BBS файл PGP *. *

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*