Elliptic Curve Key Derivation for Secure File Sharing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current cryptography systems face challenges in efficiently sharing protected data among multiple users while maintaining strong security, as using multiple keys is computationally expensive and cumbersome, often leading to increased vulnerability during data sharing.

Innovation Solution

The implementation of a method using an elliptic curve Diffie-Hellman key pair to derive a shared secret, processed with a secure hash algorithm to produce a primary encryption key, which is then used to encrypt a secondary encryption key for secure content sharing between users, allowing efficient encryption and decryption without exposing private keys.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If multiple cryptographic keys are used to protect data, then security strength is improved and data exposure is limited, but computational cost increases and administration becomes difficult

Engineering Contradiction:
Improvesecurity strengthVSAvoidadministration complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the cryptographic system into hierarchical layers: a root key for administrative control, intermediate keys for sharing sessions, and data encryption keys for actual content protection. This segmentation allows strong security through multiple keys while simplifying administration by organizing key management in a structured hierarchy where each layer serves a specific function.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary key derivation and sharing session establishment before actual data sharing occurs. Keys are pre-derived from the root key and shared securely among authorized users in advance, so that when data needs to be shared, the administrative overhead is minimal and security is already in place.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If multiple cryptographic keys are used to protect data, then security strength is improved, but computational expense increases

Engineering Contradiction:
Improvesecurity strengthVSAvoidcomputational expense
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent employs elliptic curve cryptography (ECC) which changes the mathematical parameters from traditional RSA to curve-based operations. ECC provides equivalent security strength to RSA but with smaller key sizes and lower computational requirements, reducing the computational expense while maintaining strong security through multiple keys.

Inventive Principle:
Principle #35Parameter changes

3Ease of operation

If a single cryptographic key is used for data protection, then sharing is efficient and simple, but a breach exposes all protected data

Engineering Contradiction:
Improvesharing efficiencyVSAvoiddata exposure risk
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent segments the cryptographic system into hierarchical layers: a root key for administrative control, intermediate keys for sharing sessions, and data encryption keys for actual content protection. This segmentation allows strong security through multiple keys while simplifying administration by organizing key management in a structured hierarchy where each layer serves a specific function.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system implements a root key that serves as a cushion or safety mechanism. If a data encryption key or sharing session key is compromised, the damage is contained to that specific session or data set, while the root key and other independent keys remain secure. This beforehand cushioning prevents a single breach from exposing all protected data.

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

4Reliability

If key management is strengthened to improve security, then data protection is enhanced, but the time data remains vulnerable increases

Engineering Contradiction:
Improvedata protectionVSAvoidvulnerability window
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary key derivation and sharing session establishment before actual data sharing occurs. Keys are pre-derived from the root key and shared securely among authorized users in advance, so that when data needs to be shared, the administrative overhead is minimal and security is already in place, reducing the vulnerability window.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses elliptic curve Diffie-Hellman key exchange which allows for rapid key derivation and sharing session establishment. The mathematical operations in ECC are computationally efficient, allowing the system to quickly establish secure connections and reduce the time data remains in a vulnerable state during key management operations.

Inventive Principle:
Principle #21Skipping (Rushing through)

Data Source

PatentUS11316671B2Accelerated encryption and decryption of files with shared secret and method therefor
Publication Date: 2022.04.26 CYPHRE SECURITY SOLUTIONS LLC
  • US11316671B2 patent drawing
  • US11316671B2 patent drawing
  • US11316671B2 patent drawing

AI summary

A non-transitory computer-readable medium for sharing protected content, comprising instruction stored thereon. When executed on a processor, the instruction performs steps of deriving a shared secret, processing the shared secret using a secure hash algorithm 256 cryptographic hash to produce a primary encryption key, and encrypting a secondary encryption key using the primary encryption key. When the shared secret is derived between a private key and a public key of a first user, encrypting the protected content using the secondary encryption key, and transmitting the encrypted protected content to a server to be accessed by the second user. When the shared secret is derived between the private key of the first user and a public key of a second user, transmitting the secondary encryption key to the second user. The second user uses the secondary encryption key to decrypt the encrypted protected content on the server.