Blockchain Transaction Chaining for Complex Script Execution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current blockchain technologies, such as Bitcoin, impose limitations on script size and opcode count, restricting the development of complex functionalities and computations due to security considerations, which hampers the implementation of sophisticated applications like smart contracts.

Innovation Solution

The method involves decomposing complex tasks into multiple blockchain transactions, using unlocking and locking scripts to pass data between transactions, allowing for the execution of lengthy and complex computations while adhering to security-based script size and opcode limits, without modifying the existing protocol.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If script size and opcode count are increased to enable complex functionality, then computational capability is improved, but security is compromised due to potential Denial of Service attacks

Engineering Contradiction:
Improvescript functionalityVSAvoidsecurity
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent divides a complex computational task into multiple smaller sub-tasks, each executed in separate blockchain transactions with limited script size. The computation is segmented across transaction chains, where each transaction contains a restricted script (within opcode limits) that performs only a portion of the overall computation, thereby maintaining security while achieving complex functionality through composition of multiple simple transactions

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from executing complex computation within a single transaction (one-dimensional approach subject to script size limits) to distributing computation across multiple transactions in a chain (multi-dimensional approach). By adding the dimension of transaction chaining and using the blockchain structure itself as the execution environment, the system achieves unlimited computational capability while each individual transaction remains within security constraints

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Reliability

If script size is limited to prevent Denial of Service attacks, then security is maintained, but complex computations become impossible

Engineering Contradiction:
ImprovesecurityVSAvoidcomputation capability
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent establishes continuous computation across a chain of transactions, where the output of one transaction becomes the input of the next. This continuity allows complex computations to be performed by chaining multiple simple transactions together, with each transaction contributing a portion of the overall computation. The useful action (computation) continues uninterrupted across transaction boundaries, enabling complex functionality while maintaining script size limits at each step

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

The patent uses blockchain transactions as intermediaries to pass data and control flow between computation stages. Each transaction acts as an intermediary that receives input data, executes a limited script, produces output data, and passes it to the next transaction. This intermediary mechanism enables complex computations to be broken down into manageable steps, with each step contained within security constraints while the overall computation achieves greater complexity

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11669836B2Computer-implemented systems and methods to enable complex functionality on a blockchain while preserving security-based restrictions on script size and opcode limits
Publication Date: 2023.06.06 NCHAIN LICENSING AG
  • US11669836B2 patent drawing
  • US11669836B2 patent drawing
  • US11669836B2 patent drawing

AI summary

The invention relates to blockchain technologies such as the Bitcoin blockchain. The invention uses a novel technique to decompose the functionality of a blockchain transaction script into several chunks or functional parts, and to use the output of a chunk as the input of the next chunk. Advantageously, this allows the blockchain to be used for ever complex tasks and computations while minimising script size, and also provides a novel architecture for the distributed execution of computational processes. The invention comprises a method of using a plurality of blockchain transactions to execute a computer implemented task, the method comprising the steps: using an unlocking script (ULS1) in a blockchain transaction (Tx2) to present at least one data item to a locking script (LS1) of another transaction (Tx1) so as to provide a result on a stack; generating a further unlocking script (ULS2) which comprises the result provided on the stack; presenting the further unlocking script (ULS2) to a further locking script (LS2) such that the result from the stack is provided as input to the further locking script.