Научная статья на тему 'Протокол аргумента знания слова кода Гоппы и ошибки ограниченного веса'

Протокол аргумента знания слова кода Гоппы и ошибки ограниченного веса Текст научной статьи по специальности «Математика»

CC BY
192
29
i Надоели баннеры? Вы всегда можете отключить рекламу.
Область наук
Ключевые слова
ИНТЕРАКТИВНАЯ СИСТЕМА ДОКАЗАТЕЛЬСТВА / АРГУМЕНТ / НУЛЕВОЕ РАЗГЛАШЕНИЕ / СХЕМА ПРИВЯЗКИ / КОД ГОППЫ / INTERACTIVE ARGUMENT SYSTEM / ZERO KNOWLEDGE / COMMITMENT SCHEME / GOPPA CODE

Аннотация научной статьи по математике, автор научной работы — Федюкович Вадим Евгеньевич

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

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

A new argument of knowledge protocol with honest verifier is proposed for the Goppa polynomial, codeword and the error of a bounded weight. The soundness of the protocol is based on the hardness assumption for the discrete logarithm problem

Текст научной работы на тему «Протокол аргумента знания слова кода Гоппы и ошибки ограниченного веса»

ПРИКЛАДНАЯ ДИСКРЕТНАЯ МАТЕМАТИКА

2009 Математические методы криптографии №4(6)

УДК 519.725, 519.816, 519.712.6

ПРОТОКОЛ АРГУМЕНТА ЗНАНИЯ СЛОВА КОДА ГОППЫ И ОШИБКИ ОГРАНИЧЕННОГО ВЕСА1

В. Е. Федюкович Интропро, г. Киев, Украина E-mail: vf@unity.net

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

Ключевые слова: интерактивная система доказательства, аргумент, нулевое разглашение, схема привязки, код Гоппы.

Введение

Рассматривается задача проверки утверждения об ошибке в искажённом кодовом слове кода Гоппы. Дополнительным условием является предоставление проверяющей стороне минимально необходимой информации о структуре кода, кодовом слове и весе ошибки. Рассматриваются интерактивные протоколы аргумента и протоколы аргумента знания значений, из которых получены экземпляры привязки. Выполняется вероятностная проверка утверждения о кодовом слове и весе ошибки. Произвольный Доказывающий, который не знает компонентов кодового слова и коэффициентов полинома Гоппы, удовлетворяющих проверяемым условиям, имеет только ничтожную вероятность успешно завершить протокол с честным Проверяющим. Рассматривается схема запрос-ответ, в которой запросом является значение переменной некоторого полинома над конечным полем, а проверяемым условием — равенство нулю этого полинома. Также рассматриваются полиномы, в которых компоненты кодового слова и коэффициенты полинома Гоппы заменяются ответами Проверяющего.

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

Тезисное изложение результатов этой работы приведено в [1].

1. Обозначения и определения

1.1. Интерактивные системы и их свойства

Участника протокола называют честным (honest), если он следует спецификации протокола, либо произвольным (any) иначе. Функцию называют ничтожной, если она убывает быстрее любой степени своего аргумента. Будем говорить, что событие

1 Результаты работы докладывались на Международной конференции с элементами научной школы для молодёжи, г. Омск, 7-12 сентября 2009 г.

происходит почти всегда (overwhelming probability), если вероятность того, что событие не произойдёт, ничтожна. Будем называть преимуществом разность вероятностей успешного завершения некоторого алгоритма распознавания, обычно выполяемого соперником, в случае предоставления сопернику возможности выбора входных данных и для случайно выбранных входных данных. Алфавитом называют конечное множество символов (букв алфавита); языком L называют некоторое подмножество множества

?

всех слов в данном алфавите. Задачу принятия решения x Е L называют распознаванием языка. Задачу распознавания языка относят к классу сложности NP, если для любого слова x существует NP-свидетельство (witness) w, знание которого позволяет решить задачу за полиномиальное время; в этом случае язык называется NP-языком.

Определение 1. Интерактивной системой аргумента (interactive argument system) для NP-языка L и для некоторого предположения (assumption) будем называть интерактивную пару машин Тьюринга, работающих полиномиальное время, со словом x на общей входной ленте и свидетельством w на входной ленте Доказывающего, такую, что машина Проверяющего всегда выдает бинарный ответ (решение) и останавливается, а также имеются свойства полноты и корректности. Полнота (completeness): честный Проверяющий всегда принимает положительное решение (accept) для честного Доказывающего и x Е L (нулевая ошибка полноты). Корректность (soundness): честный Проверяющий принимает положительное решение для произвольного Доказывающего и x Е L с ничтожной вероятностью при условии, что Доказывающий не может нарушить используемое предположение (ничтожная ошибка корректности).

Заметим, что определение интерактивной системы доказательства в [2] предусматривает неограниченные ресурсы машины Доказывающего, ненулевую ошибку полноты и ошибку корректности, превышающую ошибку полноты на не-ничтожную функцию; параметром является |x|. В [3] рассматривались протоколы, свойство корректности которых выполняется при дополнительных предположениях о вычислительной сложности некоторых задач (computationally-sound proofs); для них был предложен термин «протокол аргумента». Протокол аргумента обычно имеет параметр, определяющий степень сложности задачи, содержащейся в используемом предположении.

Определение 2. Будем говорить, что протокол аргумента имеет свойство знания (is of knowledge), если существует алгоритм extractor, предполагающий управление машиной Доказывающего с возможностью возврата (rewind), работающий полиномиальное время, получающий на входе стенограмму протокола и почти всегда выдающий свидетельство Доказывающего при условии выполнимости предположения (ничтожная ошибка знания).

Введённое так понятие протокола аргумента со свойством знания отличается от понятия протокола доказательства знания [4] тем, что последний предусматривает неограниченные ресурсы Доказывающего и не-ничтожную ошибку корректности. Рассматривались [5] также протоколы с алгоритмом extractor, которые либо дают свидетельство, либо нарушают используемое предположение.

Определение 3 [2, 6, 7]. Говорят, что протокол имеет свойство нулевого разглашения (is zero knowledge), если существует моделирующий алгоритм (simulator), работающий полиномиальное время и в случае x Е L выдающий моделируемую стенограмму (simulated transcript), неотличимую от стенограммы протокола с Доказывающим. Протокол имеет свойство нулевого разглашения в модели с честным Проверяющим (is honest Verifier zero knowledge), если моделируемая стенограмма неотличима от всех

стенограмм протокола, в которых Проверяющий следует спецификации протокола. Протокол имеет свойство специального нулевого разглашения (is special honest Verifier zero knowledge), если моделирующий алгоритм получает на входе запросы Проверяющего и дает моделируемую стенограмму, неотличимую от всех стенограмм протокола, в которых запросы Проверяющего совпадают с запросами на входе моделирующего алгоритма.

Близкими к понятию нулевого разглашения, но не совпадающими с ним, являются следующие встречающиеся в литературе определения. Протоколы, дающие только ничтожное преимущество любому алгоритму Соперника (Adversary) найти свидетельство Доказывающего, называют witness hiding. Протоколы, дающие только ничтожное преимущество произвольному алгоритму Соперника, определяющему, какое из двух возможных значений является свидетельством, называют witness indistinguishable.

Способ Фиата — Шамира преобразования протокола в схему подписи [8] предусматривает произвольный алгоритм Проверяющего, выбирающий значение хэш-функции входного слова и имеющейся части стенограммы в качестве запроса, и в остальном следующий спецификации протокола; экземпляром подписи при этом является стенограмма протокола. Известен русскоязычный обзор протоколов и некоторых их свойств [9].

1.2. Схема привязки

Определение 4. Схемой привязки (commitment scheme) называют тройку алгоритмов (Generate(), Commit(w),Open(C,w)), такую, что экземпляр привязки C всегда успешно раскрывается значением w, из которого он был создан, а также имеются свойства связывания и скрытия. Связывание (binding): задача поиска альтернативного значения w', такого, что Commit (w') = Commit(w), является сложной. Скрытие (hiding): экземпляр привязки дает только ничтожное преимущество любому алгоритму Соперника, определяющему, какое из двух значений использовалось для создания экземпляра привязки.

Определение 5. Схема привязки имеет свойство гомоморфизма (homomorphic) относительно некоторых операций (®, ®), если

V(xi,x2) Commit(x1 ф x2) = Commit (x1) ® Commit(x2).

Например, алгоритм инициализации схемы привязки Педерсена [10] к элементу x конечного поля Zq предусматривает выбор циклической конечной группы G порядка q, а также двух элементов группы h, f так, что logf (h) неизвестен и задача поиска логарифма в группе является сложной. Алгоритм создания экземпляра привязки выбирает случайное значение r Er Zq, создаёт элемент группы C = hxfr. Алгоритм

?

раскрывания проверяет C = hx fr. Схема Педерсена имеет свойство аддитивного гомоморфизма и является протоколом доказательства знания значений, из которых был получен экземпляр привязки.

1.3. Протокол Шнорра

Ряд протоколов предусматривают бинарные запросы Проверяющего, так что вероятность для произвольного Доказывающего случайно предложить правильный ответ равна 1/2. Известны также протоколы с запросами, выбранными из множества S с большим количеством элементов, так что вероятность случайно предложить правильный ответ равна 1/|S|. В протоколе Шнорра [11] запросы выбираются из конечного поля Zq, так что ошибка корректности ничтожна (параметром является длина битового представления q). Общей информацией сторон является генератор g циклической конечной группы G порядка q для некоторого большого простого q, а также

некоторый элемент y Е G. Неформально, у играет роль публичного ключа проверки. Информацией Доказывающего является число b, такое, что у = gb.

1) Доказывающий выбирает некоторое случайное а Е Zq, получает элемент группы А0 = ga и пересылает А0 Проверяющему.

2) Проверяющий выбирает некоторый запрос (challenge) с Е Zq случайным образом и пересылает его Доказывающему.

3) Доказывающий вычисляет и пересылает Проверяющему ответ

B = cb + a (mod q). (1)

4) Проверяющий принимает положительное решение, если

gB y-cA-1 = 1. (2)

Протокол доказательства знания логарифма в конечной группе с бинарными запросами и ответами Доказывающего, полученными как значения линейного полинома, был предложен в работе Chaum, Evertse и van de Graaf [12].

1.4. Код Гоппы

Определение 6. Кодовым словом [13, 14] будем называть вектор b = bl.. .bN элементов поля, таких, что для некоторого полинома g(z) и для дополнительных значений aj, j = 1,... , N, выполняются условия g(aj) = 0 и

N к

Е -3 =0 (mod g(z)). (3)

j=i

Множество всех таких кодовых слов называют кодом Гоппы, а g(z) — полиномом Гоппы.

Двоичный код такого вида был предложен в работе [13], в [14] рассматривается код над полем, состоящим из q = pp элементов для некоторого простого p. В этой работе используется стандартная схемы привязки, в связи с чем рассматривается только случай l = 1.

Определение 7. Ошибкой в искажённом входном слове w = wl.. .wn будем называть вектор w — b, где b — кодовое слово; весом ошибки — количество ненулевых компонент в ней.

T

Пусть g(z) = Еzkgk. В этой работе проверяется справедливость утверждения, k=0

эквивалентного (3):

N T k_ к NT

W(z) = о, W(z) = Y,bjY,g^-z—fU E *,.<•- (4)

j=l k=l 3 i=l,m=0

i=j

Значения bj, j = 1,... , N, и gk, k = 1,... ,T, (свидетельство Доказывающего) доступны Проверяющему только в виде экземпляров привязки и ответов (1) Доказывающего.

Определение 8. Проверочным полиномом кодового слова для некоторого значения аргумента z = d и для некоторых начальных случайных значений в1, для j = 1,..., N и ak для k = 1,... ,T протокола Шнорра будем называть

N T dk_nk N T

R*(y) = Е Bj (у) Е Gk(y) п Е Gm(y)aT,

j=l k=l i=l,m=0

i=j

bj (y) = ybj + Pj, Gk (y) = ygk + ak.

Определение 9. Проверочным полиномом ошибки для некоторых начальных случайных значений Рз, ] = 1,..., N, протокола Шнорра будем называть

N

ЕЧу)= П (Вз (.у) - УЩ), В3 (у) = уЪу + Рз.

3 = 1

Нетрудно убедиться, что deg(R*(y)) = N +1, старший коэффициент Я*(у) равен Ш* (ё), а степень Е*(у) равна весу ошибки.

Алгебраическое декодирование искажённого кодового слова в этой работе не рассматривается.

1.5. Вероятностная проверка утверждений о полиномах Пусть f (г) —некоторый ненулевой полином с коэффициентами из конечного поля порядка д. Количество корней такого полинома не превышает deg(f (г)). Вероятность выбрать корень случайно путём выбора произвольного значения аргумента из поля при условии отсутствия информации о коэффициентах не превышает deg(f (г))/д.

2. Протокол для слова кода Гоппы и ошибки ограниченного веса Протокол Р

Общая информация Проверяющего и Доказывающего: порядок д и пара элементов группы (к, f), дополнительные значения аз, ] = 1,... , N, искажённое кодовое слово ... WN, экземпляры привязки к коэффициентам полинома Ук, к = 0,... ,Т, и к компонентам кодового слова Шз, ] = 1,..., N, верхняя граница веса ошибки Б.

Информация Доказывающего: коэффициенты полинома дк и дополнительные

значения в к, компоненты кодового слова Ъз и дополнительные значения р3, таТ N

кие, что Ук = кЯк^к, Шз = кь3^ и д(г) = ^ гкдк, ^ *~а^ = 0 (mod д(г)),

к=о з=1 * а

№ I Ъз = ЩII ^ Б.

Доказывающий демонстрирует знание значений Ъз и дк, из которых были получены экземпляры привязки Шз и Ук, а также справедливость утверждения о весе ошибке.

1) Проверяющий выбирает запрос ё Е и пересылает его Доказывающему.

2) Доказывающий выбирает в Zq значения ак, Ск, к = 0,... ,Т; Рз, пз, ] = 1,... , N; цг, Ь = 0,...^; т3, в = 0,... Б; получает коэффициенты г*, р3, экземпляры привязки ик, Qз, Я*, Р5:

N Т ,к_ак N Т N

Ё (уЪз + рз) Е (удк + ак)~-~о- П Е (удт + ат)аТ = Еytгt,

з=1 к=1 г=\,т=0 *=0

г=з

N Я

П (уЪз + рз- ущз) = Е у3Ps,

з=1 3=0

и к = как fСк, Qз = кв fп, Яг = кп к*, Рз = кр° кТ°.

Доказывающий пересылает и, Qз, Яг, Р3 Проверяющему.

3) Проверяющий выбирает запрос с Е Ъч и пересылает его Доказывающему.

4) Доказывающий получает ответы и пересылает их Проверяющему:

Ф к = сдк + ак, Ок = свк + (к, Ц- = сЪз + Рз, Фз = срз + пз,

N Я

А = ^ с* Цг, А' = ^ с3Тз.

г=0 з=0

5) Проверяющий получает значения проверочного полинома:

N T ,k_ k NT N

Г = Ея, Е *k-_-j п Е , Г' = П (0j - cwj).

j=l k=l i=l,m=0 j=l

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

i=,

Проверяющий рассматривает демонстрацию как убедительную, если

N . S

h*k f&k V-c = Uk Л hQj Нф1 W-c = Q, Л hrfАП R-c = 1 Л hr' fА'П P-cS = 1.

t=0 s=0

Нетрудно проверить, что протокол P обладает свойством полноты: честный Доказывающий всегда принимает положительное решение, если вес ошибки в искажённом кодовом слове не превышает порог.

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

Доказательство. Пусть имеется Доказывающий, способный с более чем ничтожной вероятностью находить приемлемые ответы Фк, Ok на запрос Проверяющего с, отличные от значений линейных полиномов cgk + ak, cOk + Zk. Для любой пары элементов циклической группы (h, f), f = 1, найдется некоторое значение X £ Zq, такое, что h = fх. Тогда Vk = fX9k+dk, Uk = fxak+Zk, проверяемое условие

xФk + Ok - c(xgk + Ok) - (xak + Zk) = 0. Предположим, что Фk - cgk - ak = 0. Тогда logf (h) = — (Ok - cOk - Zk)/^k - cgk - ak). Аналогично для ответов (Я,, Ф,). ■

Теорема 1. Протокол P является аргументом со свойством знания в предположении сложности задачи поиска дискретного логарифма.

Доказательство. Алгоритм extractor выполняет возврат Доказывающего после получения ответов Фk, Ok, Я,, Ф,, А, А' на запрос c к состоянию ожидания запроса Проверяющего и получает от Доказывающего повторные ответы Фk, Ok, Я,, Ф,, А, А' на повторный запрос Ф = c без изменения начальных случайных значений ak, в,. Extractor вычисляет свидетельство из любой такой пары приемлемых ответов: gk = (ф - Фk)/(c - c), b, = (Я, - Я,)/(c - ф). ■

Теорема 2. Протокол P является аргументом в предположении сложности задачи поиска дискретного логарифма.

Доказательство. Рассмотрим произвольный алгоритм Доказывающего с искажённым кодовым словом, содержащим ошибку веса, превышающего S. Тогда поли-

S

ном E(y) = E*(y) - ^2 ysps ненулевой для любых ps. Вероятность случайного выбора

s=0

корня c полинома E(y) не превышает N/q. Пусть E(c) = 0. Тогда такой Доказываю-

S

щий также получает нетривиальный логарифм logf (h) = (-А' + Е csTs)/E(c). Таким

s=0

образом, вероятность для честного Проверяющего ошибочно принять положительное решение на этапе проверки веса ошибки не превышает N/q.

Предположим, Доказывающий создал экземпляры привязки к некоторым значениям b, и gk, которые не являются кодовым словом. Тогда полином W*(z) (4) ненулевой, deg(W*(z)) = T - 1, вероятность выбрать корень d полинома W*(z) не превышает (T - 1)/q. Пусть W*(d) = 0. Тогда старший коэффициент полинома

N

R(y) = R*(y) — Е ytrt ненулевой для любых rt, вероятность выбрать корень с полино-t=0

ма R(y) не превышает (N + 1)/q. Пусть R(c) = 0. Тогда такой Доказывающий также

N

получает нетривиальный логарифм logf (h) = (—А + ^2 cs^t)/R(c). Таким образом, ве-

t=0

роятность для честного Проверяющего ошибочно принять положительное решение на этапе проверки кодового слова не превышает (N + T)/q.

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

Теорема 3. Протокол P имеет свойство специального нулевого разглашения.

Доказательство. Рассмотрим следующий моделирующий алгоритм. Входные параметры: запросы (d, с) Е Zq Проверяющего.

1) Проверяющий выбирает в Zq случайные элементы Фд, , k = 0,... ,T; Qj, Ф,, j = 1,...,N; А, А'.

2) Проверяющий выбирает в группе G случайные элементы Uk, k = 0,... ,T; Qj, j = 1,..., N; Rt, t = 1,... , N; Ps, s = 1,... , S.

3) Проверяющий получает

N T dk_nk NT N

г = £Qj £ П £ ФтаТ, г' = П (Q — cwj),

j=1 k=1 i=1,m=0 j=1

i=j

N . S

Uk = h^k f&kVk~c, Qj = hQjh*jW~c, Ro = hrfAUR-c , Po = hr'fд' ПPs~cS.

t=1 s=1

Моделируемой стенограммой является строка из элементов d, Uk, Qj, Rt, Ps, с, Фд, Ok, Q,, Ф,, А, А'.

Компоненты стенограммы имеют равномерное распределение; зависимости между компонентами моделируемой стенограммы, использованные на шаге 3 моделирующего алгоритма для расчёта Uk, Qj, R0, P0, совпадают с зависимостями между компонентами стенограммы протокола с Доказывающим. ■

Заключение

Предложен протокол для проверки утверждения о весе ошибки в искажённом кодовом слове и схема запрос-ответ для проверки справедливости утверждений о полиномах. Предложенная схема запрос-ответ также использовалась для протоколов проверки условий о множествах [15], графах [16, 17] и строках [18].

ЛИТЕРАТУРА

1. Федюкович В. Е. Протокол аргумента знания слова кода Гоппы и ошибки ограниченного веса // Прикладная дискретная математика. Приложение. 2009. №1. С. 30-32.

2. Goldreich O, Micali S., Wigderson A. Proofs that yield nothing but their validity for all languages in NP have zero-knowledge proof systems // J. ACM. 1991. V. 38. No. 3. P. 691-729.

3. Brassard G., Chaum D., Crepeau C. Minimum disclosure proofs of knowledge // J. Comput. Syst. Sci. 1988. V. 37. No. 2. P. 156-189.

4. Bellare M., Goldreich O. On defining proofs of knowledge // CRYPTO. 1992. P. 390-420.

5. Computationally convincing proofs of knowledge / G. Brassard, C. Crepeau, S. Laplante, C. Leger // STACS. 1991. P. 251-262.

6. Bellare M., Micali S., Ostrovsky R. The (true) complexity of statistical zero knowledge / / STOC. 1990. P. 494-502.

7. Cramer R., Damgard I., Schoenmakers B. Proofs of partial knowledge and simplified design of witness hiding protocols // CRYPTO. 1994. P. 174-187.

8. Fiat A., Shamir A. How to prove yourself: Practical solutions to identification and signature problems // CRYPTO. 1986. P. 186-194.

9. Варновский Н. П. Типы нулевого разглашения //XI Междунар. школа-семинар «Синтез и сложность управляющих систем». Нижний Новгород, 2000.

10. Pedersen T. P. Non-interactive and information-theoretic secure verifiable secret sharing // CRYPTO. 1991. P. 129-140.

11. SchnorrC.P. Efficient identification and signatures for smart cards // CRYPTO. 1989. P. 239-252.

12. Chaum D., Evertse J. H., van de Graaf J. An improved protocol for demonstrating possession of discrete logarithms and some generalizations // EUROCRYPT. 1987. P. 127-141.

13. Гоппа В. Д. Новый класс линейных корректирующих кодов // Проблемы передачи информации. 1970. Т. 6. №3. С. 24-30. http://mi.mathnet.ru/eng/ppi1748.

14. Гоппа В. Д. Рациональное представление кодов и (Ь,д)-коды // Проблемы передачи информации. 1971. Т. 7. №3. С. 41-49. http://mi.mathnet.ru/eng/ppi1647.

15. Федюкович В. Е. Изменчивые ключи подписи // Информационные технологии и системы (ИТиС’09): сборник трудов конференции. [Электронный ресурс] М.: ИППИ РАН, 2009.

С. 396-400. http://www.iitp.ru/ru/conferences/539.htm (3.12.2009).

16. Федюкович В. Е. Протокол аргумента для цикла Гамильтона // Препринт IACR. 2008. http://eprint.iacr.org/2008/363 (23.08.2008).

17. Fedyukovych V. Protocols for graph isomorphism and hamiltonicity // 9th Central European Conference on Cryptography — Trebic’09, June 23-26, 2009. The proceedings will be published as a special issue of Tatra Mountains Mathematical Publications.

18. Федюкович В. Е., Шарапов В. Г. Протокол демонстрации K-кратного вхождения строки //Информационные технологии и системы (ИТиС’08): сборник трудов конференции. [Электронный ресурс] М.: ИППИ РАН, 2008. С. 459-466. http://www.iitp.ru/upload/ content/340/itas08_proceedings.pdf (9.09.2008).

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