Kryptografia - zastosowanie krzywych eliptycznych 24 marca 2011
Niech F będzie ciałem doskonałym (tzn. każde rozszerzenie algebraiczne ciała F jest rozdzielcze lub równoważnie, monomorfizm Frobeniusa jest izomorfizmem), np. ciała charakterystyki zero lub ciała skończone. Definicja Krzywa eliptyczna E(F) nad ciałem F nazywamy dowolna rzutowa, gładka krzywa algebraiczna genusu jeden nad ciałem F z wyróżnionym punktem bazowym O. Niech D Div(C) bedzie dowolnym dywizorem gładkiej krzywej rzutowej C nad ciałem F. Określmy zbiór L(D) = {f F(C) : div(f ) + D 0} {0}, będacy skończenie wymiarowa przestrzenia wektorowa nad ciałem F wymiaru l(d), tzn. l(d) = dim F L(D).
Definicja Dla dowolnego (nie zależy od wyboru) dywizora kanonicznego K C krzywej C liczbę całkowita nieujemna l(k C ) nazywamy genusem krzywej C i oznaczamy przez g, tzn. Uwaga g = l(k C ) W przypadku ciała liczb zespolonych (F = C) krzywa X nazywamy powierzchnia Riemanna a jej genus g jest równy wymiarowi pierwszej grupy kohomologii powierzchni X o współczynnikach w snopie funkcji holomorficznych, tzn. g = dim C H 1 (X, O)
Twierdzenie (Riemanna-Rocha) Niech C będzie dowolna gładka, rzutowa krzywa algebraiczna nad ciałem F. Wtedy dla każdego dywizora D Div(C) zachodzi równość l(d) l(k C D) = 1 g + deg D. (1)
Wniosek l(k C ) = g, definicja genusu deg K C = 2g 2 = χ(c), minus charakterystyka Eulera krzywej C Jeśli deg D > 2g 2, to l(d) = 1 g + deg D. (2) Jesli g=1, to deg D > 0 = l(d) = deg D. (3) Korzystajac z twierdzenia Riemanna-Rocha (1) można pokazać, że każda krzywa eliptyczna można sprowadzić do płaskiej rzutowej krzywej w tzw. postaci Weierstrassa C P 2 (F).
Postać Weierstrassa krzywej eliptycznej Rozważmy równanie dwóch zmiennych X, Y w ciele F (dowolnej charakterystyki) Y 2 + a 1 XY + a 3 Y = X 3 + a 2 X 2 + a 4 X + a 6 (4) gdzie a 1, a 2, a 3, a 4, a 6 F. Jeżeli ciało K jest rozszerzeniem ciała F (F K), to przez E(K) oznaczamy zbiór punktów K-wymiernych krzywej, tzn. zbiór par (x, y) K 2 spełniajacych równanie (4). Mówimy, że krzywa (4) jest gładka, gdy w każdym punkcie F-wymiernym, gdzie F jest domknięciem algebraicznym ciała F, nie zachodza równocześnie równania a 1 Y = 3X 2 + 2a 2 X + a 4 2Y + a 1 X + a 3 = 0 (5) otrzymane z (4) przez różniczki czastkowe X i Y. Krzywa gładka zadana równaniem (4) nazywamy krzywa eliptyczna w postaci Weierstrassa.
Uwaga W przypadku ciała charakterysyki różnej od 2 (χ(f) 2) podstawienie y 1 2 (y a 1x a 3 ) (6) prowadzi równanie krzywej do postaci gdzie y 2 = 4x 3 + b 2 x 2 + 2b 4 x + b 6 (7)
Uwaga b 2 = a1 2 + 4a 4, b 4 = 2a 4 + a 1 a 3, b 6 = a3 2 + 4a 6 (8) b 8 = a1 2 a 6 + 4a 2 a 6 a 1 a 3 a 4 + a 2 a3 2 a2 4 (9) c 4 = b2 2 24b 4 (10) c 6 = b2 3 + 36b 2b 4 216b 6 (11) = b2 2 b 8 8b4 3 27b2 6 + 9b 2b 4 b 6 (12) j = c3 4 ω = dx 2y + a 1 x + a 3 = dy 3x 2 + 2a 2 x + a 4 a 1 y (13) (14) Powyższe wielkości spełniaja zależności: 4b 8 = b 2 b 6 b 2 4 (15) 1728 = c 3 4 c2 6 (16)
W zależności od charakterystyki ciała F równanie (4) krzywej eliptycznej można sprowadzić do prostszej postaci: w przypadku χ(f) = 2 wyróżniamy dwa typy krzywych: supersingularny niesupersingularny: jeżeli χ(f) 2 to Y 2 + a 3 Y = X 3 + a 4 X + a 6 Y 2 + XY = X 3 + a 2 X 2 + a 6 jeżeli χ(f) 2, 3 to Y 2 = X 3 + a 2 X 2 + a 4 X + a 6 Y 2 = X 3 + a 4 X + a 6
W charakterystyce różnej od 2 i 3 równanie (4) możemy zapisać w postaci: Y 2 = X 3 + ax + b (17) a warunki gładkości (5) sa równoważne temu by wielomian po prawej stronie nie miał pierwiastków wielokrotnych, co z kolei jest równoważne nieznikaniu wyróżnika 0. Wyróżnik wielomianu unormowanego stopnia n o pierwiastkach c 1, c 2,... c n jest równy = (c j c k ) = ( 1) n(n 1)/2 j k j<k (c j c k ) 2 co w przypadku wielomianu X 3 + ax + b oznacza = (4a 3 + 27b 2 ).
Krzywe eliptyczne na ciałem liczb rzeczywistych R
Reguły dodawania punktów na krzywej eliptycznej nad ciałem R
Jeśli M 1 (x 1, y 1 ), M 2 (x 2, y 2 ), M 3 (x 3, y 3 ), P(x 3, y 3 ) to współrzędne punktu M 3 = M 1 + M 2 wyrażaja się wzorami: jeśli M 1 M 2 to ( ) y2 y 2 1 x 3 = x 1 x 2 x 2 x ( 1 ) y2 y 1 y 3 = y 1 + (x 1 x 3 ) x 2 x 1 dla x 1 x 2 i O "punkt w nieskończoności" w przeciwnym przypadku jeśli M 1 = M 2 to ( ) 3x1 2 x 3 = + a 2x 1 2y 1 ( ) 3x1 2 y 3 = y 1 + + a (x 1 x 3 ) 2y 1
W przypadku ciała liczb zespolonych C krzywa eliptyczna dana równaniem (17) jest powierzchnia Riemanna (jednowymiarowa rozmaitościa zespolona) genusu g = 1 czyli torusem. Rozważmy całkę eliptyczna dx X 3 + ax + b γ (18) liczby zespolone ω 1, ω 2 C (całki po krzywych zamkniętych generujace pierwsza grupę homologii torusa H 1 (E(C), Z)) wyznaczaja kratę Λ w C.
Powyższa krata Λ definiuje funkcję Weierstrassa (z, Λ) = 1 z 2 + ( 1 (z ω) 2 1 ) ω 2 ω Λ\{0} (19) Funkcja Weirestrassa jest 2-okresowa, tzn. (z, Λ) = (z + ω, Λ) i wraz ze swoja pochodna (zespolona) spełnia równanie (z, Λ) 2 = 4 (z, Λ) 3 g 2 (z, Λ) g 3 (20) gdzie g 2 = 60G 4 (Λ), g 3 = 140G 6 (Λ) a G 2k = ω Λ\{0} sa niezmienikami Eiesensteina kraty Λ. 1 ω 2k (21)
W przypadku ciała skończonego Galois F p n (p jest liczba pierwsza a n naturalna, oznaczmy q = p n ) rozważmy szereg formalny zmiennej T ζ(e(f q ), T ) = exp N r T r /r (22) gdzie liczby N r oznaczaja liczbę punktów F q r wymiernych kolejnych rozszerzeń ciała F q. Szereg (22) jest szczególnym przypadkiem słynnej funkcji zeta Riemanna. r=1
Twierdzenie (Hipoteza Weila dla krzywych eliptycznych - twierdzenie Hassego-Deligne) Powyższy szereg formalny (22) jest prosta funkcja wymierna (tzn. ζ(e(f q ), T ) Q[T ]) ζ(e(f q ), T ) = 1 at + qt 2 (1 T )(1 qt ) (23) Ponadto 1 at + qt 2 = (1 αt )(1 βt ), α = β = q (24) gdzie a Z spełnia zależność a = q + 1 N 1 (25)
Wniosek Z (24 i 25) otrzymujemy oszacowanie na ilość N = N 1 punktów F q wymiernych krzywej eliptycznej zdefinowanej nad ciałem F q q + 1 2 q N q + 1 + 2 q. (26) Liczby N r odzyskujemy z funkcji zeta Riemanna (22) za pomoca formuły: N r = 1 (n 1)! dt n log ζ(e(f q), T ) T =0 (27) d n