Crypto in the classroom: digital signatures for homework

If you don’t know, I’m a graduate student at the University of Utah, which means I make a living my teaching classes. Recently a student charged that I lost a good deal of her homework. We wound up in a “he-said/she-said” situation where ultimately the dean concluded that we need to raise her grade by a letter under the assumption that I really was up to shenanigans (we ultimately gave her 100% credit in the “homework” column in the grade book, raising her grade from F to D). Not a pleasant situation: aside from a track record of strong teaching evaluations, there was nothing to defend my reputation.

Experienced teachers know that claims of “lost” work are frequent. If we want to be objective about this (and we do), the claims need to be taken seriously, since lost things rarely leave a trail. All we have when analyzing such claims is the following:

  • The missing work never seems to turn up. Not after a week, a month, a semester, a year, or ever.
  • If a person rarely finds that they misplace his own belongings, it’s hard to accept that he is misplacing student work (assuming they treat student work with a reasonable amount of care, as we typically do, given how terrible it would be to lose it!)
  • These claims never seem to come from students who are doing well on exams; they tend to come from students who are backed into a corner, grade-wise.

Of course, it is entirely conceivable that these claims are occasionally correct, and it would be terrible to allow such mistakes — our mistakes — to adversely effect our students.

Last Spring was the only time a student has accused me of losing their work. It was a lousy situation that I have no intention of ever repeating. So when I was assigned to teach a half-term class this summer, I decided it was time to try something new. I’ve recently finished teaching that class; here’s what I did.


Logitech QuickCam Vision Pro for “Mac”

I’m currently playing with wavelets as a part of my journey to know something about signal processing. Edge detection is a now-classic application of wavelets, so I figured I should experiment with that a bit.

To that end, I went out looking for a webcam that works well under Linux. Based on reports that the camera works in Linux — mostly this review, I picked up the Logitech QuickCam Vision Pro for Mac. I’d like to report that the camera does, in fact, work via the UVC driver with Video 4 Linux 2. Even auto-focus works (I’ve heard that this camera implements it in hardware, though I cannot confirm this).

It turns out that OpenCV has its own V4L2 interface, and that this has been exported to the OpenCV Python bindings. I grabbed some sample code from here and it worked out-of-box. With a 1-line modification, I was applying the Python Image library’s CONTOUR filter. Here’s the result, plus blurry because of my shaky hands:

PythonWare Image library, Contours filter.

PythonWare Image library, Contours filter.

Works great, almost in real time on my desktop machine. So now the task ahead of me is to implement the same functionality, since that’s what got me started down this path to begin with.

Here are two pictures I took of the camera after removing the stand it came with. To be clear, these were (obviously!) not shot on the camera itself.

The camera

Cute size

I removed the camera's stand only to find these mounts inside.  Perfect!

I removed the camera's stand only to find these mounts inside. Perfect!

Washington DC Photos!

This is what it looks like when I go to Washington DC:


 This is me standing beside Alexander Hamilton in the Capitol Rotunda.  I often confuse the spelling of “Capitol” and “Capital.”  Hamilton wanted a strong federal government.  Today, the Hamiltonian interpretation of the Constitution is named for him.

Mount Vernon

 This is Mount Vernon, which is where George Washington lived.  Both after the war and after his presidency, he was anxious to return home.  Now that I’ve been there, I can see why.

National Botanical Garden

Here I am outside of the National Botanical Gardens.  You can see the Capitol in the upper left.

Oh, and here’s a picture of Cyndi at Deluxe while we were getting trashed: