The only common point is that the designers include Professor Ron Revist of MIT.
RSA is a public-key cryptography algorithm, the advantage: no prior to pass through the secret channel key, can be used for digital signature. Cons: Slow speed
RC4 is a sequence cipher algorithm, the advantage: fast speed, disadvantage: need to pass the secret key in advance.
RAS is asymmetric encryption, encrypted with a public key, decrypted with another private key, or vice versa. Theoretically, it can't be cracked.
RC4 is symmetric encryption, encrypted and decrypted with the same key. Theoretically, brute force cracking is a big possibility, and tools can be cracked.
The RC4 algorithm turned out to be a trade secret, but it was leaked, and now everyone knows.
The RAS encryption algorithm is public, as we all know, but outsiders want to crack it but it's impossible:
【
the security of RSA relies on the decomposition of large numbers. Both public and private keys are two large primes
function (greater than 100 decimal digits). It is speculated that from a key and ciphertext
the difficulty of inferring clear text is equivalent to decomposing the product of two large primes.
Key pair Generation: Select two large primes, p and Q. Calculation:
n = p * Q
then randomly select the encryption key E, which requires E and (p-1) * (q-1)
coprime. Finally, the Euclid algorithm is used to compute the decryption key D to meet
E * d = 1 (mod (p-1) * (q-1))
where N and D are also coprime. Number E and
N is the public key, and D is the private key
】
Determining that a large number is a major problem in the world, such as the use of 100-bit large number as a public key or private key, the time complexity of computer violence is about O (10 of 200)
Following excerpt from Sina Blog: http://blog.sina.com.cn/s/blog_65db998401012ahq.html
The crack and precaution of RC4
The RC4 algorithm is a symmetric encryption algorithm, and the steps of encryption and decryption are well-known and immutable. The only privacy is from the initial key. This key is theoretically only known to both parties, but if a third party obtains the key from a certain path, the third party can easily use RC4 to decrypt the encrypted string he intercepts.
How does a third party get this key? Thief difficult to prevent, someone leaked to the competitor, that really is no way to do things, quickly change key bar, at the same time, third party can also not rely on spies, direct violence, success rate should be not low. the premise of brute force is that you need to know some correct decryption results. is to know: a number of encrypted strings (or encrypted string fragments) corresponding to the original text, so as to verify the success of the brute force. If the RC4 is only used for limited inter-individual communication, then it may be difficult for the cracker to obtain these priori correct results, but if you are providing the service to the entire Internet user, then the person who wants to hack you will naturally be able to legitimately conveniently obtain many apriori correct results to assist in brute force. Theoretically, the RC4 algorithm is hard to crack. The key used in RC4 is the unsigned char string of length [1,256], and the possibility is 256+256^2+256^3+ .... 256^256≈256^256 the possibility of secondary species, magnitude above 10^600. If you really set a 256byte (not a bit) key, it's almost impossible for someone else to want brute force. You know, "Tianhe One" is only petabyte times per second (10^15) operation. However, setting such a long key, encryption and decryption time is also linearly increased, so the general use of the key is up to dozens of byte. That complexity is greatly reduced, especially now that distributed computing is so pervasive. The most embarrassing is the online some papers, but the violence cracked 40bit (5byte) of the RC4, incredibly can also be sent to the "Computer Engineering and science" such periodicals up, I can only hehe. How to improve the difficulty of being cracked without significantly increasing the key length? 1. Change keys regularly, just as netizens should change their passwords regularly. 2. Mix some random strings in the real text to encrypt them again. 3. Do not expose the encryption string directly to the public, you can encrypt the string two times. ( cyclic shift, character-character mapping, breaking by some rule, RC4 again, etc.)
RAS RC4 Encryption