if it weren’t for bad luck…

well, tuesday night was a bit of a blur after i posted that entry. i did manage to get some sleep, i suppose. and had some dreams.
wednesday i drove my pickup to work and took some tools with me. at work, some co-workers used google maps to track my walk home: turns out it was almost exactly 4 miles. after work, i went into the garage and pulled the battery out of my bike and took it home with me. i put it on the charger, then went and did the radio show.
this morning, i woke up on my own rather early (around 6am or something) and couldn’t get back to sleep, so i eventually decided i needed to complete my punishment. so i grabbed a backpack and put the battery in it and walked to work. the backpack weighed in at about 16.5 lbs. 4 miles. it took me longer to walk it than it had tuesday evening (around 1.25 hours), so i started freaking when i realized i might not make it to work in time for a meeting. and would smell like sweat, and look like an out-of-shape person who’d just walked 4 miles carrying a 16.5 lb. backpack. i barely made it into the office on time…with only a minute or two to spare. but the meeting was canceled.
before i left work wednesday, i set a password that is automatically distributed to a fair number of servers. after i hiked in today, i learned that no one could get into the systems. evidently i’d fat-fingered the password exactly the same twice, so the command accepted whatever i had mistyped. oops. a few variations had been tried, but no one had figured it out. i was able to find a copy of the shadow hash value somewhere, so i used perl’s “crypt” command to quickly make hash values with the known salt. i figured out my mistake after about 15 tries. whew.
in case you’re curious, here’s the command:
$ perl -e 'print crypt("password","salt"),"\n"'
for older (but not oldest) unix password shadow crypt hash styles, the encrypted password value is two salt characters followed by the hash value. for example, in “SaIQ1RiNlnVxc” the first two characters “Sa” are the salt, and the rest is the encrypted password. so if i wanted to create a hash of the password “password” with a salt of “Sa” i would run the command and get this:
$ perl -e 'print crypt("password","Sa"),"\n"'

so if you know the value in the shadow file, then you already know the salt. using that salt you can just start guessing password values and check to see if the hash of your guess matches the value in the shadow file. it’s a one-way hash, so you can’t reverse what you found in the shadow file — but you can loop over every combination until you get a match of the hash values. (it’s possible different password values could create the same hash value.)
anyway, enough of that. (and i apologize if there are some inaccuracies in my terminology.)
at lunch today i went out to my motorcycle and put the newly recharged battery in. the bike started right up. i drove it around to the uncovered parking in the front of the building to pick up something i’d forgotten at my desk, at which point it immediately started to rain. i can’t win. once the one big cloud in the sky finished dumping rain on my bike, the sun came back out and i went to lunch. on the way back, a car in the middle lane (which i was 2 or 3 cars behind) suddenly decided to slow down and stop at a green light…to take in the scenery or something. i had to hit my brakes pretty hard, and eventually started skidding. but i came short of the car in front of me by a couple of feet.
this evening jack called me and asked if i’d be able to make it to a birthday surprise (not exactly a party) for sue. the short notice pretty much made it a surprise for me as well. but i have a whole hell of a lot of free time on my hands, so it was no problem to squeeze that in last minute.

1 comment on “if it weren’t for bad luck…”

  1. Thanks for coming to my pseudo-party and for the gifts. I’m enjoying the novel thus far. And we still haven’t found Calista’s gift-so it really will be a surprise at some point 🙂 And you aren’t a waste.

Leave a Reply

Your email address will not be published. Required fields are marked *