Web Application Security via Server Authorization Verification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Web application programs executed in web browsers are vulnerable to misappropriation by malicious third parties due to their accessibility and lack of secure distribution controls, leading to potential theft and unauthorized distribution.

Innovation Solution

A program execution control method that includes a list of authorized servers' identification information, a determination program to verify the transmission server's authenticity, and processing programs written in low-level languages like WebAssembly, which restricts or authorizes execution based on matching identification information, preventing unauthorized use.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If web application programs are made accessible in web browsers, then ease of operation and responsiveness are improved, but security against misappropriation deteriorates

Engineering Contradiction:
Improveease of operationVSAvoidsecurity risk
Core Design Contradiction:
Ease of operationVSObject-affected harmful factors

Solution Approach 1:

The patent applies preliminary action by embedding authorization verification logic directly into the web application program before execution. The program includes a determination program that checks whether the transmission server is authorized based on identification information (such as domain names) before the main processing programs are executed. This pre-verification prevents unauthorized access while maintaining web-based accessibility.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses an intermediary approach by introducing a determination program as a mediator between the web application program and its execution. This determination program acts as a security gatekeeper that verifies the transmission server's authorization status based on embedded identification information, allowing legitimate executions while blocking unauthorized ones.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If web application programs are distributed freely, then ease of operation is improved, but reliability against theft deteriorates

Engineering Contradiction:
Improveease of operationVSAvoidprotection against theft
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent applies the nested doll principle by embedding authorization verification mechanisms (determination program and identification information lists) within the web application program itself. The web application program contains nested components: the determination program is embedded within it, which in turn contains or accesses the list of authorized server identification information. This nested structure ensures that security checks are inherently part of the distributed program.

Inventive Principle:
Principle #7Nested doll (Nesting)

Solution Approach 2:

The patent uses preliminary action by incorporating authorization verification logic directly into the distributed web application program. The determination program and authorized server list are embedded within the program code itself, performing security checks before any processing operations. This ensures that even when freely distributed, the program maintains built-in protection against unauthorized use.

Inventive Principle:
Principle #10Preliminary action

3Object-affected harmful factors

If authorization verification is implemented, then security is improved, but device complexity increases

Engineering Contradiction:
ImprovesecurityVSAvoidprogram complexity
Core Design Contradiction:
Object-affected harmful factorsVSDevice complexity

Solution Approach 1:

The patent applies universality by designing the determination program to handle multiple authorization scenarios using a single unified approach. The program can verify authorization based on various types of identification information (domain names, server identifiers) and can determine whether to allow or block execution based on the verification result. This multi-functional design consolidates security checks into a single versatile component rather than requiring separate mechanisms for different cases.

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

Solution Approach 2:

The patent implements self-service by making the web application program self-verified through embedded authorization logic. The determination program within the web application automatically checks the transmission server's authorization status using embedded identification information lists, without requiring external verification systems. The program essentially verifies itself, reducing the need for complex external security infrastructure.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11212287B2Program execution control method, program, recording medium, web page, transmission server, client, and web system
Publication Date: 2021.12.28 FUJIFILM CORP
  • US11212287B2 patent drawing
  • US11212287B2 patent drawing
  • US11212287B2 patent drawing

AI summary

Provided are a program execution control method capable of preventing a malicious third party from misappropriating a web application program, a program, a recording medium, a web page, a transmission server, a client, and a web system. In the program execution control method, the program, the recording medium, the web page, the transmission server, the client, and the web system, the web application program includes a list of identification information of authorized servers written by a low-level language, a determination program, and a processing program which are written by a low-level language. The determination program checks whether identification information of the transmission server extracted from a URI of a web page and identification information of an authorized server included in the list match each other, and limits execution of the processing program according to the check result.