Secure Key Provisioning via Escrow Server

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing communication applications face security risks during the transfer of private keys from one installation to another, as malicious users can acquire and misuse these keys to impersonate legitimate users or eavesdrop on their communications.

Innovation Solution

A system that derives and encrypts root user identifiers, identity key pairs, and storage keys using an escrow key, which is further encrypted with a password-based key derivation function, creating a key escrow bundle transmitted to a server for secure provisioning across multiple devices.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If private keys are transferred from first installation to subsequent installation, then communication continuity is enabled, but security risk increases due to potential key acquisition by malicious users

Engineering Contradiction:
Improvecommunication continuityVSAvoidsecurity
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

A key escrow server acts as an intermediary between the first installation and subsequent installations. The private keys are uploaded to this trusted server during the first installation, and subsequent installations retrieve their keys from the server rather than transferring them directly through potentially insecure channels. This mediator architecture enables communication continuity while reducing security risks associated with direct key transfer.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The private keys are encrypted with the user's password-derived key before being uploaded to the escrow server during the first installation. This preliminary encryption action ensures that even if the server is compromised, the keys remain protected. The encrypted keys are stored on the server in advance, allowing secure retrieval by subsequent installations without requiring direct key transfer.

Inventive Principle:
Principle #10Preliminary action

2Ease of operation

If multiple devices are provisioned with private keys, then user accessibility is improved, but the attack surface increases for potential key compromise

Engineering Contradiction:
Improveuser accessibilityVSAvoidattack surface
Core Design Contradiction:
Ease of operationVSObject-affected harmful factors

Solution Approach 1:

The key escrow server serves as a centralized intermediary that manages keys for multiple devices. Instead of each device needing direct access to other devices' keys, all key management operations go through the server. This reduces the attack surface by centralizing security controls and eliminating the need for direct peer-to-peer key sharing between multiple user devices.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

Rather than distributing actual private keys to multiple devices, the system creates and stores encrypted copies of the keys on the escrow server. Each device can retrieve its specific key copy from the server when needed, but the original key material never exists in plaintext on multiple devices simultaneously. This copying approach enables multi-device accessibility while minimizing the attack surface.

Inventive Principle:
Principle #26Copying

3Productivity

If direct key transfer is used between installations, then provisioning speed is improved, but security control is reduced

Engineering Contradiction:
Improveprovisioning speedVSAvoidsecurity control
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The keys are encrypted with the user's password-derived key during the first installation, before being uploaded to the escrow server. This preliminary encryption action ensures that the keys are secured before leaving the user's control. Subsequent installations can quickly retrieve and decrypt these pre-encrypted keys from the server, maintaining fast provisioning while the server's security controls protect the key material throughout the process.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10396987B2Securely provisioning an application with user information
Publication Date: 2019.08.27 WICKR INC
  • US10396987B2 patent drawing
  • US10396987B2 patent drawing
  • US10396987B2 patent drawing

AI summary

The present disclosure describes a system, method, and non-transitory computer readable medium for provisioning multiple instances of a secure communication application on multiple devices. A secure communication application on a first device generates a first set of private keys that are associated with the user and a second set of keys that are associated with the secure communication application executing on the first device. The first set of private keys establishes a set of root identifying keys for the user that are identical for all installations of the secure communication application, while the second set of keys will vary from device to device. In this regard, the first set of root identifying keys must be securely transferred from the first device to any subsequent installations of the secure communication application on one or more second devices. This establishes a high degree of trust since each installation of the secure communication application is linked to the first set of root identifying keys and allows the user to send and receive encrypted communications on multiple devices from the same trusted root keys.