Montgomery Eğrisi

testwiki sitesinden
Gezinti kısmına atla Arama kısmına atla

Montgomery Eğrisi Peter L. Montgomery tarafından 1987'de tanımlanmış, klasik Weierstrass formundan farklı bir eliptik eğri formudur.[1] Belirli hesaplamalar için ve özellikle farklı kriptografi uygulamalarında kullanılır.

Tanımı

Montgomery eğrisinin denklemi;14y2=x3+2,5x2+x

Şablon:Matematik cismi üzerinde Montgomery egrisi, belirli Şablon:Matematik değerleri için ve Şablon:Matematik eşitsizliği sağlanıyorken, aşağıdaki eşitsizlikle tanımlanır:

MA,B:By2=x3+Ax2+x

Bu eğri genellikle bir Şablon:Matematik sonlu cismi üzerinde tanımlı olur. (örnek olarak Şablon:Matematik elemanın oluşturduğu bir sonlu cisim, Şablon:Matematik) Bu sonlu cismin karakteristiği 2'den farklı ve Şablon:Matematik Şablon:Matematik olması gerektiğine dikkat edelim. Aynı zamanda Şablon:Matematik ve Şablon:Matematik için aynı kısıtlamalara sahip rasyoneller üzerinde de düşünülür.

Montgomery Aritmetiği

Bir eliptik eğri üzerinde noktaları arasında, nokta toplama ve nokta ikileme işlemleri gerçekleştirilebilmektedir. Nokta Toplama; P,Q eliptik eğrisi üzerinde tanımlı iki nokta olmak üzere R=P+Q; olacak şekilde R noktası bulmak işlemidir. Nokta İkileme ise [2]P=P+P işlemidir. (Kullanılan işlemler hakkında detaylı bilgi için bkz; elliptic eğri grup kuralları (eng: the group law))

P=(x,y) noktası Montgomery formundaki By2=x3+Ax2+x eliptik eğrisi üzerinde bir nokta olmak üzere, bu noktanın Montgomery koordinatları P=(X:Z) Burada P=(X:Z) projektif koordinatlardır. (x=X/Z ve Z0).

Bir nokta için bu tür bir temsilin(dönüşümün) bilgi kaybettiğine dikkat edin: gerçekten (x,y) ve (x,y) (afin noktalarının kullanımında bir ayrım gözetilmez çünkü her iki noktanın kullanımı da bize (X:Z) sonucunu verecektir. Ancak, bu gösterim(dönüşüm) ile bir P=(X:Z) noktanın n sayısı ile çarpılmasını elde etmek mümkündür; [n]P=(Xn:Zn)

Şimdi, iki nokta dikkate alalım; Pn=[n]P=(Xn:Zn) ve Pm=[m]P=(Xm:Zm):

Bu iki noktanın toplamları aşağıdaki şekilde ifade edilir;

Pm+n=Pm+Pn=(Xm+n:Zm+n)

bu toplamın koordinatları:

Xm+n=Zmn((XmZm)(Xn+Zn)+(Xm+Zm)(XnZn))2
Zm+n=Xmn((XmZm)(Xn+Zn)(Xm+Zm)(XnZn))2
Eğer m=n ise bu işlem "nokta ikileme" işlemine dönüşür; [2]Pn=Pn+Pn=P2n=(X2n:Z2n) Koordinatları ise aşağıdaki eşitsizliklerle belirlenir;
4XnZn=(Xn+Zn)2(XnZn)2
X2n=(Xn+Zn)2(XnZn)2
Z2n=(4XnZn)((XnZn)2+((A+2)/4)(4XnZn))

Yukarıdaki ilk işlemin(toplama işleminin) maliyeti: (3M+2S) (Burada M, tanımlı eliptik eğrideki herhangi iki elemanın çarpımını, S ise tanımlı cisimdeki bir elemanın karesini ifade ediyor)

İkinci işlemin(ikileme) maliyeti : 2M + 2S + 1D, (Burada D herhangi bir elemanın bir (A+2)/4 değeri seçilebilir.

Algoritma ve Örnek

Montgomery formunda bir eliptik eğrininin bir noktasının P1=(X1:Z1) nokta ikilemesi, aşağıdaki algoritma ile gösterilebilir;

Z1=1 varsayıldığı durumda bu implementasyonun maliyeti; 1 + 2 + *1 + 3add + 1*4. (Burada M gerekli çarpma işlemlerini, S ise kare alma işelemlerini, a ise A ile çarpma işlemlerini belirtir.)
XX1=X12
X3=(XX11)2
Z3=4X1(XX1+aX1+1)

Örnek

Kabul edelim ki P1=(2,3) noktası, 2y2=x3x2+x eğrisi üzerinde bir nokta olsun. Koordinatları; (X1:Z1) ; x1=X1/Z1, P1=(2:1) O halde:

XX1=X12=4
X3=(XX11)2=9
Z3=4X1(XX1+AX1+1)=24

Sonuç olarak bulduğumuz nokta; P3=(X3:Z3)=(9:24) dikkat edilirse, P3=2P1.

Nokta Toplama

P1=(x1,y1)P2=(x2,y2) afin koordinatlarda Montgomery eğrisi MA,B üzerinde iki nokta olmak üzere, 

P3=P1+P2 şeklinde belirlenen nokta geometrik olarak MA,B ile P1 ve P2 noktalarını birleştiren doğrunun kesimini ifade eden üçüncü bir noktadır. Bu noktanın koordinatları (x3,y3) aşağıdaki şekilde belirlenir:

1) 2 boyutlu afin uzayda, y=lx+m doğrusunun P1 ve P2 noktalarından geçtiğini varsayalım.(bu varsayımdan yararlanarak),

l=y2y1x2x1 ve m=y1(y2y1x2x1)x1; elde edilir.

2) Doğru ile MA,B, eğri denklemindeki y değişkeni y=lx+m ile değiştirilirse aşağıdaki 3. dereceden denklem elde edilir:

x3+(ABl2)x2+(12Blm)xBm2=0.

Daha önce gözlemlenebildiği gibi, bu denklem P1, P2 ve P3 noktalarının x koordinatlarına göre üç köke sahiptir. Öyleyse denklem;

(xx1)(xx2)(xx3)=0 şeklinde yazılır.

3) Yukarıda verilen iki özdeş denklemin katsayılarının, özellikle de ikinci mertebeden olanın terimlerinin katsayılarının karşılaştırılmasıyla aşağıdaki denklem elde edilir:

x1x2x3=ABl2.

Böylelikle,x3 terimi x1, y1, x2, y2 terimleri cinsinden aşağıdaki biçimde yazılabilir:

x3=B(y2y1x2x1)2Ax1x2.

4) P3 noktasının y koordinatını bulabilmek için, x3 değerini  y=lx+m doğrusunda yerine koymak yeterlidir. Bunun doğrudan P3 noktasını vermeyeceğine dikkat edin. Gerçekten, bu yöntemle, R+P1+P2=P,  sağlayan R noktasının koordinatları bulunur. Eğer  P1 ve P2 nokta ekleme işleminin sonuç noktasına ihtiyaç duyulursa, R+P1+P2=P ancak ve ancakR=P1+P2 olması durumunu göz önüne almak gereklidir. Bu yüzden, verilen R noktası için R noktasını bulmak gereklidir. Bu işlem verilen R nin y koordinatının işaretini değiştirerek kolaylıkla yapılabilir. Başka bir deyişle, doğru denkleminde x3 ün yerine konulmasıyla elde edilen y koordinatının işaretini değiştirmek yeterli olacaktır.

Öyleyse P3=(x3,y3) noktasının koordinatları,P3=P1+P2 şunlardır:

x3=B(y2y1)2(x2x1)2Ax1x2=B(x2y1x1y2)2x1x2(x2x1)2
y3=(2x1+x2+A)(y2y1)x2x1B(y2y1)3(x2x1)3y1

Nokta İkileme

 MA,B Montgomery Eğrisi üzerinde verilen bir P1 noktası için, [2]P1; Geometrik olarak eğri ile P1'eğet olan doğru arasındaki kesişimi ifade eden üçüncü noktasını temsil eder;P3=2P1 sağlayan P3 noktasının koordinatlarını bulabilmek için, 'nokta toplama' metodundakine benzer bir yol izlenir; ancak, bu durumda, y = lx + m  doğrusu P1 eğrisine teğet olmalıdır. Bu yüzden, eğer MA,B:f(x,y)=0 ile

f(x,y)=x3+Ax2+xBy2,

Doğrunun eğimini temsil eden l değeri aşağıdaki gibi verilir:

l=fx/fy

kapalı fonksiyon teoremi'ne göre yazılabilir.

Yani l=3x12+2Ax1+12By1 ve P3, P3=2P1

x3=Bl2Ax1x1=B(3x12+2Ax1+1)2(2By1)2Ax1x1=(x121)24By12=(x121)24x1(x12+Ax1+1)y3=(2x1+x1+A)lBl3y1=(2x1+x1+A)(3x12+2Ax1+1)2By1B(3x12+2Ax1+1)3(2By1)3y1.

Bükülmüş Edwards eğrileri ile denkliği

Kabul edelim ki K karakteristiği 2'den farkli bir cisim olsun.

Yine kabul edelim ki MA,B Montgomery formunda bir eliptik eğri olsun:

MA,B:Bv2=u3+Au2+u
 AK{2,2}, BK{0}

ve kabul edelim ki Ea,d bükülmüş Edwards formunda bir eliptik eğri olsun: 

Ea,d : ax2+y2=1+dx2y2,
 a,dK{0},ad.

Aşağıdaki teoremi Mongomery eğrileri ile bükülmüş Edwards eğrileri arasındaki birasyonel denkliği gösterir:[2]

Teorem (i) K üzerinde, her bükülmüş Edwards eğrisi bir Montgomery eğrisine birasyonel denktir. Özellikle, Ea,d bükülmüş Edwards eğrisi, MA,B Montgomery eğrisine;   A=2(a+d)ad ve B=4ad sağlanıyorken birasyonel denktir.

Eşleme:

ψ:Ea,dMA,B
(x,y)(u,v)=(1+y1y,1+y(1y)x)

Ea,d'den MA,B' ye birasyonel denklik, tersi;

ψ1: MA,BEa,d
(u,v)(x,y)=(uv,u1u+1),a=A+2B,d=A2B

Dikkat edilirse, iki eğri arasındaki bu denklik her yerde geçerli değildir: gerçekten de ψ eşlemesi MA,B'de v=0 ya da u+1=0 noktalarında tanımlı değildir.

Weierstrass eğrileri ile denkliği

Tüm eliptik eğriler Weierstrass formunda yazılabilir. Özellikle, Montgomery formundaki eliptik eğriyi ele alalım;

MA,B: By2=x3+Ax2+x,

aşağıdaki şekilde dönüştürülebilir:

MA,B'nin her bir terimini B3'e bölüp ve x,y değerlerine, u=xB, v=yB dönüşümü uygulanırsa,
v2=u3+ABu2+1B2u.

Bir kısa Weierstrass formu elde edebilmek için burada u'yu tA3B değeri ile değiştirtirmek gerekir:

v2=(tA3B)3+AB(tA3B)2+1B2(tA3B);

Sonuç olarak:

v2=t3+(3A23B2)t+(2A39A27B3).

Dolayısıyla eşleme şöyle verilir:

ψ: MA,BEa,b
(x,y)(t,v)=(xB+A3B,yB),a=3A23B2,b=2A39A27B3

aksine,𝔽 baz cismi üzerinde Weierstrass formunda bir eliptik eğri:

Ea,b: v2=t3+at+b

Montgomery formuna ancak ve ancak Ea,b mertebesi 4'e bölünebilirse ve aşağıdaki koşulları sağlarsa dönüştürülebilir:[3]

  1. z3+az+b=0 en az bir α𝔽 köküne sahip; ve
  2. 3α2+a 𝔽'de bir ikinci dereceden rezidü.

Bu şartlar sağlandığında, s=(3α2+a)1 için aşağıdaki eşlemeye sahip olunur;

ψ1: Ea,bMA,B
(t,v)(x,y)=(s(tα),sv),A=3αs,B=s.

Ayrıca bakınız

Notlar

Şablon:Kaynakça

Kaynakça