Virtual Machine Credential Transfer via Secret String

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

There is no expedient and fail-safe mechanism for providing credential information in a cloud computing environment, particularly for automatically initiated servers to execute API calls, as existing methods are cumbersome, insecure, or require constant monitoring by central servers.

Innovation Solution

A mechanism where a central server stores credential information and uses a one-time-use secret string sent in user data to authenticate and securely transmit it to automatically instantiated virtual machines, eliminating the need for continuous polling and ensuring secure authentication through SSL connections.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If private keys are hardcoded to read-only machine images, then servers can execute API calls with proper authentication, but updating keys becomes cumbersome and time-consuming

Engineering Contradiction:
Improveauthentication capabilityVSAvoidkey update time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by embedding a secret string in the machine image that enables the server to automatically request and retrieve private keys from the central server at boot time, before any authentication operations are needed. This preliminary setup eliminates the need for manual key updates later.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The server performs self-service by automatically requesting private keys from the central server using the secret string embedded in its machine image. The server independently completes the authentication setup without requiring manual intervention, and can automatically update keys by repeating the request process.

Inventive Principle:
Principle #25Self-service

2Extent of automation

If private keys are transmitted as part of user text data, then servers can obtain credentials automatically, but the keys are sent in plain text and susceptible to interception

Engineering Contradiction:
Improveautomatic credential distributionVSAvoidsecurity vulnerability
Core Design Contradiction:
Extent of automationVSObject-affected harmful factors

Solution Approach 1:

The invention extracts the sensitive private key material from the user text data transmission channel and replaces it with a non-sensitive secret string that is embedded in the machine image. The actual key retrieval happens separately through a secure automated process, eliminating the security vulnerability of transmitting keys in plain text.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The central server acts as an intermediary that receives automatic requests from servers using the secret string and provides private keys through a secure process. This intermediary mechanism enables automatic credential distribution while maintaining security, as the secret string itself cannot be used to compromise the system.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If a central server continuously pings servers to determine provisioning status, then private keys can be sent securely, but computing overhead increases significantly

Engineering Contradiction:
Improvesecure key transmissionVSAvoidcomputing overhead
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

Instead of the central server actively pinging servers to determine provisioning status (centralized polling), the invention inverts the approach by having servers automatically contact the central server themselves when they need keys (distributed initiation). This reversal eliminates the continuous monitoring overhead while maintaining secure key transmission.

Inventive Principle:
Principle #13The other way round (Inversion)

Solution Approach 2:

The system uses periodic action in the sense that servers automatically initiate key requests at specific moments (when provisioned and booted) rather than continuous polling. The secret string embedded in the machine image enables this event-driven periodic communication, reducing overall system overhead.

Inventive Principle:
Principle #19Periodic action

4Device complexity

If servers notify the central server when being provisioned, then continuous monitoring is reduced, but without authentication the central server may respond to malicious notifications

Engineering Contradiction:
Improvemonitoring complexityVSAvoidauthentication security
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The authentication capability is performed as a preliminary action by embedding the secret string in the machine image during image creation. This preliminary authentication mechanism is already in place before the server needs to communicate with the central server, enabling secure key requests without requiring complex runtime authentication protocols.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The secret string embedded in the machine image serves as a copy of the server's identity credential. Instead of requiring complex authentication protocols, the server presents this copied credential (secret string) to the central server, which verifies it against records of valid machine images. This copying approach simplifies the authentication mechanism while maintaining security.

Inventive Principle:
Principle #26Copying

Data Source

PatentEP2355447B1Secure and automated credential information transfer mechanism
Publication Date: 2016.11.16 ACCENTURE GLOBAL SERVICES LTD
  • EP2355447B1 patent drawingFigure 1
  • EP2355447B1 patent drawingFigure 2
  • EP2355447B1 patent drawingFigure 3

AI summary

A mechanism for securely transmitting credentials to instantiated virtual machines is provided. A central server is used to turn on a virtual machine. When the virtual machine is turned on, the central server sends it a secret text string. The virtual machine requests the credentials from the central server by transmitting the secret string and its instance ID. The central server validates the secret string and source IP to determine whether they are authentic. Once verified, the central server transmits the credentials to the virtual machine in a secure channel and invalidates the secret string. The credentials can now be used to authenticate API calls.