From devans@virginia.edu Sun Sep 2 22:35:54 2001 Date: Fri, 31 Aug 2001 19:15:06 -0400 (EDT) From: David Evans To: cs588-students@cs.virginia.edu Subject: Welcome Welcome to the CS588 course mailing list! If you received this message you are in the course. If you need me to sign a course action form, catch me after class Monday or Wednesday. On the web site you will now find: - Links to some code that may be helpful with the problem set - Challenge Problem #1 Of the questions on Problem Set 1, the material on perfect ciphers (questions 3a, 6b) and language rate (5c) will make more sense after Monday's lecture. Wednesday's lecture will cover Enigma (although you can probably answer 5a and b without this). The other questions, you are encouraged to start on now. --- Dave From devans@virginia.edu Sun Sep 2 22:43:38 2001 Date: Sun, 2 Sep 2001 22:42:24 -0400 (EDT) From: David Evans To: cs588-students@cs.virginia.edu Subject: Office Hours Anthony Wood will have office hours Thursdays, 12:45-1:45 in the CS Reading Room. Due to an out-of-town meeting, I will not be able to hold my normally scheduled office hours on Tuesday morning. If you need to meet with me, send me email or find me after class Monday. --- Dave From devans@virginia.edu Mon Sep 3 15:58:50 2001 Date: Mon, 3 Sep 2001 15:53:29 -0400 (EDT) From: David Evans To: cs588-students@cs.virginia.edu Subject: PS1 Ciphertext The ciphertexts included in the PS1 handouts are wrong! The files c1.txt and c2.txt and the ciphertext shown in the problem set are different. The correct ciphertext is found in the files c1.txt and c2.txt. I'm really really sorry about this. If you've wasted a lot of time because of this, I am terribly sorry! Thanks to the students who brought this to my attention. As a hint to check you have the right ciphertexts, the third letter of message 1 is a space, and the third letter of message 2 is "d". --- Dave From devans@virginia.edu Mon Sep 3 17:13:51 2001 Date: Mon, 3 Sep 2001 17:08:58 -0400 (EDT) From: David Evans To: cs588-students@cs.virginia.edu Subject: Room Change We've switched rooms so SYS 421 can have both sections in the same room. Starting Wednesday, CS588 will meet in Olsson 009. --- Dave From devans@virginia.edu Fri Sep 7 17:14:41 2001 Date: Fri, 7 Sep 2001 17:13:52 -0400 (EDT) From: David Evans To: cs588-students@cs.virginia.edu Subject: Project Teams The project teams are now posted at http://www.cs.virginia.edu/~evans/cs588/projects/teams.html. Everyone should make a point of meeting with your teammates after class Monday if not earlier. --- Dave From devans@virginia.edu Tue Sep 25 00:37:55 2001 Date: Tue, 25 Sep 2001 00:32:52 -0400 (EDT) From: David Evans To: cs588-students@cs.virginia.edu Subject: Re: hw2 For the reflector in 2c, you should NOT assume that it is an involution. That is, unlike the real Enigma reflector, if it maps A -> B it does not necessarily map B -> A. I apologize for not being more clear on this! The reflector function could be any monoalphabetic substitution. Sorry for the confusion, --- Dave From devans@virginia.edu Tue Sep 25 11:16:29 2001 Date: Tue, 25 Sep 2001 11:15:09 -0400 (EDT) From: David Evans To: cs588-students@cs.Virginia.EDU Subject: Involuted Injections > For the reflector in 2c, you should NOT assume that it is injective. > That is, unlike the real Enigma reflector, if it maps A -> B it does not > necessarily map B -> A. I should have said it is NOT AN INVOLUTION. A function is injective if f(p) = f(q) ==> p = q. Of course, any decryptable function must be injective since we need to determine p from f(p). The reflector is not an involution since f(p) = q does not imply f(q) = p. --- Dave From devans@virginia.edu Mon Oct 8 09:38:01 2001 Date: Mon, 8 Oct 2001 09:25:53 -0400 (EDT) From: David Evans To: cs588-students@cs.virginia.edu Subject: PS3 Clarifications Question 4: A "secure channel" is any mechanism that could be used to transmit a message without revealing the contents of that message. For example, hiding values in envelopes would be using a secure channel. A good answer to question 4 would be a protocol the students could use by taking turns writing something on the blackboard while everyone is watching. Question 5c: The last sentence should be "Modify the protocal so that after each player has their two hidden cards, the five community cards can be revealed." (The original version said "two private keys", which was a mistake, not a hint.) A good solution to 5c will allow each player to know her own two hidden cards and the five community cards, but know nothing about any other players hidden cards or the undealt cards. --- Dave From devans@virginia.edu Tue Oct 9 10:10:30 2001 Date: Tue, 9 Oct 2001 10:09:16 -0400 (EDT) From: David Evans To: cs588-students@cs.virginia.edu Subject: Poker Playing Don't be disturbed that the protocol in 5a and b does not describe a very interesting poker game --- no player knows their own hidden cards until every player knows all of the cards. They could have a betting round between steps 7 and 8, but (except of the cheating opportunitites) it is effectively no different then if they bet before the hand started. For every hand they play, they would need to all generate new public, private key pairs. For 5c, you are asked to come up with a more interesting protocol. It should allow each player to know her own hidden cards (but no one else's and none of the undealt cards), and everyone to know the community cards (but only after they are dealt). We can't condone gambling, of course, but you can imagine there is a betting round after the hidden cards have been dealt (and revealed to their owners only), and then the community cards are revealed, followed by another betting round, and then all the hidden cards are revealed to determine to the winner. --- Dave From adw5p@cs.virginia.edu Tue Oct 16 08:16:24 2001 Date: Mon, 15 Oct 2001 23:49:28 -0400 (EDT) From: Anthony Wood Reply-To: adw5p@virginia.edu To: cs588-students@cs.virginia.edu Subject: CS 588 problem set 3 return All: Problem Set 3 has been graded and is available for pickup. I will be available at the following times, or by appointment (send me email): 2:30 - 3:00 pm Tuesday, October 16th, Olsson 226-A 2:00 - 2:15 pm Wednesday, October 17th, Olsson 009 Note that the Wednesday pickup is at the beginning of our normal class period. Since we are not having class Wednesday (remember?) I will be there for 15 minutes to return problem sets. I will have hard copies of the problem set solutions with me, and they will also soon be posted on the class home page. Anthony -- Anthony Wood adw5p@virginia.edu From adw5p@cs.virginia.edu Sat Oct 20 16:44:09 2001 Date: Sat, 20 Oct 2001 16:34:28 -0400 (EDT) From: Anthony Wood Reply-To: adw5p@virginia.edu To: cs588-students@cs.virginia.edu Subject: CS 588 Midterm Review Session All: Danny and I will hold a review on Monday evening for the upcoming CS 588 midterm. Bring questions, as we will not be preparing a presentation. What: Midterm Review Date: Monday, October 22 Time: 7:00 PM Location: Olsson 005 See you there, Anthony -- Anthony Wood Graduate Student, University of Virginia adw5p@virginia.edu "The only help a youth wants is to be directed what books to read, and in what order to read them." Thomas Jefferson, To Thomas Turpin Shadwell, Feb., 1769 From devans@virginia.edu Thu Oct 25 10:09:51 2001 Date: Thu, 25 Oct 2001 10:09:31 -0400 (EDT) From: David Evans To: cs588-students@cs.Virginia.EDU Subject: NSA / McGraw / Flood o The NSA info session is today at Baja Bean on the corner, 5-8pm. I hope many of you are able to make it to this. Working for the NSA is probably the most interesting and important thing you can do with a Computer Science degree. I know a few people who work there and they all speak very highly of it (but can't tell me too much about what they do, of course!) If you've been paying attention in class (and have broken two-time pads and/or Enigma variants), you should be able to impress them in your interviews. o Remember to send me a comment or question on the "Attacking Malicious Code" paper by tomorrow. You won't be graded on these, but it will be worth your while to send a thought-provoking question or insightful comment. o Since lots of people have been asking, questions 1 and 4 of the flood document were encrypted using the Enigma machine from problem set 2. The "WMDBTP" before question 1 is the message key "MMMMMM" encrypted using the day key was 5 0 as in PS 2 answer. Since I left in the spaces and punctuation, this made it a lot easier to guess the message. A few of you noticed the repeated "hrmkpf" in question 1 --- its exceedingly unlikely to get such a long repetition by chance alone. With a proper enigma machine, of course, even if the plaintext message repeats the ciphertext would not repeat unless the repetitions are exactly 26^3 letters apart (the rotors have returned to the same position). With the PS2 enigma machine with only 2 rotors, it would have to be 26^2 (= 676) letters apart. In fact, the two occurances of "hrmkpf" are only 9 * 26 letters apart (because of the whitespace and html formatting characters, this wasn't obvious from the flood document). So, the encryption used a broken Enigma machine! The second rotor was disabled (I commented it out to produce the messages for PS2 and forgot to put it back in). This made it much more susceptible to statistical attacks (but as far as I know no one was able to decrypt it, other than guessing words based on length and punctuation.) --- Dave From devans@virginia.edu Thu Nov 1 11:29:39 2001 Date: Thu, 1 Nov 2001 11:24:56 -0500 (EST) From: David Evans To: cs588-students@cs.Virginia.EDU Subject: Announcements o Wednesday's lecture will include Quantum Cryptography. If you haven't already, you should read The Code Book, Chapter 8 before then. o Remember to send me email regarding Problem Set 4 by Monday. Groups who do not send me exactly one topic email before 11:59pm on Monday will lose points on PS4. o Two new challenges have been posted on the course web site. Try not to eat all the candy you denied the trick-or-treater's last night at once, --- Dave From devans@virginia.edu Mon Nov 5 17:33:55 2001 Date: Mon, 5 Nov 2001 15:47:20 -0500 (EST) From: David Evans To: cs588-students@cs.Virginia.EDU Subject: Project Proposals / PS4 - I've left the project proposals in the top draw of the file cabinet outside my office. - For PS4, if you are writing an article, it does not have to be published before Nov 12. In fact, I want to have a chance to comment on your article before it is published. I will adjust grades retroactively, if you get your article published (or website linked, etc.) after the due date. --- Dave From devans@virginia.edu Tue Nov 20 09:04:54 2001 Date: Tue, 20 Nov 2001 08:36:34 -0500 (EST) From: David Evans To: cs588-students@cs.virginia.edu Subject: Coloring Many of you were mislead by your kindergarten teachers on how primary colors work. Sadly, the first scientific thing most Americans (at least) learn in school is completely wrong and muddled. I don't want to speculate on whether this is part of a grand conspiracy to make sure our schools produce enough low-skilled laborers and not too many thinking scientists, poets and musicians, but here's what your kindergarten teacher should have told you instead of all that stuff about red, blue and yellow being the primary colors and how you combine red and yellow to get orange: White light (like what the sun produces) is made up of lots of different colors. One way of breaking white light into colors is red, blue and green. If you have red, blue and green lights and shine them all on the same spot, you will get white light. Reflective materials don't create light, they absorb some light and reflect other light. If a sheet of paper looks red that means it is absorbing all the blue and green light, and reflecting the red light. A yellow sheet of paper is absorbing all the blue light and reflecting all the red and green light. A cyan sheet of paper absorbs red and reflects blue and green; a magenta sheet of paper absorbs green and reflects red and blue; a black sheet of paper absorbs red, green and blue and reflects nothing. We can do the same thing with transparencies, except instead of just reflecting the light they pass it through. So, a cyan transparency would absorb red and pass through blue and green. If we put a cyan transparency on top of a magenta transparency, the cyan tranparency would pass through blue and green; then, the magenta transparency would absorb the green and pass through only the blue. This is why, Cyan + Magenta = Blue. Another way to think of this is functionally, Cyan (c) = c - red Magenta (c) = c - green WHITE = { red, green, blue } Magenta (Cyan (WHITE)) = { red, green, blue } - red - green = { blue } For PS5, you could use the colors by only caring about black and non-black. You get black when the transparencies subtract all the colors in the white light; otherwise, some light gets through. Of course, if your kindergarten teacher had taught this instead of the red, blue, yellow myth, the kids might have started crying when all they wanted to do was make orange. --- Dave From devans@virginia.edu Wed Nov 21 08:32:59 2001 Date: Wed, 21 Nov 2001 08:31:24 -0500 (EST) From: David Evans To: cs588-students@cs.virginia.edu Subject: Projects Hi all, On Monday, you will receive the schedule for project presentations and some advice for giving a good presentation. Half the groups will present on Wednesday next week (28 Nov), and the rest on 3 December. If your group has a compelling reason why you should go on one of the two possible dates, send me an email explaining why and I will take that into account it producing the schedule. Groups that present on Wednesday will have their project scores determined by, MAX (.25 * presentation + .25 * report + .25 * execution + .25 * scope, .15 * presentation + .35 * report + .25 * execution + .25 * scope) while groups who present on 3 Dec, will be scored using .25 * presentation + .25 * report + .25 * execution + .25 * scope That is, if you present first you have the option to make up for a weaker presentation by producing a better report. Happy Thanksgiving, --- Dave From evans@virginia.edu Tue Dec 4 10:38:57 2001 Date: Tue, 4 Dec 2001 10:38:00 -0500 (EST) From: David Evans To: cs588-students@cs.virginia.edu Subject: Announcements o Project reports are due at the beginning of class tomorrow. I will be unwilling to accept late project reports, unless your entire team is in the hospital on Wednesday, or there is a power outage for the entire East coast. o Your project report should be turned in as a paper document. You should also email me an electronic copy of your report for posting on the course web site (or an explanation why if you have objections to me posting your report). This should be either a PDF file, PS file, or a zip or tar file archive of a web site. o The take-home final will be handed out at the end of class tomorrow. It will be similar in spirit (but different in content) to http://www.cs.virginia.edu/~evans/cs551/final/ and you are free to look at the question and comments on last year's final. o Please remember to bring your completed course-specific surveys to class tomorrow (and to also fill in the official SEAS survey). o All challenge problems will be closed at 2:00PM tomorrow. Someone not in this class (one of last year's CS551 students who graduated last year) did solve the Jefferson wheel last week, so it is indeed solvable (but you should be spending time until tomorrow on your project reports, not on challenge problems!) I may post some information on his attack strategy after class tomorrow. --- Dave