Що таке криптографія та її принципи.

Пояснити людині як користуватися PGP не складно. Клацніть тут, клацніть тут. А от пояснити, що таке криптографія набагато складніше. Різні довідники дуже мудро розповідають про це, в результаті чого для багатьох ця тема залишилася чорним ящиком. У цій статті я спробую все ж пояснити це, але вже простою мовою, адже я не якийсь там учений криптограф, а звичайний хлопець. Отже, почнемо.

Про що мова?

Навіщо це треба? Уявімо ситуацію. Ви пишіть e-mail своєму другові. А лист містить щось важливе (фото прихованою камерою голою сусідки:-) Якщо ви відправите це лист, то будь-хто зможе його перехопити буде в курсі ваших справ. Де і хто може? Наприклад, та ж ні про що не підозрюючи сусідка, просто перехопивши ваш лист на половині шляху. Це зробити нескладно. Є спеціальні програми. Також ваш лист можуть перехопити спамери, які вивчивши вміст, почнуть надсилати вам рекламу різних порно-сайтів. Ваш поштовий ящик дуже швидко прийде в непридатність. І найстрашніше: лист перехоплять родичі. Особливо небезпечно, якщо родичі працюють у сфері IT. Звичайно, нічого смертельного, але по потилиці дістанеться. Саме для того, щоб всякі ліві особистості не перехопили і не вивчали вашу особисту переписку і просто, щоб вони не лізли, куди не просять, використовується криптографія — отака наука, яка вміє перетворювати дані в бурду і назад.
Основи

У криптографії всі досить важко, адже там замішана вища математика — досить чорна річ. Проте пояснити основи можливо. Шифрування можливо трьома способами:
Асиметричним (простіше кажучи, з двома різними паролями) або Симетричним (з одним паролем), а може бути Гібридним
Друге швидше, а перше надійніше. Третє середнє по надійності і швидкості

Симетричне шифрування

Принцип роботи такий:
1) Тебе просять показати, що власне шифрувати.
2) Ти показуєш.
3) Програма вистачає шматок, величина якого залежить від використовуваного алгоритму (Вони різні, як на мене, то найкращий це Blowfish і Twofish, якщо ці назви нічого не говорять, не засмічуйте голову, це не важливо).
4) Потім просить тебе сказати пароль, яким, власне, і будемо шифрувати.
5) Ти вказуєш.
6) Програма до невпізнання заважає твій пароль і шматок даних. Потім вистачає наступний і таким чином перемелює все. У підсумку виходить бурда, абсолютно даремна.
Зворотна процедура: показати програмі файл бурди і пароль до нього, як чудесним чином програма негайно повертає тобі твої безцінні дані. Ось приблизний принцип дії симетричного шифрування.

Асиметричне шифрування

А тут вже трошки складніше. Використовуються два різних пароля. Перший ти вказуєш, а другий програма робить сама, перемішуючи твій пароль з дуже великим числом, яке вона бере від лампочки. Розмір числа може бути кілька кілобайт, зазвичай до 4Кб. Тепер у тебе є два ключі:

Закритий ключ: створюється на основі того пароля, який ти ввів, і відповідно, тільки ти можеш їм користуватися.

Відкритий ключ: той, що змайструвала програма, його навпаки роздавай скрізь, де зможеш. Їм всі бажаючі зможуть зашифрувати для тебе що-небудь.

Принцип роботи:
1) Хто хоче відправити тобі, наприклад той же e-mail. Він шукає і знаходить твій відкритий ключ і передає його програмі.
2) Програма читає лист і до неузноваемости перемешывает з відкритим ключем.
3) Зашифрований лист перетворюється в бурду. Ця бурда надсилається тобі.
4) Ти отримуєш лист. Твоя програма просить тебе ввести пароль.
5) Після введення пароля, розшифровується твій закритий ключ, а слідом бурда, і ти можеш нормально прочитати лист.

Звичайно я спростив схему і вирізав усю математику, але мої цілі було просте пояснення, тому не ображайтеся.

Гібридне шифрування.
А це винахід успішно використовує і симетричне і асиметричне шифрування в одному флаконі. Саме цей метод використовує знамените PGP.
Ось принцип:
1) Твій друг пише e-mail. Вказує твій відкритий ключ.
2) Програма від лампочки генерує випадковий, але ДУЖЕ стійкий до злому пароль.
3) Лист шифрується ДУЖЕ стійким паролем. Цей пароль впроваджується в підсумкову бурду.
4) Отримане шифрується твоїм відкритим ключем.
5) Ти отримуєш лист і вводиш пароль закритого ключа.
6) Програма расшифровает отримане, знімаючи захист відкритого ключа.
7) При розшифровці програма витягує ДУЖЕ стійкий ключ і расшифровавыет повідомлення.
8) Ти його читаєш.

Ось так ось. Сподіваюся пояснив простим і виразним мовою. Сподіваюся вам сподобалося.