You will answer the questions with either fixed answers, short explanations or with multiple choice. The test is a closed-book test. Note there will be no lectures or labs in Week 9. The table you will be given is here.
Time for test: Wednesday, 1 November 2023 (9am-11am, JKCC)
- Ciphers and Fundamentals Link.
- Symmetric Encryption/Hashing Link
- Public key. Link
- Key Exchange. Link
- Digital Certificates. Link
- Hex Code Challenge Try.
- Pigpen Try.
- Polybius Try.
- Morse Try.
- ADFGVX Try.
- Scrambled Alphabet Try. Can you beat 5 minutes?
- Key Enthropy here. How many bits can represent X phases? Just take the Log(X), and divide by Log (2).
- John the Ripper, Hashcat and Ophcrack: here
- Using OpenSSL to salt passwords: here
The table you will use in the test is: here and you can use a calculator.
Here are some sample tests:
Try to review your knowledge by answering these questions:
- Can you convert characters from one format to another, such as in binary, hex, ASCII and Base-64 (remember: hex uses four bits at a time, and Base-64 uses six bits at a time)?
- Do you know the basic theory of converting a bit stream into Base-64 (remember 6 bits at a time and convert from table)?
- Do you understand how to use some key ciphers, including shifted alphabet, led alphabet, Vigenere, Pigpen and rail codes?
- Can you do a simple Diffie-Hellman calculation and end up with the same shared key?
- Do you understand how the number of keys relate to the security of the ciphers?
- Can you work out key enthropy, so that if you have 2,048 phases, you can calculate that this is equivalent to 11 bits [log(2048)/log(2)]?
- Would you know how long it would take to crack a code next year, if it takes 10 years now, and computing power doubles each year?
- Do you understand how public and private key encryption is used, along with the usage of digital certificates?
- Do you understand the conversion of passwords into hashed passwords, and use tools such as John The Ripper, Hashcat, Ophcrack and OpenSSL?
- Solve ASCII hexadecimal encoding.
- Solve ASCII binary encoding.
- Solve Morse encoding.
- Solve the shifted alphabet code.
- Create the Vigenere Code for a given plain text string and key.
- Able to convert bit streams to hexadecimal.
- Able to convert binary streams to Base 64.
- Solve Playfair codes.
- Solve Rail codes.
- Solve scrambled alphabet code. Some samples are here here here.
- Calculate the entropy of passwords.
- Calculate simple Diffie-Hellman.
- Determine time to crack a code, on average, given time to test key.
- Determine time to crack a code, for increasing computing power.
- Understands how public key encrypts data.
- Understands how public key is used to provide identity.
- Understands the key elements of a digital certificate.
- Understand the processing of salting a password and its usage in encryption.
- Password hash cracking/salting (LMHASH/MD5).
Tables given are ASCII table, Morse and Base 64.
The two main labs you should know about are here: