16.05.2014 Views

Wireless Security.pdf - PDF Archive

Wireless Security.pdf - PDF Archive

Wireless Security.pdf - PDF Archive

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Standardizing <strong>Security</strong> 243<br />

AES can be implemented completely in software or completely in hardware. More<br />

recently, a hybrid approach has been taken, moving some of the more expensive<br />

operations into hardware while leaving the rest of the implementation in software.<br />

This new approach has several distinct advantages. The hardware, not being dedicated<br />

specifically to AES, can be more general and less expensive. Having the hardware<br />

acceleration, however, makes the software smaller and faster. Several companies provide<br />

various levels of AES acceleration, even going so far as to add specific AES instructions<br />

into a processor so that no external hardware devices are needed. Generally speaking, if<br />

you need a symmetric encryption algorithm for an application, you should use AES. It is<br />

the safest choice because it is the standard used by the US government and it is backed by<br />

some of the leading experts in cryptography. If AES is ever broken, it won’t be your fault<br />

(and it wouldn’t matter anyway, since everyone else would be in big trouble too).<br />

10.3.2.4 RSA<br />

The three algorithms we have looked at so far are all symmetric-key algorithms that are<br />

very useful if you have a good way to exchange keys with the person or machine with<br />

which you want to communicate. In some cases, a physical transfer of the key may be<br />

possible and appropriate, but more often, an electronic means of key delivery is more<br />

applicable. Today, in most cases, this method is RSA. Developed and patented by Ronald<br />

Rivest, Adi Shamir, and Leonard Adleman in 1978, RSA is the most well-known and<br />

probably most useful public-key algorithm. One of the most useful properties of RSA<br />

is that it can be used both for the basic public-key operation (I send you my public-key<br />

so you can encrypt a message to send back to me), and for authentication (I encrypt<br />

a message with my private key which you can verify came from me using my known<br />

public-key). This property makes RSA especially useful for protocols that utilize both a<br />

public-key operation and authentication, like SSL.<br />

RSA is an elegantly simple algorithm with some extremely complex math behind it.<br />

Essentially, RSA consists of a function that utilizes some unique properties of large prime<br />

numbers and modular mathematics. The key generation for RSA involves selecting two<br />

very large prime numbers and multiplying them together. The trick is that if you know the<br />

prime factors used to generate the key then the RSA encryption function is simple to reverse<br />

(thereby decrypting an encrypted message). If you don’t know those factors, then you have<br />

to find them by factoring a REALLY large number into its component prime factors, a<br />

process that takes an extremely long time using today’s math and technology. It is possible<br />

www.newnespress.com

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!