HDAG Key-Value Storage for Secure Access Control

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for storing and managing associations between keys and values, such as in a decryption key store, face issues like unauthorized access, difficulty in verifying association existence, and retention policy compliance, especially when dealing with sensitive information that needs to be securely shared among a large number of users.

Innovation Solution

The implementation of a system using entry nodes and value list nodes within a hash-based directed acyclic graph (HDAG) data structure, where entry nodes store requested key-value associations and value list nodes store data values, allowing for secure, flexible, and automated management of associations, including override mechanisms and access control, while decoupling associations from data values for better control and security.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional key-value storage methods are used to manage decryption keys, then access control is simplified, but security against unauthorized access and information leakage deteriorates

Engineering Contradiction:
ImprovesecurityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the key-value storage system into multiple components: key-value pairs are stored in a HDAG data structure where keys and values are separated into different nodes. Entry nodes store associations between keys and value list nodes, while value list nodes store the actual data values. This segmentation prevents unauthorized access to both keys and values simultaneously, enhancing security while maintaining manageable system complexity through modular design.

Inventive Principle:
Principle #1Segmentation

2Productivity

If all key-value associations are stored together, then retrieval is faster, but verification of association existence and retention policy compliance becomes more difficult

Engineering Contradiction:
Improveretrieval speedVSAvoidverification difficulty
Core Design Contradiction:
ProductivityVSDifficulty of detecting and measuring

Solution Approach 1:

The patent introduces a hierarchical dimension to the storage structure by organizing key-value associations into entry nodes and value list nodes within a HDAG framework. This dimensional organization allows the system to maintain efficient retrieval paths while enabling independent verification of association existence and retention policy compliance at different levels of the hierarchy, resolving the contradiction between speed and verifiability.

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

3Ease of operation

If decryption keys are made accessible to authorized users, then file access is enabled, but risk of unauthorized individuals obtaining the keys increases

Engineering Contradiction:
Improveaccess convenienceVSAvoidunauthorized access risk
Core Design Contradiction:
Ease of operationVSObject-affected harmful factors

Solution Approach 1:

The patent introduces an intermediary cryptographic layer between authorized users and decryption keys. Instead of storing plaintext keys, the system stores encrypted key associations within the HDAG structure where only authorized users with proper credentials can decrypt and access the keys. This intermediary encryption mechanism enables convenient access for authorized users while significantly reducing the risk of unauthorized access.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS8627111B2Managing associations between keys and values
Publication Date: 2014.01.07 HEWLETT PACKARD ENTERPRISE DEV LP
  • US8627111B2 patent drawing
  • US8627111B2 patent drawing
  • US8627111B2 patent drawing

AI summary

Provided are, among other things, systems, methods and techniques for managing associations between keys and values within a computer processing system. In one exemplary implementation, requests to store associations between keys and data values corresponding to the keys are input, and the associations are stored in entry nodes within a data structure represented as a hash-based directed acyclic graph (HDAG). Upon receipt of a data value request and accompanying request key, together with satisfaction of any additional access criterion, a return data value corresponding to the request key automatically is provided, the return data value having been generated based on at least one of the associations that involve the request key.