АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Вычисление множества точек удвоения заданной эллиптической кривой

Читайте также:
  1. Абрисы узловых точек границ земельных участков
  2. Ведение карточек складского учета
  3. Вхождение Казахстана в состав России – как результат множества политических, военных, социально-экономических и других факторов.
  4. Выбор параметров привода по заданной скорости поршня
  5. Выпей, Вовик, глоточек.
  6. Выпуклой области множества неупорядоченных элементов
  7. Вычисление длины дуги кривой
  8. Вычисление композиций точек удвоения
  9. Вычисление концентрации шлаков и отравляющих осколков.
  10. Вычисление координат вершин хода.
  11. Вычисление множеств точек удвоения заданной эллиптической кривой.

Для вычисления открытого ключа абонента-отправителя сообщения «М» КОА изначально необходимо вычислить все удвоения генераторной точки «G» до [128] G, т.к. число 128 является максимальным числом степени 2n в составе числового значения закрытого ключа КЗА = 236. Значение закрытого ключа КЗА по числам 2n можно отобразить как 236 = 4 + 8 + 32 + 64 + 128, т.е. на первом этапе для вычисления открытого ключа абонента-отправителя сообщения «М» КОА = [КЗА] G = [236] G необходимо вычислить следующие точки удвоения: [4] G; [8] G; [32] G; [64] G; [128] G, а затем вычислить все композиции полученных числовых значений. Методика вычисления операций удвоения и композиций была изложена в разделе «Основные операции криптографических преобразований в метрике эллиптических кривых».

После вычисления множеств удвоения генераторной точки «G» по значению максимального нижнего предела степени 2n, т.е. n = 7 2n ≤ 236;

128 ≤ 236 определяется композиция полученного множества. Следовательно, КОА = [КЗА] G = [236] G = [4] G + [8] G + [32] G + + [64] G + [128] G.

Вычисление удвоения генераторной точки G (X1; Y1) = G (18; 11) → [2] G:

- Вычисляется угловой коэффициент касательной заданной эллиптической кривой ZP (a; b): Y2 = X3 + 8*X + 5 mod 293 в генераторной точке G(X1; Y1) = G(18; 11):

K = mod P = mod 293 = mod 293 = 980 * 22-1 mod 293 = 980 * 22291 mod 293 = 980 * 40 mod 293 = 39200 mod 293 = 231 mod 293 → 231.

- Вычисляются координаты удвоения генераторной точки G - [2]G = G(X2; Y2) (координаты генераторной точки «G» определены выше G(X1; Y1) = G(18; 11)):

X2 = (K2 – 2X1) mod P = (2312 - 2*18) mod 293 = 292 mod 293 → 292;

Y2 = (K*(X1 – X2) – Y1) mod P = (231*(18 – 292) – 11) mod 293 =

= 276 mod 293 → 276.

Следовательно, [2]G = (X2; Y2) = (292; 276), координаты точки [2]G определены как X2 = 292; Y2 = 276.

Вычисление операции удвоения полученной точки [2]G, т.е. вычисление точки [4]G = (X4; Y4):

- вычисление углового коэффициента касательной в точке [2]G = (X2; Y2) = (292; 276)

K = mod P = mod 293 = 60 mod 293 → 60.

- вычисление координат точки [4]G = (X4; Y4)

X4 = (K2 – 2X2) mod P = (602 - 2*292) mod 293 = 86 mod 293 → 86;

Y4 = (K*(X2 – X4) – Y2) mod P = (60*(292 – 86) – 276) mod 293 =

= 71 mod 293 → 71.

Следовательно, [4]G = (X4; Y4) = (86; 71), координаты точки [4]G определены как X4 = 86; Y4 = 71.

Вычисление координат точки [8]G, как результат удвоения точки [4]G:

- вычисление углового коэффициента касательной в точке [4]G = (X4; Y4) = (86; 71)

K = mod P = mod 293 = mod 293 = 22196 * 142-1 mod 293 = 22196 * 142291 mod 293 = 22196 * 130 mod 293 = 221 * 130 mod 293 = 28730 mod 293 = 16 mod 293 → 16.

- вычисление координат точки [8]G = (X8; Y8)

X8 = (K2 – 2X4) mod P = (162 - 2*86) mod 293 = 84 mod 293 → 84;

Y8 = (K*(X4 – X8) – Y4) mod P = (16*(86 – 84) – 71) mod 293 =

= 254 mod 293 → 254.

Следовательно, [8]G = (X8; Y8) = (84; 254), координаты точки [8]G определены как X8 = 84; Y8 = 254.

Вычисление координат точки [16]G, как результат удвоения точки [8]G:

- вычисление углового коэффициента касательной в точке [8]G = (X8; Y8) = (84; 254)

K = mod P = mod 293 = mod 293 = 21176 * 508-1 = 21176 * 508291 mod 293 = 80 * 154 mod 293 = 12320 mod 293 =

= 14 mod 293 → 14.

- вычисление координат точки [16]G = (X16; Y16)

X16 = (K2 – 2X8) mod P = (142 - 2*84) mod 293 = (196 – 168) mod 293 =

= 28 mod 293 → 28;

Y16 = (K*(X8 – X16) – Y8) mod P = (14*(84 – 28) – 254) mod 293 = (784 – 254) mod 293 = 530 mod 293 = 237 mod 293 → 237.

Следовательно, [16]G = (X16; Y16) = (28; 237), координаты точки [16]G определены как X16 = 28; Y16 = 237.

Вычисление координат точки [32]G, как результат удвоения точки [16]G:

- вычисление углового коэффициента касательной в точке [16]G = (X16; Y16) = (28; 237)

K = mod P = mod 293 = mod 293 = 2360 * 474-1 mod 293 = 2360 * 474291 mod 293 = 16 * 34 mod 293 = 544 mod 293 =

= 251mod 293 → 251.

- вычисление координат точки [32]G = (X32; Y32)

X32 = (K2 – 2X16) mod P = (2512 - 2*28) mod 293 = (63001 – 56) mod 293 = = 62945 mod 293 = 243 mod 293 → 243;

Y32 = (K*(X16 – X32) – Y16) mod P = (251*(28 – 243) – 237) mod 293 = - 54202 mod 293 = - 290 mod 293 = (293 – 290) mod 293 = 3 mod 293 → 3.

Следовательно, [32]G = (X32; Y32) = (243; 3), координаты точки [32]G определены как X32 = 243; Y32= 3.

Вычисление координат точки [64]G, как результат удвоения точки [32]G:

- вычисление углового коэффициента касательной в точке [32]G = (X32; Y32) = (243; 3)

K = mod P = mod 293 = 177155 * 6-1 mod 293 =

= 177155 * 6291 mod 293 = 183 * 49 mod 293 = 8967 mod 293 = 177 mod 293 → 177.

- вычисление координат точки [64]G = (X64; Y64)

X64 = (K2 – 2X32) mod P = (1772 - 2*243) mod 293 = 30843 mod 293 = 78 mod 293 → 78;

Y64 = (K*(X32 – X64) – Y32) mod P = (177*(243 – 78) – 3) mod 293 = 29202 mod 293 = 195 mod 293 → 195.

Следовательно, [64]G = (X64; Y64) = (78; 195), координаты точки [64]G определены как X64 = 78; Y64 = 195.

Вычисление координат точки [128]G, как результат удвоения точки [64]G:

- вычисление углового коэффициента касательной в точке [64]G = (X64; Y64) = (78; 195)

K = mod P = mod 293 = mod 293 = 18260 * 390291 = 94 * 145 mod 293 = 13630 mod 293 = 152 mod 293 → 152.

- вычисление координат точки [128]G = (X128; Y128)

X128 = (K2 – 2X64) mod P = (1522 - 2*78) mod 293 = 22948 mod 293 = 94 mod 293 → 94;

Y128 = (K*(X64 – X128) – Y64) mod P = (152*(78 – 94) – 195) mod 293 =

= 10 mod 293 → 10.

Следовательно, [128]G = (X128; Y128) = (94; 10), координаты точки [128]G определены как X128 = 94; Y128 = 10.

Вычисление композиций точек удвоения [4]G; [8]G; [32]G; [64]G; [128]G заданной эллиптической кривой.

Для вычисления открытого ключа абонента «А» КОА = [КЗА]G необходимы точки [4]G; [8]G; [32]G; [64]G; [128]G заданной эллиптической кривой, т.к. число 236,отображающее закрытый ключ, формируется из результатов композиций операций удвоений 236 = 4 + 8 +32 + 64 + 128.

Следовательно, значение открытого ключа КОА = [КЗА]G будет определяться результатом композиций точек [4]G; [8]G; [32]G; [64]G; [128]G.

Вычисление композиции точек [64]G и [128]G; [64]G + [128]G = [192]G = (X192; Y192). ( [64]G = (X64; Y64) = (78; 195); [128]G = (X128; Y128) = (94; 10))

- Вычисляется угловой коэффициент прямой, проходящей через точки [64]G и [128]G заданной эллиптической кривой:

K = mod P = mod 293 = - 185 * 16-1 mod 293 = - 18 * 16291 mod 293 = - 185 * 55 mod 293 = - 10175 mod 293 = -213 mod 293 = (293-213) mod 293 = 80 mod 293 → 80.

- Вычисляются координаты точки [192]G = (X192; Y192):

X192 = (K2 – X64 – X128) mod P = (802 – 78 – 94) mod 293 = 6228 mod 293 = 75 mod 293 → 75.

Y192 = (K*(X128 – X192) – Y128) mod P = (80* (94 – 75) – 10) = 1510 mod 293 = 45 mod 293 → 45

Следовательно, [192]G = (X192; Y192) = (75; 45), координаты точки [192]G определены как X192 = 75; Y192 = 45.

Вычисление композиции точек [192]G и [32]G; [192]G + [32]G = [224]G = (X224; Y224). ([192]G = (X192; Y192) = (75; 45); [32]G = (X32; Y32) = (243; 3)).

- Вычисляется угловой коэффициент прямой, проходящей через точки [32]G и [192]G заданной эллиптической кривой:

K = mod P = mod 293 = - 42 * 168-1 mod 293 = - 42 * 168291 mod 293 = 251 * 75 mod 293 = 18825 mod 293 = 73 mod 293 → 73.

- Вычисляются координаты точки [224]G = (X224; Y224):

X224 = (K2 – X192 – X32) mod P = (732 – 75 – 243) mod 293 = 30 mod 293 → 30.

Y224 = (K*(X192 – X224) – Y192) mod P = (73* (75 – 30) – 45) mod 293 =

= 17 mod 293 → 17.

Следовательно, [224]G = (X224; Y224) = (30; 17), координаты точки [224]G определены как X224 = 30; Y224 = 17.

Вычисление композиции точек [224]G и [8]G; [224]G + [8]G = [232]G = (X232; Y232). ([224]G = (X224; Y224) = (30; 17); [8]G = (X8; Y8) = (84; 254)).

- Вычисляется угловой коэффициент прямой, проходящей через точки [224]G и [8]G заданной эллиптической кривой:

K = mod P = mod 293 = mod 293 = 237 * 54-1 mo293 = = 237 * 54291 mod 293 = 237 * 38 mod 293 = 9006 mod 293 = 216 mod 293 → 216.

- Вычисляются координаты точки [232]G = (X232; Y232):

X232 = (K2 – X232 – X8) mod P = (2162 – 30 – 84) mod 293 = 46542 mod 293 = 248 mod 293 → 248.

Y232 = (K*(X224 – X232) – Y224) mod P = (216* (30 – 248) – 17) mod 293 =

= - 47105 mod 293 = - 225 mod 293 = (293 – 225) mod 293 = 68 mod 293 → 68.

Следовательно, [232]G = (X232; Y232) = (248; 68), координаты точки [232]G определены как X232 = 248; Y232 = 68.

Вычисление композиции точек [232]G и [4]G; [232]G + [4]G = [236]G = (X236; Y236);. ([232]G = (X232; Y232) = (248; 68); [4]G = (X4; Y4) = (86; 71)).

- Вычисляется угловой коэффициент прямой, проходящей через точки [232]G и [4]G заданной эллиптической кривой:

K = mod P = mod 293 = - mod 293 = - 3*162-1 mod 293 = - 3 * 162291 mod 293 = -3 * 208 mod 293 = - 624 mod 293 = - 38 mod 293 = (293 – 38) mod 293 = 255 mod 293 → 255.

- Вычисляются координаты точки [236]G = (X236; Y236):

X236 = (K2 – X232 – X4) mod P = (2552 – 248 – 86) mod 293 = 64691 mod 293 = = 231 mod 293 → 231.

Y236 = (K*(X232 – X236) – Y232) mod P = (255* (248 – 231) – 68) mod 293 =

= 4267 mod 293 = 165 mod 293 → 165.

Следовательно, [236]G = (X236; Y236) = (231; 165), координаты точки [236]G определены как X236 = 231; Y236 = 165.

В результате выполнения операций удвоения и композиций детерминированных множеств точек заданной эллиптической кривой определены координаты точки открытого ключа абонента «А», а, следовательно, и сам открытый ключ КОА = [КЗА]G = [236]G = (X236; Y236) = (231; 165). Открытый ключ абонента «А» КОА выбирается как значение абсциссы X236 = 231, т.е. КОА = 231.

Абонент А передает абоненту В заданные параметры эллиптической кривой (P = 293; a = 8; b = 5), координаты генераторной точки G = (XG; YG) = (18; 11) и координаты своего открытого ключа КОА = [КЗА]G = [236]G = (X236; Y236) = (231; 165) открыто по открытым каналам связи.


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.009 сек.)