Иванов Криптографические методы засчиты информации в компютерных 2012
.pdf11.10.1. Эллиптические алгоритмы формирования ПСЧ на основе линейных конгруэнтных генераторов
В 1994 г. S. Hallgren представил линейный конгруэнтный ге-
нератор (LCG, Linear Congruential Generator) над эллиптической кривой. Это – быстрый, но небезопасный генератор. Формируемые на основе LCG последовательности были названы LCG-EC- последовательностями.
Рассмотрим линейный конгруэнтный генератор над Zn. Уравнение линейного конгруэнтного генератора имеет вид
xi + 1 = axi + b (mod n),
где a, b, n – константы; x0 – начальное состояние генератора; a, b, x0, n Zn. Свойства последовательности зависят от выбранных параметров n, a, b и x0.
Линейный конгруэнтный генератор производит последовательность {xi} максимально возможного периода n тогда и только тогда, когда выполняется каждое из следующих условий:
b – простое число относительно n;
a { 1 (mod p) для каждого простого делителя p числа n; a { 1 (mod 4), если n кратно 4.
Рассмотрим линейный конгруэнтный генератор над эллиптической кривой. Переключения генератора LCG-EC-последова- тельности X0, X1, X2, … определяются рекуррентным соотношением Xi + 1 = aXi + B над эллиптической кривой, где a – константа, X0 – начальная точка, B – фиксированная точка. Выходная псевдослучайная последовательность суть последовательность младших бит y-координат точек Xi.
Алгоритм генерации ПСЧ
1.Выбираем конечное поле GF(q).
2.Выбираем кривую E.
3.Выбираем линейный конгруэнтный генератор, например,
Xi 1 aXi B .
4.Выбираем фиксированное целое число a, начальную точку X0 и фиксированную точку B, причем aX0 B ζ X0 .
321
|
28 |
26 |
|
Pk-1 |
Pk-2 |
Pk
Рис. 11.7. Схема LFSR 1
Пусть g – корень многочлена f(x) = x5 + x2 + 1 и GF(25) – поле,
произведенное g. Рассмотрим несуперсингулярную кривую
E2: y2 + xy = x3 + g9x2 + g15 над GF(25).
Эта кривая имеет порядок 26. Пусть R точка на E2, порядок которой равен 13. Выберем f(x) = x2 – 12x – 11 Z13>x . Пусть начальное состояние Q = O, P0 = R и P1 = 2R. LFSR-EC-последова- тельность P = {Pk} формируется с использованием LFSR, представленного на рис. 11.8. Точки показаны в табл. 11.3.
Pk = 12Pk - 1 + 11Pk - 2 = akR, k = 2, 3, ...,
где ak = 12ak - 1 + 11ak - 2 (k = 2, 3,…) – LFSR-последовательность с начальным состоянием (a0, a1) = (1, 2).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
12 |
|
|
11 |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Pk-1 |
|
|
|
Pk-2 |
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Pk |
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
Рис. 11.8. Схема LFSR 2 |
|
|
|
324