Permissioned Blockchain Access Control for Data Slices
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Centralized access control systems are vulnerable to single points of failure and administrative mishandling, as they lack redundancy and often grant excessive access to administrators, increasing the risk of data breaches and unauthorized data handling.
Innovation Solution
A permissioned blockchain is used to manage access, where client devices retrieve tickets for data access from multiple nodes, ensuring redundancy and secure access through consensus-based permission management, with access level blocks storing permissions in a distributed and write-only ledger format, allowing fine-grained control without modifying entity access level blocks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If centralized access control systems are used, then ease of administration is improved, but reliability deteriorates due to single point of failure
Solution Approach 1:
The centralized access control system is segmented into multiple distributed nodes forming a blockchain network. Each node maintains a copy of the access control ledger, eliminating the single point of failure while distributing administrative functions across the network. This segmentation allows the system to remain operational even if individual nodes fail or are compromised.
Solution Approach 2:
The system transitions from a centralized architectural parameter to a distributed blockchain parameter. This fundamental parameter change transforms the system from having one central authority to having multiple decentralized authorities that collectively manage access control, thereby improving reliability while maintaining administrative capability through consensus mechanisms.
2Ease of manufacture
If centralized access control systems are used, then simplified deployment is improved, but security deteriorates due to administrator access risks
Solution Approach 1:
Administrator privileges are segmented and distributed across multiple nodes in the blockchain network. No single administrator has access to all information in the system. Instead, each node operates with limited permissions and must reach consensus with other nodes to make changes, thereby reducing the risk of rogue or clumsy administrators mishandling sensitive data.
Solution Approach 2:
The blockchain consensus mechanism acts as an intermediary between administrators and the access control system. Rather than administrators directly accessing and potentially misusing sensitive data, they must propose changes that are then validated and approved by the consensus of multiple nodes. This intermediary layer prevents unauthorized or accidental data mishandling while maintaining simplified deployment through automated consensus protocols.
3Device complexity
If permissions are stored in monolithic database structures, then device complexity is reduced, but adaptability deteriorates for fine-grained access control
Solution Approach 1:
The monolithic database structure is segmented into fine-grained access level blocks, each representing a specific combination of entities (user, device, location) and data slices. This segmentation enables precise control over who can access what data under what conditions, while the blockchain structure automatically manages the complexity of these granular permissions through its distributed ledger and consensus mechanisms.
Solution Approach 2:
The system changes from storing permissions in traditional database tables to storing them in blockchain-based access level blocks with specific parameters (entity identifiers, data slice identifiers, permission types). This parameter change enables fine-grained access control while the blockchain's inherent structure manages the complexity through automated validation and consensus, making the system both adaptable and manageable.
Data Source
AI summary
Technologies are disclosed herein for secure data access. A client device accesses a slice of data using a ticket retrieved from a permissioned blockchain. To obtain the ticket, the client device submits ticket requests to multiple nodes of the permissioned blockchain. Each request identifies the slice of data, e.g. a particular row in a particular database table. Each request also includes parameters describing the circumstances of the request, such as the requesting user account, the geographic location of the computing device, etc. The permissioned blockchain stores each authorized combination of request parameters and data slices in a different access level block. If an access level block can be found that is associated with the requested slice of data and with all of the supplied parameters, and if that access level block grants permission, then the requested ticket is returned to the client device.


