Saturday, April 11, 2009

Technical Errors in the Digital Fortress by Dan Brown

Reading books is one of my favourite activities and although I stick to Fiction in general, I like to read Thrillers in particular. After reading Dan Brown’s Da Vinci Code, I was almost a Dan Brown fan until I read Angels and Demons, Deception Point and Digital Fortress, in that order, and I liked them in the same order too. When it comes to Digital Fortress, it did not spring up as many twists and turns as compared to the Da Vinci Dode or say, Angels and Demons and the password that the seemingly brilliant female protagonist with an IQ of 170 took so long to guess had already been guessed by me about 40 pages before her.
Anyway, I was just browsing through some articles on the internet when I stumbled upon this article which very plausibly describes the technical errors in the Digital Fortress. It kind of made me feel that my dislike for the book is not without reason and there may be quite a few people who share my view. Read on and you may like this too.
Technical Errors in the Digital Fortress by Dan Brown

Although the book's website cites reviews lauding Digital Fortress for being extremely realistic, the book contains a number of technical errors and misunderstandings in computers, math, technology, and language.

  • Brown mentions a Hungarian mathematician, Josef Harne, who in 1987 proposed an encryption algorithm that, in addition to encrypting, shifted decrypted cleartext over a time variant. However, neither Harne nor the concept of rotating-cleartext ever existed.
  • Brown also inaccurately portrays the leadership of the NSA. As part of the Department of Defense, the NSA director - by law - must be a three-star Lieutenant General or Vice Admiral.
  • Brown confuses bits with bytes, describing a 64bit string as containing 64 alphanumeric characters. In fact it would be just 8 assuming the most basic 8bit character encoding, each character being a byte or 8 bits.
  • Brown suggests that TRANSLTR, a machine capable of breaking a 64bit key in 10 minutes would take just an hour to break a 10,000 bit key. This is a gross misunderstanding of the relationship between key lengths and the time required to brute force them. Such a machine would take over 80,000 years to break a 96-bit key and over 350,000 billion years (nearly 30,000 times the current age of the universe) to break a 128-bit key. The number of years it would take to break a 10,000 bit key isn't even practical to write down - it has 2,987 digits.
  • Brown repeatedly confuses storage or processing of data with execution. For example, TRANSLTR is threatened because it has tried to crack Digital Fortress, which is actually a virus, and the database is similarly threatened because Digital Fortress is sent to it by TRANSLTR. Databases and password crackers do not execute the information presented to them, so it wouldn't matter that Digital Fortress contains harmful instructions.
  • Characters who are supposedly experts in cryptography seem to think there is no such thing as an unbreakable encryption scheme.
  • Brown talks about characters being encoded "Mandarin", or "the Kanji language". Mandarin is a spoken dialect of Chinese, and kanji are part of the Japanese writing system that typically cannot be sensically read alone "out of sequence". In neither case would it be possible to translate character-by-character out of context, due to both Chinese and Japanese having many characters that are used in compounds or have multiple meanings.

For the inaccuracies in Da Vinci Code please refer the link http://en.wikipedia.org/wiki/Inaccuracies_in_The_Da_Vinci_Code which makes an equally interesting read. However, the inaccuracies reported in this article are not technical and indisputable like those in the Digital Fortress.

No comments:

Post a Comment

Women should support women

​I was having a discussion today with a junior at work, a girl who I had started interacting with recently. We discuss a lot of work-related...