Client-Side Action Validation Using Cached Datasets
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In client-server environments, the current validation process for user actions is costly in terms of time and resources, as the server repeatedly verifies user requests by accessing databases, which is inefficient and resource-intensive.
Innovation Solution
Implementing a client-side action validation process where the server sends both unencrypted and encrypted datasets to the client, allowing the client to validate actions based on predefined rules, thereby reducing the need for the server to re-access databases for verification.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the server performs validation by accessing the database for each user action, then the reliability of validation is improved, but the productivity and time consumption worsen
Solution Approach 1:
The server performs validation rules retrieval and database state snapshot capture in advance, before the user action occurs. The validated action rules are cached on both server and client sides, allowing rapid validation without real-time database access during the actual validation moment, thus improving speed while maintaining reliability through pre-computed validation criteria
Solution Approach 2:
The system creates a copy of the relevant database state (snapshot) and validation rules, storing them in cache memory on both server and client sides. This copying allows validation to proceed against the cached copy rather than repeatedly accessing the actual database, significantly reducing I/O operations and improving validation speed while maintaining accuracy
2Measurement precision
If the server repeatedly accesses the database for validation, then the accuracy of validation is improved, but the energy consumption and resource usage worsen
Solution Approach 1:
The server pre-loads validation rules and captures database state snapshots before user actions occur. By having validation criteria ready in cache memory, the server avoids repeated expensive database access operations during validation, reducing CPU and I/O resource consumption while maintaining validation accuracy through pre-computed validation logic
Solution Approach 2:
The system creates cached copies of validation rules and database state snapshots, storing them in memory rather than repeatedly accessing the database. This copying mechanism allows multiple validations to proceed against the cached copy, dramatically reducing server resource consumption including disk I/O, CPU cycles, and memory bandwidth while preserving validation accuracy
3Reliability
If the server performs all validation operations, then the reliability of security is improved, but the device complexity and processing load worsen
Solution Approach 1:
The validation process is segmented into two parts: the server handles validation rules retrieval, snapshot capture, and initial validation logic execution, while the client device performs the actual validation execution against cached data. This segmentation distributes processing complexity from the server to the client, reducing server load while maintaining security reliability through coordinated validation
Solution Approach 2:
The cached validation rules and action snapshots serve as an intermediary between the server's database and the client's validation execution. This intermediary layer allows the server to offload processing complexity to the client while maintaining control over validation criteria, reducing server processing burden while preserving security through centralized rule management
Data Source
AI summary
A method and system including a display; a memory storing processor-executable process steps; and a processor to execute the processor-executable process steps to cause the system to: receive a first request at a server; generate a first dataset and a second dataset at the server, wherein the second dataset is encrypted; transmit the first and second dataset to a client; receive at the server a second request and the encrypted dataset, wherein the second request includes a request to execute an action with at least one data element in the first data set; and in response to receipt of the second request and encrypted dataset, decrypt the encrypted dataset to validate the second request. Numerous other aspects are provided.


