Terminator versus Blockchain

Ed Fullman
The Age of Autonomy
5 min readApr 18, 2021

--

The Terminator” (1984) has been acclaimed as, “One of the most original movies of the 1980s and seems likely to remain one of the best sci-fi films ever made.”

The background behind the Terminator legend begins August 29, 1997 when an Artificial Intelligence called Skynet goes rogue, takes over the military’s hardware, and begins a rampage to rid the earth of humanity. The premise is that the AI overpowers its own security to cut out its human masters, and start making its own maniacal decisions. The “rogue AI” plot line is now a genre of Science Fiction.

In 1997, as today, the traditional architecture of choice to construct the Skynet system for SAC-NORAD would have been a centralized or somewhat decentralized client-server architecture. Putting aside the fact that Blockchain wasn’t invented until 2008, the central question of this essay is…

If Skynet had been built on or embedded in a distributed blockchain architecture, could a rogue AI achieve a world-ending takeover?

All kidding aside, this is light camouflage to compare the attack surface of centralized or decentralized system architectures versus a distributed blockchain architecture. If you encountered me watching “The Terminator” on a Saturday morning, you would probably hear me muttering to myself, “this wouldn’t happen with a blockchain.”

If you were to ask an engineer to draw a picture that represents a distributed architecture many will arrive at a version of diagram “B” above. This is because some engineers focus on distributed architecture as a type of system deployment strategy. However, distributed also refers to an architecture for making decisions. Centralized and decentralized architectures are both versions of a centralized decision-making models. The individual nodes of the architecture (dots on the diagram) rely on a central node to make all decisions.

The diagrams above and below depict decision-making structures that can all deliver the same answers to the same questions. The difference is that architecture “A” and “B”, will deliver an answer from a central node, and in a distributed architecture like “C” any node can be asked the same question, and will deliver the same answer.

Each node or dot in architecture “C” represents a blockchain peer (e.g., an identical instance of the blockchain chaincode and data) and a group of connected nodes like diagram “C” represents a channel (e.g., a network of blockchain peers). A key concept of blockchain operation is that each peer in a channel is maintained in a state of being exactly (code and data) like all the other peers in the same channel. This enables each peer in diagram “C” to independently and autonomously answer the same questions, and deliver the same answer, every time.

The reason to create a single, large, channel like “C” with many peers is that all the participants need access to all the data to get the answer they need. However, many services don’t require a large single channel, they can be organized into structures to provide services to a subset of needs or participants. In these cases only the data related to the subset needs to be available in one channel.

Distributed (D)

Diagram “Distributed (D)” represents three distributed blockchain channels that comprise a system. Each channel performs the same function, each peer in each channel runs the exact same chaincode, but the data in each channel is different and unique to the participants that use the channel. While identical in structure, the three blockchain channels are used by three similar, but distinct parts of the same logical organization. In this case the participants don’t need the channels to share data with each other to operate. Not shown in the diagram might be separate channel that exists to provide a shared service to some of the peers in each of the channels indirectly linking all the peers into a networked service. An example could be a chain of restaurants, they all operate identically (e.g., the code), but the orders (e.g., the data) are unique to a location. Consider also that organizational or hierarchal reporting needs should be a completely separate function and does not need to be built into the distributed architecture for transaction processing.

Distributed blockchain-based architectures are autonomous decision-making systems. They operate based on their internal rules rather than being directed by the rules in third-party systems. This architecture dramatically reduces the attack surface, and the potential risks of an intrusion into the system.

Blockchain technology also protects the actual blocks of data including the rules (e.g., chaincode) with cryptographic encryption. Additionally, blockchain also ensures the integrity of the solution with processing rules called, “consensus”. Consensus means that the results from running a transaction on one peer must be identical to running the transaction on the other peers in the same channel. This includes transactions that change the code as well as application transactions. If a transaction fails to meet the consensus rules of the channel, it is denied, and the transaction and data are never included in the blockchain. This protects the solution from man-in-the-middle attacks where a networked central decision-making system is compromised by an insider and the integration to the network is exploited to deliver mayhem. Consensus algorithms force peers to prove that they have not been compromised in order to accept their blockchain transactions as trusted.

Armed (so-to-speak) with our new distributed blockchain architecture, we are ready to take on Skynet. The rogue AI , compromises one of the blockchain peers through a melodramatic, brute force, hack, and successfully alters the chaincode. Then the Skynet AI tries to use the compromised peer to launch military assets controlled by the peer, but the blockchain channel requires peer “consensus” to launch military assets. Another peer in the launch channel must automatically certify the transaction and results. Our Skynet consensus algorithm fails to reach consensus for multiple reasons, the launch transaction is rejected. The AI is stopped in its tracks, an alert is generated, and the compromised peer is re-initialized by a cleanup script. Finally, an engineer prunes the AI’s neural network to eliminate its sociopathic and psychopathic behaviors.

In conclusion, if Skynet had been built with distributed blockchain technology, the rogue AI would have been thwarted automatically, “The Terminator” would have been a boring movie, and Arnold Schwarzenegger might have never been Governor of California.

--

--

Ed Fullman
The Age of Autonomy

Developing cool products with cool people I care about.