Start at the Prologue and First Chapter here

Frank had decided to begin at the beginning. He had already examined the structure of BankCoin in great detail and found nothing. Perhaps if he were to review it again, this time from the standpoint of processing transactions, he might discover, or even stumble upon – he wasn’t proud – a crucial flaw he’d missed when he’d examined it as a static piece of software. And where better to start than with the Genesis Block – the very first block of transactions created more than [two] years ago.

That block was part of Frank’s air gapped copy of BankCoin. It didn’t include real, commercial transactions; whoever had created that first block – Schwert, presumably –  had set up several pseudo accounts for test purposes on the development server, deposited some “cash” in each, and then taken BankCoin out for a spin.

Then Frank had a thought. He should look for malware as well as security flaws while he was at it. But before the commercial release, there had been a beta release, and before that an alpha release, and ultimately, whatever hunk of code Schwert had decided to tackle first. He’d need to go back through those versions later to look for malware insertions if he wasn’t 100% confident that he would ferret them out now. And how many versions might that be?

He realized he didn’t know when the banks had jumped on the BankCoin wagon, how many developers had been involved before that, who they were, or really anything at all about the early history of the program. Maybe he should download the beta, or the alpha version instead. The records at GitHub should help him decide that. Leaving aside some value-added services, basically, all GitHub offered was a hosting service where anyone could post code, and then record a notation every time they changed or added to it. It was more or less the same thing as a server at work, except that it was open to the public. He logged on and found the registry.

How about that.

The first copy of BankCoin there was the very copy of BankCoin he’d downloaded. Hmm. BankCoin must have been in a different repository before that, either at GitHub or at some other open source forge. He clicked some more keys. Not at GitHub. At least, not under the BankCoin name. More clicking. Or under Schwert’s name. So where was it?

Delhohn would know. Frank got up and headed towards Delhohn’s cubicle. Delhohn was there, peering at his computer screen.

“Hey, Dirk.”

The programmer turned and peered at Frank over his spectacles but said nothing, obviously annoyed at the interruption.

“Do you mind if I ask you a question?” Frank asked.

“That is a question. Another question, I suppose you mean?”

Frank laughed; Delhohn didn’t.

“Sure,” Frank said. “And maybe more than one. Do you have a few minutes?”

“Why not. What can I tell you?”

“I was looking at the BankCoin logs at GitHub and noticed thefirst version there was the commercial version. Can you tell me where to find the earlier versions?”

“No,” Delhohn said.

Frank eyebrows moved upward. “No, as in ‘No, you won’t,’ or no, as in ‘No, I don’t know?’”

“As in ‘I don’t know.”

“So, who would know?”

“Only Schwert.”

“Are you saying that Schwert developed BankCoin all by himself?”

“That is what is apparently the case. Schwert, it seems, developed BankCoin on his own system and then revealed it to the world. Rather like Satoshi Nakamoto, so it really is not so strange.”

“Well, it is strange to me,” Frank said, “given that the banks adopted it so quickly. It took a long time for BitCoin to be taken seriously. And the version Nakamoto first put up on the Internet still needed a lot of work before anyone used it to even buy a pizza.”

“This is true, but you’re point is what? Blockchain is now widely accepted. And there are of course now many more blockchains to examine. The general approach is well-known and documented. Why should not Schwert build a blockchain on his own?”

“Well, okay,” Frank said. “But why should First Manhattan have bought into it so quickly?”

“Why do you say it did?”

“Didn’t it?”

Delhohn gave Frank an appropriately pitying glance.

“So. Schwert posts a message at a very popular blockchain site to announce his new creation. Attached to the message is a white paper – just as so many others have done. And there is an address at GitHub. ‘Come look at my blockchain,’ he writes. So, some do. And they like what they see and tell others. They, too, tell others. Soon, many people are talking about his blockchain. The word gets around. Is this so strange?”

No, actually it wasn’t, Frank had to admit. “Okay,” he said. “I understand.”

“Enough questions for today?” Delhohn asked.

“Sure – thanks.” As usual, everything Delhohn said made perfect sense. Frank couldn’t decide whether that was helpful or maddening. He decided on equal parts of both and went back to his office. Time to get back to doing what he’d meant to do before he got off on this tangent: reviewing the source code of the BankCoin Genesis Block.

He scrolled through the code, taking notes as he went along. Then he scrolled through it again and leaned back. He had formed two somewhat contradictory conclusions.

The first was that Schwert was indeed a brilliant computer architect. The structure of the code was impeccable. Economical, robust, and – to a programmer at least – beautiful. That was the first impression.

The second was that, for all his brilliance, Schwert was a bit sloppy. This little bit here, for example – it didn’t seem to do anything at all. There were other examples. He expected Schwert or someone else had cleaned that coding cruft up by now. Well, what the heck. He’d seen programmers like that before – so good at the big picture that they didn’t have the patience to go back and double-check everything so long as the code was running fine.

So, he was back where he started. Or perhaps even behind where he started, because Schwert’s coding skills were so elegant that Frank wasn’t sure he’d yet grasped all the subtleties of the Genesis Block. Most programmers were like bricklayers: you put this on top of that and then another one of these on those, and so on until you had a wall of modules that did what you wanted them to. And a lot of those bricks were open source modules that someone else had written and posted to GitHub so that anyone, like you, could add the to your wall.

Frank was sure that every line of code he’d just reviewed had been written by Schwert himself. And not as an assemblage of bricks. There were  continuous lines of logic that flowed through the Genesis Block from beginning to end. That was how the most brilliant programmers Frank had known so long ago at MIT had written code. In those days, even a powerful computer had a tiny fraction of the power a cheap laptop commanded today. It would take a hundred of those early computers to run the kind of program a software bricklayer would write today. But a real code master could design an algorithm that was elegant in its simplicity, able to achieve great things with meager resources.

Frank frowned. Schwert was clearly such an artist. But why bother? BankCoin was a complex piece of software, to be sure. But it hardly challenged the powerful computers banks were using today. Was it just art for art’s sake? Perhaps it just came naturally. Either way, Frank realized he’d have to work harder to understand how what he was looking at produced the results it obviously did. That would also make it tougher to figure out whether BankCoin was highly secure or riddled with flaws.

Learning that Schwert was a better programmer than he was left Frank feeling both frustrated and mildly intimidated. He hated to admit his own limitations, but perhaps he should ask Schwert to walk him through the security precautions he had presumably taken? He sent an email off to Schwert making the request.

*  *  *

When two days passed without a response, Frank presented himself once again at Dirk Delhohn’s cubicle. As usual, Delhohn either didn’t, or wouldn’t, recognize Frank’s presence.

“Knock knock,” Frank said.

Delhohn’s goggle eyes swiveled around and fixed themselves on Frank.

“’Knock knock’ is perhaps one of your American jokes?” Delhohn asked.

“Well, yes, sometimes, but not this time. It’s just slang. Anyway, can you tell me how to get in touch with Schwert?”

“I can give him a message, yes.” Delhohn said. “Or, also, one of the other maintainers could.”

“You mean the Cabots talk only to the Lodges and the Lodges talk only to God?”

“Excuse me please?” Delhohn asked.

“Sorry. It’s an old Boston saying. You see, the Cabots and Lodges were the highest of society and – anyway, never mind. So, you have to be next in line to Schwert before he’ll waste his time answering a question?”

“I would not say it that way, no. He works very hard and relies on us to support him in his efforts. It is a very large and busy project, as you know.”

“So, how about if I was the Chairman of First Manhattan? Would he answer me then?” Frank asked.

“And what precisely does the bank pay Mr. Schwert?” Delhohn asked.

“Okay. Nothing. I get your point. So, could I ask you to pose a question to his highness for me?”

Delhohn snorted.

“Ask him,” Frank continued, “if he could give me a brief description of how he designed security into BankCoin. That assumes, of course, that he did, instead of relying on the banks to prevent their systems from ever being breached.”

“So that someone can someday hack into our systems and find your description? That would be a nice roadmap for a black hat to have, yes?”

“Okay, then have him give me a call.”

“Schwert does not ever use a phone. I would be surprised if he owns one.” And then a twinkle lit Delhohn’s eye. “Not even to speak to one of your Lodges.”

Delhohn turned back to his computer screen, leaving Frank frowning at the back of his head. It also left him with no option but to flounce back to his office in frustration.

What had happened to this world? First Manhattan was turning the global financial system over to someone no one had ever met. But to be fair, this wasn’t the first time. Goldman Sachs, no less – the most revered and aggressive investment bank on Wall Street – had already opened a BitCoin exchange. And not only had no one ever met BitCoin’s creator, but it had been years since Nakamoto vanished from the virtual earth he’d once – maybe – inhabited. Why should BankCoin be any different?

Maybe, Frank thought, because this was whole circus was stark-raving, barking mad.

*  *  *

Frank couldn’t shake his concern over Schwert’s anonymity, so he took a break from his source code review to see if he could find out anything more about Schwert. After all, what if the man behind BankCoin was a North Korean or Russian agent? Why not? He made a mental note to check in with George Marchand to see whether the CIA had a file on him.

It took Frank only a few hours to find everything there was about Schwert on the Internet. It took much longer to decide that there was nothing more found on the Dark Web. When he gave the effort up, he hadn’t learned much.

Rumors abounded, and that was about it. The person who called himself Schwert was really Giles Campbell, a brilliant but eccentric Cambridge-educated mathematician. Before disappearing, he’d made a fortune designing sophisticated investment algorithms for a huge hedge fund. No, he was the alter-ego of Barry Lemuelson, the rich heir to a pickle fortune who architected dazzling virtual reality games. Ridiculous! Schwert was really a team of venture-capital backed entrepreneurs planning to make a killing providing BankCoin-related consulting services using their intimate knowledge of its workings.

The truth was, no one really had a clue.

*  *  *

Author’s Notes for this Week: Greetings from southern Utah.

This time around I’d like to address the pesky role of time in the life of a series author. Long time, Faithful Friends of Frank will recall that he first entered onto the scene in 2010, and that his back story placed him as an MIT student in the Project Apollo program at MIT, which ran in the [1970s and 1980s]. That was already a bit of a stretch, because I also introduced our boy as a forty-something divorced male. Now, of course, its eight years later, and Frank is still a forty-something divorced male. Clearly, I can’t get away with this forever.

Actually, I can, because this is fiction, and I can do whatever the heck I want.

But in fact, it’s not that simple, because there’s also an internal chronology to the Frank books. We meet Marla, Frank’s daughter, in The Alexandria Project as a grad student. Subsequently, she meets her husband to be (Tim) and marries him, all in book three (The Doodlebug War). And now, Marla’s pregnant.

There are a few ways to get around this. One is to add books in between ones that are already written. Another is write ones that don’t include any references to chronological elements that would let you know where they fall at all (which is what I did in The Turing Test). And there’s also the temptation to jump way ahead – say, a book or short story about Frank twenty or thirty years in the future, to check in and see who and what he is way down the line.

Then there’s the approach (too late for that here) of writing books that don’t include any chronologies at all. Prolific mystery authors (think Agatha Christie and Hercule Poirot) usually follow this approach, and intelligently so. Otherwise the author is apt to get their temporal knickers in a twist. But there’s a cost to that. If you’d like characters to be real, it’s hard to portray them only in isolation. And real people with friends and families have lives that move on.

So, what does the future hold for Frank? Or will there be no future, and just a timeless, non-aging, perpetual present? Assuming I keep writing the series, I expect it will more likely lean to the latter.

Fortunate Frank! We should all be so lucky.

Next week:  As mentioned above, I’m currently out in Frank Land, which in this case means that I’m camping and hiking in southern Utah, with no distractions of any kind, even Internet access. So I needed to drive about thirty miles today to catch a signal so I can post this chapter, courtesy of the very hospitable good folks at Willow Canyon Outdoor, an outfitter/bookseller/you name it emporium in Kanab. That means by next week I should have c. seven to twelve new chapters in the can. That frequently leads to reordering what happens when, so you’re guess is as good as mine what thread you’ll be tuning in on next.

Continue to Chapter 20