It had been the file’s date that had given her away. But in that case, why six messages, and not one?
The automated system had sent six messages because she had been detected in no less than six different ways. A second mentioned that the file size had changed. The other four informed Ynagarh that a change in the “hash signature” had been detected.
What the hell arethose ? Sula wondered. She turned to ask Spence if she knew, but Spence had long since gone to bed.
First things first, Sula decided. Dates were something she understood.
She checked the date on the executive file that had been loaded over her altered file, and found that it had last been changed nine years before.Nine years. The file itself had been created oversix thousand years ago. It was obviously stable and required very little tweaking. No wonder her executive file had set alarm bells ringing.
Sula reheated her tea again and drank a cup while she contemplated the problem. Could the answer be as simple as changing the date on her file? She had the very high privileges that came with Lady Arkat’s account, and found that it wasn’t a problem: she changed the date on the file to nine years before, and when she made a backup file onto her own computer, the altered date didn’t change back to the real one.
And a message would go to the administrators if the file’s size changed: that was clear from Ynagarh’s messages. The program that she loaded into the Records Office computer would have to be the exact same size as the one there now.
She clenched her fists in a cold frenzy. Now she was going to have to go through the program line by line in hopes she could pare out enough redundant programming to make up for the lines she’d added. This wasmaddening …
Rather than even contemplate this task, she dug for a frantic hour through Lady Arkat’s help files and searched through the program’s architecture, and in time discovered what a hash signature was.
The ancient executive file was compiled into a binary form that, in addition to performing its various tasks, was itself an integer. By performing a calculation that was very easy to do in one direction, but difficult to backtrack—say dividing bypi and using the first thousand digits of the remainder—the resulting arithmetical signature—the “hash”—could identify even tiny changes in the file’s size.
Sula opened the file again and let the lines of code scroll in front of her bewildered eyes. She was too tired to think properly. She rose from her chair, stretched, and flapped her arms in hope of bringing a surge of blood into her weary mind. She stepped to the window and gazed down at the street below, the busy life of day much subdued now, the haunt of street cleaners and Torminel.
Sula’s eyes lifted to the eastern horizon, soon to turn pale green with rising of Shaamah. She had bare hours in which to perform her calculations. Somehow, she had to reverse-engineer the calculation that produced no less than four wildly different hash signatures, without knowing what the algorithms were or where they could be found.
She dragged her weary feet back to her desk. The executive file wasancient, she thought. It was so old it might have been written by theShaa …
And then she stopped dead, as she remembered the fondness of the Shaa for prime numbers…
All weariness sizzled away as she made a galvanic leap into her chair. A list of prime numbers was available in a public database, and she disregarded the first thousand as too small, then seized the next nine thousand and ran them against all values in the executive file.
One…The first match appeared in the display.
Two…
Three…
Four.
All the hash numbers were located in the same part of the program, which was clearly the part of the program having to do with alarms and security. She couldn’t have found the alarm program with a month of random searching.
The Shaa weren’t so damned smart, she concluded.
Sula scanned the program with great interest. There were the access codes, which were the key, and the alarm files, which were the lock, and there were the log files that recorded all changes in the system, which was a record of which key went with which lock, and when.
What she had to do, it turned out, was change both the lockand the key. And then the records had to be changed to read,This has always been the lock, andThis has always been the key.
In the next hour Sula added extra code to the executive file. In order, this set permissions on the log files to unwritable, which would prevent her manipulations from being detected, deleted the last line of the log file, which otherwise would have included her previous command, sent a copy of any new password to Sula’s comm, and then set permissions on the log file back to writable, which returned everything to normal
She prepared all the hashes for the alarm files.
Then Sula created a new program that would load her own executive file into the computer at the Records Office, something that would manage the whole procedure a lot faster than could Sula by giving orders or typing commands.
The program had a number of familiar commands, and some that were new: it set permissions on the log files to unwritable, deleted the last line of the log file, engaged all diagnostic programs, updated size and hash information on all alarms, copied her executive file over the old one, altered the dates of creation and modification on her new file to those of the old one, then ended all diagnostic programs and reset permissions on the log files to writable.
She tested the operation several times in her own computer. Then, holding her breath, she triggered her new program.
Sweat prickled on her forehead as she looked at Assistant Administrator Ynagarh’s messages, and saw no message alerting him to anything amiss with his computer.
She let out a long breath. It seemed that she’d got away with it.
Dawn was greening in the east. Sula made a last, obsessive scan of everything once more, just to make certain the file was as she left it, and then broke the connection. She told the apartment’s system to wake her in the morning just before the Records Office opened for business, so that she could be sure to get into the computer on Lady Arkat’s temporary password before it was changed.
As she prepared for bed Sula looked at herself in the mirror and was appalled. Her eyes had deep shadows under them, her hair was stringy, and there were blooms of sweat under her arms. She couldn’t abide sleeping in such condition, so she took a thorough shower. She went into the bedroom she shared with Spence, groped her way to her bed, and fell into it.
For once, oblivion did not take long to reach her mind.
It seemed as if she took only a few breaths before the alarm chimed her awake, and she threw on clothing and ran to the desk. It was broad, brilliant daylight. Spence was making herself breakfast, and Macnamara had already left on his morning errands—as the team’s courier, his task was to check certain public places to find if any messages had been left for the team, and he’d been provided with a two-wheeled vehicle for the purpose.
Sula called the Records Office and used Lady Arkat’s temporary password to gain access to the main computer. Spence silently brought to her desk a cup of heavily sweetened coffee, shortly followed by a toasted muffin and a pot of jam.
The question was how long it would take Lady Arkat to turn up at her desk. If she were like many of the Peers in the civil administration, she might turn up at midmorning, or even after a long luncheon.
Sula opened her hand comm and put it on the desk in front of her. She ate her muffin and asked Spence for another.
She ate her second muffin. She paced. She made more coffee. She emptied her bladder. She brushed her teeth and combed her hair.
She tried to keep from screaming aloud.
Spence stayed very much out of her way.
Lady Arkat turned out to be one of the midmorning Peers. It was just after midmorning, at 13:06, when Sula saw that the head of security had checked in and viewed her morning’s messages.
A few minutes later, Sula’s hand comm chimed. She checked the message, and found Lady Arkat’s new