Hessian postać krzywej eliptycznej
W geometrii krzywa Hesji jest płaską krzywą podobną do folii Kartezjusza . Jej nazwa pochodzi od niemieckiego matematyka Otto Hessego . Krzywa ta została zaproponowana do zastosowania w kryptografii krzywych eliptycznych , ponieważ arytmetyka w tej reprezentacji krzywej jest szybsza i wymaga mniej pamięci niż arytmetyka w standardowej postaci Weierstrassa .
Definicja
Niech będzie polem i rozważmy krzywą eliptyczną w następującym szczególnym przypadku Weierstrassa nad }
Aby udowodnić, że ma zauważ , że styczna do P który przecina się z 3
pod uwagę punkt rzędu 3 na krzywej eliptycznej na polu umieścić krzywą w postaci Weierstrassa z że styczna w punkcie linią . Wtedy równanie krzywej to z .
Aby uzyskać krzywą Hessego, należy wykonać następujące przekształcenie :
Najpierw oznacza pierwiastek wielomianu
Następnie
jeśli porządku to każdy element K unikalny pierwiastek sześcienny ; ogólnie w polu K .
, definiując następującą wartość, krzywą która MI:
co nazywa się sześcienną formą Hesji (we współrzędnych rzutowych )
na płaszczyźnie afinicznej (satysfakcjonującej i )
Ponadto (w przeciwnym razie krzywa byłaby osobliwa ).
Wychodząc z krzywej Hessego, biracjonalnie równoważne równanie Weierstrassa jest podane przez
Prawo grupowe
Interesujące jest przeanalizowanie prawa grupowego krzywej eliptycznej, zdefiniowanie formuł dodawania i podwajania (ponieważ ataki SPA i DPA opierają się na czasie wykonywania tych operacji). Co więcej, w tym przypadku musimy tylko użyć tej samej procedury, aby obliczyć dodawanie, podwajanie lub odejmowanie punktów, aby uzyskać wydajne wyniki, jak wspomniano powyżej. Ogólnie rzecz biorąc, prawo grupowe jest zdefiniowane w następujący sposób: jeśli trzy punkty leżą na tej samej prostej, to sumują się do zera . Tak więc, dzięki tej własności, prawa grupowe są różne dla każdej krzywej.
W tym przypadku właściwym sposobem jest użycie wzorów Cauchy'ego-Desbovesa, uzyskując punkt w nieskończoności θ = (1 : −1 : 0) , czyli element neutralny (odwrotnością θ jest znowu θ ). Niech P = ( x 1 , y 1 ) będzie punktem na krzywej. Linia zawiera punkt P i punkt w nieskończoności θ . Zatem − P jest trzecim punktem przecięcia tej prostej z krzywą. Przecinając krzywą eliptyczną z linią, uzyskuje się następujący warunek
Ponieważ jest niezerowe (ponieważ D 3 różni się od 1), współrzędna x - P to y 1 , a y - współrzędna - P to x 1 , tj. lub we współrzędnych rzutowych .
W niektórych zastosowaniach kryptografii krzywych eliptycznych i metody faktoryzacji krzywych eliptycznych ( ECM ) konieczne jest obliczenie skalarnych mnożeń P , powiedzmy [ n ] P dla pewnej liczby całkowitej n , i są one oparte na metodzie podwój i dodaj ; operacje te wymagają formuł dodawania i podwajania.
Podwojenie
jeśli _ operacja „podwojenia” przy użyciu wzorów Cauchy'ego-Desbovesa:
Dodatek
W ten sam sposób, dla dwóch różnych punktów, powiedzmy i , możliwe jest zdefiniowanie formuły dodawania. Niech R oznacza sumę tych punktów, R = P + Q , to jego współrzędne są określone wzorem:
Algorytmy i przykłady
Istnieje jeden algorytm , którego można użyć do dodania dwóch różnych punktów lub podwojenia; podaje Joye i Quisquater . Wówczas następujący wynik daje możliwość uzyskania operacji podwojenia przez dodawanie:
Propozycja . Niech P = ( X,Y,Z ) będzie punktem na eliptycznej krzywej Hesji E ( K ) . Następnie:
|
|
() |
Ponadto mamy ( Z : X : Y ) ≠ ( Y : Z : X ) .
Wreszcie, w przeciwieństwie do innych parametrów , nie ma odejmowania, aby obliczyć negację punktu. Dlatego ten algorytm dodawania może być również użyty do odjęcia dwóch punktów P = ( X 1 : Y 1 : Z 1 ) i Q = ( X 2 : Y 2 : Z 2 ) na eliptycznej krzywej Hesji:
|
|
() |
Reasumując, dostosowując kolejność wejść zgodnie z równaniem (2) lub (3), przedstawiony powyżej algorytm dodawania można stosować obojętnie do: Dodawania 2 (różn.) punktów, Podwajania punktu i Odejmowania 2 punktów tylko 12 mnożeń i 7 zmiennych pomocniczych, w tym 3 zmienne wynikowe. Przed wynalezieniem krzywych Edwardsa wyniki te reprezentują najszybszą znaną metodę implementacji mnożenia skalarnego krzywej eliptycznej w kierunku odporności na ataki kanałów bocznych .
W przypadku niektórych algorytmów ochrona przed atakami typu side-channel nie jest konieczna. Więc dla tych podwojeń może być szybciej. Ponieważ istnieje wiele algorytmów, podano tutaj tylko najlepsze dla formuł dodawania i podwajania, z jednym przykładem dla każdego z nich:
Dodatek
Niech P 1 = ( X 1 : Y 1 : Z 1 ) i P 2 = ( X 2 : Y 2 : Z 2 ) będą dwoma punktami różnymi od θ . Zakładając, że Z 1 = Z 2 = 1 to algorytm jest dany wzorem:
ZA = X 1 Y 2
B = Y 1 X 2
- X 3 = B Y 1 - Y 2 A
- Y 3 = X 1 A - B X 2
- Z 3 = Y 2 X 2 - X 1 Y 1
Potrzebny koszt to 8 mnożeń i 3 dodania. Koszt ponownego dodania 7 mnożeń i 3 dodań, w zależności od pierwszego punktu.
- Przykład
Biorąc pod uwagę następujące punkty krzywej dla d = −1 P 1 = (1:0:−1) i P 2 = (0:−1:1) , to jeśli P 3 = P 1 + P 2 mamy:
- X 3 = 0 - 1 = -1
- Y 3 = -1 - 0 = -1
- Z 3 = 0 - 0 = 0
Wtedy: P 3 = (−1:−1:0)
Podwojenie
Niech P = ( X 1 : Y 1 : Z 1 ) będzie punktem, wtedy wzór na podwojenie ma postać:
- ZA = X 1 2
- B = Y 1 2
- re = A + B
- sol = ( X 1 + Y 1 ) 2 - re
- X 3 = (2 Y 1 - sol ) × ( X 1 + ZA + 1)
- Y 3 = ( sol - 2 X 1 ) × ( Y 1 + b + 1)
- Z 3 = ( X 1 - Y 1 ) × ( sol + 2 re )
Koszt tego algorytmu to trzy mnożenia + trzy podniesienia do kwadratu + 11 dodań + 3×2.
- Przykład
Jeśli punktem d _ , są podane przez:
X = (2 . (-1) - 2) (-1 + 1 + 1) = -4
Y = (−4 − 2 . (−1)) ((−1) + 1 + 1) = −2
Z = (−1 − (−1)) ((−4) + 2 . 2) = 0
-
Rozszerzone współrzędne
Istnieje inny układ współrzędnych, za pomocą którego można przedstawić krzywą Hessego; te nowe współrzędne nazywane są współrzędnymi rozszerzonymi . Mogą przyspieszyć dodawanie i podwajanie. Aby uzyskać więcej informacji na temat operacji z rozszerzonymi współrzędnymi, zobacz:
http://hyperelliptic.org/EFD/g1p/auto-hessian-extended.html#addition-add-20080225-hwcd
i są reprezentowane przez spełniające następujące równania:
Zobacz też
- Więcej informacji o wymaganym czasie pracy w konkretnym przypadku zawiera Tabela kosztów operacji na krzywych eliptycznych
- Skręcone krzywe Hesji
Linki zewnętrzne
Notatki
- Otto Hesse (1844), „Über die Elimination der Variabeln aus drei algebraischen Gleichungen vom zweiten Grade mit zwei Variabeln”, Journal für die reine und angewandte Mathematik , 10, s. 68–96
- Marc Joye, Jean-Jacques Quisquater (2001). „Krzywe eliptyczne Hesji i ataki z kanału bocznego”. Sprzęt kryptograficzny i systemy wbudowane — CHES 2001 . Notatki z wykładów z informatyki. Tom. 2162. Springer-Verlag Berlin Heidelberg 2001. s. 402–410. doi : 10.1007/3-540-44709-1_33 . ISBN 978-3-540-42521-2 .
- NP Inteligentny (2001). „Hessian forma krzywej eliptycznej”. Sprzęt kryptograficzny i systemy wbudowane — CHES 2001 . Notatki z wykładów z informatyki. Tom. 2162. Springer-Verlag Berlin Heidelberg 2001. s. 118–125. doi : 10.1007/3-540-44709-1_11 . ISBN 978-3-540-42521-2 .