Wednesday, February 10, 2010

Lecture 6: RSA (Feb 8)

This lecture we talked about RSA, which is a public key encryption algorithm that uses the problem of factoring large numbers to its advantage. This is a strong algorithm as it is said that is does not reside in the domain of NP-Complete, meaning the best known algorithm that can break this encryption is exponential. This encryption is based on two key numbers, which need to both be fairly large prime numbers, which are then multiplied together to get "N". We can derive the first of the two keys by finding a relatively prime number greater than one less than each of the two primes that were selected. We then can find the second key by finding the number that you can multiply with the first key that results in a 1 when the modulus of the product of the two primes each with one subtracted from it. A weakness of this encryption was pointed out, and that was if someone was ever able to factor "N", which is available to the public along with one of the two keys, the other key would be fairly easy to compute. We were then shown that encryption and decryption of a message using RSA was rather simple, take the message, raise it to the power of one of the keys, then take the modulus using "N". Decryption is the same process except the other key is used. It was pointed out that if we directly raise the message to the power of one of the keys, the result would be a fairly large number, however a method of "repeated squaring" can be used to achieve the same result without ever having to compute a large number. For example, say one of the keys is "20", which can be broken down into 2*10, the "10" can be broken down into 2*5, then 5=2*2+1, and finally 2=1*2. Starting with the smallest exponent (as the numbers just listed correspond to what the values should be) and using exponent rules calculating the final solution by repeated applying the modulus of "N" while building the exponent back up to "20" in this case results in never having to deal with any large numbers. We ended that day with a final note of the fact that RSA has no set key length and only RSA-140,155,160, and 200 have been cracked so far.

1 comment:

  1. I am little confused after reading the detail that is shared in this post about this algorithm. I am not a technical person and the concept is also completely new to me. I will look for some more detail to understand how it works.
    electronic signature software

    ReplyDelete