ATM Software Authenticity Validation via Hash Comparison

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Automated Teller Machines (ATMs) are vulnerable to malware and viruses, posing a security risk due to their access to financial information and secure networks, with potential threats from maintenance staff, customers, and remote network connections, necessitating continuous validation of software authenticity.

Innovation Solution

A method involving the computation and comparison of hash values for execution resources, using encrypted and signed files to validate the authenticity of software resources, ensuring only authorized applications execute on the ATM, with actions taken to prevent tampering or unauthorized access.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If continuous validation of software resources is implemented to ensure ATM security, then security reliability is improved, but device complexity increases

Engineering Contradiction:
ImprovesecurityVSAvoidvalidation process
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system performs preliminary validation by computing hash values of software resources and comparing them against stored reference hash values before execution. This preliminary action ensures that malicious code is detected before it can compromise the ATM, maintaining security without requiring complex real-time monitoring during execution

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system creates a simplified copy of the validation mechanism by storing reference hash values in a lookup table or database. Instead of implementing complex cryptographic verification for each resource, the system uses pre-computed hash copies that can be quickly compared, reducing the complexity of the validation process while maintaining security

Inventive Principle:
Principle #26Copying

2Measurement precision

If hash value comparison validation is performed for all applications, then software authenticity is improved, but processing time increases

Engineering Contradiction:
Improveauthenticity validationVSAvoidvalidation time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system performs validation selectively rather than uniformly for all applications. Critical system applications and those with higher security requirements undergo full hash value comparison validation, while less critical applications may use simplified validation methods. This partial action approach maintains measurement precision for important resources while reducing overall processing time

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

Hash values are pre-computed and stored in a reference table during system setup or application installation. When validation is needed, the system simply compares the current hash against the pre-stored reference value, avoiding the time-consuming process of re-computing hashes and enabling quick authenticity verification

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10153904B2Validating resources execution
Publication Date: 2018.12.11 NCR ATLEOS CORP
  • US10153904B2 patent drawing
  • US10153904B2 patent drawing
  • US10153904B2 patent drawing

AI summary

A whitelist of hash values for applications is signed and encrypted by a remote device and the encrypted whitelist is securely delivered over a network connection to a second device as an encrypted whitelist. The second device decrypts the whitelist and validates the signature of the remote device for the decrypted whitelist. Hash values in the decrypted version of the encrypted whitelist are compared against dynamically computed hash values for the applications. Applications with matching hash values are permitted to execute on the second device.