HASSH SSH Fingerprinting for Client Authentication

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current SSH protocols lack a scalable framework to verify the authenticity of SSH components, making it difficult to distinguish between legitimate and malicious clients, as there is no reliable method to confirm the underlying algorithms used by SSH clients and servers.

Innovation Solution

Implementing a HASSH (Hash-Based SSH) mechanism that generates unique fingerprints for SSH clients and servers by performing a cryptographic hash on the set of supported algorithms, allowing for secure communication by verifying these fingerprints during the SSH negotiation process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If SSH clients claim to be benign by specifying version information in text fields, then the SSH connection can be established easily, but the authenticity of the SSH client cannot be verified

Engineering Contradiction:
ImproveSSH connection establishmentVSAvoidSSH client authenticity verification
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The system performs preliminary actions by pre-computing and storing HASSH fingerprints for known legitimate SSH clients during a profiling phase. These fingerprints are derived from the clients' algorithm preferences and are stored in a database before actual SSH connections occur, enabling rapid verification without impacting connection establishment speed

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The invention creates a cryptographic copy (HASSH fingerprint) of the SSH client's algorithm preference set. Instead of verifying the entire client identity, the system generates a compact hash representation that can be quickly compared against stored profiles, maintaining verification reliability while preserving ease of operation

Inventive Principle:
Principle #26Copying

2Reliability

If cryptographic hashing is performed on SSH algorithm sets to generate fingerprints, then SSH client authenticity can be verified, but additional computational overhead is introduced

Engineering Contradiction:
ImproveSSH client authenticity verificationVSAvoidComputational overhead for fingerprint generation
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The computationally intensive cryptographic hashing is performed in advance during the profiling phase, not during actual SSH connections. The HASSH fingerprints are pre-computed and stored, so during connection verification, the system only needs to perform a simple hash comparison rather than generating new fingerprints, significantly reducing real-time computational overhead

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The invention extracts only the essential algorithm preference information from the full SSH client configuration and generates fingerprints based on this subset. This extraction approach reduces the amount of data that needs to be hashed and compared, thereby reducing computational overhead while maintaining verification reliability

Inventive Principle:
Principle #2Taking out (Extraction)

3Adaptability or versatility

If HASSH fingerprints are used to identify SSH clients, then granular access control is achieved, but the complexity of the SSH protocol increases

Engineering Contradiction:
ImproveAccess control granularityVSAvoidSSH protocol complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The HASSH fingerprint mechanism serves multiple functions within the SSH protocol: it provides client identification, authenticity verification, and access control authorization all through a single fingerprint comparison process. This multi-functionality achieves granular access control without proportionally increasing protocol complexity, as the same fingerprint mechanism handles multiple security requirements

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

Applied Scientific Principles

This section explains which scientific principles are used to turn an abstract innovation direction into a practical engineering solution.

Function Achieved in This Case

This solution enhances security by ensuring that only authorized SSH clients and servers with known fingerprints can establish secure connections, preventing malicious activities such as data exfiltration and brute-force attacks, while also providing a granular level of access control and non-repudiation.

Implementation Method 1

performing a cryptographic hash on the set of supported algorithms, such as key exchange, encryption, message authentication, and compression algorithms

Methodology Applied
Scientific EffectCryptographic hash:

Data Source

PatentUS11677562B2HASSH profiling mechanism
Publication Date: 2023.06.13 SALESFORCE INC
  • US11677562B2 patent drawing
  • US11677562B2 patent drawing
  • US11677562B2 patent drawing

AI summary

Techniques and structures to facilitate identification, authentication, authorization and accounting of a computing device is disclosed. A set of supported algorithms for transmission during a secure shell (SSH) clear packet exchange is received and a cryptographic hash is performed on the set of algorithms to generate a unique fingerprint.