RSA: Perbedaan antara revisi
Konten dihapus Konten ditambahkan
k Bot melakukan perubahan kosmetika |
Fitur saranan suntingan: 3 pranala ditambahkan. |
||
(33 revisi perantara oleh 23 pengguna tidak ditampilkan) | |||
Baris 1:
{{terjemah|Inggris}}
'''RSA (Rivest–Shamir–Adleman)''' di bidang [[kriptografi]] adalah sebuah [[
== Sejarah RSA ==
Algortima RSA dijabarkan pada tahun [[1977]] oleh tiga orang
[[Clifford Cocks]], seorang matematikawan [[Inggris]] yang bekerja untuk [[GCHQ]], menjabarkan tentang sistem
== Operasional ==
===
Semisal Alice berkeinginan untuk mengizinkan Bob untuk mengirimkan kepadanya sebuah pesan pribadi (''private message'') melalui media transmisi yang tidak aman (''insecure''). Alice melakukan langkah-langkah berikut untuk membuat pasangan [[kunci (kriptografi)|kunci]] ''public key'' dan ''private key'':
# Pilih dua [[bilangan prima]] ''p'' ≠ ''q'' secara acak dan terpisah untuk tiap-tiap ''p'' dan ''q''. Hitung ''N'' = ''p q''. ''N'' hasil perkalian dari ''p'' dikalikan dengan ''q''.
# Hitung φ = (''p''-1)(''q''-1).
# Pilih [[bilangan bulat]] (''integer'') antara satu dan φ (1 < ''e'' < φ) yang juga merupakan [[
# Hitung ''d'' hingga ''d e'' ≡ 1 (mod φ).
* bilangan prima dapat diuji [[probabilitas]]nya menggunakan ''[[Fermat's little theorem]]''- a^(n-1) mod n = 1 jika n adalah bilangan prima, diuji dengan beberapa nilai a menghasilkan kemungkinan yang tinggi bahwa n ialah bilangan prima. ''
* langkah 3 dan 4 dapat dihasilkan dengan
* langkah 4 dapat dihasilkan dengan menemukan integer ''x'' sehingga ''d'' = (''x''(''p''-1)(''q''-1) + 1)/''e'' menghasilkan bilangan bulat, kemudian menggunakan nilai dari ''d'' (mod (''p''-1)(''q''-1));
* langkah 2 PKCS#1 v2.1 menggunakan &lamda; = lcm(''p''-1, ''q''-1) selain daripada φ = (''p''-1)(''q''-1)).
Baris 37:
Bentuk ini membuat proses dekripsi lebih cepat dan ''signing'' menggunakan [[Chinese Remainder Theorem]] (CRT). Dalam bentuk ini, seluruh bagian dari ''private key'' harus dijaga kerahasiaannya.
Alice mengirimkan ''public key'' kepada Bob, dan tetap merahasiakan ''private key'' yang digunakan. ''p'' dan ''q'' sangat sensitif dikarenakan merupakan [[faktorial]] dari ''N'', dan membuat perhitungan dari ''d'' menghasilkan ''e''. Jika ''p'' dan ''q'' tidak disimpan dalam bentuk CRT dari ''private key'', maka ''p'' dan ''q'' telah terhapus bersama nilai-nilai lain dari proses pembangkitan kunci.
=== Proses enkripsi pesan ===
Baris 44:
Maka Bob memiliki ''n'' dan mengetahui ''N'' dan ''e'', yang telah diumumkan oleh Alice. Bob kemudian menghitung ''ciphertext'' ''c'' yang terkait pada ''n'':
: <math> c = n^e \mod{N}</math>
Perhitungan tersebut dapat diselesaikan dengan cepat menggunakan metode ''
=== Proses dekripsi pesan ===
Alice menerima ''c'' dari Bob, dan mengetahui ''private key'' yang digunakan oleh Alice sendiri. Alice kemudian memulihkan ''n'' dari ''c'' dengan langkah-langkah berikut:
: <math>n = c^d \mod{N}</math>
Perhitungan
Prosedur dekripsi bekerja karena
: <math>c^d \equiv (n^e)^d \equiv n^{ed} \pmod{N}</math>.
Kemudian, dikarenakan ''ed'' ≡ 1 (mod p-1) dan ''ed'' ≡ 1 (mod q-1), hasil dari ''[[Fermat's little theorem]]''.
: <math>n^{ed} \equiv n \pmod{p}</math>
dan
: <math>n^{ed} \equiv n \pmod{q} </math>
Dikarenakan ''p'' dan ''q'' merupakan bilangan prima yang berbeda, mengaplikasikan
: <math>n^{ed} \equiv n \pmod{pq}</math>.
Baris 97:
:decrypt(855) = 855<sup>2753</sup> mod 3233 = 123
Kedua perhitungan
=== ''Padding schemes'' ===
''[[Padding Scheme]]'' harus dibangun secara hati-hati sehingga tidak ada nilai dari ''m'' yang menyebabkan masalah keamanan. Sebagai contoh, jika kita ambil contoh sederhana dari penampilan [[ASCII]] dari ''m'' dan menggabungkan [[bit|bit-bit]] secara bersama-sama akan menghasilkan ''n'', kemudian
== Pengesahan pesan ==
Baris 108:
== Keamanan ==
Penyerangan yang paling umum pada RSA ialah pada penanganan masalah [[faktorisasi]] pada bilangan yang sangat besar. Apabila terdapat faktorisasi metode yang baru dan cepat telah dikembangkan, maka ada kemungkinan untuk membongkar RSA.
Pada tahun [[2005]], bilangan faktorisasi terbesar yang digunakan secara umum ialah sepanjang 663 bit, menggunakan metode distribusi mutakhir. Kunci RSA pada umumnya sepanjang 1024—2048 bit. Beberapa pakar meyakini bahwa kunci 1024-bit ada kemungkinan dipecahkan pada waktu dekat (hal ini masih dalam perdebatan), tetapi tidak ada seorangpun yang berpendapat kunci 2048-bit akan pecah pada masa depan yang terprediksi.
Semisal Eve, seorang ''eavesdropper'' (pencuri dengar—penguping), mendapatkan ''public key'' ''N'' dan ''e'', dan ''ciphertext'' ''c''. Bagimanapun juga, Eve tidak mampu untuk secara langsung memperoleh ''d'' yang dijaga kerahasiannya oleh Alice. Masalah untuk menemukan ''n'' seperti pada ''n<sup>e</sup>=c'' mod N di kenal sebagai permasalahan RSA.
Cara paling efektif yang ditempuh oleh Eve untuk memperoleh ''n'' dari ''c'' ialah dengan melakukan faktorisasi ''N'' kedalam ''p'' dan ''q'', dengan tujuan untuk menghitung (''p''-1)(''q''-1) yang dapat menghasilkan ''d'' dari ''e''. Tidak ada metode waktu polinomial untuk melakukan faktorisasi pada bilangan bulat berukuran besar di komputer saat ini, tapi hal tersebut pun masih belum terbukti.
Baris 123:
Jika ''N'' sepanjang 512-bit atau lebih pendek, ''N'' akan dapat difaktorisasi dalam hitungan ratusan jam seperti pada tahun [[1999]]. Secara teori, [[perangkat keras]] bernama [[TWIRL]] dan penjelasan dari Shamir dan Tromer pada tahun [[2003]] mengundang berbagai pertanyaan akan keamanan dari kunci 1024-bit. Santa disarankan bahwa ''N'' setidaknya sepanjang 2048-bit.
Pada thaun [[1993]], [[Peter Shor]] menerbitkan [[
== Pertimbangan praktis ==
===
Menemukan bilangan prima besar ''p'' dan ''q'' pada biasanya didapat dengan mencoba serangkaian bilangan acak dengan ukuran yang tepat menggunakan probabilitas bilangan prima yang dapat dengan cepat menghapus hampir semua bilangan bukan prima.
''p'' dan ''q'' seharusnya tidak "saling-berdekatan", agar [[faktorisasi fermat]] pada ''N'' berhasil. Selain itu pula, jika ''p''-1 atau ''q''-1 memeiliki faktorisasi bilangan prima yang kecil, ''N'' dapat difaktorkan secara mudah dan nilai-nilai dari ''p'' atau ''q'' dapat diacuhkan.
Seseorang seharusnya tidak melakukan
Sangatlah penting bahwa kunci rahasia ''d'' bernilai cukup besar, Wiener menunjukkan pada tahun [[1990]] bahwa jika ''p''
Kunci enkripsi ''e'' = 2 sebaiknya tidak digunakan.
=== Kecepatan ===
RSA memiliki kecepatan yang lebih lambat dibandingkan dengan [[DES]] dan [[
Prosedur ini menambah permasalahan akan keamanan. Singkatnya, Sangatlah penting untuk menggunakan pembangkit bilangan acak yang kuat untuk kunci simetrik yang digunakan, karena Eve dapat melakukan ''bypass'' terhadap RSA dengan menebak kunci simterik yang digunakan.
=== Distribusi kunci ===
Sebagaimana halnya ''cipher'', bagaimana ''public key'' RSA didistribusi menjadi hal penting dalam keamanan. Distribusi kunci harus aman dari ''[[man-in-the-middle attack]]'' (''penghadang-
=== Penyerangan waktu ===
Kocher menjelaskan sebuah serangan baru yang cerdas pada RSA
=== Penyerangan ''ciphertext'' adaptive ===
Baris 155 ⟶ 154:
== Lihat pula ==
* [[Kriptografi Quantum]]
* [[MD5]]
== Pranala luar ==
* {{en}} [http://www.rsasecurity.com/rsalabs/node.asp?id=2125 PKCS #1: Standar Kriptografi RSA] {{Webarchive|url=https://web.archive.org/web/20051029040347/http://rsasecurity.com/rsalabs/node.asp?id=2125 |date=2005-10-29 }} (website [[Laboratorium RSA]])
* {{en}} [http://theory.lcs.mit.edu/~rivest/rsapaper.pdf Metode untuk mendapatkan ''Digital Signature'' dan ''Public Key Cryptosystems''] {{Webarchive|url=https://web.archive.org/web/20070127130201/http://theory.lcs.mit.edu/~rivest/rsapaper.pdf |date=2007-01-27 }}, R. Rivest, A. Shamir, L. Adleman, Komunikasi ACM, Seri. 21 (2), 1978, halaman
* {{en}} [http://www.devhood.com/tutorials/tutorial_details.aspx?tutorial_id=544&printer=t Pengenalan tentang RSA ''Cryptosystem''] {{Webarchive|url=https://web.archive.org/web/20050504064303/http://www.devhood.com/tutorials/tutorial_details.aspx?tutorial_id=544&printer=t |date=2005-05-04 }}, M. Griep, Okt. 2002,
[[Kategori:Kriptografi]]
|