Програма шифрування pgp від компанії nexus

"Параноїк - це людина, яка дещо розуміє в тому, що відбувається"

Навіщо це потрібно?

Програма шифрування pgp від компанії nexus
В результаті боротьби з тероризмом і відмиванням грошей у багатьох країнах, в тому числі і в Україні, були прийняті закони, які зобов'язують інтернет-провайдерів архівувати всю переписку своїх клієнтів. Спецслужби великих держав регулярно сканують електронну пошту в пошуку підозрілих ключових слів і фраз. Ось лише кілька таких державних програм: міжнародна система ECHELON (США та інші), проект Carnivore (США), системи СОРМ і СОРМ-2 (Росія).







Відповідно, якщо ви є власником офшорної компанії або плануєте зареєструвати офшор. вам слід приділяти особливу увагу захисту конфіденційності листування.

Як захиститися?

В Інтернеті можна знайти масу засобів захисту даних. Розібратися в цьому різноманітті нелегко. Ось кілька простих порад:

  1. Вибирайте програми, які існують як можна довше.
  2. Віддавайте перевагу програмам, вихідний код яких є відкритим (Open Source).
  3. Стійкість програми повинна грунтуватися на неможливості підібрати ключ, а не на таємності алгоритму шифрування.
  4. Намагайтеся знайти про програму якомога більше відгуків незацікавлених осіб.

Криптографія дуже консервативна. Нові засоби шифрування не зважають надійними доти, поки їх ретельно не розібрався "по кісточках" професійні криптоаналитики. Для цього їм повинен бути доступний вихідний код цих програм. Розробники комерційних програм цей код не публікують через побоювання, що конкуренти скористаються їхніми ідеями. Тому програми з закритим вихідним кодом не користуються довірою у фахівців. Небезпека застосування таких програм полягає в тому, що гіпотетично за закритим кодом розробниками може бути захований потайний "чорний хід" (backdoor) - можливість зламати шифр, навіть не знаючи пароля. Саме виходячи з цих міркувань набагато краще користуватися для цілей шифрування програмами з відкритим вихідним кодом.

Програма шифрування pgp від компанії nexus
Найпоширенішим засобом захисту інформації в останні роки стали програми реалізації стандарту шифрування PGP (Pretty Good Privacy). Стійкість PGP базується на деяких фундаментальних невирішених математичних задачах.

Принцип шифрування PGP

Шифрування PGP побудовано на принципі несиметричною криптографії. Коротенько це означає наступне. Повідомлення, зашифроване одним ключем, може бути розшифровано тільки іншим, взаємопов'язаним ключем. Ці два ключа утворюють пару - публічний і секретний. Така пара ключів є у кожного учасника листування. Головна перевага PGP полягає в тому, що для обміну зашифрованими повідомленнями користувачам немає необхідності передавати один одному таємні ключі.

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

Секретний ключ ретельно оберігається від сторонніх. За допомогою секретного ключа одержувач дешифрує повідомлення, які були зашифровані його публічним ключем. Але навіть отримавши секретний ключ, противник не зможе ним скористатися, не знаючи пароля.

Проілюструємо принцип роботи PGP

Є два співрозмовника, що бажають зберегти конфіденційність своєї переписки. Назвемо їх Аліса і Борис.

1. Обидва співрозмовники встановили програму і кожен з них згенерував по парі ключів - один публічний і один секретний.

2. Після чого Аліса і Борис по відкритому каналу обмінюються своїми публічними ключами. В результаті у кожного співрозмовника виходить наступний набір ключів:

Програма шифрування pgp від компанії nexus

Програма шифрування pgp від компанії nexus

4. Борис пише відповідь, зашифровує його публічним ключем Аліси і відправляє Алісі. Аліса отримує зашифрований відповідь і відкриває його своїм секретним ключем:

Програма шифрування pgp від компанії nexus






Що робить PGP?

Шифрування PGP вирішує три завдання конфіденційного обміну інформацією:

Як працює PGP?

Перш ніж зашифрувати повідомлення відправник визначає одержувача. Програма знаходить публічний ключ одержувача (для цього він повинен бути в файлі публічних ключів на комп'ютері відправника).

Перед шифруванням PGP стискає текст повідомлення. Це прискорює передачу і збільшує надійність шифрування. Потім генерується так званий сесійний (одноразовий) ключ, який являє собою довге випадкове число. За допомогою сесійного ключа шифрується текст повідомлення. Текст повідомлення шифрується за допомогою алгоритму симетричного шифрування. У цьому алгоритмі для шифрування і дешифрування використовується один ключ. Тому для дешифрування повідомлення одержувач теж повинен мати цей сесійний ключ. Однак відправляти цей ключ у відкритому вигляді небезпечно, тому він шифрується публічним ключем одержувача. Зашифрований сесійний ключ відправляється одержувачу разом із зашифрованим текстом. Необхідність використовувати симетричний алгоритм шифрування обумовлена ​​його високою швидкістю.

Розшифровка повідомлень відбувається в зворотній послідовності. На комп'ютері одержувача програма використовує його секретний ключ для розшифровки сесійного ключа. За допомогою цього ключа дешифрується текст повідомлення.

Ключ - це число, яке програма використовує для шифрування і дешифрування тексту. Розмір ключа вимірюється в бітах. Чим більше ключ, тим його складніше зламати (підібрати). Сьогодні в публічній криптографії свідомо стійкими вважаються ключі довжиною 2048 біта і більше.

Незважаючи на те, що публічний і секретний ключі пов'язані між собою, отримати закритий ключ маючи відкритий ключ, дуже складно. Це можливо якщо довжина ключа невелика і у супротивника є комп'ютери великої потужності. Тому важливо вибирати ключі великого розміру. З іншого боку, занадто довгий ключ уповільнює розшифровку повідомлень. Тому слід дотримуватися золотої середини. Цілком достатньо, якщо підбір буде займати кілька десятків або сотень років. На сучасному рівні розвитку комп'ютерних технологій ключі довжиною 2048 - 4096 біта зламати практично неможливо.

Цифровий підпис

Цифровий підпис дозволяє одержувачеві упевнитися в особистості відправника повідомлення. Вона виконує ту ж саму функцію, що і звичайна підпис. Однак звичайну підпис можна підробити. Цифрову же підпис підробити практично неможливо.

Підтвердження цілісності повідомлення - хеш-функція

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

Перед шифруванням повідомлення програма розраховує його хеш-функцію і шифрує її секретним ключем. Результат шифрування і є цифровим підписом. Цифровий підпис передається поштовою програмою разом з текстом. Програма на комп'ютері одержувача розшифровує хеш-функцію, після чого розраховує хеш-функцію тексту повідомлення. Якщо хеш-функція, отримана від відправника і розрахована на місці збігаються, то це означає, що повідомлення по шляху не змінювалося. Далі текст повідомлення дешифрується з допомогою секретного ключа одержувача.

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

Шифрування PGP має ще одним рівнем захисту. Щоб скористатися секретним ключем недостатньо мати доступ до файлу секретних ключів. Для цього необхідно знати пароль.

У програмах реалізації PGP пароль називається "пральний фразою" (Passphrase), хоча вона може складатися і з одного слова. Однак пам'ятайте, що використання занадто коротких паролів значно збільшує ризик їх злому.

Існує три найбільш популярних методу злому пароля:

  1. Метод "словникової атаки" (Dictionary Attack) - послідовний перебір всіх слів мови в різних регістрах.
  2. Метод "грубої сили" (Brute Force) - послідовний перебір всіх можливих комбінацій всіх символів.
  3. Метод "гайкового ключа" (інші варіанти назви: метод "гумового шланга" (Rubber-hose Cryptanalysis), "терморектальний криптоаналіз", "бандитський криптоаналіз") - використання для злому пароля слабкішого ланки системи захисту інформації, яким є людський фактор. Застосовуючи цей метод, "криптоаналитик" вдається до погроз, тортур, шантажу, вимагання, хабарництва та інших некоректних заходів впливу на людину, яка знає пароль. Це можна проілюструвати карикатурою:

Програма шифрування pgp від компанії nexus

Опис заходів протидії методу "гайкового ключа" виходить за рамки даної статті. У цих питаннях вам можуть допомогти фахівці із забезпечення фізичної безпеки. А ось для боротьби з першими двома методами досить дотримуватися нескладних правил вибору пароля:

  • Використовувати слова, які можна зустріти в словнику будь-якого відомого мови.
  • Використовувати дати народження, прізвища та імена родичів, клички домашніх тварин та інші легко вгадуються набори символів.
  • Використовувати осмислені слова однієї мови, набрані в розкладці клавіатури для іншої мови.
  • Записувати пароль (особливо в особистих записниках або залишати його поблизу комп'ютера).
  • Вибирати довжину пароля більше 8 символів (якщо він складається з випадкового набору букв і цифр і розділових знаків).
  • При використанні в паролі осмислених слів збільшити її довжину до 16-20 символів. Слів при цьому має бути кілька.
  • При використанні осмислених слів робити в них помилки, вставляти знаки пунктуації, змінювати регістр.

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

Існує один дуже непоганий метод генерування і запам'ятовування довгих складних паролів: ми беремо будь завчене напам'ять вірш (або слова популярної пісні) і в якості пароля використовуємо перші літери кожного слова, набрані в англійській розкладці клавіатури.

Для прикладу візьмемо уривок з вірша Еміля Верхарна "Меч":

З насмішкою над моєю гордістю безплідною
Мені хтось передбачив, що тримав меч в руці:
Нікчемність, з душею пустою і холодної,
Ти будеш минуле оплакувати в тузі.

Тепер перемикаємо розкладку клавіатури на англійську мову і, повторюючи про себе завчене вірш, набираємо перші літери кожного слова (дивлячись при цьому на українські літери клавіатури):

У підсумку нашим паролем буде наступна набрана послідовність символів:

Як бачимо, пароль вийшов досить довгим і дуже складним. А ось запам'ятати його не складе особливих труднощів. Від вас тільки потрібно не забути яке саме вірш (або пісня) лежить в основі вашого пароля.

Як почати використовувати PGP

Ще по темі







Схожі статті