To the Cryptonomicon!
* * *
Randy is mounting a known-ciphertext attack: the hardest kind. He has the ciphertext (the Arethusa intercepts) and nothing else. He doesn't even know the algorithm that was used to encrypt them. In modern cryptanalysis, this is unusual; normally the algorithms are public knowledge. That is because algorithms that have been openly discussed and attacked within the academic community tend to be much stronger than ones that have been kept secret. People who rely on keeping their algorithms secret are ruined as soon as that secret gets out. But Arethusa dates from World War II, when people were much less canny about such things.
This would be a hell of a lot easier if Randy knew some of the plaintext that is encrypted within these messages. Of course, if he knew all of the plaintext, he wouldn't even need to decrypt them; breaking Arethusa in that case would be an academic exercise.
There is a compromise between the two extremes of, on the one hand, not knowing any of the plaintext at all, and, on the other, knowing all of it. In the Cryptonomicon that falls under the heading of cribs. A crib is an educated guess as to what words or phrases might be present in the message. For example if you were decrypting German messages from World War II, you might guess that the plaintext included the phrase “HEIL HITLER” or “SIEG HEIL.” You might pick out a sequence of ten characters at random and say, “Let's assume that this represented HEIL HITLER. If that is the case, then what would it imply about the remainder of the message?”
Randy's not expecting to find any HEILHITLERs in the Arethusa messages, but there might be other predictable words. He's been making a list of cribs in his head: MANILA, certainly. WATERHOUSE, perhaps. And now he's thinking GOLD and BULLION. So, in the case of MANILA he could pick out any six-character string from the intercepts and say, “What if these characters are the encrypted form of MANILA?” and then work from there. If he were working with an intercept only six characters long, then there would be only one such six-character segment to choose from. A seven-character-long message would give him two possibilities: it could be the first six or the last six characters. The upshot is that for a message intercept that is n characters long, the number of six-character-long segments is equal to (n–5) . In the case of a 105-character-long intercept, he will have 100 different possible locations for the word MANILA. Actually, a hundred and one: because it's of course possible—even likely—that MANILA is not in there at all. But each of these 100 guesses has its own set of ramifications vis-à-vis all of the other characters in the message. What those ramifications are, exactly, depends on what assumptions Randy is making about the underlying algorithm.
As far as that goes: the more he thinks about it, the more he believes he has some good stuff to go on—thanks to Enoch, who (in retrospect) has been feeding him some useful clues when not spamming him through the bars with theogonical analysis. Enoch mentioned that when the NSA started attacking what later turned out to be the fake Arethusa intercepts, they were going on the assumption that they were somehow related to another cryptosystem dubbed Azure. And sure enough, Randy learns from the Cryptonomicon that Azure was an oddball system used by both the Nipponese and the Germans that employed a mathematical algorithm to generate a different one-time pad every day. This is awfully vague, but it helps Randy rule out a lot. He knows for example that Arethusa isn't a rotor system like Enigma. And he knows that if he can find two messages that were sent on the same day, they will probably use the same one-time pad.
What kind of mathematical algorithm was used? The contents of Grandpa's trunk provide clues. He remembers the photograph of Grandpa with Turing and von Hacklheber at Princeton, where all three of them were evidently fooling around with zeta functions. And in the trunk were several monographs on the same subject. And the Cryptonomicon states that zeta functions are even today being used in cryptography, as sequence generators—which is to say, machines for spitting out series of pseudo-random numbers, which is exactly what a one-time pad is. Everything points to that Azure and Arethusa are siblings and that both are just implementations of zeta functions.
The big thing standing in his way right now is that he doesn't have any textbooks on zeta functions sitting around his jail cell. The contents of Grandpa's trunk would be an excellent resource—but they are currently stored in a room in Chester's house. But on the other hand, Chester's rich, and he wants to help.
Randy calls for a guard and demands to see Attorney Alejandro. Enoch Root goes very still for a few moments, and then shunts directly back into the loping, untroubled sleep of a man who is exactly where he wants to be.
People smell all kinds of ways before they have burned, but only one way afterwards. As the Army boys lead Waterhouse down into the darkness, he sniffs cautiously, hoping he won't smell that smell.
Mostly it smells like oil, diesel, hot steel, the brimstony tang of burnt rubber and exploded munitions. These smells are overpoweringly strong. He draws in a lungful of reek, blows it out. And that, of course, is when he catches a whiff of barbecue and knows that this concrete-coated island is, among other things, a crematorium.
He is following the Army boys down black-smudged tunnels bored through a variegated matrix of concrete, masonry, and solid rock. The caves were there first, eaten into the stone by rain and waves, then enlarged and rationalized by Spaniards with chisels, jackhammers, blasting powder. Then along came the Americans with bricks, and finally the Nipponese with reinforced concrete.
As they work their way into the maze, they pass down some tunnels that apparently acted like blowtorches: the walls have been scoured clean as if a torrent had been running through it for a million years, silver pools lie on the floor where guns or filing cabinets melted into puddles. Stored heat still radiates from the walls, adding to the heat of the Philippine climate, making all of them sweat even more, if that is possible.
Other corridors, other rooms were nothing more than backwaters in the river of fire. Looking into doorways, Waterhouse can see books that were charred but not consumed, blackened papers spilling from burst cabinets—“One moment,” he says. His escort spins around just in time to see Waterhouse ducking through a low door into a tiny room, where something has caught his eye.
It's a heavy wooden cabinet, mostly transmuted into charcoal now, so it looks like the cabinet's gone but its shadow persists. Someone has already pulled one of its doors off its hinges, allowing black confetti to flood into the room. The cabinet was filled with slips of paper, mostly burned now, but thrusting his hand into the ash-heap (slowly! Most of this place is still hot) Waterhouse pulls out a bundle, nearly intact.
“What kind of money is that?” the Army guy asks.
Waterhouse pulls a bill from the top of the bundle. The top is printed in Japanese characters and bears an engraved picture of Tojo. He flips it over. The back is printed in English: TEN POUNDS.
“Australian currency,” Waterhouse says.
“Don't look Australian to me,” the Army guy says, glowering at Tojo.
“If the Nips had won…” Waterhouse says, and shrugs. He throws the stack of ten-pound notes onto the ash-heap of history and carries his single copy out into the corridor. A necklace of lightbulbs has been strung along the ceiling. The light glances off what looks like pools of quicksilver on the floor: the remains of guns, belt buckles, steel cabinets and doorknobs, melted down into puddles in the holocaust, now congealed.
Читать дальше