Главная страница
Навигация по странице:

  • Криптографічна стійкість (en cryptographic strength

  • Криптографічний алгоритм (en cryptographic algorithm)

  • Криптографічна система (en cryptographic scheme (cryptosystem))

  • Шифрування (en encryption)

  • Засіб криптографічного захисту (en security cryptographic facility )

  • Ключові дані (ключ) (en key)

  • Управління ключовими даними (en key management)

  • Генератор ключових даних (ключів) (en key generator)

  • Криптографічний аналіз (en cryptanalysis)

  • 1 Методи та механізми 2014. 1. 1 Основні послуги при застосуванні, уніфікація та стандартизація криптографічних перетворень


    Скачать 1.75 Mb.
    Название1. 1 Основні послуги при застосуванні, уніфікація та стандартизація криптографічних перетворень
    Дата10.01.2022
    Размер1.75 Mb.
    Формат файлаdocx
    Имя файла1 Методи та механізми 2014.docx
    ТипПротокол
    #327532
    страница5 из 24
    1   2   3   4   5   6   7   8   9   ...   24
    табличних та(або) криптографічних перетворень. Табличним є перетворення, якщо воно виконується без використання ключа (ключів), з урахуванням криптографічних перетворень (1.3) і (1.4), його можна подати як

    , (1.63)

    або
    (1.64)
    Основою побудування симетричних криптографічних та табличних перетворень є застосування елементарних криптографічних перетворень.

    Елементарні криптографічні перетворення. До елементарних криптографічних перетворень (шифрів) належать:

    • гамування, тобто складання символів інформації Мi (повідомлення)

    з ключем Кi чи гамою шифрування Гi за відповідним модулем m;

    • перетворення типу «підстановка» символів повідомлення Мiзгідно з ключем Кi (Гi);

    • перетворення типу «перестановка» символів повідомлення Мi згідно з ключем Кi (Гi);

    • зсув бітів, символів, слів згідно з ключем Кi(Гi) тощо;

    • афінні перетворення бітів, символів, слів згідно з ключем Кi(Гi) тощо;

    • аналітичні перетворення згідно з правилами, формулами, залежностями згідно з ключем Кi(Гi);

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

    До елементарних табличних перетворень належать:

    • перетворення типу «підстановка» символів повідомлення Мiзгідно даних;

    • перетворення типу «перестановка» символів повідомлення Мiзгідно даних;

    • зсув бітів, символів, слів згідно з даними;

    • афінні перетворення бітів, символів, слів згідно з даними;

    • аналітичні перетворення згідно правил, формул, залежностей згідноз даними;

    • більш складні табличні перетворення, які будуються із елементарних табличних перетворень

    • зв’язування символів, рядків, стовпців згідно з правилами, формулами, залежностями.


    Основні елементарні крипто перетворення симетричного типу. Афінний шифр [140,20]. Твердження 1.1. Нехай є мова за алфавітом n і алфавіт мови співпадає з алфавітом криптограми. Кожному символу відкритого тексту та гами шифрування поставлене число. Тоді існує афінний шифр з ключем , елементами якого є:

    , (1.65)

    якщо найменший спільний дільник .

    В афінному шифрі зашифровування здійснюється таким чином:

    , (1.66)

    а розшифровування:

    , (1.67)

    де

    , (1.68)

    . (1.69)

    Цей шифр є зворотним.

    Доведення:

    обчислюється за формулою (1.67) з урахуванням (1.68 ) та (1.69):

    .

    Лінійний шифр. Твердження 1.2. Якщо в афінному шифрі , то існує лінійний взаємо зворотний шифр, у якому зашифровування здійснюється таким чином:

    , (1.69)

    а розшифровування:

    . (1.70)

    Адитивний шифр. Твердження 1.3. Якщо в афінному шифрі , то існує адитивний однозначно зворотний шифр з правилом шифрування:

    , (1.71)

    . (1.72)

    доведення здійснюється з урахуванням афінного шифру:

    .

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

    Складання (гамування) символів інформації з ключем чи гамою шифрування за модулем m. Криптографічні перетворення складання за модулем є частковим випадком адитивного шифру згідно з (1.71) та (1.72).

    Нехай є мова з основою алфавіту , тоді існує зворотний шифр, який співпадає з адитивним вигляду:

    ,

    .

    Шифр потокового гамування є випадком афінного шифру, у якого є деяка функція ключа, наприклад (1.53).

    На практиці використовується складання за модулем 2:

    • наприклад для потокового шифру з обчислювальною стійкістю шифру:

    , (1.73)

    ; (1.74)

    • для потокового шифру з безумовною стійкістю:

    , (1.75 )

    . (1.76 )

    Криптографічні перетворення (шифри) типу «перестановка». Розглянемо відкрите повідомлення М = (М0, М1,…,Мl-1) довжини lз алфавітом Zm. Застосуємо до повідомлення перестановку (ключ) χ, тобто відображення M саме в себе, причому χ ={ χ (0), χ (1),…, χ (l-1}), у результаті отримаємо криптограму {Сχ (0), С χ (1),…, С χ (l-1)}. Сімейство таких криптографічних перетворень називають шифром перестановки.

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

    Розшифрування криптограми Сχ (0), С χ (1),…, С χ (l-1) здійснюється способом застосування до неї однозначно зворотної перестановкиχ-1.

    Як правило, ключ перестановки χ має певну довжину v, але меншої довжини повідомлення l. За таких умов відкритий текст розбивають на l / vвідрізків довжини v, до кожного з яких у подальшому застосовують перестановку згідно з ключем χ.

    Елементарний шифр перестановки має такі властивості.

    • відносні частоти появи символів у відкритому повідомленні та криптограмі співпадають, оскільки вони інваріантні до перестановки символів тексту.

    • існують обмеження на довжину ключа v, що використовують;

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

    Як свідчить практика, шифр перестановки застосовують як елементарний разом з іншими шифрами, наприклад підстановки (заміни).

    Основним показником криптографічної стійкості шифру перестановки є число різних ключів, що може бути визначене як:

    NK = v! (1.77)

    Історично у свій час шифри перестановки знаходили застосування. Серед них потрібно назвати шифри «скіталa», маршрутні шифри, решето Кардана, подвійної (кратної) перестановки тощо.

    Криптографічні перетворення типу підстановки (заміни). Розглянемо знову відкрите повідомлення М = (М0, М1,…,Мl-1) довжини l з алфавітом Zsm. .Нехай існує система Ф відображення множини (заміни) Zsm в алфавіт Y шифр-тексту C, де s – характеристика перетворення заміни, причому
    Ф = { 0, 1, …, l-1}, (1.78)
    Криптограма С обчислюється для відкритого повідомлення М = (М0, М1,…,Мl-1)з використанням відображення Ф, де Ф виконуєфункції ключа. Тоді криптограма обчислюється як
    С = ( 0(М0), 1 (М1), …, l-1(М1) ) (1.79)
    Якщо i є бієктивним (однозначним) відображенням, то систему відображення Ф називають шифром підстановки (заміни).

    Без втрати загальності будемо вважати, що алфавіти криптограм та вхідних символів співпадають, тобто що

    Zsm = Y, (1.80)

    а 0, 1, …, l-1 - підстановки на множині Zsm.

    Далі, якщо прийняти, що = і для всіх і = 0,1, …, l1, то такий шифр є шифром простої заміни (моно підстановки) на множині Zsm. У такому шифрі заміна виконується за окремими знаками алфавіту. Якщо 0, 1, …, l-1є різними, то шифр називають шифром з багато алфавітної заміни.

    Серед історичних перетворень (шифрів) підстановки, що знайшли свого часу застосування, потрібно назвати шифри Цезаря, Віжінера, латинського квадрату, пропорційної заміни, заміни біграм та s грам [147, 148].

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

    (1.81)

    Взагалі шифри простої заміни, навіть починаючи з англійського алфавіту (m = 27), мають великий простір ключів. Але якщо використовується алфавіт натуральної мови, символи якої залежні та нерівно ймовірні, то існують афективні методи криптоаналізу, які отримали назву частотного аналізу.

    Суттєвою мірою від такого недоліку вільний шифр полі підстановки. У такому шифрі один вхід і k виходів. Тому для шифру полі підстановки число можливих ключів, з урахуванням (1.81), визначається як

    , (1.82 )

    де – кількість виходів у ключа шифру полі підстановки.

    На відміну від шифрів простої заміни, шифри полі підстановки мають багату історію застосування, наприклад, у вигляді шифрів колонної заміни. При числі виходів k = 12 та більше шифри, які отримуються з його використанням, мають високій рівень криптографічної стійкості.

    На практиці при побудові блочних та поточних шифрів широко застосовуються шифри підстановки типу «чотири біти в чотири біти», «байт в байт», рідше «слово в слово» [20-23,220], коли має довжину 16 і більше бітів тощо. Для таких шифрів важливою задачею є побудова таблиць підстановки, які забезпечили б необхідний рівень стійкості. Тому розглянемо декілька прикладів таблиць підстановки.

    Аналітична підстановка в полі Галуа. Аналітична підстановка в скінченному полі F(28) ґрунтується на заміні кожного елемента поля F(28) мультиплікативно зворотним. Наприклад, якщо аi вхідний байт, а а' – вихідний, тобто результат підстановки, то для визначення а' необхідно розв’язати рівняння [20]:

    (1.83)

    Для побудови таблиці підстановки «байт у байт» у скінченному полі F(28) необхідно подати вхідні символи, тобто числа від 1 до 255, у вигляді поліномів над указаним скінченним полем (Галуа). Для повідомлення це будуть поліноми на вище 8-го степеню ,…, та нульовий байт . Для виконання такої підстановки необхідно знайти а0 -1, а1-1, а2-1,…, а 255-1. Але, враховуючи, що для нульового полінома а0 в полі Галуа F(28) мультиплікативно зворотного елементу не існує, то його можна замінити тільки самим собою.

    Аналіз показує, що розв’язок рівняння (1.83) можна звести до розв’язку діафантового рівняння [20-22] виду :

    . (1.84)

    Це можна зробити таким чином. Оскілки (1.84) можна подати у вигляді :

    , (1.85)

    то враховуючи (1.84) маємо:

    (1.86)

    Однозначний розв’язок цього рівняння існує у вигляді [13] та [196]):

    . (1.86)

    Відомо, що таке перетворення використовується як табличне у блочному симетричному шифрі Rijndael [13, 398] та його звуженій версії – стандарті США FIPS 1987 [220] для побудови таблиці підстановки «байт у байт». Відому, що така таблиця існує в одичному вигляді, але вона забезпечує максимально відому нелінійність табличного перетворення. Недоліком такої підстановки є підстановка нульового елемента самого в себе.

    Криптографічне перетворення (шифри) типу «зсув символів». Перетворення типу «зсув вхідних символів» може бути як крипто графічним, коли конкретне значення зсуву визначається ключем, так і табличним, коли значення зсуву в шифрі є постійним. Зсув може здійснюватись циклічно в тетрадах, байтах, 16, 32, 64, 128, та 256-бітових словах. Окремо перетворення типу «зсув» не забезпечує крипто графічної стійкості, але коли воно застосовується разом з іншими криптографічними чи табличними перетвореннями, то за певних умов може забезпечуватись якісне шифрування.

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

    У цілому, якщо довжина слова, що перетворюєься, має значення Lc, то величина ключа може визначатись як

    lk = Lg2 (Lc) (1.87 )

    На практиці при побудуванні блочних та потокових симетричних шифрах перетворення типу «керований зсув» знаходять застосування. При цьому в більшості блокових шифрів застосовується табличне перетворення [220, 20- 23, 118].

    1.4 Сутність, аналіз вимог, класифікація та стандартизація криптосистем типу блокового симетричного перетворення
    Історично криптографічні системи у вигляді симетричних блокових перетворень (СБП) широко застосовується на практиці[20-32]. Вони також історично отримали назву блокових симетричних шифрів(БСШ)[140, 141, 118, 149,400]. Нині БСШ застосовуються у різних режимах роботи і, в цьому випадку, на наш погляд, потрібно говорити уже про блокові симетричні перетворення. Як правило СБП будуються на основі використання декількох симетричних криптографічних перетворень (елементарних шифрів), більшість яких розглянуто вище в пункті 1.3.5. Хоча кожен з таких елементарних шифрів, є нестійким, застосування декількох з них послідовно чи паралельно, та багатократно, як сказано в [147], дозволяє отримати звіря з « товстою шкірою».
    В цьому підрозділі наводяться результати досліджень, що пов’язані з основними поняттями та визначеннями, сутністю та аналізом вимог до відносно СБП, в тому числі відносно криптографічної стійкості та складності СБП, а також аналізом стану та проблем стандартизації. Детально СБП (БСШ) розглядаються з точки зору побудування та аналізу в 4 розділі цієї монографії.

    При аналізу стану будемо орієнтуватись на те, що при побудові існуючих БСШ, тобто таких, що пройшли випробовування часом та застосовуються, можна виділити декілька концептуальних підходів, які будемо називати методологічними принципами. Серед них необхідно виділити, на наш погляд, такі три основні[20-21,24-32,118, ]:

    • на основі ланцюгів Фейстеля (Data Encryption Standard, ГОСТ 28147-89 тощо);

    • IDEA подібні шифри (Європейський стандарт IDEA та його модифікації і удосконалення);

    • SPN структури (перш за все Rijndael, FIPS 197, Калина - 2 тощо).

    В подальшому також будемо орієнтуватись та використовувати використовувати поняття та визначення, що наводяться нижче.

    1.4.1 Основні поняття та визначення відносно вимог до блокового симетричного перетворення

    Спочатку визначимо та обґрунтуємо основні поняття та визначення, які нам потрібні для аналізу вимог до СБП [20-32, 118]. На наш погляд сукупність вказаних джерел, на які вище зроблено посилання, дозволяє використати або запропонувати основні поняття та визначення в частині як СБП так і БСШ.

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

    Криптографічна стійкість (en cryptographic strength)- здатність криптографічного алгоритму або криптографічної системи протистояти спробам здійснення успішного крипто аналізу з розкриттям або підробленням ключових даних та/або ключової інформації і, як наслідок, можливості реалізації загроз порушення конфіденційності, цілісності, справжності, доступності, неспростовності, спостережливості тощо.

    Криптографічний алгоритм (en cryptographic algorithm) - набір специфікацій, математичних правил та процедур, за допомогою яких здійснюються криптографічні перетворення, розгортання ключів та управління ключовими даними тощо, в межах окремого засобу криптографічного захисту інформації.

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

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

    Засіб криптографічного захисту (en security cryptographic facility ) - програмний, апаратно-програмний та апаратний засіб, що призначений для здійснення криптографічного захисту інформації.

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

    Управління ключовими даними (en key management) - дії, що пов’язані з генеруванням або придбанням, реєструванням, розподіленням (розповсюдженням), сертифікацією, доставлянням, уведенням в дію (інсталюванням), зміненням, зберіганням, архівуванням, скасуванням, блокуванням, поновленням, зняттям з реєстрації, обліком та знищенням ключової інформації (даних), а також носіїв ключових даних.

    Генератор ключових даних (ключів) (en key generator) - засіб, що складається з послідовно об’єднаних генератора (генераторів) випадкової послідовності і засобів формування та тестування ключів певної криптографічної системи або алгоритму.

    Криптографічний аналіз (en cryptanalysis) - Напрям в криптології, що вивчає основні закономірності, протиріччя, методи, алгоритми, системи та засоби аналізу криптографічних систем, ґрунтуючись на їх вхідних та вихідних даних, алгоритмах чи засобах криптографічних перетворень, у тому числі можливо на частині ключових даних , що здійснюється з метою визначення спеціальних (ключових) даних та значущої інформації. У більш спрощеному вигляді криптографічний аналіз [20-21,118,129,147] – це аналіз криптографічної системи та (або) її вхідних та вихідних даних (у тому числі частини ключа), що здійснюється з метою визначення спеціальних (ключових) даних та значущої інформації, що можуть бути використані для порушення конфіденційності, цілісності, справжності, доступності, спостережливості тощо. Також, на наш, погляд, в деяких випадках в якості криптографічного аналізу може бути застосованим біль конкретизоване визначення [129] - довільна спроба криптоаналітика одержати із криптограми Сі семантичний зміст повідомлення при незнанні ключа або спроба відобразити хибне для користувача повідомлення в дозволену криптограму, також при незнанні ключа.

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

    На практиці підтверджено [20-32, 118, 126-129], що в процесі різних протиборств на різних рівнях держав особлива увага приділяється спробам отримати конфіденційні дані, здійснити певні види обману, тобто здійснити успішно атаки на криптографічні системи. Для визначення степеня небезпечності таких дій можна застосовувати різні підходи. Основними з них є об’єктивне врахування можливостей зовнішнього порушника (криптоаналітика) та моделювання й прогнозування можливих дій і впливів. Унаслідок таких впливів підприємство, що надає послуги зі збереження інформації, несе збитки через зниження якості надання основних послуг з безпеки – конфіденційності, цілісності, справжності (автентичності), неспростовності (спостережливості), доступності й надійності.
    1.4.2 Загальні вимоги до перспективних блокових симетричних перетворень відносно криптографічній стійкості

    Проведений аналіз джерел [ 1-2, 118 ] та результати досліджень [20-32, 57, 80-86,118, 341] дозволяють визначити в якості обов’язкових такі вимоги.

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

    2) Як правило, в ІТС, при криптографічному захисті інформації та інформаційних ресурсів, довжина повідомлення, що захищається з використанням БСШ, значно перевершує довжину ключа шифрування, тобто ентропія джерела повідомлень значно перевищує ентропію джерела ключів. У цьому випадку відносно БСШ не виконується критерій безумовної стійкості, і в таких умовах доцільне введення поліноміального критерію, що припускає наявність обмежень для обчислювальних ресурсів зловмисника й часу, протягом якого шифр залишається стійким. Такий поліноміальний критерій приводить до практичного критерію стійкості – неможливості реалізації атаки на шифр в умовах сучасної обчислювальної бази, в тому числі з урахуванням прогресу збільшення потужності засобів обчислювальної техніки та появи квантових комп’ютерів, протягом тривалого строку (наприклад, 1010 років).

    3) Криптографічна стійкість шифру залежить від складності реалізації атаки на симетричний блоковий шифр. У якості показників складності криптоаналізу, як правило, можуть або повинні використаються такі.

    Тимчасовий - математичне сподівання часу (безпечний час) tб, необхідного для реалізації атаки на доступних / перспективних обчислювальних засобах.

    Просторової складності - обсяг пам'яті, що необхідний для виконання криптографічного аналізу.

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

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

    5) Як правило початкову оцінку стійкості, необхідно робити стосовно силових атак: повного перебирання ключів, атаці по словнику, створення колізій тощо. За умови забезпечення необхідного рівня стійкості до силових атак, повинна виконуватись оцінка стійкості до аналітичних атак.

    6) Результати аналізу показують, що відносно сучасних БСШ, у якості критеріїв оцінки стійкості до аналітичних атак рекомендується застосовувати наступні:

    • множина безлічі шифрованих/відкритих текстів, необхідних для виконання крипто аналітичної атаки, повинна перевищувати потужність безлічі припустимих шифрованих/відкритих текстів;

    • складність будь-якої аналітичної атаки повинна бути більше або дорівнювати складності силової атаки;

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

    • обсяг пам'яті, що необхідний для зберігання проміжних результатів при здійсненні аналітичної атаки повинен бути не менш, ніж при реалізації атаки по словнику на повний шифр;

    • з огляду на можливість удосконалювання крипто аналітичних методів необхідно використовувати критерій «запасу стійкості» до аналітичних атак – згідно якого складність атаки на весь алгоритм повинна бути значно вище складності силових атак. Як правило, цей критерій розглядає версію БСШ алгоритму шифрування зі зменшеною кількістю циклів, що є уразливим проти криптографічного аналізу ( за цих умов різниця в кількості циклів визначає запас стійкості алгоритму до конкретної крипто аналітичної атаки, коли чим більше різниця, тим більш стійкий алгоритм);

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

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

    8) Необхідно також довести, що для захисту СБП(БСШ) від алгебраїчних атак необхідно, щоб не існувало способу практичної побудови системи рівнянь, що зв'язують відкритий текст, криптограму й ключ шифрування, або не існувало способу рішення таких систем у поліноміальний час.

    9) При побудові засобів КЗІ необхідно враховувати можливість організації та здійснення атак на реалізацію (зміна температурного режиму електронного пристрою, вхідної напруги, поява іонізуючого випромінювання, замірювання споживаних струмів, ПЭМИН, часу виконання й т.п.). Такі атаки можуть бути ефективні проти всіх криптографічних алгоритмів, і захист від таких атак при проектуванні засобів криптографічного захисту інформації вимагає вже інженерних рішень.

    10) У цілому, можна сформулювати також наступні вимоги відносно стійкості сучасних СБП ( БСШ).

    • забезпечення стійкості до силових атак, наприклад за тимчасовим або просторовим критерієм необхідного для зберігання проміжних результатів обсягу пам'яті;

    • відсутність способів побудови або рішення системи рівнянь, що зв'язує відкритий текст, криптограму й ключ шифрування;

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

    • наявність «запасу стійкості» шифру (додаткових циклів шифрування), що забезпечує безпечне використання алгоритму у випадку вдосконалювання крипто аналітичних атак;

    • стійкість спрощеного варіанту шифру, у якому деякі операції виключені або замінені більше простими;

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

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

    12) Попередній аналіз підтвердив, що зазначені вимоги по своїй суті є досить суперечливими: наприклад, у більшості сучасних алгоритмів збільшення криптографічної стійкості вимагає додаткових циклів шифрування, що веде до зниження продуктивності. Проте, алгоритми-фіналісти міжнародних криптографічних конкурсів, таких як AES, NESSIE, CryptRec і інших, свідчать про можливості досягнення раціональних показників, близьких до оптимальних.
    1.4.3 Спеціальні вимоги до перспективного блокового симетричного перетворення

    Наведені в п. 1.4.2 основні вимоги та результати досліджень, що отримані в ході досліджень [20-32,56, 80-86,118, 341, 314-316] дозволяють визначити такі вимоги до перспективного симетричного перетворення.

    1) Захищеність СБП від крипто аналітичних атак. При цьому основними методами крипто аналізу є: диференціальний крипто аналіз, розширення для диференціального крипто аналізу, пошук найкращої диференціальної характеристики, лінійний крипто аналіз; інтерполяційне вторгнення; вторгнення із частковим угадуванням ключа; вторгнення з використанням зв'язаного ключа; вторгнення на основі обробки збоїв; пошук лазівок та потенційні атаки тощо.

    2) Статистична безпека криптографічних алгоритмів СБП.

    3) Особливості конструкції й відкритість структури СБП. Крипто алгоритм повинен володіти зрозумілою, легко аналізованою структурою й ґрунтуватися на надійному математичному апараті.

    4) Стійкість при модифікації, коли всі кандидати на СБП перевіряються на стійкість до різного роду модифікаціям: стійкість до крипто аналітичних атак при зменшенні числа циклів, скорочені компонентів, що застосовуються в СБП тощо.

    5) Обчислювальна складність (швидкість) за шифрування/розшифрування алгоритму блокового симетричного перетворення. Складність програмної, апаратної й програмно-апаратної реалізації повинна оцінюватися обсягом пам'яті, як для програмної, так і апаратної реалізації. У тому числі, при програмній реалізації - кількістю необхідної оперативної пам'яті, розміром вихідного коду, швидкістю роботи програми на різних платформах при реалізації на відомих мовах програмування. При апаратній оцінюється кількістю вентилів і швидкістю в Мб/с.

    6) Універсальність крипто алгоритму: можливість роботи з різними довжинами початкових ключів і інформаційних блоків; безпека реалізації на різних платформах і додатках; можливість використання криптографічного алгоритму в необхідних обґрунтованих режимах роботи БСШ.

    7) Попередньо загальні вимоги до проекту БСШ повинні бути задані замовником і містяться в завданні на НДР

    Наприклад їх їх сутність можу бути у наступному:

    • задаються допустимі довжини блоків та ключів:

    • можливі принципи побудови СБП(БСШ);

    вимоги до видів реалізації алгоритму та засобів КЗІ;

    • вимоги до ключової системи;

    • режими криптографічних перетворень тощо.

    Також досвід і результати виконання проектів AES, NESSIE [22,44, 55, 64, 66], а також національного проекту[341,24-32,401-403] дозволяють запропонувати класифікацію БСШ по стійкості у вигляді таких необхідних умов:

    • над високої стійкості, коли довжини блоку інформації й довжина вихідного ключа рівняються не менш 512 біт;

    • високої стійкості, коли довжина блоку інформації й довжина ключа не менш 256 біт;

    • нормального рівня стійкості, коли довжина блоку інформації й довжина ключа не менш 128 біт;

    • задовільний рівень стійкості, коли довжина блоку інформації не менш 64 біт, а довжина ключа не менш 128 біт.

    Необхідно підкреслити, що наведені вимоги є необхідними, але не достатніми.
    1.4.4 Загальна класифікація та рекомендуємі вимоги до симетричних блокових перетворень

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

    Kзш.=Kрш (1.88 2.111)

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



    Рис. 1.7. Класифікація та призначення криптографічних перетворень
    Функції гешування також необхідно відносити до симетричних криптографічних перетворень, оскільки в ключових функціях гешування використовуються симетричні криптографічні перетворення та ключі, що задовольняють вимозі (1.88).

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

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

    Якщо Fпр та Fзв – функції прямого та зворотного криптоперетворень, то пряме перетворення, тобто зашифрування можна подати як перетворення вигляду:

    Сi = Fпрi, Кjз, Рr), (1.89)

    де Мi – блок бітів довжини lб, що підлягає за шифруванню;

    Кjз – ключ зашифрування блока бітів Мi;

    Рr – параметри криптографічного перетворення.

    При зворотному перетворенні здійснюється розшифрування згідно з правилом:

    Мi = Fзвi, Кjр, Рr), (1.90)

    де Кjр – ключ розшифрування. Причому якщо

    Кjз = Кjр, (1.91)

    то такі ключі симетричного крипто перетворення будемо називати симетричними ключами інволютивного шифру.

    Згідно вимог, що висунуті на міжнародному рівні [9, 20-21, 24-26], СБП(БСШ) будемо оцінювати за такими трьома класами стійкості:

    1) високий рівень безпеки, коли довжина блоку lб=128 бітів, а довжина ключа lк = 256 бітів;

    2) нормальний рівень безпеки, коли довжина блоку lб=128 бітів, а довжина ключа lк = 128 бітів;

    3) задовільний рівень безпеки, коли довжина блоку lб64 біти, а довжина ключа lк = 128 бітів.

    Що стосуються вимог, які були висунуті до перспективного БСШ в національному конкурсі[ 141 ], то вони відрізняються від Nessie вимог тим, що у національному конкурсі ще введено надвисокий рівень безпеки (гарантій), коли lб ≥ 256 бітів, а довжина ключа lк = 512 бітів. Практично довжина блоку в цьому випадку lб =512 бітів.

    Як показав аналіз, у першій фазі конкурсу NESSIE до кандидатів при відборі висувалися, на наш погляд, цілком обґрунтовані такі основні вимоги, що є по суті необхідними умовами [9, 20 -21, 24-26, 401-403].

    1. Захищеність БСШ від крипто аналітичних атак. При цьому обов’язковими методами криптоаналізу, від яких повинен бути забезпечений захист, вважалися такі: диференціальний криптоаналіз, розширення для диференціального криптоаналізу, пошук найкращої диференціальної характеристики, лінійний криптоаналіз; інтерполяційне вторгнення; вторгнення із частковим угадуванням ключа; вторгнення з використанням зв’язаного ключа; вторгнення на основі обробки збоїв; пошук лазівок.

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

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

    4. Практична захищеність алгоритму шифрування від силових атак, яка може досягатись на основі використання симетричних блокових крипто перетворень, з довжиною блоку не менше ніж 128 бітів та довжиною ключа не менше 128 бітів (у деяких випадках 256 або 512 бітів).

    5. Відсутність слабких початкових ключів та підозр на існування ключів, за яких складність крипто аналітичної атаки є меншою, ніж складність атаки «груба сила».

    6. Складність прямого та зворотного перетворень не перевищують допустимої величини, окрім того, складність розгортання ключів не перевищує наперед заданої величини.

    7. Особливості конструкції та відкритість структури. Подані крипто алгоритми повинні мати зрозумілу, легко аналізовану структуру і ґрунтуватися на надійних математичних і криптографічних принципах.

    8.  Стійкість при модифікації. Усі кандидати перевіряються на стійкість до різного роду модифікацій: стійкість до крипто аналітичних атак при зменшенні числа циклів, скороченні компонентів, що використовуються алгоритмом, тощо.

    9.  Складність програмної, апаратної та програмно-апаратної реалізації має оцінюватися обсягом пам’яті як для програмної, так і для апаратної реалізації. У тому числі, при програмній реалізації – кількістю необхідної оперативної пам’яті, розміром вихідного коду, швидкістю роботи програми на різних платформах при реалізації на відомих мовах програмування. При апаратній реалізації оцінюється кількістю вентилів і швидкістю у Мб/с.

    10. Універсальність крипто алгоритму: можливість роботи з різними довжинами початкових ключів та інформаційних блоків; безпека реалізації на різних платформах і додатках; можливість використання криптографічного алгоритму в основних режимах роботи БСШ.
    1   2   3   4   5   6   7   8   9   ...   24


    написать администратору сайта