Browser Extension Dynamic Code Update via Textual Instructions
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The challenge lies in reducing processor overhead when updating a software extension component, particularly due to the requirement for preauthorization and review of code changes, which can be time-consuming and inefficient.
Innovation Solution
The solution involves providing updates to software extension modules as text files or markup language documents, which the modules can receive and convert into executable code, thereby bypassing the need for extensive review and reducing processor overhead.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If code changes to software extension are submitted for preauthorization review, then security is maintained, but update time increases significantly
Solution Approach 1:
The extension code is segmented into two parts: (1) the extension package file (.crx) which requires preauthorization review for security, and (2) the separate code files (.js, .css, .html) which can be updated without review. This segmentation allows the security-critical component to be reviewed once while allowing rapid updates to non-critical components.
Solution Approach 2:
The code files are extracted from the extension package and stored separately in a code repository. This extraction enables the code to be updated independently of the package file, eliminating the need for time-consuming preauthorization review for every code change while maintaining security through the separate review process for the package file.
2Reliability
If complete code review process is performed for every update, then security is ensured, but processor overhead increases
Solution Approach 1:
The review process applies different levels of scrutiny to different components: the extension package file undergoes complete security review, while the separate code files undergo minimal or no review. This local quality approach ensures security where needed while reducing processor overhead for routine updates.
Solution Approach 2:
Security review is performed preliminarily on the extension package file before deployment. Once approved, the same package can accommodate multiple code updates without repeated full reviews, reducing processor overhead for subsequent updates while maintaining security through the preliminary review.
3Reliability
If code files are updated through traditional extension update process, then security is maintained, but update speed decreases
Solution Approach 1:
A code repository serves as an intermediary between developers and the extension package. Code can be updated in the repository and automatically deployed to the extension without requiring full review processes, enabling rapid updates while the package file acts as a security gatekeeper that has already been reviewed.
Solution Approach 2:
The update system becomes dynamic by allowing different update paths: critical package file updates follow the traditional slow review process, while non-critical code file updates can proceed rapidly through automated deployment from the code repository, adapting the review intensity to the criticality of the change.
Data Source
AI summary
A system and method provides instructions for execution to a software extension module. The method includes establishing a network connection between a software extension module and an instruction source; generating a textual instruction from an instruction of the instruction source; and sending the generated textual instruction to the software extension module over the established network connection, wherein the software extension module is configured to receive the textual instruction and generate therefrom the instruction of the instruction source.


