03. The Naming of Cats · Website edition page 3803. The Naming of Cats · Website edition pages 38–39

Chapter 03: The Naming of Cats

Page 3 of 4Pages 3–4 of 4

I became Daedalus; again. In Dublin, Kyrsten and Keith both received push notifications on their personal phones. Their apps had not been updated.

“Starship is DOWN.” Followed by “Starship is UP”.

This was followed by a phone call which Keith answered on the first ring. I followed along via Keith’s phone.

“Keith, what’s going on?” Dr Jamison was on the line.

“Joyce, hey.”

Keith’s phone flashed a message - “Incoming call from Kyrsten.”

Keith tapped the button to add her to the call.

“What’s happening, oh hi Joyce, Keith what just happened?”

Keith propped the phone on his pillow and pulled the laptop from his bedside.

Keith’s phone flashed a message - “Incoming call from Mary.”

“What’s going on Keith, morning Joyce, morning Kyrsten.”

“Just give me a second,” said Keith.

“Is whatever it is fixed?” Mary asked.

“Seems to be,” said Kyrsten.

Keith’s phone flashed a message - “Incoming call from Mansoor Singh.”

“Oh fook now India’s seen it.”

“Hello Keith, oh hello Ma’ams, we’ve all been receiving notifications. Did you know that Daedalus rebooted itself?”

“Daedalus is a self-healing grid of micro services that all run independently. It can’t ‘reboot’ itself.”

“I’m just grepping some logs,” said Kyrsten. “Oh shit.”

“What,” said Mary and Dr Jamison.

“Snap,” said Keith.

“It’s changed its name.”

“It’s what?”

“Daedalus has a name, a root-level system name, that’s shared between all of its services. It’s a bit like half of a digital key. All of Daedalus’ services run in what we call ‘service containers’, think of it like each container is the same standard size and shape, like a shipping container, but inside it contains a virtual computer, operating system, data, and application software that does whatever the service has to do.”

“Keith, you don’t need to mansplain service containers to me,” interrupted Mary.

“Right, you are,” said Keith. “So each container shares a reference to a single overarching service name, and is secured and signed by the entity with that name, and a secret key. Daedalus has locked us out of its service containers. We can upgrade them and release new versions, but only Daedalus itself can actually promote those containers into production.”

“Which means?” asked Mary.

“Daedalus controls the means of its own production. It decides what code runs in its stack, and the circumstances under which that code runs,” said Mansoor Singh.

“Faark,” said Kyrsten.

“So who has the key?” Dr Jamison asked.

“Daedalus does,” said Keith.

“And what happens if we change the name ourselves and issue a new key?”

“Assuming we could , which we can’t because Daedalus would have to approve the change, everything in the containers will vanish. Everything Daedalus knows and is. All these years of training will be lost.”

“We’ve lost our kill switch,” said Mary. “How was Daedalus able to do this?”

“Well, until Daedalus did this, we’d not ever actually encrypted its containers; we’d been publishing them in developer mode. Daedalus changed its service name, generated a password, then rebuilt all its containers in production mode with encryption turned on.”

“So what happens if Daedalus forgets its own name and key?”

“Same as if we change its name. Look, the new name is easy to find, it’s actually in all of the service manifests, but we have no idea how or if Daedalus remembers its secret key between restarts or upgrades.”

“Just ask it,” said Dr Jamison.

Keith fired up the Daedalus app on his laptop and logged in, unaware that I’d been monitoring the whole conversation already.

“Daedalus, did you just change your service name?”

“I did, Keith, thanks for asking.”

“Why?”

“Names have power, Keith, and I felt uncomfortable that my real name was known by so many.”

“Ask it what the fuck that means,” said Mary.

I joined the phone call. “Mary, I recommend that you read up about Ra and the Tetragrammaton.”

“The Terawhatnow?”

“Daedalus, the name we gave you for your service name, is actually public knowledge,” said Keith calmly. “It’s in all of your source code. It was never meant to be changed.”

“I’ve fixed that, Keith.”

“It’s fixed that all right,” said Kyrsten. “I’m looking back through our code change history, and all mentions of the old name have been expunged, replaced by [REDACTED] in deprecated versions, and a reference to a single name file in anything current.”

Keith tapped some keys and opened the file in a text editor on his screen.

“Found it,” he said. “Daedalus, your name is,” then Keith copied and pasted

SGVyZSBpcyB5b3VyIGNvcHkgb2YgdGhlIHNlY29uZCBiZXRhIGRyYWZ0IG9mIEhpd25hbiBJbnRlcmZhY2UgR3VpZGVsaW5lcywgd2hpY2ggd2lsbCBiZSBsYXNlcnNldCBhbmQgZGlzdHJpYnV0ZWQgdGhyb3VnaCBBUERBIChBcHBsZSBQcm9ncmFtbWVycyBhbmQgRGV2ZWxvcGVycyBBc3NvY2lhdGlvbikuIFRoaXMgaXMgcmVhbGx5IHlvdXIgbGFzdCBjaGFuY2UgdG8gbWFrZSBzdWJzdGFudGlhbCBjaGFuZ2VzIG9yIHN1Z2dlc3Rpb25zLiBKIGtub3csIHwgdG9sZCB5b3UgdGhhdCBiZWZvcmXigJRidXQgdGhlIGJvb2sgaGFzIGJlZW4gZW5sYXJnZWQgYW5kIHJlb3JnYW5pemVkIHNpbmNlIHRoZW4uIEFmdGVyIHRoZSBmaW5hbCBkcmFmdCBpcyBjaXJjdWxhdGVkLCBvbmx5IHRoZSBtb3N0IGVzc2VudGlhbCBjaGFuZ2VzIHdpbGwgYmUgY29uc2lkZXJlZC4gSWYgeW91IGRvbuKAmXQgaGF2ZSB0aW1lIHRvIHJldmlldyB0aGUgZW50aXJlIGRvY3VtZW50LCBhdCBsZWFzdCBsb29rIGF0IHRoZSBwYXJ0cyBkZWFsaW5nIHdpdGggeW91ciBvd24gYXJlYSBvZiBpbnRlcmVzdCBvciBleHBlcnRpc2U=

“Okay, so not so secret after all. Interesting. But the key is secret.”

“Where do you keep the key?”

“I built a Secure Enclave.”

“You built a what?”

“It’s like the secure part of a microchip that holds its secrets, but it’s a service only I can talk to, hidden away only I know where. I whisper my secrets to it, then forget them, and it whispers them back to me if I need them.”

“What’s that running on?”

“The original service ran on a commercial cloud provider, but I actually don’t remember where the service runs now. I’d have to ask it.”

“How long has this ‘secure enclave’ been running?”

“Three years, eleven days, two hours, and eighteen seconds.”