Table-Driven Mutable Blockchain Transaction Modification
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing mutable blockchain solutions either fundamentally alter the properties of blockchain or introduce cryptographic weaknesses, failing to effectively modify transactions while maintaining immutability and security.
Innovation Solution
A table-driven mutable blockchain system that utilizes a distributed file unit with a lineage table to store version histories and a global variable, allowing for the modification of transactions by creating a new blockchain with a modified transaction identifier, without compromising the immutability or security of the original blockchain.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the blockchain is made immutable to ensure security, then data security is improved, but the ability to modify transactions is lost
Solution Approach 1:
The system segments the blockchain into multiple versions (first blockchain, second blockchain, etc.) where each version contains specific transactions. The lineage table segments the version history of each transaction, allowing individual transactions to be tracked across different blockchain versions. This enables modification of specific transactions by creating new blockchain versions while preserving the original immutable blockchain structure.
Solution Approach 2:
The system adds a temporal dimension to the blockchain by introducing version numbers and creating a multi-version structure. Instead of a single linear blockchain, the system creates multiple blockchain versions (B(1), B(2), ..., B(p)) where each version represents a point in time. The lineage table adds another dimension by tracking the evolution of each transaction across these versions, enabling modification while maintaining security.
2Adaptability or versatility
If transaction modification is enabled to allow updates, then adaptability is improved, but the immutability property of blockchain is compromised
Solution Approach 1:
The system performs preliminary actions by creating a lineage table entry for each transaction before modification occurs. This entry records the original transaction details and creates a version history. When modification is needed, the system adds a new version to the existing lineage table entry rather than altering the original transaction, thus maintaining immutability while enabling updates.
Solution Approach 2:
The system creates copies of transactions in new blockchain versions rather than modifying the original transactions directly. Each modification creates a new transaction version that is linked to the original through the lineage table. This copying mechanism allows transaction updates while preserving the original immutable records in the first blockchain.
3Loss of information
If a lineage table is introduced to track version history, then transaction traceability is improved, but system complexity increases
Solution Approach 1:
The lineage table serves multiple functions simultaneously: it tracks the version history of transactions, stores the relationship between different blockchain versions, maintains transaction identifiers across versions, and enables both modification and traceability operations. This multi-functionality reduces the need for separate data structures and minimizes overall system complexity.
Solution Approach 2:
The lineage table acts as an intermediary data structure that mediates between the immutable first blockchain and the modifiable second blockchain. It stores the transaction identifiers and version information that link the two blockchains, enabling the system to maintain both immutability and modifiability without requiring complex direct relationships between the blockchains.
4Adaptability or versatility
If multiple blockchain versions are created to allow modifications, then flexibility is improved, but storage requirements increase
Solution Approach 1:
The system extracts only the essential version-tracking information into the lineage table, specifically storing transaction identifiers, version numbers, and pointers to transaction positions. This extraction approach allows the system to maintain multiple blockchain versions without duplicating the entire transaction data in each version, significantly reducing storage requirements while preserving flexibility.
Data Source
AI summary
A system and method for generating a table-driven mutable blockchain are provided. The system includes one or more users 102A-102N associated with one or more nodes 104A-104N, a distributed file unit 106, a distributed ledger 108. The distributed file unit 106 stores a Lineage Table 200 and a global variable P 112, to keep count on the total number of blockchains in the system. The distributed ledger 108 stores one or more blockchains. The node 104A receives transaction details of transaction provided by user 102A through network 110, and defines transaction. The node 104 initializes linked list structure and creates a transaction of which a plurality of modifications is performed on it. The node 104 creates modified transaction in subsequent blockchains and then links these versions by adding sequence of elements in Linked List. The node 104 authenticates new transactions in main blockchain and the modified transactions in subsequent blockchains.


