    {"id":2443,"date":"2023-05-28T08:59:20","date_gmt":"2023-05-28T08:59:20","guid":{"rendered":"https:\/\/student-activity.binus.ac.id\/csc\/?p=2443"},"modified":"2024-07-17T12:35:49","modified_gmt":"2024-07-17T12:35:49","slug":"2443","status":"publish","type":"post","link":"https:\/\/student-activity.binus.ac.id\/csc\/2023\/05\/2443\/","title":{"rendered":"Rivest Shamir Adleman (RSA)"},"content":{"rendered":"<p style=\"text-align: center\"><span style=\"font-weight: 400\">RSA<\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-2445 aligncenter\" src=\"http:\/\/student-activity.binus.ac.id\/csc\/wp-content\/uploads\/sites\/37\/2023\/05\/1.Thumbnail-1.jpg\" alt=\"\" width=\"657\" height=\"359\" \/><\/p>\n<p style=\"text-align: justify\"><span style=\"font-weight: 400\"><strong>Rivest Shamir Adleman<\/strong> (RSA) adalah sebuah jenis algoritma <\/span><em><span style=\"font-weight: 400\">asymmetric encryption <\/span><\/em><span style=\"font-weight: 400\">yang diambil dari nama penciptanya Ron Rivest, Adi Shamir dan Leonard Adleman pada tahun 1977 dengan menggunakan konsep faktorisasi bilangan bulat besar.<\/span><\/p>\n<p style=\"text-align: justify\"><span style=\"font-weight: 400\">RSA menerapkan konsep <\/span><em><span style=\"font-weight: 400\">private key<\/span><\/em><span style=\"font-weight: 400\"> dan <\/span><em><span style=\"font-weight: 400\">public key<\/span><\/em><span style=\"font-weight: 400\">. <\/span><em><span style=\"font-weight: 400\">Private key<\/span><\/em><span style=\"font-weight: 400\"> digunakan untuk dekripsi data yang telah dienkripsi dengan kunci publik yang sesuai sedangkan Kunci publik digunakan untuk enkripsi data. Kunci publik dapat dengan aman dibagikan kepada siapa pun tanpa membahayakan keamanan data, sementara kunci privat harus tetap dirahasiakan oleh pemiliknya.<\/span><\/p>\n<p style=\"text-align: justify\"><span style=\"font-weight: 400\">Prinsip utama dibalik keamanan RSA adalah kesulitan dalam <\/span><b>memfaktorkan<\/b><span style=\"font-weight: 400\"> bilangan semi prima yang sangat besar menjadi faktor prima. Algoritma ini bergantung pada kesulitan faktorisasi ini untuk menjaga kerahasiaan kunci privat. Dalam implementasi praktisnya, panjang kunci RSA diukur dalam bit, dan semakin panjang kunci, semakin sulit untuk memecahkannya. Masih belum terbayang? Mari bahas lebih detail.<\/span><\/p>\n<p style=\"text-align: justify\"><span style=\"font-weight: 400\">RSA memiliki berbagai aplikasi, termasuk enkripsi komunikasi data, tanda tangan digital, autentikasi pengguna, dan keamanan data secara umum.<\/span><\/p>\n<p style=\"text-align: justify\"><span style=\"font-weight: 400\">\u00a0<\/span><\/p>\n<p style=\"text-align: justify\"><span style=\"font-weight: 400\">Glosarium:<\/span><\/p>\n<p style=\"text-align: justify\"><span style=\"font-weight: 400\">Faktorisasi adalah suatu proses menguraikan bilangan matematika menjadi faktor-faktor yang memperoleh hasil perkalian yang sesuai. Kalau faktor-faktor itu dikalikan dan menghasilkan hasil sesuai dengan faktorisasi maka bilangan-bilangan tersebut merupakan hasil faktorisasi, sebagai contoh 12 faktornya 1, 12, 2, 6, 3, 4.<\/span><\/p>\n<p style=\"text-align: justify\"><span style=\"font-weight: 400\">Bilangan prima adalah suatu bilangan yang lebih besar dari satu dan hanya memiliki 2 faktor yang positif yaitu 1 dan dirinya sendiri. Artinya bilangan ini tidak boleh habis dibagi bilangan lainnya. Contoh bilangan prima 2,3,5,7,13,17, 29.<\/span><\/p>\n<p style=\"text-align: justify\"><span style=\"font-weight: 400\">Bilangan semi-prima adalah suatu bilangan yang faktor-faktornya adalah 2 buah bilangan prima, dan faktor-faktor-nya ini tidak dapat dipecahkan lagi. Atau gampangnya perkalian 2 buah bilangan prima menghasilkan bilangan semi-prima.<\/span><\/p>\n<p style=\"text-align: justify\"><span style=\"font-weight: 400\">Sebagai contoh 6 \u2192 2 x 3<\/span><\/p>\n<p style=\"text-align: justify\"><span style=\"font-weight: 400\">15 \u2192 3 x 5<\/span><\/p>\n<p style=\"text-align: justify\"><span style=\"font-weight: 400\">35 \u2192 5 x 7<\/span><\/p>\n<p style=\"text-align: justify\"><span style=\"font-weight: 400\">Modulus, adalah sebuah operasi yang hasil merupakan sisa pembagian 2 bilangan. Ditandai dengan tanda &#8216;mod&#8217; atau &#8216;%&#8217;<\/span><\/p>\n<p style=\"text-align: justify\"><span style=\"font-weight: 400\">Sebagai contoh 12%5 = 2, karena maksimal pembagian 12 menggunakan 5 adalah 10 sehingga menyisakan 2, 2 itu adalah yang disebut modulus.<\/span><\/p>\n<p style=\"text-align: justify\"><span style=\"font-weight: 400\">20%5 = 0, artinya 20 habis dibagi 5 artinya 5 adalah faktor dari 20.<\/span><\/p>\n<p style=\"text-align: justify\"><span style=\"font-weight: 400\">\u00a0<\/span><\/p>\n<p style=\"text-align: justify\"><span style=\"font-weight: 400\">Totient merujuk pada fungsi <\/span><em><span style=\"font-weight: 400\">totient Euler <\/span><\/em><span style=\"font-weight: 400\">pada matematika yang dinotasikan dengan \u03c6(n) atau phi(n), yang merupakan jumlah bilangan bulat positif yang lebih kecil dari n dan relatif prima dengan n. dalam menentukan totient dari bilangan semi-prima adalah dengan mengalikan kedua bilangan prima yang sudah dikurangi 1.<\/span><\/p>\n<p style=\"text-align: justify\"><span style=\"font-weight: 400\">\u00a0<\/span><\/p>\n<p style=\"text-align: justify\"><span style=\"font-weight: 400\">Dalam RSA, proses membuat key sebagai berikut:<\/span><\/p>\n<p style=\"text-align: justify\"><span style=\"font-weight: 400\">-Pilih 2 bilangan prima, misal 7 dan 19 anggap itu sebagai a dan b.<\/span><\/p>\n<p style=\"text-align: justify\"><span style=\"font-weight: 400\">-kalikan keduanya a*b \u21927\u221719=133\u2192semi-prime (anggap sebagai N).<\/span><\/p>\n<p style=\"text-align: justify\"><span style=\"font-weight: 400\">-kalkulasi totient \u2192 (a-1)\u2217(b-1)=6\u221718=108 anggap sebagai t.<\/span><\/p>\n<table>\n<tbody>\n<tr>\n<td><span style=\"font-weight: 400\">a<\/span><\/td>\n<td><span style=\"font-weight: 400\">7<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">b<\/span><\/td>\n<td><span style=\"font-weight: 400\">19<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">N<\/span><\/td>\n<td><span style=\"font-weight: 400\">133<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">t<\/span><\/td>\n<td><span style=\"font-weight: 400\">108<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><span style=\"font-weight: 400\">\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400\">Angka dalam membuat <\/span><strong><em>public key<\/em><\/strong> <span style=\"font-weight: 400\">ada syarat yang harus dipenuhi: (29) \u2192anggap sebagai c<\/span><\/p>\n<table>\n<tbody>\n<tr>\n<td><span style=\"font-weight: 400\">-harus bilangan prima<\/span><\/td>\n<td><span style=\"font-weight: 400\">(3)<\/span><\/td>\n<td><span style=\"font-weight: 400\">5<\/span><\/td>\n<td><strong>29<\/strong><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">-harus lebih kecil dari totient<\/span><\/td>\n<td><span style=\"font-weight: 400\">(3 &lt; 108)<\/span><\/td>\n<td><span style=\"font-weight: 400\">5 &lt; 108<\/span><\/td>\n<td><span style=\"font-weight: 400\">29 &lt; 108<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">-harus bukan merupakan faktor dari totient<\/span><\/td>\n<td><span style=\"font-weight: 400\">(108%3=0) <\/span><span style=\"font-weight: 400\">\u00a0<strong>tidak memenuhi<\/strong><\/span><\/td>\n<td><span style=\"font-weight: 400\">108%5 = 3<\/span><\/td>\n<td><span style=\"font-weight: 400\">108%29 = 21<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><span style=\"font-weight: 400\">\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400\">Angka untuk private key harus memenuhi syarat (41) anggap sebagai e<\/span><\/p>\n<table>\n<tbody>\n<tr>\n<td><span style=\"font-weight: 400\">Hasil dari perkalian private key dan public key<\/span><\/td>\n<td><strong>41<\/strong><span style=\"font-weight: 400\">*29 = 1189<\/span><\/td>\n<td><span style=\"font-weight: 400\">\u00a0<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">Lalu dibagi dengan totient<\/span><\/td>\n<td><span style=\"font-weight: 400\">1189 mod 108 = 1<\/span><\/td>\n<td><span style=\"font-weight: 400\">\u00a0<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">Sisanya harus 1<\/span><\/td>\n<td><span style=\"font-weight: 400\">1<\/span><\/td>\n<td><span style=\"font-weight: 400\">\u00a0<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><span style=\"font-weight: 400\">Dalam notasi matematika bisa dibuat seperti ini (D\u2217E)\u00a0 Mod T=1<\/span><span style=\"font-weight: 400\">\u00a0<\/span><\/p>\n<table>\n<tbody>\n<tr>\n<td><span style=\"font-weight: 400\">a<\/span><\/td>\n<td><span style=\"font-weight: 400\">7<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">b<\/span><\/td>\n<td><span style=\"font-weight: 400\">19<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">n<\/span><\/td>\n<td><span style=\"font-weight: 400\">133<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">t<\/span><\/td>\n<td><span style=\"font-weight: 400\">108<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">c<\/span><\/td>\n<td><span style=\"font-weight: 400\">29<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">e<\/span><\/td>\n<td><span style=\"font-weight: 400\">41<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">Message<\/span><\/td>\n<td><span style=\"font-weight: 400\">60<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">message<\/span><\/td>\n<td><span style=\"font-weight: 400\">65<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><span style=\"font-weight: 400\">\u00a0<\/span><\/p>\n<table>\n<tbody>\n<tr>\n<td><span style=\"font-weight: 400\">Kita sudah punya angka encryption, pakai itu terhadap algoritma <\/span><i><span style=\"font-weight: 400\">encryption <\/span><\/i><span style=\"font-weight: 400\">RSA<\/span><span style=\"font-weight: 400\"><br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-2448\" src=\"http:\/\/student-activity.binus.ac.id\/csc\/wp-content\/uploads\/sites\/37\/2023\/05\/Picture1.png\" alt=\"\" width=\"421\" height=\"29\" \/><\/span><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-2450\" src=\"http:\/\/student-activity.binus.ac.id\/csc\/wp-content\/uploads\/sites\/37\/2023\/05\/Picture3.png\" alt=\"\" width=\"293\" height=\"492\" \/><\/td>\n<td><span style=\"font-weight: 400\">Kita sudah punya angka decryption, pakai itu terhadap algoritma <\/span><i><span style=\"font-weight: 400\">decryption <\/span><\/i><span style=\"font-weight: 400\">RSA<\/span><\/p>\n<p><span style=\"font-weight: 400\"> <img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-2449\" src=\"http:\/\/student-activity.binus.ac.id\/csc\/wp-content\/uploads\/sites\/37\/2023\/05\/Picture2.png\" alt=\"\" width=\"416\" height=\"29\" \/><\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-2451\" src=\"http:\/\/student-activity.binus.ac.id\/csc\/wp-content\/uploads\/sites\/37\/2023\/05\/Picture4.png\" alt=\"\" width=\"291\" height=\"483\" \/><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">(60^29) mod 133 = 86<\/span><\/td>\n<td><span style=\"font-weight: 400\">(86^41) mod 133 = 60<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p style=\"text-align: justify\"><span style=\"font-weight: 400\">Dengan begitu hasil dari message dan cipher pasti akan sama<\/span><\/p>\n<p style=\"text-align: justify\"><span style=\"font-weight: 400\">Seberapa amankah RSA ini?<\/span><\/p>\n<p style=\"text-align: justify\"><span style=\"font-weight: 400\">Meskipun kita tau kalau RSA ini dibuat tahun 1977 atau sudah berusia kurang lebih 46 tahun, RSA masih dapat diandalkan untuk melakukan <em>encryption<\/em> dan <em>decryption<\/em> dimasa sekarang karena berdasarkan <em>Challenge<\/em> yang diberikan oleh RSA <em>laboratory<\/em>, terdapat 54 bilangan semi prima yang dibuat pada 1991 dan barang siapa yang berhasil memecahkan faktorisasi bilangan prima dari bilangan semi-prima tersebut akan mendapatkan imbalan uang.<em> Challenge<\/em> tersebut berakhir pada 2007 dan dari 54 soal bilangan semi-prima, yang hanya berhasil memecahkan menjadi bilangan prima cuma 12 soal. Terhitung per februari 2020, bertambah menjadi 23 soal yang berhasil dipecahkan. Dan faktorisasi tertingginya adalah 829 bits. Sedangkan <em>standard<\/em> RSA sekarang adalah 1024 bit, mungkin belum terbayang seberapa banyak, contoh soal diatas menggunakan bilangan semi prima 133 dengan kata lain kalau di konversi menjadi bit (bilangan biner) menjadi 8 bit<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;text-align: justify\"><span style=\"font-weight: 400\">Kalau belum kebayang seberapa besar 1048 bit itu seberapa besar, ini adalah 1048 bit.<\/span><\/li>\n<\/ul>\n<table style=\"height: 62px\">\n<tbody>\n<tr style=\"height: 62px\">\n<td style=\"height: 62px;width: 7529.29px\"><span style=\"font-weight: 400\">00010010101101110101010000000010010011010111100000011100000100100011111001101010110000<\/span><\/p>\n<p><span style=\"font-weight: 400\">10100111101101101010010100001100101000111001111001001010110011100111001010011010011100<\/span><\/p>\n<p><span style=\"font-weight: 400\">11101100110110101101011001001100110011001011011111000111001101011111010010110111000110<\/span><\/p>\n<p><span style=\"font-weight: 400\">01011011101110111110111101011000100000010101111001100111111010100110100000100000010011<\/span><\/p>\n<p><span style=\"font-weight: 400\">00001101100101001111001010100101100111010011000001100100011111100000010010011001000110<\/span><\/p>\n<p><span style=\"font-weight: 400\">00001001101010100100110010010000010010010000011110001110000110110100111000001000000011<\/span><\/p>\n<p><span style=\"font-weight: 400\">01001011101100110110000010000010010011100111001000010110001010000101010101101100000000<\/span><\/p>\n<p><span style=\"font-weight: 400\">01110001000101000111000110111001110011111101100001000000101110000101011100101010110000<\/span><\/p>\n<p><span style=\"font-weight: 400\">01001011101110100001000000000010111011100001010100101001001001111010011110111100100001<\/span><\/p>\n<p><span style=\"font-weight: 400\">00010000000000010110100000111011100100001100010101100111101001101101100001101011100010<\/span><\/p>\n<p><span style=\"font-weight: 400\">11100101100110011101000000000011001111100000111110101110010000100000000111001011110101<\/span><\/p>\n<p><span style=\"font-weight: 400\">101001110110011100111101011011001110010011010111100010100111001011001011011011<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p style=\"text-align: justify\"><span style=\"font-weight: 400\">Dan inti dari RSA menjadi aman itu karena kesulitan dalam memfaktorkan bilangan semi prima yang sangat besar menjadi faktor prima-nya, kalau sudah menemukan faktor prima maka kita dapat dengan gampang membuat <\/span><em><span style=\"font-weight: 400\">public <\/span><\/em><span style=\"font-weight: 400\">dan <\/span><em><span style=\"font-weight: 400\">private key<\/span><\/em><span style=\"font-weight: 400\">.<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>RSA Rivest Shamir Adleman (RSA) adalah sebuah jenis algoritma asymmetric encryption yang diambil dari nama penciptanya Ron Rivest, Adi Shamir dan Leonard Adleman pada tahun 1977 dengan menggunakan konsep faktorisasi bilangan bulat besar. RSA menerapkan konsep private key dan public key. Private key digunakan untuk dekripsi data yang telah dienkripsi dengan kunci publik yang sesuai [&hellip;]<\/p>\n","protected":false},"author":42,"featured_media":2444,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6,4],"tags":[],"class_list":["post-2443","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-articles","category-featured"],"_links":{"self":[{"href":"https:\/\/student-activity.binus.ac.id\/csc\/wp-json\/wp\/v2\/posts\/2443","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/student-activity.binus.ac.id\/csc\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/student-activity.binus.ac.id\/csc\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/student-activity.binus.ac.id\/csc\/wp-json\/wp\/v2\/users\/42"}],"replies":[{"embeddable":true,"href":"https:\/\/student-activity.binus.ac.id\/csc\/wp-json\/wp\/v2\/comments?post=2443"}],"version-history":[{"count":4,"href":"https:\/\/student-activity.binus.ac.id\/csc\/wp-json\/wp\/v2\/posts\/2443\/revisions"}],"predecessor-version":[{"id":2453,"href":"https:\/\/student-activity.binus.ac.id\/csc\/wp-json\/wp\/v2\/posts\/2443\/revisions\/2453"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/student-activity.binus.ac.id\/csc\/wp-json\/wp\/v2\/media\/2444"}],"wp:attachment":[{"href":"https:\/\/student-activity.binus.ac.id\/csc\/wp-json\/wp\/v2\/media?parent=2443"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/student-activity.binus.ac.id\/csc\/wp-json\/wp\/v2\/categories?post=2443"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/student-activity.binus.ac.id\/csc\/wp-json\/wp\/v2\/tags?post=2443"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}