View
131
Download
5
Category
Preview:
DESCRIPTION
ENKRIPSI DAN DEKRIPSI DATA MENGGUNAKAN ALGORITMA ElGamal ECC ( ElGamal ELLIPTIC CURVE CRYPTOGRAPHY ). WAN KHUDRI M0198088. FAKULTAS MIPA JURUSAN MATEMATIKA. LATAR BELAKANG. Seni dan ilmu pengetahuan untuk menjaga keamanan informasi. CRYPTOGRAPHY. CRYPTOGRAPHY. ENKRIPSI. DEKRIPSI. - PowerPoint PPT Presentation
Citation preview
ENKRIPSI DAN DEKRIPSI DATA MENGGUNAKAN ALGORITMA ElGamal ECC(ElGamal ELLIPTIC CURVE CRYPTOGRAPHY)
WAN KHUDRIM0198088
FAKULTAS MIPA JURUSAN MATEMATIKA
DEKRIPSIENKRIPSI
LATAR BELAKANG
CRYPTOGRAPHYSeni dan ilmu pengetahuan untuk menjaga keamanan informasi
CRYPTOGRAPHY
Teknik untuk membuat informasi yang dapat dibaca (plaintext) menjadi kode-kode tertentu (chipertext)
Teknik untuk mengembalikan chipertext menjadi plaintext
LATAR BELAKANG
ALGORITMA CRYPTOGRAPHYJenis Kuncinya
ALGORITMA SIMETRI( KONVENSIONAL )
ALGORITMA ASIMETRI( PUBLIC KEY ALGORITHM )
=Kunci Enkripsi
Kunci Dekripsi
Secret Key
Kunci Enkripsi
Kunci Dekripsi
Public Key Private Key
LATAR BELAKANG
ALGORITMA CRYPTOGRAPHYJenis Kuncinya
ALGORITMA SIMETRI( KONVENSIONAL )
ALGORITMA ASIMETRI( PUBLIC KEY ALGORITHM )
=Kunci Enkripsi
Kunci Dekripsi
Secret Key
Kunci Enkripsi
Kunci Dekripsi
Public Key Private Key
ENKRIPSI DEKRIPSI
SECRET KEY
ALGORITMA CRYPTOGRAPHYJenis Kuncinya
ALGORITMA SIMETRI( KONVENSIONAL )
PENGIRIM PENERIMA
ENKRIPSI DEKRIPSI
PUBLIC KEY
ALGORITMA CRYPTOGRAPHYJenis Kuncinya
ALGORITMA ASIMETRI( PUBLIC KEY ALGORITHM )
PENGIRIM PENERIMA
PRIVATE KEY
LATAR BELAKANG
PUBLIC KEY ALGORITHMPermasalahan Matematis
I F P
Diketahuin: Bilangan Bulat
n = p.qp dan q: Bilangan prima
Find p dan q
Aritmetika Modular
Diketahuip: Bilangan Prima
g : 0 < g < p-1y = gx ( mod p )
Find x
Aritmetika Kurva Elliptic
Diketahuip: Bilangan Prima
P(xp,yp) titik kurva ellipticQ(xq,yq) titik kurva elliptic
Q = V.P
Find V
D L P E C D L P
Contohnya
RSA
Contohnya
ElGamal ECC,
ECDSA
Contohnya
ElGamal, DSA
PEMBAHASANDEFINISI ARITMETIKA KURVA ELLIPTIC
Misalkan P(xp,yp) dan Q(xq,yq) adalah titik kurva elliptic dalam grup elliptic
Ep(A,B). O adalah point at infinity dan persamaan kurva elliptic-nya adalah
y2 = x3+Ax+B (mod p), dengan p prima.
1. P + O = O + P = P.
2. Jika xq = xp dan yq = - yp sehingga P = (xp,yp) dan Q = (xq,yq)=(xp,-yp),
maka P+Q=P+(-P)=O. Titik Q adalah negatif dari P atau ditulis –P.
3. Jika Q ≠ -P maka penjumlahan P+Q=R=(xR , yR) diperoleh dengan cara
xR = 2 – xp – xq (mod p) dan yR = .(xp – xR ) – yp (mod p)
ElGamal ECC merupakan algoritma kriptografi kurva elliptic yang menggunakan
operasi aritmetika kurva elliptic. Menurut Stalling, definisi aritmetika kurva
elliptic atas Fp adalah
Δ
q p
q p
2p
p
y - y , untuk P Q
x - x=
3x + A , untuk P = Q
2y
4. Operasi perkalian didefinisikan sebagai operasi penjumlahan secara
berulang. Misalkan k bilangan bulat, P titik kurva elliptic, maka perkalian
skalar k.P = P + P + … + P ( penjumlahan P sebanyak k kali ).
PEMBAHASANParameter Domain Kriptografi Kurva Elliptic
Menurut Certicom, parameter-parameter domain kriptografi kurva elliptic
didefinisikan sebagai six-tuple T, yaitu T = ( p,Fp,A,B,GE,NG,h ).
p : bilangan prima
Fp : Lapangan berhingga prima yang memiliki p elemen. Fp={0,1,…,p-1}
A,B : koefisien persamaan kurva elliptic y2 = x3 + Ax + B (mod p)
GE : basic point, yaitu elemen pembangun grup elliptic Ep(A,B) atas Fp
NG : order basic point, yaitu bilangan bulat positip terkecil NG.GE = O
h: kofaktor, h= #E / NG, dengan #E adalah banyaknya titik dalam grup elliptic
PEMBAHASANALGORITMA ElGamal ECC
Ada 5 algoritma dalam ElGamal ECC, yaitu
1. Algoritma penentuan kunci
2. Algoritma representasi plaintext menjadi titik
3. Algoritma enkripsi
4. Algoritma dekripsi
5. Algoritma representasi titik menjadi plaintext
PEMBAHASAN
Algoritma Penentuan Kunci
Menentukan bilangan bulat V [ 1 , NG -1 ] secara random
Menghitung = V.GE
V adalah private key dan adalah public key
PEMBAHASAN
Algoritma Representasi Plaintext ke Titik
Diasumsikan Sj sebagai suatu bilangan bulat dalam Fp dan peluangsebuah bilangan random menjadi bilangan kuadrat adalah ½. Sehingga kemungkinan tidak menemukan sebuah bilangan kuadrat untuk‘e’ percobaan adalah 2-e . Berdasarkan asumsi-asumsi tersebut, maka langkah-langkah yang perludilakukan adalah
Merepresentasikan plaintext bilangan bulat m > 0Sedemikian sehingga m.e < p
Menghitung xj = m.e + j, untuk j [0,e-1] dan menghitung Sj = xj3 +Axj+B
sampai diperoleh Sj(p-1)/2 = 1 (mod p)
Menghitung yj , yaitu akar dari Sj
Titik PM = ( xj , yj ) adalah representasi dari plaintext
PEMBAHASAN
Algoritma Enkripsi ElGamal ECC
Misalnya titik PM adalah representasi dari plaintext.
Maka langkah-langkah yang perlu dilakukan dalam
proses enkripsi adalah
Mendapatkan public key Penerima ( )
Memilih bilangan bulat k [ 1 , NG-1 ]
Menghitung P1 = k.GE dan P2 = PM + k.
PC = ( P1 , P2 ) adalah chipertext pair of points
PEMBAHASAN
Algoritma Dekripsi ElGamal ECC
Misalnya PC = ( P1,P2 ) adalah chipertext pair of points
Maka langkah-langkah yang perlu dilakukan dalam
proses dekripsi adalah
Mengalikan P1 dengan private key Penerima M1 = V.P1
Menghitung PM = P2 – M1 = P2 – V.P1
Titik PM adalah representasi dari plaintext
PEMBAHASAN
Algoritma Representasi Titik menjadi Plaintext
Diasumsikan bahwa PM = (xj , yj ) adalah representasi plaintext.
Langkah-langkah untuk mendapatkan plaintext adalah
Menghitung
Mengubah m menjadi plaintext
jxm
e
PEMBAHASAN
Algoritma Perkalian Skalar Kurva Elliptic
IMPLEMENTASI ElGamal ECC
Binary Algorithm Addition-SubtractionAlgorithm
Repeated-DoublingAlgorithm
Algoritma perkalian skalar yang paling efisienMenurut Doraiswamy et.al serta Dahab dan Lopez
IMPLEMENTASI ElGamal ECCpada Software Matlab
Ada 44 Function
13 Function telah disediakan dalam Matlab
31 Function dibuat sendiri
Ada 44 Function
13 Function telah disediakan dalam Matlab
31 Function dibuat sendiri
PROGRAMPENENTUAN KUNCI
PROGRAM ENKRIPSIElGamal ECC
PROGRAM DEKRIPSIElGamal ECC
7 Function aritmetika modulo
5 Function aritmetika kurva elliptic
19 Function ElGamal ECC
7 Function aritmetika modulo
5 Function aritmetika kurva elliptic
19 Function ElGamal ECC
PROGRAM PENENTUAN KUNCI
nkunci Input panjang kunci
T Parameter domain ECC
V Private key
Public key
T eccparameter
V eccprivkey
eccpubkey
OUTPUT: T, V dan
PROGRAM ENKRIPSI ElGamal ECC
( p,A,B,GE,NG ) Input parameter domain Input Public keye Banyaknya percobaan representasipesan Plaintext
m eccplain2numPM eccnum2titik
PC Enkripsi ElGamal ECCPM eccnum2titik
PC eccenk
m eccplain2num
lpesan Panjang pesannkunci panjang kunci
bpesan ceil((nkunci/8)-1)ipesan ceil(lpesan/bpesan)
If ipesan>bpesan
Output PC
For i <= ipesan
No
Yes
i > ipesan
i <= ipesan
PROGRAM DEKRIPSI ElGamal ECC
(p,A) Input parameter domainV Input Private keye Banyaknya percobaan representasiPC Chipertext pair of points
PM Dekripsi ElGamal ECC
m Titik ke numerik
psn Numerik ke plaintext
m ecctitik2num
psneccnum2plain
PM eccdek
Output psn
PENUTUP
Kesimpulan
Jika panjang kunci ’nkunci’ bit maka plaintext dipotong untuk setiap
karakter. Setiap potongan plaintext direpresentasikan menjadi titik kurva elliptic
(PM) dan dienkripsi menggunakan public key penerima ( ) dengan memilih bilangan bulat k, sehingga menghasilkan chipertext pair of points (PC).
Untuk mendapatkan plaintext, penerima perlu mendekripsi chipertext pair of points (PC) menggunakan private key miliknya (V) dan dihasilkan titik kurva elliptic PM.
PM = P2 – V.P1. Kemudian mengembalikan representasi titik kurva elliptic menjadi
plaintext.
18
nkunci
11 2
2
. .( , ) ( . , . )
. E
C E MM
P k GP P P k G P k
P P k
PENUTUP
Saran Implementasi ElGamal ECC pada kurva elliptic,lapangan
dan software yang berbeda. Melakukan penelitian tentang algoritma yang paling
efisien untuk memecahkan ECDLP seperti pollard’s rho atau yang lainnya.
Melakukan penelitian tentang tanda tangan digital dan protokol pertukaran kunci, seperti ECDSA, Diffie-Hellman EC.
Implementasi gabungan skema enkripsi, tanda tangan digital dan protokol pertukaran kunci dalam skala sistem yang lebih luas, seperti internet banking, transaksi online, lembaga intelijen, militer dan sebagainya.
Recommended