Abstract

The RSA algorithm is one of the cryptographic algorithms with an asymmetric model where the algorithm has two keys, namely the public key and the private key. However, as time goes on, these algorithms are increasingly exposed to security holes and make this algorithm vulnerable to being hacked by people who do not have authority. The vulnerability stems from the algorithm's public keys (e and n). The strength of the RSA algorithm is based on the difficulty of factoring two prime numbers that are generated during the key generation process, if these values ​​can be known using certain methods, the public key and private key values ​​will be found. Therefore, there are many studies that improvise the RSA algorithm, one of which is the Dual Modulus RSA (DM-RSA) algorithm. The algorithm uses four prime numbers which produce 2 modulus and 4 keys (2 public keys and 2 private keys). From the results of the Kraitchik factorization test, it was found that the DM-RSA algorithm was proven to be more resistant up to 2 times or even more than the standard RSA algorithm. This is evidenced by the fact that the value of n is 24 bits, the RSA algorithm can last up to 63204 ms (1 minute 22 seconds) while the Dual Modulus RSA algorithm lasts up to 248494123 ms (142 minutes 47 seconds).

Highlights

  • The RSA algorithm is one of the cryptographic algorithms with an asymmetric model where the algorithm has two keys, namely the public key and the private key

  • The vulnerability stems from the algorithm's public keys (e and n)

  • The strength of the RSA algorithm is based on the difficulty of factoring two prime numbers that are generated during the key generation process, if these values can be known using certain methods, the public key and private key values will be found

Read more

Summary

Bangkitkan empat bilangan prima dengan ukuran

Output: private, publik Initialization p, q, phi_n while(true) yang sama p1, p2, q1, q2 untuk proses pembangkitan kunci. P = pembangkitPrimaAcak(panjangBit); q = pembangkitPrimaAcak(panjangBit); n = p.q; 2. Menghitung nilai n1 = p1 x p2 n1 adalah nilai modulus pertama (7). Phi_n = p-1.q-1; while(true publik = new int(length,acak()); 3. Menghitung nilai n2 = q1 x q2 n2 adalah nilai modulus kedua (8). If((publik.gcd(phi_n)) = 1) break; private = kuncipublik.modInverse(phi_n)); 4. Menghitung nilai ∅n1 = (p1 − 1) x (p2 − 1) (9) ∅n1 adalah fungsi yang menentukan berapa banyak bilangan- bilangan 1,2,3, .

Rancangan Enkripsi Algoritme RSA terhadap n1
Rancangan Enkripsi Algoritme DM-RSA
Perbandingan Pengujian Waktu Enkripsi Enkripsi
Perbandingan Pengujian Waktu Proses Enkripsi
Kesimpulan
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call