Wednesday, May 24, 2006

Nick S

7 comments:

n-stanford said...

Digital Fortress

HOW DAN BROWN USES PEDANTIC GIBBERISH INORDER TO RAISE HELL AND MISLEAD IGNORANT PEOPLE: or Why I Hate Dan Brown.

Part1

I picked this book because it was a Dan Brown book, and I knew that it would be at the least entertaining. I have a very complicated love/hate relationship with Dan Brown. I think he is a highly talented suspense writer, and that he only keeps improving with each new novel; however, he tends to take certain “artistic liberties” with well established facts in order to add technical aspects to his novels as well as add secrets he wishes to expose. The DaVinci Code had a few minor embellishments in order to strengthen the claim that Mary Magdalene was Jesus’ wife. These were almost like white lies. He took ideas out of context and presented historical hypothesis as proven fact. Again, its annoying and distracts from the story when you notice these inaccuracies, but while reading the DaVinci Code, I was able for the large part to over look them and judge the book on the merits of its story alone.
I don’t think that I’ll be able to do that with Digital Fortress. I know a little about computer programming, not nearly as much as the characters that are supposed to be experts in the book, but I knew enough to realize that something was horribly wrong when the premise of TRANSLTR and the “brute force” method were being explained. I began to become suspicious when I noticed some relatively minor factual errors. In the book, it says that ASCII consists of 256 characters, but it actually only has 128 different characters. Also, when they talk about a 64-bit integer encryption key would not be 64 characters long. It will probably only be 8, because each character in ASCII is going to use 8 bits. Considering that these cryptographers are supposed to be the best in the world, they already had lost all credibility in my view. At one point, Fletcher listed some encryption algorithms currently available on the market. They were PGP, Diffie-Hellman, ZIP, IDEA, and El Gamal. I hadn’t heard of any of these except ZIP, which I knew for sure was not even a program. It is a file format for data compression. I looked up all of the others and IDEA and ElGamal (note: ElGamal is one word but is spelled as two in the book) are the only actual encryption programs.

TO BE CONTINUED…

n-stanford said...

Digital Fortress
2

During Fletcher and Strathmore’s conversation, it is explained how public-key encryption programs work. It says that the two clients use an agreed upon key. This logically sounded wrong to me, so I looked it up and sure enough, the grand feature of public-key encryption systems are that they do not need an agreed-upon key to decrypt a message. Also, another little problem is that with every character added to an encryption key, the time necessary to decode it should increase by an order of magnitude. Thus, if TRANSLTR were able to crack a 1000 character key in 10 minutes it would take it 100 minutes to crack a 1001 character key.
My main problem, however, is that the premise of TRANSLTR itself. It shouldn’t work. Susan Fletcher cites the Bergofsky Principle, which states that given enough time, a computer will eventually find the correct key. Besides the fact that this principle is made up and that Bergofsky never existed, it also completely wrong. If the algorithm was simply searching for the correct key to decode the message, then the principle should stand up, however, if there were factors other than the key needed to decode the message it would not work. Digital Fortress would be one of those encryption methods that would not work, but the main weakness is that encryption methods more effective than Digital Fortress have been around since the early 1900s and were already widely used in e-mail encryption when the book was published. This brings me to the problem with Digital Fortress itself. Basically, the paragraph describing how Digital Fortress works is a bunch of gibberish (I know because I looked up many of the terms used in the paragraph and they don’t really exist). The basic idea is that the encryption method constantly changes the actual message so that even if you got the correct key, the algorithms in TRANSLTR would be unable to realize that it had gotten the correct key. Logically, this leads to the problem of how the person receiving the message will figure out what the message says if it is constantly being changed. The only possible way would be to know how the text mutates over time, the time it was created, the time it was receive and the total elapsed time. This information would have to be included in the program un-encrypted (because how else do you use it to decrypt the rest of the message?) and thus anyone intercepting the message would have enough information to decrypt it. Also, the idea that the message could be perpetually mutating is absurd. For a process like that to occur, the encrypted file would have to be perpetually executed, which is impossible while it is in transit or being decrypted. Let’s say that it is perpetually mutating inside of TRANSLTR at the expense of TRANSLTR’s own processors, the information for the mutation would have to be included in the actual program and wold thus be available to the NSA who wold then be able to decrypt the message with ease.
Wow, well that was negative. My next blog post will be why Dan Brown is a good author.

n-stanford said...

As I said earlier, I have a love/hate relationship with Dan Brown, but with all my complaints about him, I have to hand it to him, he is the best suspense writer that I have ever read. This is his third book that I have read. The other two, The Da Vinci Code and Angels and Demons, are set up in a similar format. The books are around three hundred to four hundred pages long and have lots of little chapters. This is a great method for suspenseful novels for a few reasons. The short chapters make it easy to find places to stop reading, but they also make it easy to pick up the book again. One thing that makes it hard for people to read is that if they stop in the middle of a long chapter, they have a hard time remembering what is going on when they start again. Another advantage of short chapters is that it is easy to switch between several plots. All of Dan Brown’s books that I have read so far have many different things going on with different characters at the same time. With short chapters, you constantly come back to some of the smaller characters and they do not get lost in the jumble of the main plot. The style also adds a lot to the book’s ability to grab you and not let you stop reading. With the small chapters and the multitude of plots, each chapter can cut finish with some kind of small twist that will make you eager to find out what happens next. However, what happens next isn’t in the next chapter. It is a few chapters later so you go and read the other chapters and after each chapter is another twist, so you want to see what happens next in each of these.

Next time I will talk about the merits of the story as well as the puzzle aspects in the book.

n-stanford said...

Digital Fortress is full of surprises and plot twists. During the coarse of reading the book, characters appear good, are revealed to be bad, and later are shown to be good at heart. People’s motives are clouded over, and, as the book progresses, you are forced to reevaluate the characters. This makes for an entertaining plot, but if you have read a few of Brown’s book before, most of the major plot twists are apparent fairly early in the book. The DaVinci Code and Angels and Demons both had a character who gave advice to the main character and was used to reveal some of the secrets that Dan Brown was hoping to rake up writing the book. In both cases, these characters were the chief instigators in the plot. When Strathmore was introduced and started explaining about TRANSLTR, I knew right away that he was bad. Even though I knew he was going to be revealed as an antagonist later in the book, I was clueless to his motives and the extent of his scheme, so I had fun trying to piece that together. Piecing clues together is also another hallmark of a Dan Brown book, and even though Digital Fortress had less puzzles than other books, it still had a few. These puzzles are fun and normally the way to solve them was mentioned earlier in the book, as in the case of the last code at the end of the book. Puzzles provide another level of interaction between the book and the reader and were actually my favorite part of the book.

n-stanford said...

Since I have only barely written about the book's plot, this blogpost is going to be dedicated to the plot, mostly to prove that I read it.

Susan Fletcher is a cryptographer with the NSA, who is suddenly faced with an unbreakable code designed by former, but disenchanted, NSA employee Ensei Tankado. While her boss clues her in on the details, her fiance has flown to Spain in the hopes of recovering Tankado's ring, which has the pass key for the encryption algorithm. Throughout the book, as he attempts to find the ring, he is relentlessly pursued by a deaf assassin. Susan tries to find Tankado's North American contact through an e-mail tracer, while two other people come into NSA. Greg Hale, aborts Susan's tracker leading to suspicions that he is NDAKOTA. A Sys-sec complains about a virus inside of TRANSLTR, to Strathmore's dismay, and is mysteriously murdered by presumably Hale. The power goes out and Hale, Fletcher and Strathmore are stuck together in Crypto. Eventually, Strathmore admits to knowing about Digital Fortress and trying to sabotage it so that the NSA can easily crack it. Strathmore also kills Greg Hale. TRANSLTR melts down and everyone realizes that Digital Fortress was actually a virus designed to force the NSA to go public with TRANSLTR. If they cannot find the pass key, the entire government archive will become available on the internet. David has found the ring, but it does not have the passkey on it. However, there were orphans in the code, (coincidently, if they could find "orphans" in the code, that means that they have access to the code and that should have been able to find the kill switch easily) and with some quick decryptive work, the passkey is found David and Susan get married. Oh yeah, Strathmore was crazy-mad about Susan, and had hired the assassin to kill David, but he had also gone out in TRANSTLR's fiery inferno.

n-stanford said...

I kind of hit a wall in regards to what to write about. I finished the book after I wrote my second blog post, and I have already summarized the book. A good idea, when you have to write about a book, is to describe what you would do if you made a movie of the book. Well, first things first, I think Jodie Foster would do an excellent job playing Susan, however, I also admit that it is shameless type casting. Matthew Mcconaughey can be David Becker. This is starting to sound a lot like the movie Contact to me. I would maybe write Becker out of the script. This may have been a waste of a blog post but -cross my heart- I sincerely tried.

n-stanford said...

Here is an interesting little paranoid thought: maybe, maybe, Dan Brown purposefully put his errors into the book -not as merely artistic liberies- but actually, they might be part of a dubious plot to appeal to people who actually know a lot about computer science. If you were a computer expert, (and, by the way, I am basing most of this off of my own introspection) and you non-technical friend asks if you know about TRANSLTR or something like that, and you realize that what he is talking about is complete trash, you might read the book just to get the pleasure of showing how smart you are by going through and nailing Dan Brown on all of his errors. Eventually, a really high profile NSA guy comes along, and the NSA are a little upset with the book, so they debunk a lot of it on television or in a newspaper or maybe just on some math-science-computer fan website. Instant publicity. Look at the Da Vinci Code. The factual exagerations put it into the media spotlight to begin with, thats publicity and more people by the book. Suddenly, you have experts debunking the book, more publicity. Then you have people that will start arguing that the point was true, completing ignoring if the text was accurate or not. Soon there is a fire storm of controversy, and every time there is a new development, journalists always go back to the book. Soon you have regular people debating it, some who haven't even read the book. Every time the issue of Mary Magdeline and Jesus is brought up, people talk about the Da Vinci Code, even though there was tons of scholarly work beforehand in support of the theory. Maybe, with Digital Fortress, Dan Brown had an idea of the mayhem he could create. Maybe he was just testing the waters, trying to figure out how he can turn a simple thriller into major controversy, a media powerhouse, and an international bestseller only dwarfed in size by Harry Potter. I know this all sounds a little paranoid, and probably isn't true, but still, Dan Brown is pretty smart and it sounds like a pretty good idea.