### CS475 Midterm Review

The test will be closed book, but you can have a page of notes. Be prepared for detailed questions on the following:
- How encryption works in principle (key space, subsititution vs. permutation, etc)
- Historical Ciphers
- Modern Ciphers
- Public Key Ciphers
- SQL Injection
- Viruses
- Presentations

Be prepared for questions of a more general nature on:
- Hash functions
- Certificates

The test is divided into 5 sections:
- Encryption.
- Viruses.
- SQL Injection.
- Certificaties and Hash Functions.
- Presentation Questions.

#### The RSA Question

There's a question requiring you to understand how RSA works. It's not a very hard question, but you should review the RSA algorithm as close to the test as possible. Make a public/private key pair, and encrypt and decrypt something. The numbers will be contrived to avoid impossibly-large numbers on the test. It may be sensible to include an example on your notes.