kirisutogomen: (Default)
kirisutogomen ([personal profile] kirisutogomen) wrote2009-09-29 05:07 pm
Entry tags:

Renowned author Dan Brown staggered through his formulaic opening sentence

(Subject line ripped off from Geoff Pullum at Language Log)

There is no particularly good reason for me to complain about Dan Brown, other than a general project to desensitize myself to the inescapable unfairness of reality. I guess it's vaguely connected to the somewhat recent release of The Lost Symbol (review here). The best explanation, though, is that I have a tremendous amount of actual work to do, and am therefore wasting time as thoroughly as can be imagined. Nonetheless:

First, if you want to read people much funnier than me tearing Dan Brown into little pieces, the Vulture Reading Room is the place for you. I couldn't help but be reminded of [livejournal.com profile] firstfrost's mini-rant about ambigrams in Angels and Demons: "Heart pounding, Anderson took out a sheet of paper and drew a quadralinear grid. The ancient Foursquare of Communal Exegesis. In all his years as a book critic, he’d never had to use this. In fact, he’d always dismissed it as a myth." Seriously, maybe you should stop reading my crap and go read their much better carps.

Before either Angels & Demons and The Of Vinci Code there was Digital Fortress. Dan Brown loves ciphers, but he doesn't know what they are.
Encryption algorithms were just mathematical formulas, recipes for scrambling text into code. Mathematicians and programmers created new algorithms every day. There were hundreds of them on the market—PGP, Diffie-Hellman, ZIP, IDEA, El Gamal. TRANSLTR broke all of their codes every day, no problem. To TRANSLTR all codes looked identical, regardless of which algorithm wrote them.
Holy shit, the NSA can unzip ZIP files? We're totally fucked!
"I don’t understand," she argued. "We're not talking about reverse-engineering some complex function, we're talking brute force. PGP, Lucifer, DSA — it doesn’t matter. The algorithm generates a key it thinks is secure, and TRANSLTR keeps guessing until it finds it."
Yes, this makes sense. A computer that just brute force tries all the keys for every possible algorithm. It can test keys at the breakneck speed of 30 million keys per second. People often use 256-bit keys, right? So traversing half the keyspace for a single algorithm shouldn't take longer than, oh, 1061years. (This will be problematic, as the half-life of a proton is probably no more than 1041years, so there won't be any atoms left by the time the computer is 0.0000000000000001% done. And you probably guessed the wrong algorithm anyway.)
"Exactly. An algorithm that resists brute force will never become obsolete, no matter how powerful code-breaking computers get. It could become a world standard overnight."
Dear Lord, can you imagine the consequences if such an algorithm were invented? Civilization would crumble in a matter of weeks.

Of course, the actual "unbreakable code" in Digital Fortress uses an extraordinarily clever technique that is the equivalent of taking the plaintext, throwing it away, generating random noise, and calling the noise the encrypted message.

Someone here will say something like "hey, lighten up man, it's fiction." Yes. It is fiction. If you're reading The Hunt for Red October and you start to read about an imaginary "caterpillar drive" that makes a submarine virtually undetectable by sonar, you're OK with that. It's fiction. How tolerant would people be if Hunt for Red October had revealed halfway through that Captain Ramius's plan involved using the caterpillar drive to fly the submarine to Brigadoon where they disguise it as a kayak, and then sneak into Montana undetected because they were all wearing clown noses and singing "We're a hedge, move along, or maybe we're trees from the enchanted forest, whatever, just look somewhere else!" Even if 500 pages later it turns out that Ramius is actually completely psychotic and living in 100% Delusionland, you'll never know, because long ago you said "fuck this shit" and threw the book into the garbage disposal.

If Iron Man 2 gets a bunch of things totally wrong, like saying the distance from Los Angeles to Las Vegas is 150 miles or that the Netherlands is called the "Kingdom of Holland", complaining would just be annoying. If the new Iron Man suit is made of magic papier-mâché that can resist nuclear explosions with the power of love, complaining would be entirely appropriate. Any fiction makes implicit claims about what it will or will not spend effort on to ensure accuracy or plausibility. If a Hellraiser movie gets some crypto stuff horribly wrong, no big deal -- hey look there's a guy with pins all over his face. But a book that is explicitly about crypto, with major plot points revolving around aspects of encryption algorithms, creates a reasonable expectation that the plot-central assertions make sense. To do otherwise makes a mockery of every author who ever does any actual research.

I do struggle with the question of how to distinguish a reasonable but false statement from an absurdly stupid one. What is it reasonable to assume people know, and more importantly, how much logic can we reasonably expect people to be comfortable with? Eh, too hard. Let's just go back to making fun of Stupid Author Guy.

Apparently NSA employee passwords are five characters long and yet remain unbreakable, while their computer can chew through 256-bit keys no problem. The NSA uses plain vanilla FTP. Also everyone there uses wireless keyboards and employees can take their computers home. And you can bring your own cell phones to work.

People write computer viruses that can infect custom operating systems that only run on a single unique machine. They can code in secret programming languages that they've never heard of before. They can also write object code directly and cause it to execute by sending it as the body of an e-mail message.

"Enigma was history's most famous code-writing machine — the Nazis' twelve-ton encryption beast." Correct, assuming that by "ton" he means "kilogram".

The secret NSA supercomputer that can test 30 million keys per second without knowing the encryption algorithm has three million parallel processors, and lives in a secret underground bunker with a 30'x40' video display on one wall. The bunker is 214 feet underground, and its construction required the removal of 250 metric tons of soil. (Apparently there is no rock under Fort Meade, just lots and lots of dirt.) If the bunker is at least thirty feet tall and forty feet wide, but the space only held 250 metric tons of dirt, the bunker is about five feet long. (And the computer with three million processors fits in that space along with its cooling system, which apparently uses Freon. Most of the characters in the book can simultaneously fit in the bunker, too, but that's not a problem because they're all two-dimensional (at best) so they don't actually take up space.)

You can make semiconductors out of titanium-strontium, you can weld ceramic, and fires produce oxygen.

Next, "Dan Brown is an Idiot".

Let's see if I can successfully embed the relevant pages from Digital Fortress. (Guess not. Here it is at Google Books, pages 9 and 10.)

Ah yes, "Mandarin symbols" and the "Kanji language" -- just like the American alphabet and our lowercase language. And the cleverness of having the linguist translate the characters completely out of order is flabbergasting. After all, once you've got "enteretuantmancewordparofbetionisecdencetriesoerlitdevculportforthecomsortencesadifftheicthatimperwhichonwhaterituretiveicouneccussinnomthereanicinturementdiffvardisusedoisarenomwaysalopralsourceculaevtweenin" you can immediately read it without any trouble.

But those are mere quibbles compared to the thing that really irritates me -- a total failure to think about the action of the scene. How the hell would you decrypt into a plaintext where you didn't know whether it was Chinese or Japanese? I guess if you knew the algorithm and the key, but didn't know which language the original was in, that could....how the hell would you get into that situation? You'd have to somehow know that the original was in Han characters rather than Cyrillic or Cherokee or whatever, but not the language, and then you'd have to guess that it was Chinese but not be aware that you'd made a guess....WTF.

Let's cut the guy some slack, though. One of the most common criticisms of Dan Brown is that he is the world's leading transgressor of the injunction to "show, don't tell". For example, in this list of Dan Brown's 20 worse sentences is this literary gem:
Although not overly handsome in a classical sense, the forty-year-old Langdon had what his female colleagues referred to as an ‘erudite’ appeal — wisp of gray in his thick brown hair, probing blue eyes, an arrestingly deep voice, and the strong, carefree smile of a collegiate athlete.
So here in Digital Fortress Brown is trying to follow the stricture -- he'll show us what a great linguist Becker is, rather than doing his usual "world-renowned linguist Becker strode confidently to the next piece of plot in his size 8 Asics Gel-Fortitude 3 shock-attenuating orthotic-friendly running shoes."

So he goes to the NSA, where the top cryptographers in the world are deciphering a message in either Chinese or Japanese, but are unaware that those are two different languages (or that kanji are derived from Han characters, or something)? And the way Dan Brown demonstrates what fucking big deal his linguist protagonist is is not by having the genius expound on the possible connection between the Vai syllabary and the Cherokee syllabary or anything actually esoteric, but by having him point out that Japanese and Chinese are different languages (or that the Mandarin alphabet is different from the Japanese numbering system, or something)?



By the way, the whole list of 20 terrible sentences is pretty funny, e.g.,
As a boy, Langdon had fallen down an abandoned well shaft and almost died treading water in the narrow space for hours before being rescued. Since then, he'd suffered a haunting phobia of enclosed spaces - elevators, subways, squash courts.
Other enclosed spaces include toilet cubicles, phone boxes and dog kennels.

Post a comment in response:

This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting