Sunday, July 13, 2003

Inside a US Election Vote Counting Program


Inside a US Election Vote Counting Program

As a software developer with a keen interest in such constitutionally-guaranteed rights as the right to vote in this country, this is exactly the kind of information I've wanted to get my hands on for*ever*.

But, I'm having difficulty reading the article because I keep falling down in an epileptic fit and choking to death on my tongue every time I read the words "Microsoft Access".

*thud*choke*choke*die*

Oh, and while I'm dying, someone buy Bev Harris's book for me, wouldja? I'll thumb through it while waiting for my loved ones to gesture me into the light. No, really.

What it looks like, at a glance, is that GEMS security is based on two things: ignorance, and restricted access to the ballot server. Anyone, apparently, with sysadmin skills and access to the machine could do some damage. Most of the people involved in a balloting process, however, do not fit that bill. Still, any programmer will tell you relying on ignorance is not a very robust security scheme.

The first thing that caught my eye is that there was no mention of enforced password changes on the part of the application, meaning it is humanly possible that there are dozens of implementations of this software running that use the default password.

The second is the description of working around user passwords by using Access directly and copying their encrypted password into the GEMS login. Only someone who has access to Access (by having physical and username access to the machine in question, or the Access DB for GEMS being mounted on a network, among others) would be able to do this, because you need to be able to look at the underlying database to pull this off. Ideally, the number of people with that level of access would be very small. In practice, however, that number of people is always higher than you think it is.

The fact that the audit log is editable in any way really worries me. I design and build software systems, frequently web applications using SQL databases, which means I spend a lot of time using tools that include the ability to edit db info at exactly the kind of level this this data is being manipulated at. If I may go off on a tangent for the confused:

This kind of software is multi-layered, just like my funk, baby. The bottommost layer is the information repository, the "database". The next layer up is usually referred to as an API - an established set of functions provided to perform common tasks such as "add record to database", "delete record from database", that kind of thing, which the software developers writing this application use in order to avoid reinventing the wheel constantly and instead focus on the next level up, the User Interface. Where Stuff Actually Happens, from your perspective.

When you register at yahoo, you the user fill out a web form (UI) which, maybe, error-checks your input & comes up with a password (API) and then adds your info into a database (DB).

If you develop software, you may need to test or 'workaround' a known bug or any number of things that require you to edit data in the database by hand. So, varying somewhat from database to database, there are multiple tools to help you do that. In some ways, I think, Microsoft Access blurs the line between UI and DB by making it so easy for a user to touch data directly in the database. MS Access as I understand it targets the development of simple systems, where the user and the developer are frequently the same person, and not terribly technical. That makes it easy to mess up, by virtue of that apparent transparency. It can also make it easy to hack someone else's work. Anyone who wants to screw around with data on a system I develop had better have a password to the db, permission to access the db server from the machine they're on, and a healthy dose of experience programming relational databases and in the use of the relevant db's command-line interface.

So, most of these screenshots and whatnot, they are of the MS equivalent of 'low-level database access', not of the GEMS application itself. Someone who is using GEMS is probably having a very different experience.

Now, back to the audit log. From a design perspective it makes perfect sense to have event tracking or an audit log in the same database as the data itself. I do it that way all the time...when writing using an SQL database. But Access makes it so easy for non-admin personnel to edit info in a database -- makes it seem so much like part of the normal user experience -- that now that I've considered the situation, I would argue strongly against an audit log in the same database as the data. Since, for this app, complete records of the manipulations to the data are so vital.

I would argue for the application requiring a second (thus, obfuscated, yes, not the best approach) db for that info, or store audit information (user X logged on, user X modified record Y, user X ran report ABC....) in a completely different medium -- a flat file, XML streamed to another server, in such a way that no access to the log is permitted. Encrypt it.

"Access encourages those who create audit logs to use auto-numbering, so that every logged entry has an uneditable log number. Then, if one deletes audit entries, a gap in the numbering sequence will appear. However, we found that this feature was disabled, allowing us to write in our own log numbers. We were able to add and delete from the audit without leaving a trace."


This quote makes it sound like the audit trail isn't driven by the GEMS application but by Access itself, in which case, disabling the auto-number sequencing was A Bad Idea™ and was either the GEMS application's responsiblity, or, possibly, that of the installer.

On the whole, it's difficult to assess exactly how endangered specific balloting servers might be -- so much relies on the people restricting access to machines, making sure the ballot server is not on a network, making sure only authorized personnel can sit down in front of the machine, etc., that it's really hard to tell exactly how hackable a balloting process would be that is using this system. That, in itself, is Very Bad News.


Bigger Than Watergate! - How To Rig An Election In The United States
Inside a US Election Vote Counting Program
Bald-Faced Lies About Black Box Voting Machines
Black Box Voting Ballot Tampering in the 21st Century

Thursday, July 10, 2003

Math in Babylon


(Another spiffy ref courtesy of Making Light)

Counting in Babylon

Be sure to read all the way down to the number systems stuff. While you're at it, read the rest of the lecture series info pages (here). If you're afraid of math or science, it'll do you good. Builds character.

Back to my point. Apparently, Babylonians used base sixty instead of base ten. This is hard to describe, because unless you work with computers on daily basis, you have no need to think about different 'bases'. Western civ is built on base ten, baby, but computers run on binary* (base two). We've so completely internalized base 10 that it's hard to even think about thinking about another base system.

Base 10 means you count on your fingers from one to 10.

Now you've used up all your fingers, what do you do? Assuming you're wearing shoes, you put a rubber band on your pinky. Or hold your left hand behind your back. Or turn your hands towards your face instead of away. Anything to indicate that although you are using the exact same fingers that you just counted 1 through 10 on, you are now counting 11 to 20.

Now, suppose you're a little kid during summer. You won't run out of digits to count on until you get all the way to twenty, because,

1. you took your shoes off the second summer vacation started;
2. you're flexible enough to touch your toes to begin with.

So, now you can count all the way up to 20 before you need to 'mark' that you've overlapped your digits and when you get to your thumb this time it means 5+20, not just 5.

That's base 20.

How do we write this down? Well if I write it down, (20), I'm writing in base ten, not 20, and I'm screwed up already. Can I say the alphabet instead, on my fingers and toes?

Sure. Why not. A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T -- there, that's my 20 symbols, A-J for my fingers and K-T for my toes.

So, what happens when I need to count forty bottlecaps by the side of the road? (Hey, I'm a kid on summer vacation.)

I can get up to 20, or T, with my fingers and toes, and then I'm back to that starting left-side pinky. Right-side, maybe, depending on which hand I write with. What do I do?

Maybe I draw a line underneath the T bottlecap, and then count up another T (or twenty) bottlecaps and mark underneath it. I then skip past my row and say " there are 2 lines, so that's 2 sets of T (twenty), which means a grand whopping total of forty bottlecaps. I'm rich!"

But then a car drives past, splashes muddy water all over me and the bottle caps, erases all my careful marks, and even gets specks on my glasses.

Well, maybe, I scoop up all the bottlecaps I can grab in the mud and run home, because it's lunchtime already, and I got Important Kid Stuff to do.

Maybe, just maybe, after lunch, I grab a crayon and the back of mom's phone bill and haul out the mess of bottlecaps and start counting them all over again from the beginning.

This time, though, I count J (ten) bottlecaps using my fingers, and write with the crayon:

 J

On the back of mom's phone bill. That's my mark for ten. J bottlecaps.

I count more bottlecaps, using my toes, and get all the way up to T bottlecaps (twenty). So I cross out the J and write:

 T

Well, once again, I'm at point where I need to re-use fingers and toes in order to count past T. What to do, what to do?

I could do this. Make two columns on the paper, one for individual fingers and toes, and one for the second time around on those same fingers and toes.

How would I write T+A (twenty+one) bottlecaps, then?

AA

Reading from left to right, that's one full set of fingers and toes (the 'A' on the left) and one pinky finger.

The leftmost column is the number of twenties I've counted (just one), and the rightmost column is the number of individual fingers-n-toes I've counted. Which in this case, is also one.

I count another bottlecap:

AB

One twenty plus two fingers.

I count three more bottlecaps. I've just used up one hand and embarked on the other, I'm at:

AE

I count more bottlecaps, using up all my fingers:

AJ

That's one twenty, plus ten fingers. If I was counting out loud I would have said "twenty-one, twenty-two, twenty-three, twenty-four, twenty-five, twenty-six, twenty-seven, twenty-eight, twenty-nine, thirty!" by now.

So, I embark on the toes and use them up, going from

AK to AL to AM to AN to AO to AP to AQ to AR to AS to

two whole sets of twenty

And how to write that? Not AT, but B0, where 0 is just a placeholder for "nuthin in the onesies column yet". Because the B in that left-column location tells us "two 'sets' of twenty".

So,

BA

would be what, then? Two sets of twenty plus one, or A. Forty-one. BA. All just different ways of saying the same thing. Why I could add another left column if I had gobs and gobs more bottlecaps and I had to count more than twenty sets of twenty.

SS = nineteen sets of twenty plus nineteen fingers-n-toes. I count one more bottlecap, and....

ping

A00

One 'batch' of "twenty sets of twenty" (ain't that a mouthful), plus zero 'sets' of twenty, plus zero 'onesies'. Phew. Time for some cookies and milk in another minute.

Now, we've just talked about base 20 counting (hey, look at that 20, that's a number in base ten isn't it? The 0 is a placeholder, right? And the 2 in that left column means "two sets of ten", doesn't it? Doesn't it? Hot dog!).

But the Babylonians apparently used base 60.

In base sixty BA wouldn't mean "two sets of twenty plus one", and 21 wouldn't mean "two sets of 10 plus one", but two sets of sixty plus one. How's that for a lot? How's that for different bases? Why A00 would be a batch of sixty sixties, or 3600 bottlecaps, which would blanket the floor of my bedroom up to my ankles and have plenty left over to taunt my friends with.

Base 60. Wow. I'd be richest!


* Why are computers binary, you ask? Ah, because computers are very primitive devices, compared to human beings. They can 'conceptualize' only "on" or "off". If on=1, and off=0, computers can only think in ones and zeroes. Think of it as if they only have thumbs and no fingers or toes. So, they wrap around back to the first hand when counting, very very quickly, poor things. No flexibility at all.
I'll Be Ding-Dong-Darned


Theresa Nielson Hayden believes she's found a new variation on the vanity publishing scam theme, one that relies not so much on large amounts of money from you the author (requests for which should ring such large alarm bells in your mind that you FLEE the scene SCREAMING immediately), but on the average number of your friends and family who are likely to buy a book simply because you wrote it. And maybe pay...a little extra...for the privilege. But not a lot, and that's the trick.

Follow The Money

Nice of friends and family -- yes, thank you for the support -- but lets make sure the money flows in the right direction, hm?
Medical Marijuana in Canada


Still quibbling, but more or less positive, I think: Canada to Sell Medical Marijuana to Seriously Ill

Wednesday, July 09, 2003

Busy Bee, The Drive™,Lilo and Stitch


My former employer offered us laid-off types an interesting two-day seminar from Lee Hecht Harrison, an outplacement/career transisition firm, so I spent Monday and Tuesday doing that and crashing on Janis' sofa to avoid The Drive™. You have to call it The Drive™, if you're going to be on the I-5/805 between Oceanside and parts south of the 163 at that time of day. Sometimes discretion is the better part of wisdom as well as valor, so I just spent the night, thus eliminating huge tracts of frustrated car-idling occasional-swearing morning rush-hour driving.

During all this (not during any driving portions, I assure you), Janis and I watched the film "Lilo and Stitch", one of the most unDisney animated films ever to come out of Disney in the history of the world. It was funny, characters were drawn looking more like human beings than dolls, and the film had a darker theme than other Disney films. Although, that perception may be because it wasn't based directly on a known fairy tale, and fairy tales may in fact be just as dark but not perceived as such because of this cultural association with the idea of a 'fairy tale' being somehow light and fluffy.

Finally, "Lilo and Stitch" is not a musical.

You read that right. Not a musical. One of the characters sings a song, and there is dancing, but it's in the context of singing someone to sleep, and little girls practicing hula for a recital. There is lip sync'ing to Elvis tunes, and a musical interlude where everyone's enjoying surfing and one of the movie's musical themes takes more of a center stage, but no big production numbers.

Ohana means family. The film is definitely worth seeing.

Saturday, July 05, 2003

*bang*bang*bang*"Yes"*bang*bang*"Yes"*bang*bang*


Big Talk [re: Bush's "bring it on" quip]

Patrick Nielson Hayden, in the comments section:

I like Dean, too, not because his positions match mine perfectly (they don't -- I'm further to the left on some issues and more of a cranky libertarian on others), but because he articulates a civic Americanism in which someone like me actually exists. I don't doubt that a President Dean would regularly annoy me. I doubt very much that his decisions would have me wondering whether I wanted to remain an American citizen.


This is where I take my shoe off and pound it on the table, Kruschev-fashion, whilst yelling "Yes" loud enough to frighten the neighbors. (And they're pretty relaxed, for the most part.) The Bush Administration and its attendant Big Christian Money has Unemployed Agnostic Me frickin' scared. Scared they're turning my country into something so different, so contrary to its founding ideals, that I won't be able to subscribe to those ideals and still call myself a patriotic American. And I'll tell you, push comes to shove, it's not the ideals I'll give up.

Not that the Bush Administration is the only thing wrong with this country[*], but I'd sure like to be employed all twelve months of a year, y'know?


[*] There's the lawsuit-feeding frenzy, which itself is an artifact of the refusal to take personal responsibility for anything, which is probably related to a zillion things, and New Math to boot. And there's the desperate need for campaign finance reform, so someone with an idea can run for major office, without making compromising promises. There's the increasing consolidation of media channels and the US's data feeds, with which the aforementioned B.A. isn't exactly helping. Well, it's helping -- in the wrong way. There's the isolationism of the US from the international community's entertainment and culture, thanks to everything from DVD regioning to slashed arts education budgets in schools.

I could go on. And I'm sure I will.





Dean, Bush. Dean, Bush. Choices, choices.


...In recent months he [Dean] has been called "brusque,","brash","blunt" and "belligerent"; a few more choice words on his part and critics will be questioning whether Dean has the diplomatic skills needed to be the leader of the free world.


and Bush does?

Short-Fused Populist, Breathing Fire at Bush, linked via Medley

Y'know, they're just trying to label him as something ignorable so they can then ignore him. Forget it. This is the candidate to watch for a simple reason: this is the candidate with the people behind him. He's not saying what we want to hear -- he's saying what we want to say.


Friday, July 04, 2003

Dinosaur "Missing Link"


Brontosaurus 'missing link' unearthed

Originally misidentified as the bones of another animal, Antetonitrus ingenipes appears to be the missing link between the sauropods and their mainly two-legged predecessors. Tres cool.

Thursday, July 03, 2003

From the Paramecia Department


SARS and the Flu:

Looks like Toronto's got the chain of transmission for SARS really licked, now WHO is thinking ahead to the next influenza season. Flu looking a lot like SARS, especially to airport personnel. Besides, influenza can kill all by itself, you know.

As the global public health emergency caused by SARS appears close to an end, attention is focusing on the problems that are likely to arise during the next influenza season, when cases of influenza are likely to raise suspicions of SARS. The problems are of major concern, as a high level of suspicion is recommended by WHO at a time when vigilance for a possible seasonal return of SARS is particularly important. Although the behaviour of the SARS virus is impossible to predict on the basis of current knowledge, it is well known that many respiratory illnesses caused by a virus tend to die out when heat and humidity rise and then return when the weather turns cooler. Worldwide, influenza typically infects 10% to 20% of the total population during seasonal epidemics, resulting in from three to five million cases of severe illness and from 250 000 to 500 000 deaths.



Cholera, Again (this time, Liberia):

Between 6-29 June, 586 cases of cholera have been reported from those health facilities still operational in Monrovia. From 23-29 June, 50% of the admissions were from Bushrod Island and central Monrovia. Because of the security situation, exact numbers of cases and deaths are difficult to obtain.
WHO is supporting the Ministry of Health with control measures including mass chlorination in and around Monrovia. WHO is also providing drugs, medical supplies and chlorine to those nongovernmental organizations, including MERLIN and Medecins sans Frontieres (France and Belgium), working in Monrovia.



Kate Hepburn


Jesus. I watched The Lion in Winter the other night. It's an amazing film. That's inaccurate. It's a towering legend of a film, and rightly so. Peter O'Toole as Henry II, Hepburn as Eleanor of Aquitaine, Anthony Hopkins as Richard, Jane Merrow as Alais. Timothy Dalton as Phillip of France, John Castle as Geoffrey, and Nigel Terry as John. Each and every performance is exquisite. Incredible, incredible film.

The larger-than-life passion of Henry and Eleanor - whom he lets out of 'jail' for Christmas Court - the machinations and plotting, amazing deviousness right next to raw emotion. Pride that rivals that which let Heathcliff and Catherine destroy the world, rather than bend and forgive, just once.

Incredible, incredible film. You have to just watch it. You can't describe it to someone else. Just watch it. Then, go back and watch it again, and this time, pay even closer attention.


Wednesday, July 02, 2003

Being the Bully


And refusing to abide by the same rules we want everyone else to follow. I just can't get behind these constant, deliberate assaults on the US's standing in the international community. By the US.

Do we not all live on the same planet? Do we not all care about our air and our food? Do natural disasters not cross national boundaries? How on earth can the richest and most technologically advanced nation ever justify acting as if we are NOT becoming more globalized every day, with every company that does business, every nonprofit health organization flying in supplies, every worker sending home part of their salary, in Zimbabwe or India or Vietnam -- we bind ourselves tighter together into a global community every day.

How can the Bush Administration justify antagonizing and bullying our neighbors?

No matter how much they want to, you cannot turn back time and go back to the age of robber barons and the American West. When the frontier was wide open, fortunes could be made without regard for others, and the poor/serfs/foreigners knew their place. Fuck that.

US cuts aid to Caricom six
U.S. punishes foes in fight over world criminal court
US Hypocrisy Astounding

Tuesday, July 01, 2003

Holiday Cheer


On the bright side, I'm actually going to a 4th of July celebration this 4th of July. Can you say BBQ, boys and girls? This may be my first time doing such as a grownup.

I know, I know -- but come off it, I work in IT! Y'know, IT? Where a 3-day weekend typically means you can get some work done while everyone's gone and still do a load of laundry on Sunday?

So, of course, this 4th of July BBQ is being hosted by -- yep -- a Canadian.

The mind boggles. Well. Not really.

In other news, today is (was, sorry) Canada Day. Happy Canada Day!
Big News


I've been so excited by this newfangled unemployment insurance idea that I just had to get myself laid off so's to try it!

(that was humor, boys and girls)

So, CCPU had truckloads of layoffs, today. My boss was kind enough (thank you) to tell me without waiting for the official tell-me interview an hour or so later. I know you read this blog, so I really do mean it -- thanks. I'm not normally a fan of spoilers, but I feel this was a special case.

I was then left in the envious-to-the-working-class position of being home in time to watch reruns of the Original Star Trek series. See? You're jealous.

Monday, June 30, 2003

No Big Surprise


Top cleric says Iraqis, not U.S., should lead push for constitution

No duh. What, didja think you could just cookie-cutter out a national design for these people without their input?


Iraq's leading Shiite cleric has issued a fatwa opposing the formation of a constitutional council by the American occupation authority, saying Iraqis should elect the drafters of their constitution. The fatwa, or edict, may complicate considerably the plans of the American-led authority here to select a convention to draft a new constitution for Iraq.



Oh, Just Suck My Left One



Bill Frist Being An Asshole

Asked whether he supports an amendment that would ban any marriage in the United States except a union of a man and a woman, Frist said: "I very much feel that marriage is a sacrament, and that sacrament should extend and can extend to that legal entity of a union between -- what is traditionally in our Western values has been defined -- as between a man and a woman. So I would support the amendment."


So, Bill...if marriage is a sacrament, are you suggesting that the institution of marriage is, first and foremost, a religious one?

In that event, one can only conclude that in order to maintain proper seperation of church and state, the US must immediately cease to recognize the legal institution of marriage, rather than give preferential treatment to those engaged in a specifically religious union associated with a specific faith.

For, and the Constitution can get quite explicit regarding this subject, you do not get to force your religious views on me, nor do I get to do the same do you.

The latter of which is too bad, a good sacrifice to Quetzalcoatl is just what we need today, to turn things around.

Nevertheless.