Back to IF4020 Kriptografi

Kurva Eliptik dan Operasi Titik

Questions/Cues

  • Mengapa dibutuhkan ECC jika sudah ada RSA, ElGamal, dan Diffie-Hellman?
  • Seperti apa persamaan kurva eliptik dan apa syarat nonsingular-nya?
  • Bagaimana penjumlahan dan penggandaan dua titik dihitung (geometri dan analitik)?
  • Mengapa titik-titik kurva membentuk grup abelian dan apa itu titik di infinity?
  • Apa itu ECDLP dan mengapa ia menjadi dasar keamanan ECC?

Reference Points

  • IF4020 Kriptografi — Elliptic Curve Cryptography Bagian 2 (Slides 2-23)

Motivasi ECC

RSA, ElGamal, dan Diffie-Hellman memakai bilangan bulat sangat besar sehingga menyimpan kunci/pesan dan komputasinya mahal. ECC (Elliptic Curve Cryptography) menawarkan keamanan setara dengan kunci lebih pendek. ECC dikembangkan oleh Neal Koblitz dan Victor S. Miller (1985). Klaim klasiknya: kunci ECC 160-bit setara keamanan RSA 1024-bit; memori dan komputasi lebih sedikit sehingga cocok untuk piranti nirkabel dengan prosesor, memori, dan baterai terbatas.

Kurva Eliptik

Kurva eliptik (bentuk Weierstrass pendek) berpersamaan

Syarat menjamin kurva tidak singular (tak punya titik runcing/berpotongan sendiri; tak punya akar kembar). Tiap pasangan memberi kurva berbeda. Contoh: . Titik pada kurva bersama sebuah titik di infinity (titik khusus ) membentuk himpunan .

Penjumlahan Titik

Geometri: tarik garis melalui dan ; garis memotong kurva di titik ketiga ; cerminkan terhadap sumbu- untuk mendapat . Jika maka .

Analitik ():

Contoh: kurva , , . ; ; . Jadi . Periksa: ✓.

Invers dan Titik di Infinity

: garis vertikal tidak memotong kurva di titik ketiga (atau memotong di infinity). Maka adalah elemen netral () dan adalah invers .

Penggandaan Titik

Menjumlahkan titik dengan dirinya sendiri: garis yang dipakai adalah garis singgung di .

Bila garis singgung vertikal ( tak terdefinisi) sehingga .

Pelelaran dan Perkalian Titik

Pelelaran titik: ( suku). Perkalian skalar dihitung dengan mengulang dua operasi dasar (penjumlahan dan penggandaan), mis. dan

yaitu algoritma double-and-add ( langkah, bukan langkah).

Kurva Eliptik Membentuk Grup Abelian

Dengan = semua titik kurva (plus ) dan operasi , terpenuhi: closure (hasil selalu titik kurva), asosiatif, elemen netral , invers , dan komutatif . Jadi adalah grup abelian: inilah alasan struktur ini cocok untuk kriptografi.

ECDLP: Dasar Keamanan ECC

Menghitung mudah, tetapi bila diketahui dan , mencari sulit. Inilah Elliptic Curve Discrete Logarithm Problem (ECDLP): diberikan titik dan , carilah integer sehingga . Pada ECC, adalah kunci publik, kunci privat, dan sembarang titik (titik basis). Bandingkan dengan RSA yang operasi dasarnya perpangkatan: pada ECC operasi dasarnya perkalian titik .

flowchart LR
    K["k (privat)<br/>+ titik basis P"] -->|"mudah: kP<br/>double-and-add"| Q["Q = kP<br/>(publik)"]
    Q -.->|"sulit: ECDLP<br/>cari k dari P, Q"| K

Summary

ECC (Koblitz dan Miller, 1985) memberi keamanan setara RSA dengan kunci jauh lebih pendek (ECC 160-bit RSA 1024-bit). Kurva eliptik dengan plus titik di infinity membentuk grup abelian terhadap penjumlahan titik: garis melalui memotong kurva di , lalu dicerminkan menjadi (, , ). Penggandaan memakai garis singgung (), adalah netral, adalah invers, dan perkalian skalar dihitung dengan double-and-add. Keamanan ECC bertumpu pada ECDLP: mudah dihitung, tetapi sulit ditemukan dari dan .