Hardware Security Module Segmentation for Multi-Tenant Isolation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Cloud service providers face inefficiencies in using hardware security modules (HSMs) due to single-tenant solutions, which lead to resource wastage and security vulnerabilities in multi-tenant setups, where users rely on the service provider to ensure data isolation among multiple users.

Innovation Solution

Implementing a hardware security module with isolated environments and containers that allow multiple users to share the same HSM device securely, using cryptographic key management and secure connections to isolate user data, and enabling each user to run their own isolated environment with secure key operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a single-tenant solution is used with dedicated HSM devices per user, then security is improved, but resource utilization deteriorates due to inefficient use of HSM resources

Engineering Contradiction:
ImprovesecurityVSAvoidresource utilization
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The HSM device is segmented into multiple isolated environments (containers or virtual machines), each dedicated to a specific user. This segmentation allows physical resource sharing while maintaining logical isolation, thus improving resource utilization without compromising security. Each user's cryptographic operations are confined to their own isolated environment, preventing cross-user access while enabling efficient resource pooling.

Inventive Principle:
Principle #1Segmentation

2Productivity

If a multi-tenant solution is used with multiple users sharing the same HSM device, then resource utilization is improved, but security deteriorates as users must rely on the service provider to ensure data isolation

Engineering Contradiction:
Improveresource utilizationVSAvoidsecurity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

An isolated environment (container or virtual machine) acts as an intermediary layer between the user and the shared HSM hardware. This intermediary provides strong isolation guarantees, ensuring that users can securely share the same physical HSM device without relying on the service provider's trustworthiness. The isolated environment enforces access controls and prevents cross-user data leakage, making security a property of the architecture rather than a trust assumption.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If multiple users share the same HSM device with isolated environments, then resource utilization is improved, but device complexity increases due to the need to manage multiple isolated environments

Engineering Contradiction:
Improveresource utilizationVSAvoiddevice complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The HSM device is designed with universal multi-functionality to support multiple isolated environments simultaneously. The device can dynamically allocate and manage multiple containers or virtual machines, each serving different users, while maintaining a unified hardware architecture. This multi-functionality allows the same physical device to serve multiple purposes and users without requiring separate dedicated hardware for each, thereby managing complexity through standardized multi-tenant architecture.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS20240111907A1A device and a communication method
Publication Date: 2024.04.04 NCIPHER SECURITY LTD
  • US20240111907A1 patent drawing
  • US20240111907A1 patent drawing
  • US20240111907A1 patent drawing

AI summary

A device comprising: an input; a memory; and a processor module; configured to: store information in the memory defining a first isolated environment associated with a first user; responsive to a request received through the input, run the first isolated environment; authenticate the first user in the first isolated environment and, if the first user is authenticated, establish a first secure connection with the first user in the first isolated environment; and responsive to a user command received over the first secure connection; execute, in the first isolated environment, a first operation corresponding to the user command.