Blockchain Transaction Malleability via Segmented Unlocking Scripts

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Blockchain transactions face challenges due to malleability, where parts of a transaction can be modified without invalidating the transaction, leading to security concerns and inefficiencies, particularly in handling complex data and payment scenarios.

Innovation Solution

The method involves creating multiple versions of a target transaction with different unlocking conditions, allowing for backup options and efficient data streaming by propagating only valid versions through the network, leveraging the malleability feature to ensure secure and trustless payment channels.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If multiple versions of a target transaction are created with different unlocking conditions, then transaction security and backup options are improved, but device complexity increases

Engineering Contradiction:
Improvetransaction securityVSAvoidtransaction management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The transaction is divided into multiple versions (first version and second version) with different unlocking conditions. Each version represents a separate path for claiming the output, allowing the system to segment the transaction logic into distinct, manageable options that can be independently evaluated and executed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically selects which version of the target transaction to propagate based on the current state of the blockchain and the availability of different unlocking conditions. This dynamic approach allows the system to adapt to changing circumstances and choose the most appropriate transaction version at runtime.

Inventive Principle:
Principle #15Dynamics

2Productivity

If only valid versions of transactions are propagated through the network, then network efficiency is improved, but loss of information occurs when valid versions are not available

Engineering Contradiction:
Improvenetwork efficiencyVSAvoidtransaction information
Core Design Contradiction:
ProductivityVSLoss of information

Solution Approach 1:

Multiple versions of the target transaction are prepared in advance with different unlocking conditions before propagation. This preliminary preparation ensures that when the system needs to propagate transactions, valid versions are already ready to be selected and sent, avoiding delays and information loss.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system uses feedback from the blockchain state and transaction validation results to determine which versions of the target transaction should be propagated. This feedback mechanism ensures that only valid and appropriate versions are sent through the network, improving efficiency while maintaining information integrity.

Inventive Principle:
Principle #23Feedback

3Adaptability or versatility

If the unlocking script is modified to meet different conditions, then adaptability is improved, but manufacturing precision (transaction validity) becomes more difficult to maintain

Engineering Contradiction:
Improveunlocking condition flexibilityVSAvoidtransaction validity
Core Design Contradiction:
Adaptability or versatilityVSManufacturing precision

Solution Approach 1:

Different versions of the target transaction have different unlocking conditions tailored to specific local requirements. Each version's unlocking script is locally optimized to meet particular conditions (e.g., different signatures, different data requirements), allowing flexibility while maintaining validity through proper local customization.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system changes parameters such as the unlocking script content, signature requirements, and condition specifications to create different versions of the transaction. These parameter changes allow the system to adapt to different scenarios while maintaining transaction validity through proper parameter configuration and validation.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS12095859B2Malleability of transactions for inclusion in a blockchain
Publication Date: 2024.09.17 NCHAIN LICENSING AG
  • US12095859B2 patent drawing
  • US12095859B2 patent drawing
  • US12095859B2 patent drawing

AI summary

A method of recording a target transaction in a blockchain, comprising: obtaining an updated version of the target transaction, being updated relative to a pre-existing first version; and instead of the first version, sending the updated version to be propagated through a network of nodes to be recorded in the blockchain. The target transaction comprises an input comprising an unlocking script and a pointer to an output of a first transaction, the output of the first transaction comprising a locking script specifying a plurality of alternative conditions for unlocking that output. The unlocking script of the first version of the target transaction is configured to unlock the first output of the first transaction based on a first of said alternative conditions, and the unlocking script of the updated version is configured to unlock it based on a second one of said alternative conditions.