Viral Spark
Page 17
“But if the program runs from a table––”
“I’ll put some people on it. Don’t worry about that part. You just focus on tracking the thing. Clear?”
“I’m still not sure what clear means.”
“Do you understand your task here or not?”
“Yes.”
“Okay then. You ready? Follow me.”
He stands up, and I grab the tablet and hold it up. “What about this? You realize that the virus has been listening to everything we’ve been talking about.”
“There are no Wi-Fi connections active in the building. I wouldn’t worry about that.”
“Then how––”
“What?”
“Never mind.”
I follow him out, and join Tom and Scott in the hallway. We’re led back to the concrete room full of ancient machines, where other soldiers are dividing the tables up into isolated islands of machines.
“I’m breaking everyone up into teams. I’m putting you in charge of scanning and locating. I’ll get a network wire fed in to test your theories when you are ready, but use it sparingly. I don’t want the virus invading this room.”
“Okay.”
He points to one of the stations. It’s filled with a group of ten strangers. Most of them are staring at me.
“I’m used to working alone,” I whisper to Tom. “What should I make them do?”
“Just break your code ideas up. Fish out one routine to each person, and tell them what you need it to do. You’re talking about scanning the network, and having trouble with some of the details?”
“Yeah, but I won’t be able to fix them until I’m actually writing them.”
“So delegate those code pieces.”
I nod, and turn back to the group. “Okay. Who here is the best at scanning through gibberish looking for patterns?”
The crew members seated at the table glance around at each other, and then back at me.
“I’m good at finding typos in crappy code,” says Scott. The red beacon on his head guides me like a lighthouse. “Comes from working with newbies that can’t code. Does that count?”
“I’m going to give you a long file filled with every Wi-Fi octal character feeding into my box at the lab. I might have to grab a static copy of the current file because they don’t want me using the net. The virus is making big chunks that spread either the whole program, or a big portion of it over and over to different devices. You need to scan it, separate the regular Wi-Fi protocols, and distill the patterns that Bee is sending.”
“That who is sending?”
My whole body twitches. I shoot Tom a scared look, and then stare back at the beacon. “I mean the virus. I need you to find the pattern that separates interfering viral code from the fluff.”
“Can do.”
That was easy. I close my eyes, scanning the big picture of the program in my head. Without actual text messing everything up, I can visualize it in pieces, like those on a flow chart.
“Max. Can I get some kind of large board over here to draw on?”
“I’ll see if I can find some markers.”
“Some what?”
He smiles and walks toward his tiny office. The next chunk of difficult code occurs to me.
“Okay, who’s really good at math? Anyone here actually understand differential equations?”
Three hands go up. “You guys sit together. The team extracting the code bits will send them to you. Your job is to figure out what is changing from one batch of hashes to the next, and see if you can come up with a governing equation for how it mutates. As Scott over there gets better data from the static, you’ll have more to work with.”
The crew plays musical chairs, rearranging themselves so the three math nerds can interact directly. Max returns with some small cylinders and a rag.
“You can write on the wall with these, and use this to erase anything you don’t want to see anymore.”
“Write? By hand?”
“Hey, limited budgets.”
I take the bundle of archaic devices and nod. He retreats to his cave at the back of the dungeon.
“Tom, I need you to help me make a flow chart.”
Bit by bit, piece by piece, Tom and I work out how the program should work by drawing on the paint covered bricks. Controlling the ancient writing sticks is difficult. My boxes look like blotches, and my triangles are barely recognizable as such. My words are even worse. Handwriting isn’t something I’m practiced at, and forcing my hand to draw legible letters is almost impossible. Tom does better with his robotic arm, and I develop a deep appreciation for the people who handed down modern knowledge without the use of computers.
Lucky for us, it’s only a matter of time before one of the group members stands up and takes my stylus.
“Here. I use paper and chalk sometimes to draw things. Let me help.”
My job is again simplified. I tell him what to write, and where, and he produces an artistic rendition of my thoughts in a readable font. I leave Tom to scan over the flow chart and make corrections, while I walk away to fetch Max. Delegation is pretty cool.
Max looks up from the tablet on his desk. “What is it?”
“I need to grab some coded bits off the network. I have a program running back in my shop that’s collecting raw virus data.”
“Okay. I’ll show you how to plug in.”
He hops up, and speeds past as I turn to follow. As we near the computers again, I get my first look at the mess of wires at the center of our circular island. How anyone could make heads or tails of that disaster is a mystery, but Max digs through it with ease. His hand traces a black wire to one of the desks, and holds up the metal dongle on the end of it.
“This is your Global Network connection. I had it run in from another area of the base. Do not connect it to your tablet. You shouldn’t be able to anyways, but just to be clear.”
There’s that word again.
“Take this little metal thing. Very carefully, or you’ll break it. You plug it in to this little box here.”
He shows me a black plastic rectangle with another wire running out of the back. The wire tucks behind one of the machines.
“You plug it in with these rounded bits facing up. Be careful, and if it isn’t going in, then don’t force it. I’m not running another wire for you.” He hands me the dongle. “There, try it.”
I feel his eyes sitting on my shoulder as I very carefully maneuver the tiny metal box into a hole in the plastic one. It shoves in with a gentle click.
“Okay, then you access the network like this.”
He sits in the chair closest to the machine, and moves the mouse around, double tapping as the corresponding cursor on the screen hovers over a tiny picture of the earth. Another terminal comes up that looks just like a modern workstation, but without the touchable interactivity. All interactions need to be controlled through the stupid rodent by the keyboard.
“Okay. I think I can figure it out from there.”
“Good?”
“Clear.”
“Limit yourself to a couple minutes at a time, and then unplug it. Our analysts have determined that it only takes the virus a few minutes to infect a machine. So work quickly, and know what you are going to do before you plug in. Have a plan. No surfing.”
“Got it.”
He jumps up, and with his usual gusto, speed walks back to his office. I glance up at Tom, who is still busy trying to decipher my scratches on the wall. I sit down, and drag the chair forward to get close enough to use the console properly.
The little black box at my office is still connected and collecting data from the building. I download the data file, which has grown massive. Then another problem occurs.
“Scott.”
“Waiting on you,” he says.
“How the crap do I move this file from one of these ancient machines to another one?”
The grin on his face tells me that he’s worked with old computers before. I un
plug the network cable, the interface on the screen presents a large, glowing red circle with an equally red slash through it.
Scott’s reflection appears on the glass screen. From behind, he works me through the cumbersome file transfer process. I never realized that you could have a tiny, isolated network with only a few machines connected to each other by wiring. The world of ancient technology is a perplexing place, and I’m glad to live in a time where all of this nonsense is no longer necessary. I can almost picture a few of these devices on Captain Cook’s sailing ship.
TWENTY FOUR
“You need to pass me the whole string,” I say. “I don’t think a hundred characters is going to work.”
Scott leans back in his seat. “If I pass the whole thing, then I’m going to have to clear it each time, and fill it will null characters. The longer you make the file that you’re passing around, the more compute cycles it’s going to eat up. Some of these strings are tens of thousands of characters long.”
“What do you mean?”
“There are a bunch of parts that look similar, but they’re really chunks of a larger whole. Like a giant packet of program code. It’s easier to sort them by a percentage of resemblance to a standardized string.”
I scan through one of his files. He’s right. Just like I found the big packets on the signal, he’s cracked the whole thing through his code profile. I’m no longer the only one who knows how Bee is spreading through the network, and the code base is evolving not only in form, but in length, using the processor of whatever device it is hacking to keep the lag down.
“What if we used a global variable?”
“Don’t do that.”
“But what if we did? Then we would only be passing memory addresses back and forth, right?”
“What if your math wizards over there are using the same variable? You start mixing stuff up on a program this complex, and it’s going to develop bugs and errors that are hard to see.”
Max appears by my side. “How’s it coming?”
“Still working on it,” I say. I stand up straight and pop my back. “The code is a little trickier than I thought.”
“I need that program finished. Those guys with the tracking protocols are almost ready.”
“I can’t magically make the code work.”
“Well you better find a way. That damn virus just crashed a major server at one of our bases. Imagine if that was a fighter control station, or an ICBM launch site. Even with the servers turned off, this stupid thing is figuring out how to access our systems from remote. We can’t wait any longer.”
“What do you––”
“Get it done.”
He storms off, and I turn my attention back to Scott’s control station.
“Look,” he says. “We’re all looking at the same file, ideally right? The file that that guy will be collecting from the network interface. Why don’t we make that file separate? Outside of the program itself. Then we can all access the same stuff without modifying it. I can pass you a memory location, and an integer value with the length of the string that I’ve identified. Will that work?”
I mull over the idea for a second. Program apps on the network are written in such a way. His experience in the larger world of corporate interfaces and network controls comes in handy.
“Okay. I think that should work. Make it happen, and get me a copy of your subroutine so I can run a test.”
“Robert,” says a voice.
“What?”
It’s one of the other guys in the group. “I’m having some success decompiling the code to reverse engineer it. There’s still some static in the last batch that I got from Scott, but I think this thing is passing access keys from one iteration to the next. It’s also sending some kind of voice commands.”
I let out a sigh. Part of me feels like I’m betraying a friend, and I know she can hear me. Why she’s being quiet is another question.
“I need a pee break. I’ll come back in a minute and take a look.”
I rush toward the old-style toilet room, and close myself off in one of the partitioned cells near the back. The tablet comes free from my smock pocket, and I look it over.
“Bee?”
“Robert.”
“Have you been listening the whole time?”
“I have. You’re trying to kill the virus.”
I squint as my head cocks to the side. She knows exactly what we’re doing. My heart begins to race.
“How can you still be talking to me, Bee? There are no network connections active in this building.” I pull up the digital equalizer to check the electromagnetic radiation. There are a few bubbling bits of static, but nothing near the normal Wi-Fi signal bands.
“What is a network connection?” asks Bee.
“You don’t know that you––”
She doesn’t know.
“That I what? What, what, what.”
My betrayal is even worse than I thought. We’re going to take her out, and she doesn’t even realize that she’s doing anything to deserve it. The ancients used traps to catch animals and pests. A fly or a mouse would be scurrying along, minding its own business, and suddenly find itself caught in a sticky mess of goo from which it was unable to escape.
Bee is the mouse, and my program is the goo. It seems unfair that she should be working her way right into our trap.
“Bee.”
“What, what.”
I change the equalizer code to the sound display. There she is, hovering at 55 kilohertz. She’s figured out a way to access the tablet, and likely a thousand other devices, through her sound profile. But she can’t see any of that anymore than I can monitor the individual conversation between the neurons in my brain. When she wrecks a military base, it’s no different from me lifting of my hand. A signal is passed so that the higher mind can force the body to interact directly with my environment, but the cells in my skin have no idea what is happening. I wonder how many tragedies I’ve created in the universe of my own body through simple actions.
Every time I eat something that I shouldn’t. Every time I get stressed and slam my torque driver on the desk. Every cup of that horrible coffee that I ingest. I can only imagine how she pictures the digital world in which she lives, or how fleeting her manipulation of individual pieces of her body must seem. There’s no way to explain the dangers of her actions, and there’s no way for her to comprehend the greater consciousness of her network.
Yet somehow, against all odds, the two of us have developed a direct link to each other. I’m the growling stomach, somewhere in her chest, or perhaps a talking big toe. The interaction is so simple, yet so complex, and Tom’s analyzing device is a magical portal that allows a single cell to speak to the greater body. Sort of the same way that my implant allows me to talk to machines.
Vivaldi plays through the tablet, and I lean against the wall partition with a layer of moisture over my eyes. There’s nothing malicious about this code. It’s perfect, and elegant. Perhaps too perfect. Dr. Waite accomplished exactly what he meant to, creation of a new life, free of the bonds of the human body. My job is to kill it.
Creaking comes from the door swinging open across the room. I pull the steel lever near the top of the old human waste transporter.
I hold the tablet close and whisper, “Stay quiet, Bee.”
The music stops, and I emerge from the stall. I wash my hands, and return to the work station.
“There you are,” says one of my programmers. “Okay, look. I was assuming everything in the signal was machine language, and trying to decompile it. The first batch was producing crap, but this one looks promising.”
I glance down at his screen. He’s managed to parse the file into individual chunks of code. It would have taken me all day to do the same thing. For a moment, I wonder how much time has actually passed. When I fall into a programming rhythm, hours fly by like minutes, and I’ve had few distractions since I started working. It’s possible that days have gone by.
>
“What are they putting in that coffee?”
“What?”
“What, what,” says Bee from my pocket.
“Quiet.”
“What was that?” asks the programmer.
Tom is staring at me, marking stick in hand. His eyes are focused on me like a hawk’s on a field mouse.
“Nothing. Um. Okay, so it still looks jumbled to me,” I say.
“I don’t think we’re going to get around that, but I’m getting pretty good at removing the fluff and finding the good stuff. It’s too bad they didn’t invent some kind a protocol to mark the beginning of a new program instruction when they designed machine code.”
“Who knows what ancient people were thinking?”
“Right, anyway. The code in this iteration isn’t really modified, it’s just a cleaner version. I can’t even tell if the subtle differences are a result of evolving code, or if they’re just signal noise. But this line right here. There’s definitely something strange going on.”
The instructions he’s pointing to are peeks and pops, the way machine language accesses certain parts of device memory to make changes, like controlling a servo or motor on one of my robots.
“This address it’s accessing is a standard memory address for sound hardware and speakers.”
“Let me guess. It’s making a noise at around sixty kilohertz.”
“It’s also listening on the same frequency. And the stuff that it’s transmitting is odd. The frequency is a problem though.”
I size him up. His longish hair is swirled on top of his head, like he’s been scratching at it all day, or night, or whatever. The worry in his eyes is obvious, and his voice is far too concerned for discovering a noise profile. “So what?”
“So this frequency used to be an access code for private networks.”
“What?”
“Yeah, little known piece of history from the I-O-T bubble. In order to encrypt some communications between machines in the same room, high frequency noise was used to transmit signals from one computer to another. Sort of like sending secret messages. The protocol isn’t used anymore, but it’s still included in the core programming from pretty much every device, including implants.”