Научная статья на тему 'Розробка та дослідження системи ідентифікації користувача на основі нейронної мережі'

Розробка та дослідження системи ідентифікації користувача на основі нейронної мережі Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
110
27
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — В В. Сокирук, Є В. Яремчук, В І. Месюра

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

We proposed the original decision of a user authentication task in cryptosystems, in which the user password is used as object of identification. This approach is based on use of training algorithm of a neural network as hash-function, which will transform the user password into a vector of network parameters. High resistance of the offered system against known cryptographic attacks is shown

Текст научной работы на тему «Розробка та дослідження системи ідентифікації користувача на основі нейронної мережі»

УДК 159.955:681.3.06

Р03Р0БКА ТА ДОСЛ1ДЖЕННЯ СИСТЕМИ 1ДЕНТИФ1КАЦ11 КОРИСТУВАЧА НА 0СН0В1 НЕЙР0НН01 МЕРЕЖ1

В. В. Сокирук, 6. В. Яремчук, В. i. Месюра

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

Запропоновано оригтальний тдх1д до вир1шення задач1 1дентифжаци в системах захисту тформаци, як використо-вують в якост1 об'екта iдентифжацгг пароль користувача. Цей пiдхiд базуеться на використант алгоритму навчання нейронног мережi в якостi хеш-функци, яка перетворюе пароль користувача в вектор вагових коефiцieнтiв мережi. Показано високу стштсть запропонованог системи до вiдомих атак на однобiчнiсть та на колiзiг.

We proposed the original decision of a user authentication task in cry ptosy stems, in which the user password is used as object of identification. This approach is based on use of training algorithm of a neural network as hash-function, which will transform the user password into a vector of network parameters. High resistance of the offered system against known cryptographic attacks is shown.

ВСТУП

Найб!льш поширен! системи !дентиф!кацп користувача, як! використовуються в задачах захисту !нформа-ц!'1, побудован! на основ! пароля. Вони ° найб!льш вразливими, тому що виникае необх!дн!сть збереження пароля в систем! (наприклад, у вигляд! файла), тобто останн!й залишаеться практично незахищеним в!д несанкц!онованого доступу. Для подолання цього недо-л!ку застосовують хеш-функци [1,2], як! перетворюють пароль у деяке числове значення (хеш-значення), яке можна в!дкрито збер!гати.

В дан!й статт! описуеться система !дентиф!кацп користувача, побудована на основ! нейронно'1 мереж!, та проводиться досл!дження П ст!йкост!.

СТРУКТУРА ТА OCHOBHi ЕЛЕМЕНТИ СИСТЕМИ iДЕНТИФiКАЦiíКОРИСТУВАЧА

В систем!, що пропонуеться, в якост! такого хеш-значення використовуеться вектор вагових коеф!ц!ент!в нейронно'1 мереж!. Для забезпечення в!дтворення та збереження останнього використовуються наступн! три блоки системи, зображен! на рис. 1.

Блок перетворення

пароля користувача

Рисунок 1 - Структура системи 1дентифжаци користувача

Блок перетворення пароля користувача вщповщае за створення вхщних даних для нейронно'1 мережь Головна умова створення працездатно'1 та коректно'1 нейронно'1 мереж1 - правильний виб1р виб1рки, що навчае (дал1 ВН). ВН будемо називати множину {Рп} , елементами яко'1 ° пари в1домих вхщних та вихщних вектор1в Р^^ = (Х1, ) , яю отримуються з початкових даних [3]. В нашому випадку апрюрними даними для ВН служить щентифжацшний пароль 5° , який задаеться користува-чем на початку експлуатацп системи. Для отримання ВН використаемо алгоритм перетворення двшковоТ посль довност (кодових значень символ1в вхщного пароля) у множину навчальних приклад1в, який вщповщае на-ступним вимогам:

1) ушкальшсть створено'1 множини {Р1п} для будь-

якого вхщного пароля Б, тобто виконання наступно'1 умови:

{РП }ф{ РП } при Б Ф Б! , I Ф ] , Б, Б е {Бк } ; (1)

2) вщсутшсть однакових елемент1в Pi та елемент1в з

однаковими складовими Хк* та Ук* (елементи ВН

повинш вщповщати умовам функцюнальност та ш'ек-тивностО.

Алгоритм А1, який вщповщае зазначеним вимогам 1 забезпечуе перетворення бшарно'1 послщовност { ит} у

множну {Рп} , елементами яко'1 ° дшсш числа, наведений нижче.

Алгоритм А1 (побудова ВН на основ1 пароля користувача).

1. Будуемо розширену бшарну послщовшсть {и5*} шляхом додавання N-1 перших б1т в кшець { ит} , де N -

Блок щентифкацм на основ1 нейрон ноТ Mepexi

Блок збереження хеш-значення

В. В. Сокирук, е. В. Яремчук, В. I. Месюра: РОЗРОБКА ТА ДОСЛ1ДЖЕННЯ СИСТЕМИ 1ДЕНТИФ1КАЦИ КОРИСТУВАЧА НА ОСНОВ1 НЕЙРОННО1 МЕРЕЖ1

розм1р пароля.

2. Для побудови посл1довност1 дшсних чисел {Ут}

використаемо "метод в1кон", який полягае у використан-н1 в1кна розм1ром N б1т, яке може пересуватись з певним кроком вздовж розширено! б1нарно! посл1довност1. Ус1 б1ти, як1 знаходяться всередиш в1кна, представляються як деяке ^розрядне дв1йкове число а1, де 1 - поточна

позиц1я в1кна. Тод1 г-тий елемент посл1довност1 {Ут} визначаеться за формулою

а .

, 1 = 0, 1, ..., т - 1 .

2м -1

формулою

(2)

w(ц)

V Мц -1

м1рна матриця вагових коеф1ц1ент1в

ц -го шару;

V

(ц)

нел1н1йний оператор, який перетворюе вх1дний

вектор у в1дпов1дност1 з функц1ею активацИ нейрона.

3. З посл1довност1 д1йсних чисел {Ут} отримаемо N вх1дних вектор1в X* .

4. В1дпов1дн1 вих1дн1 значення У,* знаходяться за

]

I

У* = N=1— , ) = 0, 1,., N - 1,

I ск к = 0

де Ь^ - в1кно розм1ру N, яке пересуваеться по б1нарн1й посл1довност1 з кроком N-1;

Ск - в1кно розм1ру N, яке пересуваеться по б1нарн1й

посл1довност1 з кроком N.

Основним елементом системи е блок 1дентиф1кац1'1', побудований на основ1 багатошарово! нейронно! мереж1 прямого розповсюдження [3], що зображена на рис. 2.

Вона складаеться з трьох шар1в, в яких розм1щена ф1ксована к1льк1сть нейрон1в, як1 утворюють п1рам1-дальну структуру. Вих1дний шар мереж1 представлений одним нейроном, а к1льк1сть нейрон1в першого шару дор1внюе к1лькост1 б1т1в, як1 визначають одну л1теру пароля. Представлена мережа забезпечуе в найпрост1ш1й реал1зац1!, щонайменше, 100 зм1нних параметр1в (при-ймемо таку розм1рн1сть хеш-значення як достатню).

Процес функц1онування нейронно! мереж1 полягае в перетворенн! вх1дного вектора X у деякий вих1дний вектор У. Для М -шарово! нейронно! мереж1 його можна описати за допомогою наступного нел1н1йного рекурент-ного р1вняння [4]:

у = V М)(Ш0М) + М)¥(М - 1)(Ю0М -1) + ^М -1)¥( М - 2 )х

Х(.(ю02) + W( 2)у( 1)(ю01) + ^(1)Х)).))), (3)

де ю0ц) - Мц -м1рний вектор порогових вагових коеф1ц1-ент1в ю0ц'1);

Рисунок 2 - Структура нейронног мережг, покладеног в основу системи

Фактично нейронна мережа реал1зуе складну нел1н1-йну функц1ю вх1дного вектора X, яка залежить в1д вектора вагових коеф1ц1ент1в мереж1 W. Для знаходження останнього застосовують алгоритм навчання - процес знаходження таких вагових коеф1ц1ент1в, при яких мережа в1дпов1дае ВН з1 ступенем в1дпов1дност1 \ . Величина \ носить назву похибки нейронно! мереж1 1 ви-значае 1нтегральну м1ру наближення отриманих виход1в мереж1 до бажаних [5]. В якост1 алгоритму навчання можливе використання будь-якого детерм1нованого 1те-рац1йного алгоритму навчання, який забезпечуе необх1д-ну швидк1сть функц1онування системи.

Для п1двищення над1йност1 системи 1дентиф1кац1! при остаточному формуванн1 хеш-значення використаемо алгоритм перем1шування вагових коеф1ц1ент1в (блок 3), в основу якого покладено генератор псевдовипадкових чисел [2]. Останн1й 1н1ц1юеться значенням, яке будуеться на основ1 пароля, що забезпечуе створення ун1кальних перестановок для р1зних парол1в.

АНАЛ13 СТ1ЙКОСТ1 СИСТЕМИ

Над1йн1сть системи 1дентиф1кац1! визначаеться як1стю хеш-функц1! к(х), яка покладена в !! основу. Як1сть хеш-функц1!, в свою чергу, визначаеться ст1йк1стю до

криптограф1чних атак, метою яких е розкриття пароля за вщомим хеш-значенням [1]. Найб1льш ефективними е наступш:

1) атака на одноб1чтстъ: знаходження вх1дного зна-чення x за в1домими значеннями h(x) та h ;

2) атака на кол1зи: знаходження такого значення x' , що h (X) = h (x) .

Розр1зняють пряму та непряму атаки на одноб1чшсть [1]. Перша полягае у визначенш обернено'1' залежност або знаходженш алгоритму отримання невщомого вх1дного значення. Якщо пряма атака може досягти устху у виключних випадках, то непряма атака на одноб1чшсть мае набагато б1льше шанив i полягае у перегляд1 певно'' множини вхщних значень (взятих випадковим чином або зпдно визначеного алгоритму) i порiвняннi обчислених для кожного елементу хеш-значень з шуканим.

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

1) вщновлення правильного розташування вагових коефщенив нейронно'' мережi;

2) визначення тих входiв з множини можливих, яю були задiянi при навчаннi (тобто визначення елеменив ВН).

Для вирiшення першо! задачi необхiдно здiйснити перегляд множини можливих векторiв вагових коефь щенив, що складаеться з Nw\ елеменпв, де Nw - роз-

мiрнiсть вектора W. Для зменшення ще' множини мож-ливе використання наступних евристичних правил:

1) абсолютш величини вагових коефiцieнтiв вищих шарiв мережi, як правило, бiльшi за в^повщш значення попереднiх шарiв (особливост градieнтних алгоритмiв навчання);

2) сума значень вагових коефщенив для окремого нейрона, як правило, наближуеться до нуля.

Достовiрнiсть отриманого вектора вагових коефщен-тiв можна перевiрити лише шляхом розв'язання друго'' задачi, для чого необх^но виконати наступнi дп:

1) для всiх можливих вхiдних значень Xi (при фжсо-ваному розмiрi пароля N) визначити вщпов^ш 'м вихо-ди нейронно'' мережi Yi ;

2) використовуючи особливоси алгоритму А1 (вихiднi значення ВН - детермшоваш значення, а виходи нейрон-но'' мережi, як правило - випадковi величини), визначити и елементи отримано'' множини, яю могли викори-стовуватись при навчанш.

Не дивлячись на простоту реалiзацii, пряма атака практично не мае шанив для успiшного завершення,

осюльки в загальному випадку нам необхщно виконати для кожного елементу з множини Nw! (навiть при

Nw = 100 значення Nw! дуже велике) перегляд множини вхiдних значень розмiрнiстю 28N (якщо розмiр пароля нев^омий - необхiдно перебирати усi можливi значення). Так, при N = 6 для перегляду множини 248 за умови обчислення 228 значень за секунду необхщно

витратити 220 секунд (приблизно 12 дiб).

Непряма атака на однобiчнiсть хеш-функцГ', що побу-дована на основi нейронно'' мережi, ускладнюеться тим, що обчислення хеш-значення потребуе значного часу (у порiвняннi зi звичайними хеш-функцiями). Якщо припу-стити, що за одну секунду ми обчислюемо одне хеш-значення, то за один рж ми отримаемо приблизно 5(32 значень, що вщпов^ае множинi пошуку для пароля лише з трьох символiв.

Атака на колiзii', як i непряма атака на однобiчнiсть, потребуе значно'' кiлькостi обчислень хеш-значень, i, окрiм того, значних обсягiв пам'яи для збереження усiх отриманих значень. Так, одна з найрозповсюджешших атак на колiзii' на основi так званого "парадоксу дшв народжень", Yuval's birthday attack [1], потребуе перегляду множини, щонайменше, з 232 значень при 64-бiтному хеш-значенш.

Зазначимо наступнi особливостi хеш-функцii', побудо-вано'' на основi нейронно'' мереж^ якi суттево впливають на п стiйкiсть до криптографiчних атак:

1) розмiрнiсть хеш-значення значно перевищуе роз-мiрнiсть пароля;

2) висока варiативнiсть хеш-значень (його елементи -дшсш числа);

3) вiдсутнiсть кореляцii' мiж паролем та отриманим хеш-значенням.

Навчання нейронно'' мережi - тривалий ™рацшний процес, пiд час якого ваговi коефiцieнти можуть змiню-ватись непередбачуваним чином. Якщо алгоритм навчання детермшований, справедливе наступне твердження: при навчант нейронног MepeMi з фшсованого початко-

вого стану w0i) nid дieю eu6ipKu {-Р^} можливо отри-

мати лише единий вектор вагових коeфiцieнтiв wki).

Пдлком можливо припустити, що для pi3rnx ВН, ят вiдpiзняютъся MiM собою, щонайменше, одним елемен-том, будутъ сформован pi3rn вектори вагових коефi-цieнтiв (хеш-значення).

Наведене припущення щлком тдтверджуеться експе-риментально. Так, в таблицях 1 та 2 наведеш впоряд-коваш ваговi коефщенти нейронних мереж, ВН для яких отримаш з биових послщовностей, що розрiз-няються одним биом, згiдно алгоритму А1.

B. B. Сокирук, е. B. Яремчук, B. I. Месюра: PO3POÁKA TA ДOCЛIДЖEHHЯ CИCTEMИ ^qEHTO0IKA0n KOP^T0BA4A HA OCHOBI HEÉPOHHOÏ MEPEЖI

Таблиця 1

0,5l234 0,l4607 0,62927 0,85l02 0,l8205 0,5068l 0,24067 0,34077 0,8382 0,909l6

0,3323l l,02l4 0,74528 0,69843 0,0433 0,82496 -0,05825 0,060l l,54085 0,33l97

-0,l3682 -4,l93l7 0,09542 l,044l2 0,27l6 0,l3562 0,67098 0,35l4 0,27l34 -l,296l9

0,l7l75 0,9744l 0,36254 -0,43472 l,4l84 0,03722 0,0403l -2,l0465 0,33607 0,99036

0,2935 0,l3559 l,2798l 0,04752 -0,l00l -3,36l66 -0,45762 l,47899 -0,06l06 0,58l45

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

l,28335 0,2l808 0,5875 0,0939l 0,30778 0,09375 -0,2589l -0,283 l,30472 -0,l342

0,36256 -l,66202 0,454l2 l,03386 0,l9483 -0,08338 -0,33273 0,62097 0,57l28 -0,l4827

0,3l27l 0,75703 0,05292 -0,48558 -l,93684 -l,l29l -0,56872 -l,80438 -0,6l606 -l,23593

0,9893 l,73l47 -3,45l93 -0,4l368 -l,50529 -2,5027l 0,67327 -0,87546 -0,00735 -0,49575

-l,6863l -0,35784 -l,47688 -l,63564 -0,54399 -l,292l5 2,0622l -l,2738l -3,l57l3 -l,2943l

Таблиця2

-0,05237 -0,0209l l,2297 0,l4685 0,08947 -0,53944 0,4l228 -0,63536 0,064l3 -0,28997

-0,66642 0,46552 0,0792 2,44598 -0,65746 0,64578 0,87029 0,2629l 0,67656 0,292ll

0,6300l 0,88069 0,63646 0,32328 0,05403 0,l562 0,72625 0,ll947 0,49999 -l,06ll9

0,48973 -0,67508 0,82057 0,l9995 0,9l589 0,96654 0,43573 0,45742 0,8l283 -0,37392

-0,00736 -0,07402 0,959l -0,25627 -0,08553 -2,62l23 0,84268 -0,79203 0,7l734 0,5882

0,42955 0,l6828 0,6ll38 0,68442 0,85652 0,6933 0,83348 -0,ll884 0,390l6 0,2l522

-0,07388 0,97894 0,2l065 0,87l7l -0,402l3 0,2995 0,042l4 -0,35679 -0,65878 -l,30l28

-0,2l696 0,2l67l 0,4003l -0,33596 -0,64845 -0,28264 0,20248 0,49238 -0,29332 -0,08362

0,96739 -l,4878l -0,38346 l,04628 0,l0978 l ,93547 -0,363l9 -0,60765 -0,50592 2,l7804

-0,08373 -l,060l8 -0,35l04 -l,88595 0,336l8 0,59676 -0,9l448 0,84773 2,92588 -2,3377l

Як бaчимo, змiнa oднoгo бiтa вxiднoгo пapoля пpизвeлa дo oтpимaння aбcoлютнo piзниx вaгoвиx кoeфi-щенив. Biдcyтнicть oднaкoвиx кoeфiцieнтiв y циx двox тaблицяx, звичaйнo, нe дoвoдить пoвнy вiдcyтнicть тал!-зш, aлe, пpинaймнi, звoдить дo мШмуму мoжливicть ï'x icнyвaння.

BИCHOBКИ

У дaнiй cтaттi зaпpoпoнoвaнo викopиcтaння нeйpoн-ниx мepeж для виpiшeння зaдaчi iдeнтифiкaцi'ï в OTCTe-мax зaxиcтy iнфopмaцiï', opieнтoвaниx нa викopиcтaння в

якocтi oб'eктa iдeнтифiкaцiï' пapoля кopиcтyвaчa. Bx^-ний пapoль в тaкiй cиcтeмi зa дoпoмoгoю poзpoблeнoгo aлгopитмy пepeтвopюeтьcя y вибipкy, ям нaвчae нeйpoн-ну мepeжy. Xeш-знaчeння oтpимyeтьcя шляxoм пepeмi-шyвaння eлeмeнтiв oтpимaнoгo вeктopy вaгoвиx кoeфi-щенив мepeжi.

3acтocyвaння нeйpoннoï' мepeжi в тaкий cпociб зaбeз-пeчye нacтyпнi пepeвaги зaпpoпoнoвaнoï' cиcтeми:

l) змeншeння iмoвipнocтi icнyвaння кoлiзiй зa paxy-нoк вeликoï' нaдлишкoвocтi xeш-знaчeння ^з втpaти iнфopмaтивнocтi) тa вiдcyтнocтi кopeляцií' м!Ж пapoлeм тa xeш-знaчeнням;

2) зб1льшення стшкоси до криптограф1чних атак на одноб1чн1сть та кол1зп завдяки тривалому процесу отримання хеш-значення.

Остання особлив1сть хеш-функци набувае особливо важливого значення в наш час, коли розвиток потуж-ностей обчислювально! техшки в1дбуваеться швидше за розробку нових алгоритм1в шифрування. Сучасш мож-ливост комп'ютерно! техшки дозволяють отримувати i збер1гати велику кiлькiсть обчислених хеш-значень, що робить подальшу задачу розкриття пароля справою юль-кох годин (на отримання в^повщно! юлькоси хеш-значень для запропоновано! хеш-функци необхiдно буде витратити кiлька роюв).

Недолiком тако! системи е можлива непередбачена

поведшка нейронно! мережi тд час навчання i в^-сутшсть конструктивного доведення наведених вище припущень.

ПЕРЕЧЕНЬ ССЫЛОК

1. Menezes A., van Oorschot P., Vanstone S. Handbook of Applied Cryptography, CRC Press 1996.

2. Месси Дж. M. Введение в современную криптографию // ТИИЭР. - 1998. - №5, С. 24-42.

3. Ф. Уоссермен. Нейрокомпьютерная техника. - М.: Мир, 1992.

4. Аведьян Э.Д. Алгоритмы настройки многослойных нейронных сетей // Автоматика и телемеханика. - 1995. - №4. -С.106-118.

5. Горбань А.Н. Обучение нейронных сетей. М.: СП Параграф, 1991.

Надшшла 14.03.2000 Шсля доробки 21.03.2000

УДК 681.32:007

ПОДХОД К МОДЕЛИРОВАНИЮ ЭЛЕМЕНТОВ МАГИСТРАЛЬНОГО ГАЗОПРОВОДА НА ОСНОВЕ ИСКУССТВЕННЫХ НЕЙРОННЫХ СЕТЕЙ

С. А. Терехов, Т. А. Мухамадиева, Н. Н. Федорова, Е. В. Диянкова, С. А. Диянкова,

А. В. Квичанский, Р. Ф. Мухамадиев

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

This Note is devoted to the neural networks modeling of industrial pipeline elements.

ПРОБЛЕМА

Целью данного исследования является изложение теоретических основ нового подхода к созданию имитационных моделей элементов магистральных газопроводов (на уровне отдельного ГПА, компрессорного цеха и, в перспективе, КС), основанных на искусственных нейронных сетях.

Основной смысл нейросетевых методик моделирования столь же прост, сколь и привлекателен, и может быть сформулирован в виде ряда положений:

- Моделируемая сложная инженерная система описывается набором входных (независимых и/или управляющих) и выходных (зависимых) переменных, а также набором внутренних переменных ее состояния;

- Соотношение между входными и выходными параметрами является некоторой, вообще говоря, не известной вектор-функцией (т.н. системной функцией), заключающей в себя все внутренние особенности системы (например, трудно учитываемые факторы реальной шероховатости труб и особенности конкретного ГПА);

- Эта функция и ее аргументы является экспериментально наблюдаемыми. При этом внутренние переменные могут быть как наблюдаемыми, так и скрытыми от наблюдателя;

- Изменение в (реальном) времени совокупности всех переменных системы составляет ее динамику, определяемую нелинейными связями в системе и внешними условиями - последние включаются в список входных переменных;

- Нейронная сеть обучается имитировать эту динамику, т.е. подменять собой системную функцию. Алгоритм обучения индивидуален для выбранной архитектуры нейросети.

Обучение нейросети может проводиться как в режиме off-line (т.е. по заранее подготовленной таблице "входы - выходы", при этом каждая строка в таблице отвечает значениям всех переменных в некоторый момент времени), так и on-line (нейросеть по известным входам вычисляет прогнозируемые выходы, далее дожидается экспериментальных значений этих выходов, и использует невязку между ними для своего дообучения).

В on-line режиме дообучение (fine-tuning) может проводиться только если отклик нейросети, в некотором смысле, близок к экспериментальному (т.е. учет дрейфа параметров), в противном случае система должна выдать сигнал об аварийном несоответствии расчета и эксперимента.

i Надоели баннеры? Вы всегда можете отключить рекламу.