… previous episode …
Henry was pale.
We heard an Arts major swearing behind us. They have dreadful language, Arts majors. “What the **** is wrong with this iPad?”
Henry bolted over to the girl, and stared at the screen, horrified, numbers pouring down its Retina display and mixed in the middle of it all, the dreaded words “acquiring node”.
“Switch it off, switch it off, switch it off!” Henry tried to grab the iPad out of her hands and turn it off, which was probably not wise.
“Hey, get off!” she yelled, and grabbed back.
“Switch it off!”
“Okay, okay!” She pressed the power button and the tablet screen flicked off.
“No! That’s not enough, it’s gotta be powered down, now!” Henry cried.
I left him to it, and looked around the café. There were only a handful of other students and staff there, but they were all using computers or phones or tablets, and they were all, every one of them, staring at their screens in consternation. I raced around and asked them – ordered them – to switch them off.
Under a minute later, Henry and I met in the middle of the café. All the computers and phones and tablets were off. We were safe. Weren’t we?
No. Over at the counter, we heard the barista talking to himself. “What is up with this thing?”
Henry and I looked at each other. I beat him to the counter. Scrolling down the cash register screen were, of course, the digits from hell, and as I watched, not one, but four “acquiring node” messages scrolled past, seeming to bump into each other in their hurry to make their way up and off the screen. I started to realise it was too late. Mechanically, I reached over and switched off the cash register, as everyone in the café watched.
Henry stumbled out of the coffee bar and into the wide world. It was early, and not many students were around, but those that were, were fighting their phones and tablets. “Oh no,” Henry breathed, “It’s made the jump to the campus WiFi.”
I took charge. “Henry, we’ve got to get to Campus IT and get this switched off before it gets off campus.”
“Oh man, I am in so much trouble…” Henry, at a loss for once in his life, obediently followed me as I ran, leaping up the stairs and diving through the shortcut behind the Engineering department (even in this crisis, my mind briefly flicked over to Jenny – she smiled at me last night!), and arrived, out of breath at the IT building just as an IT tech was making his early way into the building. I realised I knew him, slightly, through interactions in the PC labs when the lab computers inevitably went down. But I couldn’t remember his name.
“You’ve got to switch off the campus WiFi, like, right now,” I panted.
“What? Don’t be silly! Why would we need to do that?” he prevaricated.
“Just pull out your phone,” I said. Sure enough, the phone’s screen was filled with numbers. “It’s a virus,” I explained, “and it’s spreading rapidly!” I thought that more detailed and accurate explanations could wait, though Henry stared at me, aghast, when I said the word “virus”.
I caught the words “It’s not a virus, it’s a worm…” muttered under his breath.
But that was enough to convince the tech. Gerald, that was his name. Together, we ran to the network management centre, burst in, and stopped, horrified. Every screen in the room was filled with numbers, scrolling past faster than we could read. And of course, “acquiring node”. As I looked, I saw one computer that seemed to be spending most of its time acquiring nodes, and its screen was filled with the dreaded message, and only the occasional number, scrolling past faster than we could read. At this rate, the entire University network would be down in minutes.
I just hoped the firewalls would stop Bang from escaping the University. But I was none too confident. Knowing Henry, he’d probably designed in a firewall bridging routine. He always did create perfect code and account for every possibility. Okay, almost every possibility. He missed a big one this time, I thought ironically.
Gerald looked, accusingly, at me and Henry. Henry just slumped against the wall shaking his head and looking as green as a VT420 terminal. It was up to me then. “There’s no time to explain,” I explained. “We’re just going to have to shut down all the computers and disconnect the Uni from the Internet to stop the virus spreading.”
“Whoa, whoa, whoa! I can’t do that! That’s way above my pay grade,” Gerald flustered, “I’m calling in my boss.”
He pulled out his Samsung phone, stared at the numbers marching across its screen, and tossed it aside. “Here’s hoping the PABX is still going,” he muttered. Picking up a nearby handset, his shoulders slumped with relief when he heard a dial tone. Immediately, Gerald speed-dialed the head of Campus IT.
“Better try and bring in the professors, I reckon. This is going to take some big brains to solve,” I suggested.
Gerald glared at me. “Way ahead of you, kiddo. Why don’t you go look after your mate?” He dialled number after number, explained briefly to each the crisis, hung the phone up, and turned to look at us. “Boss has given me the go-ahead to disconnect the campus network. Sit here, and don’t touch anything. I’m going to unplug the fibre now.”
He stalked out of the room. Henry looked up at me. He was just as green as before. “I think I’ve broken the Internet,” he whispered.
“Nah, I don’t reckon it’ll be outside the Uni network,” I reassured him, “we’ll just be expelled, not arrested.”
Moments later, Gerald strode back into the room, followed by his boss, who’d turned up with his tie unfastened and his shirt half buttoned. Clearly Gerald had been able to impress a sense of urgency upon him. He too stopped dead in the entrance, staring at the Network Operation Centre’s various computer screens, all filled with rapidly scrolling numbers, except that one that was filled with rapidly scrolling “acquiring node”. I was really starting to hate that phrase.
“What on earth? Who is responsible for this?” He swung around and bore down on us. “Second year students? Have you been messing with my network?”
I cringed, but Henry mustered his courage, stood up and said, “Actually, sir, that’s not precisely correct. Through an unfortunate series of events, and in fact my completely accidental overlooking of a key …”
“I don’t have time for this,” cried Head of IT, “What I want to know is how are we going to fix this? Have you quarantined the network?” This last to Gerald. Yeah, okay, Henry did sound a bit weaselly that time.
“Yes, fibre links are disconnected, WiFi has been shut down, it should be contained, sir,” responded Gerald immediately.
“Okay, so how do we get this damned virus off my network?”
Henry felt obliged to pipe up again. “Technically, sir, it’s not a virus, because it isn’t attaching to other executable files, but rather is more like a worm, a bit like the Morris worm from 1988 …” I remembered the Morris worm, unleashed on a young and unsuspecting Internet by a less-than-cautious graduate student. Thinking back to the Computer History class from the previous year, I could see that Bang bore some distinct similarities. I just hoped Bang wouldn’t infect 10% of the world’s computers! More worrying to me was the fact that the fact that the creator of the worm, Robert Morris, was prosecuted for releasing the worm. But there’d be time to stress over that later. Henry was continuing, “It continues on by piggybacking on the TCP handshake when connection is established.” Which made no sense to me. I should probably remind you that I am going on my own memory here, and I’ve probably got the technical details all wrong. It was complicated, anyway.
As Henry spoke, the NOC telephone rang. Gerald grabbed it. It was the University Vice Chancellor, calling because not only could he not use his mobile phone, or his desktop computer, but his car had stalled, on the street, on the way into the University, with the same horrid numbers scrolling up the multifunction display in the car. In fact, he was calling on his wife’s ancient Nokia phone which she refused to give up and which to him was looking a more attractive device by the second. Henry and I looked at each other. If Bang had made it onto his car computer, it was definitely out in the wild.
From there, a tidal wave of events took us, and flung us headlong across the pages of history, all in one fateful morning. A television was wheeled into the NOC, and we watched a harried presenter in a makeshift studio (their normal studio computers had crashed, of course) report one network after another succumbing to Bang. Henry watched, silently. It was clear that he’d recovered a bit, because he was no longer green, more of a 1984 Mac white. He was also clearly thinking. I watched, also silently, as events unfolded, like a train wreck, too horrible to look away from. Airports were shut down. The stock market was offline. While some telephones were still working, and most power networks were still up, the companies responsible for those systems were unable to perform even the most basic tasks. All around the world, computers were busy calculating Henry’s fantastic factorial.
Eventually the Vice Chancellor made his way onto campus, on a hastily borrowed bicycle. He clearly had no idea who I was, and just as clearly knew very well who Henry was. Funny that. He convened a crisis meeting, and invited both Henry, as author of the crisis, and I, as honorary co-author apparently (an honour I was anxious to forgo), to sit in and listen. Professor Eisenfaktor was there, as the guru in the department, and frowning at Henry he started with a simple question: “Just how does this worm” (he accepted the term without blinking) “replicate?”
For the third time, Henry started to explain. “It piggybacks off the SYN packet during the handshake, and … “ and my eyes glazed over, again. To be honest, I wasn’t sure I wanted to know how it replicated. The less I knew, the better. “… and the program uses a distributed parallel multiplication algorithm to calculate the next factor, based on the work by Bunimov in 2003.” Henry paused and looked at Professor Eisenfaktor.
“Yes, yes, I know who Bunimov is,” growled Eisenfaktor. “Continue.”
“And anyway, the end of the story is because the program is self-healing, I managed to overlook the fact that it has no way to stop it short of turning off the computer and disconnecting from the network so it cannot be reinstated,” finished Henry.
Professor Eisenfaktor surprised me then by praising Henry. “That is remarkable,” he enthused, “a self-replicating, self-healing, resilient, cross-platform, distributed computing worm, all written in one evening? How many hard problems did you solve without realising it? You’ve got a bright future ahead of you! Assuming you survive this, of course,” he continued, somewhat less encouragingly. “But now, you have created this crisis. To think that no one had spotted that flaw in TCP. So obvious now, is it not? Ach!” (He tended to lapse into a more Germanic turn of phrase as he got more excited – this kept us amused during lectures.) “As I say, you have created this crisis, and now this crisis you shall solve.”
“Ah, I am not sure that is all that wise, Professor,” the VC cut in, “this young man, while meaning well, no doubt lacks experience and I would feel more comfortable if he took merely, say, an advisory role, in any action or steps which we as a University corporate may take in addressing this, which I may say without exaggeration, existential crisis. I have no doubt that even at this minute, the source of this virus, ah, worm, is being hunted down, and I am sure that the authorities will be anxious to speak to this young man in very short order.”
“Precisely,” retorted Professor Eisenfaktor, “and I think you underestimate young Henry here. How long has that flaw in the protocols been there? Decades! And in one evening, Henry, purely in the interests of furthering his, if I may say so, extraordinary algorithm project, has not only identified this flaw, but perfectly and precisely utilised it in the creation of this wondrously beautiful replicating worm, what was it called? Bang? What a clever pun!” The Professor was obviously getting a bit excited, and even I was starting to get the idea that what Henry had created was, indeed, extraordinary, both in its technical beauty, and in the way it so effortlessly overwhelmed the entire planet’s computing infrastructure.
“No doubt Henry has a suggestion?” the Professor finished, looking at Henry quizzically.
“Well, actually,” started Henry, uncharacteristically but perhaps unsurprisingly diffidently, “I do. I believe I can create a program that follows Bang, in its footsteps as it were, and both kills Bang on each system it encounters, and closes the hole in the protocol at the same time.” He paused.
“Go on,” the Vice Chancellor prompted.
“Um, there’s not much more to say, really,” said Henry, “except that I thought we could call the program Crash. Crash Bang.”
“Right.” The VC did not seem amused. “Well, why don’t you and um, your friend, go back to the library and start doing whatever it is you need to do. But don’t you put that computer online until after you have cleared it with the Professor.”
Henry and I stood. I glanced at the television. The President of the United States was now on screen, talking about the crisis, although we could not hear him as the sound was muted. I gulped. Well, if Henry hadn’t been noticed when was growing up, he’d certainly be noticed now. I’d probably end up notorious as well. I wondered if we’d both go to jail, or worse. The entire world was grinding to a halt. Banks had closed their doors. Supermarkets were not admitting customers. Leaders were telling their populace to stay at home and prepare for disaster. And yet, despite this, some phones were still working, and we still had electricity. I didn’t know what would happen if the power went out. I wasn’t sure Henry had enough juice to finish his Crash program.
I’m sure you know the rest. Henry went on to write Crash, even faster than he’d written Bang, and the Vice Chancellor himself held off the police until he’d finished. Solemnly, Henry turned on his WiFi, Gerald switched the Campus WiFi back on, and we watched, entranced, as one after another, the numbers flicked off screens, replaced briefly by a smiling face – Henry thought it appropriate – before restoring the computer, tablet or phone to its usual duties. One by one, networks around the world restored themselves. And in the process, the security hole in the protocol was patched, automatically. And then the Federal Police asked Henry, and I (poor innocent I) to please come with them for a little chat.
All’s well that ends well. Henry is now pretty famous, and some of it has even rubbed off on me, though I don’t think I deserve it. Although many clamoured for a prison sentence, Henry escaped conviction, because, as his lawyer said, it was a simple bug and anyone could see he didn’t have a malicious bone in his body. But Henry and I were both banned from the Uni’s labs for the rest of the semester, which I thought was quite unfair, given I hadn’t done anything.
Henry was mostly disappointed that in the rush he didn’t find out what factorial result Bang had reached before being shut down. But then as he said, even if he knew the answer, it’s not like we could have recorded it anywhere for posterity. Not without using all the computers in all the world.