Чи надійна ціфоровая підпис?, Різне, Security & Hack, статті

Ілля ІХТ, Вадим Богданов

Зі зростанням популярності Internet досить
гостро постало питання використання її в
ділових цілях. Першою ластівкою стала
ділова переписка, яка найчастіше ведеться
саме по Мережі. З’явилися сервери,
пропонують послуги onlineторговлі
самого різного роду – від покупки
продуктів до нерухомості.

Але якщо ви отримуєте по email
лист, підписаний “Саша Сидоров”
або розплачуєтеся кредитною картою в
onlineмагазіне, ви не можете бути на сто
відсотків упевнені, що лист
дійсно послав ваш друг Саша, а
магазин справжній, а не чергова
хакерська витівка, і номер вашої
кредитки і ваш PINкод не стануть
надбанням всієї хакерської братії.

Тому, як тільки в Internet
прийшов бізнес, а з ним і необхідність
завжди точно визначати, з ким маєш
справа, досить широко стали
використовуватися технології, що дозволяють
автентифікувати суб’єктів Мережі, як
користувачів, так і сервери. Одна з них
– Електронна продпісь (ЕП), стандарт
якої (DSS) був вироблений в 1991 році.

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

Як працює електронна
підпис?

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

Контрольна сума

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

Один з найбільш популярних
методів, що використовуються для підрахунку
контрольних сум, – це обчислення
контрольного значення її циклічного
надлишкового коду (Cyclic Redundancy Check – CRC).
Алгоритм контролю CRC вже давно знайшов
своє застосування в системах мережевих
адаптерів, контролерів жорсткого диска
та інших пристроїв для перевірки
ідентичності вхідний і вихідний
інформації. Цей механізм застосовується
у багатьох з нині існуючих
комунікаційних програм для
виявлення помилок при пакетної передачі
по телефонних лініях зв’язку.

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

Ось чому в цілях
безпеки в ЕП для вироблення
контрольної суми використовуються особливі
алгоритми хешування. Гарна хеш-функція
працює таким чином, що
принципово неможливо створити два
різних тексту з однаковою
контрольною сумою. Застереження “хороша”
з’явилася тому, що перші алгоритми
хешування допускали можливість
існування текстів-близнюків. Це
явища отримало назву “ефект дня
народження “. Сучасні хешфункціі НЕ
містять таких “дірок”.

Шифрування з відкритим ключем

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

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

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

Отже, створена за допомогою хеш-функції
контрольна сума шифрується вашим
приватним ключем і надсилається разом з
листом. Але у вашого кореспондента
може не виявитися вашого публічного
ключа, наприклад, якщо ви пишете йому
вперше. Тому публічний ключ
дешифрации додається безпосередньо
до підпису, так що вся інформація,
необхідна для аутентифікації та
контролю цілісності даних може
знаходитися в одному (переданому) “конверті”.

До речі, в структуру ЕП (по
міжнародному стандарту CCITT X.509) входить
не тільки публічний ключ відправника, але
і його ім’я, серійний номер ЕП (номер
визначає уповноважена фірма,
видала йому набір з приватного і
публічного ключа), назва цієї
уповноваженої фірми і навіть її
власна ЕП.

Як всевиглядіт добре і
заманчііво. Здається, встановив на
комп’ютері Digital ID – і справа в капелюсі. Ан ні.
Фахівці кажуть, що достовірність
власне ЕП цілком і повністю
визначається якістю шифрувальної
системи (здавалося б). “Здавалося б”
тому, що насправді з ЕП все не так
просто, і число вразливих точок ЕП,
базується на шифруванні з відкритим
ключем, настільки велике, що
доцільність використання
подібного методу викликає великі
сумніви.

Погляд добре
інформованого оптиміста на ту ж проблему

Мріяння просунутих адептів
віртуальної реальності, побачивши в Internet
наступне за московським метро диво
світла, невиліковна булемія (а по-русски
висловлюючись – жор) заокеанських чудовиськ,
породжують одного за іншим монстрів
інтегрованих середовищ і
телепортаціонних механізмів,
космічний розмах шпигуноманії
спецслужб міцно впровадили в
громадську світову свідомість думка про
неминучості приходу в якнайшвидше
майбутньому електронних грошей, що базуються
на шифруванні з відкритим ключем.
Ексклюзивне право на нього належить
споконвічно американській фірмі RSA Data Security (причому
незалежно від методу шифрування).

Вже сьогодні навіть
вітчизняні правління банків, які,
як відомо, просто-таки з
клептоматіческой пристрастю оснащують
свої банки найсучаснішими
технологіями і навіть уві сні бачать, як усі
ці кошти – від автоматичних
телекамер по периметру до нелегально
вивезених суперЕОМ, здатних
управляти системою ППО невеликий
європейської країни, – збагатять гуляє
навколо банків народ і піднімуть
російську економіку на небачені
досі висоти, – вже сьогодні ці
правління щосили впроваджують системи прямої
телекомунікаційного зв’язку “клієнт-банк”
і навіть відчувають тягу профінансувати
розробки спираються на Internet систем
“Home banking” для пенсіонерів, інвалідів
і просто дуже зайнятих людей,
зазнають труднощі з виходом із
будинку або зайнятих на безперервному
конвеєрному виробництві.

Алгоритм шифрування з
відкритим ключем (ОК), що лежить в основі
технології електронного підпису, на
якій базуються ті чи інші форми
електронних грошей, принципово вразливий.
Всі без винятку відомі
математичні методи ОКшіфрованія
грунтуються не на безумовно
необоротних ентропійних інформаційних
перетвореннях, що застосовуються в
деяких симетричних алгоритмах, а на
так званих NPполних завданнях (розкладання
на прості множники, цілочисельне
логарифмування, завдання про рюкзаку, про
бродячого торговця і т. п. – все
кілька сот і навіть тисяч завдань),
які визнані умовно нерозв’язними,
оскільки ні для однієї з них не знайдено
алгоритм ефективного (поліноміальною)
рішення, але і не доведено, що такого
не може бути. Зате доведено, що всі NPполние
завдання зводяться одна до іншої, тобто якщо
буде знайдено непереборное рішення хоча
б однієї з них, то рішенням виявиться
весь клас, всі електронні підписи
будуть підроблені, а електронні гроші
відправляться на село до дідусів. Крім
того, для багатьох NPполних завдань будуються
ефективні наближені алгоритми (наприклад,
сімплексметод в задачі лінійного
програмування), як правило, дають
точні рішення за реальний час.

Ще один невиліковний “карієс”
міститься в загальній концепції
безпеки ОКшіфрованія, яку
можна охарактеризувати двома фразами:

1) захист надійна і безпечна,
якщо не робляться спроби її
злому;

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

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

• Конверт з електронною
підписом може складатися з даних,
контрольної суми CRS, зашифрованою
приватним ключем PK1, і відповідного
відкритого ключа OK1.

Зловмисник перехоплює
конверт, відрізає ЕП = PK1 * CRS1 + OK1, змінює
дані, генерує пару ключів PK2 – OK2 і
знову збирає конверт:

Одержувач перевіряє ЕП,
переконується, що OK2 дешифрує PK2 * CRS2 так,
що CRS2 відповідає “данним2”, і
що підпис справжній і дані
оригінальні.

Для того щоб описаний
фальсифікація був неможливий, ключ OK1 не повинен
знаходитися в конверті, а повинен бути
доставлений одержувачу окремо, причому
по каналу секретного зв’язку. Таким чином
виключаються перехоплення і підміна. Однак про
який секретного зв’язку ми говоримо, якщо
мова йде про ОКшіфрованіі? Таким
чином, “відкритий ключ” зовсім не
є відкритим, він повинен бути
переданий приватним чином, але в цьому
випадку ми отримуємо переродження ОКшіфрованія
в класичне симетричне з приватною
передачею секретного ключа.

• Складальник інформації
генерує пару ключів PK1 – OK1, розсилає
відкритий ключ OK1 всім партнерам, які
повинні надіслати йому секретну (один від
одного і всіх сторонніх) інформацію.

Зловмисник заздалегідь
генерує свою пару ключів PK2 – OK2,
перехоплює одну з передач OK1,
підміняє його на OK2, а потім
перехоплює дані, зашифровані
ключем OK2, дешифрує їх своїм PK2, читає,
потім знову шифрує “правильним” OK1
і відправляє далі – збирачеві
інформації, який ні про що не
запідозрить.

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

• Система “кліентбанк”:
кожен клієнт Ki має на руках
індивідуальний приватний ключ PKi, в
банку зберігається таблиця відповідних
відкритих ключів Ki – OKi. Клієнт Ki посилає
в банк платіжне доручення, банк
засвідчується в підпису клієнта по
таблиці і виробляє відповідну
грошову операцію.

Зловмисник генерує
свою пару ключів PKX – OKX, підміняє
відкритий ключ клієнта K2 в банці з OK2 на OKX
(Не знаю, як щодо швейцарських банків,
а в російських така підміна не
складає труднощів, оскільки найбільше, що,
як правило, використовують наші банки для
захисту від НСД своїх комп’ютерів – це
міліцію у бронежилетах і варіанти
парольного обмеження доступу).
Середньостатистичний російський банкір
просто не звертає на подібну нісенітницю
уваги і відправляє свою платіжку.
Банк отримує платіжку зловмисника,
ідентифікує його як клієнта 2 і
переводить всі грошики клієнта туди, куди
направив їх зловмисник.

Створення захищеної системи реєстрації

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

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

Протоколи захищеної
телекомунікаційної
зв’язку SSL (2,3)

• Широко розрекламована
і вже збирає колосальні дивіденди
захищена телекомунікаційна зв’язок
з протоколами SSL 2,3 передбачає
обмін абонентів відкритими ключами,
шифрування даних подвійними – своїм
секретним і чужим відкритим – ключами, ще
масу всяких наворотів, що переконують
користувача в нескінченній секретності
з’єднання, однак як з’ясувати, хто,
власне, з ким з’єднався?

У кінцевому підсумку з’ясовується,
що користувач повинен-таки
попередньо сходити в той чи інший
ідентифікаційний центр і отримати там
унікальний сертифікат, на підставі
якого і будується весь подальший
секретний діалог з відкритими ключами.
Причому так чи інакше в цьому діалозі
виявляється задіяним і
ідентифікаційний центр, який видав
користувачеві сертифікат (абонент A
посилає абоненту B відкритий ключ OKA; B
посилає A свій сертифікаційний ключ
OKA * PKBI * SKB, зашифрований спочатку приватним
PKBI, а потім відкритим OKA; A дешифрує SKB до
стану PKBI * SKB; потім зв’язується з
ідентифікаційним центром I; центр
висилає A відкритий ключ OKI; A відправляє
в центр ключі OKA1, OKI * PKAI * SKA, OKI * PKBI * SKB; I,
має парні ключі PKI, OKAI, OKBI, дешифрує
сертифікати SKA, SKB і звіряє їх з базовою
інформацією, після чого надсилає
абоненту A відповідь, зашифрований ключами
OKA1 * PKI, щодо особистості B; і A
ідентифікує B; потім B так само
ідентифікує A; нарешті вони переходять
до власне обміну даними). Знову ОК-шифрування
реально базується на секретному
симетричному ключі (сертифікаті) і
надійність всієї схеми залежить в першу
чергу від того, наскільки надійно
охороняються сертифікати користувачів, а
у другу – не вклиниться чи хто-небудь у
діалог абонентів вже після того, як
ідентифікація відбулася, як це
описано в двох перших прикладах.

Майбутнього у електронних
підписів поки немає

Резюмуючи все вищевикладене,
можна стверджувати, що “реальні”
електронні гроші та електронні
підписи з публічним ключем вимагають
безумовно більш надійну концепцію і
методи ОК-шифрування, що фактично
виключено з огляду чотирьох головних позицій:

1) з математичної точки
зору всі відомі алгоритми з
відкритим ключем є лише умовно-надійними;

2) принципова концепція
шифрування з відкритим ключем умовна і
спирається на нічим не забезпечене
допущення феномена “спонтанної
ідентифікації “обмінюються
даними сторін;

3) державні служби
безпеки просувають на внутрішніх і
особливо зовнішніх ринках свідомо “діряві”
системи і перешкоджають попаданню в
маси надійних алгоритмів;

4) крім того, зберігаються всі
потенційно вразливі точки атак на
класичні симетричні схеми
шифрування.

Додаткові складнощі в
аутентифікації створюють контрольні
суми. Розробники в азарті творчості
часто перебільшують свої досягнення до
абсурду, стверджуючи, наприклад, що
контроль цілісності довільних
даних довільного обсягу може бути
забезпечений числом з 15 або 20 знаків, що
суперечить теорії інформації так само,
як вічний двигун – законам
термодинаміки. Насправді для
забезпечення стовідсоткової гарантії
цілісності даних обсяг “довешіваемой”
інформації повинен становити, в
Залежно від шумового коефіцієнта
вихідного матеріалу, від частки відсотка до
ста відсотків обсягу вихідних даних.
Для тексту ЕП гарантує цілісність
вихідного документа становить не менш
10% його обсягу, для архівного файлу – не
менше 70%. (Ви можете легко перевірити,
чи виконується ця умова в
використовуваних вами підписах.) Зауважимо,
що, на відміну від ЕП, шифрування (з
зворотним зв’язком) дає стовідсоткову
гарантію цілісності даних без
збільшення їх обсягу незалежно від
природи цих даних.

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

Уявлення, що
поставлена ​​на документі електронна
підпис може служити для вирішення
юридичних суперечок і встановлення будь
б то не було істини, в корені помилково:
дію електронного підпису
поширюється на психологічну
сферу, але ніяк не на юридичну.
Серітіфікати ФАПСИ дають право фірмам-розробникам
продавати електронний підпис, але не
мають ніякого відношення до правових
аспектів її використання. Якщо я заявлю,
що ніколи не посилав документ,
завірений “моєї” електронної
підписом, ніякий суд не доведе
зворотне, і мені навіть не буде потрібно
наявність свідків або алібі. І це
правильно, бо існує
занадто багато можливостей підробки або
викрадення підпису, про що вже говорилося
вище. Крім того, ніхто, зрештою,
не візьме на себе відповідальність за
надійність і безпека програмної
системи, що забезпечує електронну
підпис, навіть якщо в ній не видно явних
помилок. Сертифікати ФАПСИ, як уже
згадувалося, є лише
відносними гарантіями, основне їхнє
призначення – регулювання ринку.

У реально склалася
юридичній практиці (див. Рішення
Вищого арбітражного суду РФ № C1-7/ок-587
від 19.08.94) прийняття в якості
докази справжності документа
електронного підпису, якими б
сертифікатами вона не підтверджувалася,
абсолютно неочевидно.

Ще в 1994 р. були виявлені
закладки, зокрема проти систем,
побудованих на основі пакету PGP (Pretty Good
Privacy), за допомогою яких були підроблені
електронні документи (журн. “Приватний
розшук “№ 1, 1995 р., стаття А. Щербакова).
Між тим PGP побудований на найбільш
поширеному у всьому світі (і в тому
числі в Росії) методі шифрування RSA,
вважається стандартом в США (знову ж
для неурядових і “Outside USA”
сфер). Що після цього можна сказати про
вітчизняних підписах, що спираються на
той же метод RSA або на наші ГОСТ P 34.10-94 і
ГОСТ P 34.11-94, які практично не
використовуються в міжнародних масштабах
і відповідно не піддаються
масованим атакам з боку різного
роду хакерів …

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


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

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

Ваш отзыв

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

*

*