Witam,
zacząłem właśnie robić algorytm Elgamala oparty na krzywych eliptycznych i są rzeczy które mnie nurtują. Po pierwsze czy dodawanie punktów na krzywej eliptycznej nad cialem Zp jest przemienne? Po drugie, żeby podnieść generator grupy do jakiejs potegi k-tej chciałbym skorzystać z algorytmu szybkiego mnożenia:

INPUT : k = (k t−1 , . . . , k 1 , k 0 ) 2 , P ∈ E(F q ).
OUTPUT : k P.
1. Q ← ∞.
2. For i from 0 to t − 1 do
2.1 If k i = 1 then Q ← Q + P.
2.2 P ← 2P.
3. Return(Q).

Tylko pytanie się pojawia jak mam "wyznaczyć nieskończoność" dla krzywych eliptycznych nad ciałem Zp? Bo jak próbowałem wyliczyć w ten sposób, że brałem generator P i dodawałem sobie P + -P to powinienem teoretycznie dostać tą nieskończoność tylko, że potem dodając do tej nieskończoności generator nie otrzymywałem punktów na krzywej elitpIycznej (normalne dodawanie puntków działa mi dobrze), a teoretycznie powinienem , bo P + inf = P. I nie wiem czy ja coś źle myślę, czy za nieskończoność trzeba przyjąć jakiś konkretny punkt? I ostatnia rzecz jak przekształcić literę wiadomości na punkt na krzywej? Biorę np jakiegoś chara, traktuję go jako liczbę i ustalam go jako współrzędną x i liczę y?