MODD / Mr. Hansen

Name: _______________________________________

12/18/2013

Mr. Hansen’s use only: ___

 

Test on Error Correction, RGB, PKI, Etc.

Calculator is permitted throughout.

 

Part I. Fill in each blank with the word or phrase that best fits.

1.

When digital data are stored or transmitted, there is always a chance that bits will be garbled. Therefore, clever engineers have devised hundreds of __________ __________ protocols so that there is a high probability of being able to recover 100% of the data. Of these many hundreds of protocols, we looked at only one, called ________________(____,____) . The name refers to the fact that in a 7-bit codeword, there are 4 data bits in the “actual data” portion, which is called the ___________ . The other 3 bits are ________ bits, which because of the cleverness of Mr. Hamming, allow us to figure out which bit of the 7 has been corrupted, as long as only 1 bit has been corrupted. If there are 2 or more bit errors, the Hamming technique may not be able to correct the errors but can usually at least __________ that an error has occurred.

 

The simplest error ______________ protocol is simple even parity. For example, in the byte 0xFA, which equals binary ________________ , where the 8th bit is treated as parity, we can tell that the byte is probably ____________ (write “valid” or “invalid”) because of the parity check. Error detection is less sophisticated than error correction, but even error detection protocols are useful; if an error is detected, the sender can be instructed to ____________ the block of data containing the parity error(s).

 

Data compression, error-correcting codes, and encryption are all examples of the ______________ of data in various ways. The purpose of data compression is to reduce the occurrence of __________________ contained within a file, i.e., to produce a smaller file with a greater entropy density.

 

Encryption can be accomplished either by symmetric technologies (e.g., where each pair of users exchange a secret _______________ that is used for both encryption and decryption) or asymmetric technologies. We looked at a “scaled-down” example of PKI, or ___________ ___________ ___________ , in which each user has a private key that can be combined with other users’ ___________ keys in order to create shared secrets. A shared secret is typically a number that can be used as a ___________ to start a PRNG, which can then be used for XOR encryption that scrambles all the data exchanged between the two parties so that nobody else can decipher it without knowing the shared secret.

 

PRNG stands for ___________ ___________ ___________ ___________ (3 or 4 words, depending on whether or not you hyphenate). It is important that the output of a PRNG have extremely high entropy. In other words, the output of a PRNG should be totally ______________________ unless someone knows the parameter values and the seed value. If a PRNG has low entropy, an evil ___________ (or the NSA) could easily compromise it and substantially speed up the process of breaking into the shared secret!

 

 

2.

Compute 444445 mod 13. Show your work.

 

 


 

3.

The Hansen PKI (HPKI for short) uses C = 4597 and N = 256. Your private key is 4, and Jeremy’s public key is 11.

 

 

(a)

Compute your public key. Show work. Give answer in decimal or hex (your choice, doesn’t matter).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(b)

Compute the shared secret that you and Jeremy could use to communicate secretly. Show work, and give final answer in hex this time.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(c)

Describe (2-3 sentences) how you would use the answer to part (b) in order to carry on some XOR-encrypted message traffic between you and Jeremy. No nitty-gritty technical details are needed; just give a 2-3 sentence overview of the major things that will be happening.


 

4.

We will define a PRNG as follows: X(0) = 129, A = 4377, B = 1051, N = 256. The next output X(i + 1) is always found by taking the previous output, X(i), and running it through the AX(i) + B mod N function machine. Find X(4), which is the 4th output of the PRNG. Hint: X(0) is called the seed. Show work.


 

5.

The keyspace for a 500-bit binary key has size ____________________________ , which is approximately equal to 10 to the ______________________ power. You may show work below for partial credit if you wish.

 

 

 

 

7.

The following 5 bytes have been transmitted. Each one consists of a 7-bit ASCII character (yes, I know that ASCII characters are supposed to be 8 bits, but all the important characters are found in the lower 128 and therefore can be represented in 7 bits) followed by a parity bit. Even parity protocol is used. (a) Circle the byte that contains an error.


01111011
10110101
11010010
01011001
01111110

(b) Briefly explain your answer to part (a).

 

 

 

 

 

 

 

 

 

 

8.

When a weatherman is photographed against a blue screen, the image of him against the blue screen is “thresholded” to save a 1 in each position that is a pure blue pixel and a _____________ everywhere else. This altered image, which we might call S', is then _____________ (i.e., all 0’s replaced with 1’s and vice versa) to produce an image that we might call ~S'. Describe, in words, the results of doing pixel-by-pixel multiplication of ~S' with the original image of the weatherman against a blue screen. A sketch is permitted but will not earn any additional points. It is your verbal description that will be graded.

 

 

 

_____________________________________________________________________________

 

 

 

_____________________________________________________________________________

 

 

9.

Convert each of the following RGB values to a color name:

0x00FF00 = ___________________

0xFFFF00 = ___________________

0x0A0A0A = ___________________ (indicate “very dark” or “very light”)

 

 

10.

Convert each color name to its RGB value:

blue = _________________________

cyan = ________________________

medium gray = _________________________

 

 

11.

Compute the storage requirement for 20 minutes of digital video (no sound), uncompressed, 30 fps, 6 million pixels per frame, and using standard 24-bit RGB color codes as illustrated in #9 and #10. Give answer in GB.