Secure Certificate Validation via Payment App Hooking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing payment transaction systems using mobile POS devices are vulnerable to attacks that compromise the validity of security certificates, potentially exposing sensitive information to interception and fraud, as attackers can install malware or provide bogus SSL certificates, making it difficult to ensure the authenticity of security certificates received by these devices.

Innovation Solution

A technique where security certificates received by a mobile POS device are intercepted and stored in a secure environment within the payment application, allowing for the generation of a secure list of certificates, which are then validated by a remote system, rather than relying solely on the device's security layer, thereby preventing attackers from disrupting the handshake process and ensuring the validity of certificates.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If security certificates are validated solely by the device's security layer, then the validation process is simple and fast, but the system becomes vulnerable to attacks using malware or bogus SSL certificates

Engineering Contradiction:
Improvesecurity certificate validityVSAvoidvalidation system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent divides the certificate validation process into two independent segments: (1) local validation by the device's security layer using trusted root certificates, and (2) remote validation by a cloud-based system that receives certificate copies and validates them against updated trusted certificates. This segmentation allows each component to perform validation independently, improving reliability without requiring the entire system to become overly complex.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a cloud-based validation system as an intermediary between the mobile device and the final validation decision. The cloud system receives copies of security certificates from the device, performs validation using updated trusted certificates, and returns validation results. This intermediary approach enhances reliability by providing an additional validation layer while maintaining device simplicity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If security certificates are validated by a remote system, then the authenticity verification is more accurate and secure, but the validation process becomes slower and more complex

Engineering Contradiction:
Improvecertificate authenticityVSAvoidvalidation time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs preliminary validation actions locally on the device using the security layer's trusted root certificates before initiating remote validation. The device first checks certificates against its local trusted store, and only if needed does it send copies to the cloud system. This preliminary action reduces the overall validation time by filtering out obviously valid certificates before remote validation is required.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements partial validation by having the device perform initial validation using its local trusted certificates, and then optionally performing additional remote validation. The system can choose to perform only the necessary validation level based on the certificate's appearance and the device's security configuration, avoiding excessive validation time while maintaining adequate security.

Inventive Principle:
Principle #16Partial or excessive action

3Reliability

If the payment application stores copies of security certificates in a secure environment, then the validation process becomes more secure against attacks, but the device storage requirements and processing complexity increase

Engineering Contradiction:
Improvecertificate validation securityVSAvoidcertificate management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the certificate validation function from the traditional security layer and places it within the payment application in a secure environment. The payment application receives security certificates, stores copies in a secure location, and performs validation. This extraction isolates the validation logic within the payment application's security boundary, enhancing security while managing complexity through focused implementation.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent implements a nested validation structure where the payment application's secure environment contains the certificate storage and validation mechanisms. The security layer validates certificates, and if needed, the payment application receives copies and performs additional validation within its own secure context. This nesting allows multiple validation layers to coexist without requiring complete system redesign.

Inventive Principle:
Principle #7Nested doll (Nesting)

Data Source

PatentUS11593780B1Creation and validation of a secure list of security certificates
Publication Date: 2023.02.28 BLOCK INC
  • US11593780B1 patent drawing
  • US11593780B1 patent drawing
  • US11593780B1 patent drawing

AI summary

Disclosed is a technique for verifying the validity of security certificates received by a mobile device. The technique can involve diverting a security certificate into a secure environment, such as a payment application, by modifying an import address table (e.g., implementing a “hook”) that is accessed by the security layer of the mobile device. Once diverted, the payment application can create a copy of the security certificate. The copy may be stored in a list of security certificates that is subsequently uploaded to a payment processing system for authentication. In some embodiments, a checksum is generated for the import address table using a cryptographic hash function. The checksum allows the payment application or the payment processing system to determine whether an unauthorized modification of the import address table is present.