• Tidak ada hasil yang ditemukan

ELLIPTIC CURVE CRYPTOGRAPHY. Disarikan oleh: Dinisfu Sya ban ( )

N/A
N/A
Protected

Academic year: 2021

Membagikan "ELLIPTIC CURVE CRYPTOGRAPHY. Disarikan oleh: Dinisfu Sya ban ( )"

Copied!
12
0
0

Teks penuh

(1)

ELLIPTIC CURVE CRYPTOGRAPHY

Disarikan oleh:

Dinisfu Sya’ban (0403100596)

SEKOLAH TINGGI SANDI NEGARA BOGOR

(2)

A. Fungsi Elliptic Curves 1. Definisi Elliptic Curves

Definisi 1. : Misalkan k merupakan field dengan karakteristik ≠ 2, 3, dengan k dapat merupakan field bilangan real R, field bilangan rational Q, field bilangan complex C atau finite field Fq dengan q = p

r

elemen.

Misalkan x3 + ax + b (dimana a, b ∈ k), dimana 4a3 + 27b2≠0, dengan DE (discriminant E) = -16 (4a3 + 27b2) dan invariant kurva

didefinisikan sebagai j(E)= 2833a3/(4a3 + 27b2) merupakan polynomial pangkat tiga tanpa mempunyai akar perkalian. Elliptic curves dalam k merupakan himpunan titik-titik (x, y) dengan x, y ∈ k memenuhi persamaan

y2 = x3 +ax + b (1)

dengan sebuah elemen tunggal yang dinotasikan dengan OE yang disebut

“point at infinity”.

a) Jika k merupakan field dengan karakteristik 2 , maka elliptic curves dalam k adalah himpunan titik-titik yang memenuhi persamaan sebagai berikut :

y2 + cy = x3 +ax + b (2a)

atau memenuhi

y2 + xy = x3 +ax2 + b (2b) dengan sebuah “point at infinity” OE (tidak perduli persamaan kubik

(3)

b) Jika k merupakan field dengan karakteristik 3, maka elliptic curves dalam k adalah himpunan titik-titik yang memenuhi persamaan sebagai berikut :

y2 = x3 +ax2 + bx + c (3)

dengan sebuah “point at infinity” OE (dimana persamaan kubik di

kanan tidak mempunyai akar perkalian). Selain persamaan di atas, terdapat persamaan umum yang dapat digunakan

pada sebarang field yaitu :

y2 + a1xy + a3y = x3 + a2x2 + a4x + a6 .

Persamaan di atas dapat ditranformasikan dalam bentuk y2 = x3 +ax2 + bx + c jika karakteristik k ≠ 2 dan menjadi y2 = x3 +bx + c untuk karakteristik k > 3.

Jika dimisalkan F(x, y) = 0, maka suatu titik pada elliptic curves dikatakan non singular jika setidaknya turunan partial dari ∂F/∂x, ∂F/∂y bernilai tidak sama dengan nol pada titik tersebut. Atau dengan perkataan lain syarat persamaan kubik pada bagian kanan persamaan (1) dan (3) tidak mempunyai akar perkalian akan sama dengan semua titik yang terdapat pada kurva merupakan titik non singular.

2. Persamaan Elliptic curves yang Terdefinisi dalam Bilangan Real

Misalkan E merupakan elliptic curves yang terdefinisi dalam bilangan real dan misalkan P dan Q titik-titik pada elliptic curves. Aturan-aturan dalam elliptic curves dapat dijelaskan sebagai berikut :

1) Jika P merupakan “point at infinity” OE , maka dapat

(4)

–P = OE dan P + Q = OE; OE berperan sebagai identitas

penjumlahan (“elemen nol”) dari group yang dibentuk titik-titik pada elliptic curves. Selanjutnya dimisalkan P dan Q ≠ OE.

2) Negatif P merupakan titik yang mempunyai koordinat x yang sama dengan P tetapi koordinat y pada titik tersebut negatif, dapat dinotasikan sebagai P = (x, y), –P = –(x,y) = (x,–y). Dari persamaan (1) jelas terlihat (x,–y) terdapat pada kurva jika (x,y) juga terdapat pada kurva.

3) Jika P dan Q mempunyai koordinat x yang berbeda, maka sebuah garis l = PQ yang melalui P dan Q memotong kurva tepat hanya satu titik yaitu pada titik R. Begitu pula jika garis tersebut merupakan garis tangent pada kurva di titik P, untuk kasus R = P, atau di Q, jika R = Q. Maka dapat didefinisikan P + Q adalah –R yaitu merupakan pencerminan terhadap koordinat x dari titik potong garis l pada kurva.

4) Jika Q = –P, dengan pengertian Q seperti 2), maka didefinisikan P + Q = OE.

5) Kemungkinan terakhir yang didapat jika P = Q. Misalkan l merupakan garis tangent terhadap kurva di P, misalkan R merupakan satu-satunya titik potong l terhadap kurva, maka dapat didefinisikan P + Q = –R.

Sebagai ilustrasi untuk memperjelas definisi di atas maka diberikan contoh sebagai berikut :

(5)

Misalkan elliptic curves dengan persamaan y2 = x3 – x pada koordinat xy. Untuk mencari nilai P + Q, gambar garis melalui P dan Q, nilai P + Q merupakan titik yang simetris (terhadap koordinat x) terhadap titik ketiga di mana garis yang melalui P dan Q memotong kurva tersebut. Jika P dan Q sama dan dicari nilai 2P, maka gambar garis tangent di P terhadap kurva, nilai 2P merupakan titik yang simetris terhadap titik ketiga di mana garis tangent memotong kurva.

Operasi Penjumlahan dan Perkalian pada Elliptic curves

Operasi penjumlahan pada elliptic curves disebut tangent and chord method. Operasi tersebut dapat dijabarkan sebagai berikut misalkan (x1, y1), (x2,

y2), dan (x3, y3) melambangkan koordinat P, Q dan P + Q. (x3, y3) akan

dinotasikan dalam x1, y1, x2, y2. Pada kasus 3) definisi P + Q, misalkan y = ∝x + β

merupakan persamaan garis yang melalui P dan Q dan bukan merupakan garis vertikal pada kasus 3. maka didapatkan ∝ = (y2 – y1)/( x2 – x1), dan β = y1 – ∝x1.

Suatu titik pada l , yaitu (x, ∝x + β), terletak pada kurva jika dan hanya jika (∝x + β)2 = x3 + ax + b. Maka hanya akan terdapat satu titik potong untuk setiap akar persamaan kubik x3 + (∝x + β)2 + ax + b. Telah diketahui terdapat dua akar yaitu x1 dan x2, karena (x1, ∝x1 + β) dan (x2, ∝x2 + β) merupakan titik P dan Q pada

kurva seperti yang telah dimisalkan di awal. Karena jumlah dari akar polynomial monik sama dengan negatif koefisien dari pangkat kedua tertinggi, maka dapat disimpulkan x3 = ∝2 – x1 – x2. Sehingga didapat persamaan untuk P + Q = (x3, –

(6)

x3 = 2 1 2 1 2       − − x x y y – x1 – x2; y3 = – y1 + 2 1 2 1 2       − − x x y y

(

)

3 1 x x −

Pada kasus 5) di mana P = Q, persamaan yang didapatkan hampir mirip

hanya saja ∝ diganti dengan turunan dx dy

di P. Turunan dari persamaan (1) y2 = x3

+ ax + b didapatkan formula

α

=       + 1 2 1 2 3 y a x

. Perhitungannya adalah sebagai

berikut : y2 = x3 +ax + b 2y dx dy = 3x2 dx dy + a dx dy + 0;

Dari perhitungan di atas didapatkan nilai α sehingga formula untuk mencari nilai 2P adalah sebagai berikut :

x3 = 2 2 2 3       + y a x – x1 – x2; y3 = – y1 + 2 2 2 3       + y a x

(

)

3 1 x x −

Contoh perhitungan untuk memperjelas ilustrasi di atas adalah sebagai berikut : Misalkan pada persamaan elliptic curves y2 = x3 – 36x, P = (–3, 9) dan Q = (–2, 8) merupakan titik-titik yang terdapat dalam persamaan tersebut. Akan dicari P + Q dan 2P, proses yang dilakukan :

(4)

(7)

a) P + Q

Substitusikan x1 = –3, y1 = 9, x2 = –2, y2 = 8 pada persamaan (4)

menghasilkan x3 = 6. Sedangkan persamaan kedua didapat y3 = 0.

x3 = 2 ) 3 ( 2 9 8       − − − − – (–3) – (–2); x3 = 6; y3 = – 9 + 2 ) 3 ( 2 9 8       − − − − (– 3 – 6) y3 = 0. Jadi nilai P + Q = (6, 0). b) 2P

Substitusikan x1 = –3, y1 = 9, a = –36 pada persamaan (5) yang

menghasilkan x3 = 4 25 dan y3 = 8 35 − . x3 = 2 2 ) 9 ( 2 ) 36 ( ) 3 ( 3       − + − – 2 (–3); x3 = 4 25 ; y3 = – 9 + 2 2 ) 9 ( 2 ) 36 ( ) 3 ( 3       − + − (– 3 – 4 25 ) y3 = 8 35 −

Jadi didapatkan nilai 2P = ( 4 25 , 8 35 − ).

(8)

Perkalian dalam elliptic curves dinotasikan sebagai nP , yang didefinisikan sama seperti group abelian lain, yaitu menambahkan P sebanyak n kali pada titik itu sendiri jika n positif atau menambahkan –P pada dirinya sendiri sebanyak n

kali jika n negatif.

Point at Infinity (Titik di Tak Terhingga)

Point at infinity, seperti yang telah dijelaskan pada definisi 1) merupakan elemen identitas untuk operasi penjumlahan dalam group yang dibentuk oleh titik-titik yang terletak pada kurva. Titik ini dilambangkan dengan OE. Titik ini

merupakan titik perpotongan sebarang garis vertikal dengan kurva, yaitu garis vertikal yang melalui (x1, y1) dan (x1, – y1).

Gambar 4 Elliptic curves dan operasi penjumlahan P1 + P2 (P1 ≠ P2)5

5

(9)

3. Persamaan Elliptic curves yang Terdefinisi dalam Finite Field

Misalkan k merupakan finite field Fq dengan q = pr anggota atau q

merupakan bilangan prima, E merupakan persamaan elliptic curves yang terdefinisi dalam Fq, P dan Q titik-titik pada elliptic curves. Persamaan elliptic

curves yang terdefinisi dalam finite field juga memenuhi persyaratan 4a3 + 27b2 (mod q) ≠ 0. Titik-titik pada elliptic curves ini membentuk group modulus q, dengan q merupakan pangkat bilangan prima atau bilangan prima.

Jumlah titik yang terdapat pada persamaan elliptic curves yang terdefinisi dalam finite field harus memenuhi Teorema Hasse.

Teorema 2. (Hasse 6) : Misalkan N merupakan jumlah titik pada elliptic curves yang terdefinisi dalam Fq, maka :

N−(q+1) ≤2 q

atau dapat ditulis dalam bentuk lain sebagai berikut:

q q N q q+1−2 ≤ ≤ +1+2

{Pembuktian dari teorema di atas dapat dilihat di lampiran.} Menghitung Jumlah Titik pada Elliptic curves

Perhitungan titik pada elliptic curves dengan persamaaan y2 = x3 +ax + b secara sederhana dapat dijelaskan sebagai berikut :

a. Untuk setiap x di mana 0 ≤ x < N , hitung nilai x3 + ax + b (mod N).

6

N. Koblitz, A Course in Number Theory and Cryptography, Second Edition, Springer Verlag, New York, 1994,

(10)

b. Setiap hasil yang didapat dari langkah selanjutnya, periksa apakah hasil tersebut mempunyai akar kuadrat modulo N. Jika tidak terdapat hasil tersebut maka tidak ada titik dengan nilai x pada EN . Sebaliknya jika

ada, maka akan ada dua nilai y yang memenuhi persamaan tersebut (kecuali nilai y yang tunggal yaitu 0). Titik (x, y) tersebut merupakan titik pada persamaan elliptic curves.

ELLIPTIC CURVE EL GAMAL CRYPTOSYSTEM (ECELG) Algoritma Pembangkit Kunci Untuk ECELG :

1. Generate bilangan prima besar p dan α dari grup perkalian Zp dari bilangan

integer modulo p.

2. Pilih sebuah bilangan acak integer a dimana 1 ≤ a ≤ p-2 dan hitung β = aα mod p

3. Kunci publik (p, α, aα). Kunci privat : a.

Algoritma Penyandian :

1. Diketahui public key (p, α, aα).

2. Ubah pesan m ke dalam titik-titik dalam elliptic curve dengan range {0, 1, ..., p-1}.

3. Pilih bilangan integer secara acak k, dimana 1 ≤ k ≤ p-2. 4. Operasi Enkripsi : eK(m,k) = (γ, δ) = (kα, m+kβ), dimana :

(11)

δ = (m+kβ) mod p

Algoritma Pembukaan :

1. Diketahui public key (p, α, aα).

2. Operasi Dekripsi : dK(γ, δ) = (δ - aγ) mod p.

MENEZES-VANSTONE ELLIPTIC CURVE CRYPTOSYSTEM

E : elliptic curve yang didefinisikan pada Zp (p>3, prima) ∋ E berisi sebuah cyclic

subgrup H dimana masalah discrete logaritmanya sulit dipecahkan. * * p p xZ Z = ℘ * * p p

x

Z

Z

x

E

C =

K = {(E, α, a, β) : β = aα}, dimana α∈E. Kunci publik : α, β.

Kunci privat : a.

K = (E, α, a, β), pilih bilangan random secret k∈ZH, dan untuk m = (m1,

m2)∈

* *

p

p xZ

Z , dimana m bukan titik di E, definisikan : eK(m,k) = (y0, y1, y2), dimana : y0 = kα (c1, c2) = kβ y1 = c1x1 mod p y2 = c2x2 mod p Dekripsi :

(12)

y = (y0, y1, y2), definisikan :

Gambar

Gambar 4 Elliptic curves dan operasi penjumlahan P 1  + P 2   (P 1  ≠ P 2 ) 5

Referensi

Dokumen terkait

pada case yang berbeda tidak akan terbentuk untuk kedua kalinya. Kode Sumber 4.9 Memodelkan Model Bisnis Proses dari Event Log Setelah kita mendapatkan model yang berupa

Tujuan penelitian ini adalah untuk mengetahui berita politik di harian pagi Riau Pos pengaruh terhadap pembentukan opini kader HMI di lingkungan UIN Suska Riau1. Penulis

Bahan yang digunakan adalah biji kopi Fine Robusta Toyomerto yang diperoleh dari Reog Coffee Ponorogo, minyak biji kopi hasil ekstraksi, minyak lemon dan minyak

Dalam akuntansi metode pembelian, perusahaan harus mengakui nilai pasar wajar aset berwujud dan aset tak berwujud yang diperoleh dalam neracanya yang diakui bersamaan

mixer yang biasanya digunakan untuk cairan dengan viskositas

Kemukakan tujuan yang akan dicapai secara spesifik yang merupakan kondisi baru yang diharapkan terwujud setelah kegiatan pengabdian kepada masyarakat selesai (tujuan

Permasalahan kurangnya pemahaman/pengetahuan masyarakat terkait bahaya sampah terhadap lingkungan dan kesehatan masyarakat, belum dimilikinya kemampuan/ skill dalam

Kendatipun para kontributor artikel ini menyatakan diri tidak mewakili pandangan NU secara organisasional, namun sebagai pandangan personal, baik sebagai kalangan NU maupun dari