PaperTrust

October 5, 2011 7:10 pm

So, a while back I blogged an idea I had about cryptographically signing various documents.  I specifically talked about checks, but you can apply the principle anytime you have a fairly small amount of data which is supposed to be issued from a trusted source: cashier’s checks, money orders, driver’s licenses, event tickets, passports, boarding passes, etc.

Well, I spent some time playing around and put together a working example.  It’s not fancy, but it does the job.  It’s been a few months, but it really didn’t take that long.  Especially since I had to do some reading about QR codes and using them, along with public-key cryptography, from Python.  So I had a basic prototype done in about a week.  Then back in August I decided to flesh things out a bit more and produce a nice demo application.  I’m calling the system “PaperTrust” as it allows you to embed the trust element onto the paper item.

Here’s a video demonstration:

Text description of the demo:
So, in my demo, we generate data for a cashier’s check and then sign it using the demo private key.  We stick the signed data (which includes a signing-organization ID) and the signature into a QR code and stick that onto the check and print it.  Now the check is physical and can be carried around as usual.

Now say you’re going to use this check to pay for something from a stranger.  This stranger needs to know they can trust the check.  So they use their verifier application to scan the QR code from your check.  It reads the organization ID, looks up the correct public key for that organization, and verifies that the signature is valid.  It also displays the signed data so the person can compare it to what’s physically printed on the check.  This is a cryptographically secure guarantee that the check is valid (or at worst an exact copy of a real check, which should make tracking down counterfeiters a lot easier).  So you would use this in tandem with traditional anti-forgery measures like watermarks, micro-print, thermal ink, etc.

I’ve put the code up on GitHub: PaperTrust on GitHub.

I declare this week to be…

October 3, 2011 11:37 am

…Recovery Week! I have been sick for nearly 3 weeks now, and enough is enough. My eye is all better (praises both to antibiotics and speedy access to them), and the cold is making very slow progress. By next Sunday, I shall be healed! So there!

Also, this is going to be an awesome week because the weather is going to be cool and rainy (fall may finally be here!). I was really starting to worry that I only have long-sleeve clothes for the baby, but the weather may have decided to behave.

If my illness surprises you, it’s because you aren’t on G+. I’ve been whining over there for days.

September 29, 2011 11:15 am

I have a couple theories about why I am still sick. What say you?

  1. I can’t seem to get a good night’s sleep.
  2. The baby is stealing my antibodies.
  3. I have chosen a steady diet of Marshmallow Mateys to get me through this.
In good news, I think the cold is improving, if very slowly. And my eye is definitely getting better—antibiotics are a miracle, and I love Kaiser.

Yippee!

September 24, 2011 7:56 pm

My new birth certificate arrived today! That was completely unexpected—I assumed it would be weeks at least. But it’s here. I am once more valid. Huzzay!

Fun fact: It was issued on my birthday (of this year). How very cosmic.

P.S. It lists my name as Jessica Holly Johnson Olsen. That’s not a problem, right?

It’s my birthday, shout HOORAY!

September 22, 2011 2:49 pm

Monday was my 31st birthday. It was a pretty good one, too! Kyle hung up the birthday banner for me before he went to work, and when he came home for lunch, he brought me flowers and balloons! I spent a couple hours that afternoon with some friends (one of whom I share a birthday with). When Kyle got home, he finished up my cake (funfetti with cherry frosting*) and we went to dinner at the Cheesecake Factory. It was good, but I think they’ve increased their portion sizes—it was a ton of food! We relaxed at home for a bit, then had cake and opened presents. It was a fun day, and the best kind of birthday—one that made me feel special.

IMGP5732atiny

*You may recall that for my first birthday after we got married, I requested a white cake with cherry frosting. And that even though Kyle drove all over Livermore, he couldn’t find any, and we had to make do with cream cheese. Well, the next year, he made me a cheesecake, so it wasn’t an issue. But this year, Kyle got online and found that the Target in San Ramon carries it! Now, San Ramon isn’t super nearby, but I was having my final biofeedback appointment out there in just a couple of days, so I stopped in a picked up 3 cans (you never know when you’re going to need some!). Kyle seemed really surprised by just how pink cherry frosting is, and it is his opinion that it smells more like cherries than it tastes like them. I just know it’s yummy. OH, and I almost forgot: I talked Kyle into buying these candles that we saw at the grocery store with colored flames. How cool is that? Pretty cool. Granted, the flames are not as vibrant in color as the box indicated, but they still looked awesome.

In other news, I had another ultrasound yesterday to check the baby’s growth. I’ve been getting worried that she’s breech or something and huge, so it was good to find out that she’s head down and measuring right on schedule. And she kept sticking her tongue out at us! So cute. And her due date is just 4 weeks from tomorrow!

I have had a cold for a little over a week now, and it sucks. I had been feeling a bit better the last few days, but today it is killing me again. My throat hurts, my head is all stuffed up, and I am so tired. I don’t like this regression.

Also, in case you were wondering, yes, being pregnant during the summer sucks. I completely realize that it could be lots worse than it is here in California, but it is still true that it has been an unusually warm summer for us. Way too much time spent way too close to 100 degrees (or more). I am not coping well.

Well, this blog post took kind of a nosedive here at the end, didn’t it? Don’t worry; even though I can barely breathe and feel like I haven’t stopped sweating since May, life is pretty awesome. 🙂